use of net.rptools.tokentool.client.PdfViewer in project tokentool by RPTools.
the class TokenTool_Controller method compositeTokenPane_DragDropped.
@FXML
void compositeTokenPane_DragDropped(DragEvent event) {
Dragboard db = event.getDragboard();
// So lets just check for File first...
if (db.hasFiles()) {
db.getFiles().forEach(file -> {
try {
String fileName = FilenameUtils.getName(file.toURI().toURL().toExternalForm());
if (FilenameUtils.isExtension(fileName.toLowerCase(), "pdf")) {
Platform.runLater(() -> new PdfViewer(file, this));
} else {
updateImage(new Image(file.toURI().toURL().toExternalForm()), FilenameUtils.getBaseName(fileName));
}
} catch (Exception e) {
log.error("Could not load image " + file, e);
}
});
event.setDropCompleted(true);
} else if (db.hasImage()) {
updateImage(db.getImage());
event.setDropCompleted(true);
} else if (db.hasUrl()) {
updateImage(new Image(db.getUrl()), FileSaveUtil.searchURL(db.getUrl()));
event.setDropCompleted(true);
}
}
use of net.rptools.tokentool.client.PdfViewer in project tokentool by RPTools.
the class TokenTool_Controller method fileOpenPDF_Menu_OnAction.
@FXML
void fileOpenPDF_Menu_OnAction(ActionEvent event) {
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle(I18N.getString("TokenTool.openPDF.filechooser.title"));
fileChooser.getExtensionFilters().add(ImageUtil.SUPPORTED_PDF_EXTENSION_FILTER);
File lastPdfFile = new File(AppPreferences.getPreference(AppPreferences.LAST_PDF_FILE, ""));
if (lastPdfFile.exists())
fileChooser.setInitialDirectory(lastPdfFile);
else if (lastPdfFile.getParentFile() != null)
fileChooser.setInitialDirectory(lastPdfFile.getParentFile());
File selectedPDF = fileChooser.showOpenDialog((Stage) compositeGroup.getScene().getWindow());
if (selectedPDF != null) {
try {
new PdfViewer(selectedPDF, this);
AppPreferences.setPreference(AppPreferences.LAST_PDF_FILE, selectedPDF.getParentFile().getCanonicalPath());
} catch (IOException e) {
log.error("Error loading PDF " + selectedPDF.getAbsolutePath());
}
}
}
Aggregations