@Override public void onClick(DialogInterface dialog, int which) { if (closeOnCancel) targetPackage.close(); } });
@Override public void onClick(DialogInterface dialog, int which) { String partType = partTypes[selected[0]]; ContentPart newPart = targetPackage.createPart(partType); setPart(targetFile, targetPackage, newPart); } });
public final boolean nextPart() { if (currentPart == null) return false; int index = currentPackage.indexOfPart(currentPart); if (index + 1 >= currentPackage.getPartCount()) return false; ContentPart newPart = currentPackage.getPart(index + 1); setPart(currentFile, currentPackage, newPart); return true; }
public final boolean previousPart() { if (currentPart == null) return false; int index = currentPackage.indexOfPart(currentPart); if (index - 1 < 0) return false; ContentPart newPart = currentPackage.getPart(index - 1); setPart(currentFile, currentPackage, newPart); return true; }
public final boolean openPart(@NonNull String fileName, int indexOfPart) { try { File file = new File(activity.getFilesDir(), fileName); ContentPackage newPackage = editor.getEngine().openPackage(file); ContentPart newPart = newPackage.getPart(indexOfPart); setPart(file, newPackage, newPart); } catch (IOException e) { Toast.makeText(this.activity, "Failed to open part for file \"" + fileName + "\" with index " + indexOfPart, Toast.LENGTH_LONG).show(); } return true; }
public final int getPartCount() { return currentPackage == null ? 0 : currentPackage.getPartCount(); }
public final int getPartIndex() { return currentPart == null ? -1 : currentPackage.indexOfPart(currentPart); }
private final synchronized File getFile(String url) throws IOException { File file = new File(cacheDirectory, url); file.getParentFile().mkdirs(); editor.getPart().getPackage().extractObject(url, file); return file; } }
public final boolean savePackage() { if (currentPart == null) return false; try { currentPart.getPackage().save(); storeState(); } catch (IOException e) { Toast.makeText(this.activity, "Failed to save package", Toast.LENGTH_LONG).show(); } return true; }
public final boolean saveToTemp() { if (currentPart == null) return false; try { currentPart.getPackage().saveToTemp(); storeState(); } catch (IOException e) { Toast.makeText(this.activity, "Failed to save package to temporary directory", Toast.LENGTH_LONG).show(); } return true; }
@Override public void onClick(DialogInterface dialog, int which) { File newFile = files[selected[0]]; try { ContentPackage newPackage = editor.getEngine().openPackage(newFile); ContentPart newPart = newPackage.getPart(0); setPart(newFile, newPackage, newPart); } catch (IOException e) { Toast.makeText(context, "Failed to open package", Toast.LENGTH_LONG).show(); } } });
public final void close() { if (currentPart != null) currentPart.close(); if (currentPackage != null) currentPackage.close(); currentFile = null; currentPackage = null; currentPart = null; }
contentPart = contentPackage.createPart("Text Document"); // Choose type of content (possible values are: "Text Document", "Text", "Diagram", "Math", and "Drawing")
@Override protected void onDestroy() { editorView.setOnTouchListener(null); editorView.close(); if (contentPart != null) { contentPart.close(); contentPart = null; } if (contentPackage != null) { contentPackage.close(); contentPackage = null; } // IInkApplication has the ownership, do not close here engine = null; super.onDestroy(); }
public final void setPart(File newFile, ContentPackage newPackage, ContentPart newPart) { editor.getRenderer().setViewOffset(0, 0); editor.getRenderer().setViewScale(1); editor.setPart(newPart); editorView.setVisibility(View.VISIBLE); if (currentPart != null && currentPart != newPart) currentPart.close(); if (currentPackage != null && currentPackage != newPackage) currentPackage.close(); currentFile = newFile; currentPackage = newPackage; currentPart = newPart; activity.setTitle(currentFile.getName() + " - " + currentPart.getType()); }