类javafx.scene.input.Clipboard源码实例Demo

下面列出了怎么用javafx.scene.input.Clipboard的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: OpenLabeler   文件: OpenLabelerController.java
private void toClipboard(ObjectModel model) {
    Clipboard clipboard = Clipboard.getSystemClipboard();
    Map<DataFormat, Object> content = new HashMap();
    try {
        Marshaller marshaller = jaxbContext.createMarshaller();
        StringWriter writer = new StringWriter();
        // output pretty printed
        marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
        marshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);

        marshaller.marshal(model, writer);
        content.put(DATA_FORMAT_JAXB, writer.toString());
        content.put(DataFormat.PLAIN_TEXT, writer.toString());
        clipboard.setContent(content);
    }
    catch (Exception ex) {
        LOG.log(Level.WARNING, "Unable to put content to clipboard", ex);
    }
}
 
源代码2 项目: OpenLabeler   文件: SupportInfoPane.java
public SupportInfoPane() {
    FXMLLoader loader = new FXMLLoader(getClass().getResource("/fxml/SupportInfoPane.fxml"));
    loader.setRoot(this);
    loader.setController(this);

    try {
        loader.load();
    }
    catch (Exception ex) {
        LOG.log(Level.SEVERE, "Unable to load FXML", ex);
    }

    ButtonType copyToClipboard = new ButtonType(bundle.getString("label.copyToClipboard"), ButtonBar.ButtonData.APPLY);
    getButtonTypes().addAll(copyToClipboard, ButtonType.CLOSE);

    final Button btn = (Button) lookupButton(copyToClipboard);
    btn.addEventFilter(ActionEvent.ACTION, event -> {
        final ClipboardContent content = new ClipboardContent();
        content.put(DataFormat.PLAIN_TEXT, text.getText());
        Clipboard.getSystemClipboard().setContent(content);
        event.consume();
    });
}
 
源代码3 项目: Quelea   文件: LyricsTextArea.java
public LyricsTextArea() {
    textArea = new InlineCssTextArea();
    ContextMenu contextMenu = new ContextMenu();
    Clipboard systemClipboard = Clipboard.getSystemClipboard();
    MenuItem paste = new MenuItem(LabelGrabber.INSTANCE.getLabel("paste.label"));
    contextMenu.setOnShown(e -> {
        paste.setDisable(!systemClipboard.hasContent(DataFormat.PLAIN_TEXT));
    });

    paste.setOnAction(e -> {
        String clipboardText = systemClipboard.getString();
        textArea.insertText(textArea.getCaretPosition(), clipboardText);
    });

    contextMenu.getItems().add(paste);
    textArea.setContextMenu(contextMenu);
    textArea.textProperty().addListener((ObservableValue<? extends String> observable, String oldValue, String newValue) -> {
        Platform.runLater(this::refreshStyle);
    });

    textArea.setStyle("-fx-font-family: monospace; -fx-font-size: 10pt;");
    textArea.setUndoManager(UndoManagerFactory.zeroHistorySingleChangeUM(textArea.richChanges()));
    getChildren().add(new VirtualizedScrollPane<>(textArea));
    textArea.getStyleClass().add("text-area");
}
 
public void handleCopySpectra(Event event) {
  StringBuilder sb = new StringBuilder();
  for (MsSpectrumDataSet dataset : datasets) {
    MsSpectrum spectrum = dataset.getSpectrum();
    String spectrumString = TxtExportAlgorithm.spectrumToString(spectrum);
    String splash = SplashCalculationAlgorithm.calculateSplash(spectrum);
    sb.append("# ");
    sb.append(dataset.getName());
    sb.append("\n");
    sb.append("# SPLASH ID: ");
    sb.append(splash);
    sb.append("\n");
    sb.append(spectrumString);
    sb.append("\n");
  }
  final Clipboard clipboard = Clipboard.getSystemClipboard();
  final ClipboardContent content = new ClipboardContent();
  content.putString(sb.toString());
  clipboard.setContent(content);
}
 
源代码5 项目: openchemlib-js   文件: ClipboardHelper.java
public static StereoMolecule paste() {
        StereoMolecule mol = null;

        // Native clipboard
//        ClipboardHandler handler = new ClipboardHandler();
//        mol = handler.pasteMolecule();
        if(mol!=null) {
            System.out.println("Got molecule from native clipboard");
        } else {
            // JavaFx clipboard
            final Clipboard clipboard = Clipboard.getSystemClipboard();
            mol = readContent(clipboard);
            if(mol!=null) {
                System.out.println("Got molecule from standard clipboard");
            }
        }

        return mol;
    }
 
源代码6 项目: logbook-kai   文件: ItemItemController.java
/**
 * 艦隊分析
 */
@FXML
void kancolleFleetanalysis() {
    try {
        List<KancolleFleetanalysisItem> list = SlotItemCollection.get().getSlotitemMap().values().stream()
                .filter(item -> item.getLocked())
                .map(KancolleFleetanalysisItem::toItem)
                .sorted(Comparator.comparing(KancolleFleetanalysisItem::getId)
                        .thenComparing(Comparator.comparing(KancolleFleetanalysisItem::getLv)))
                .collect(Collectors.toList());
        ObjectMapper mapper = new ObjectMapper();
        String input = mapper.writeValueAsString(list);

        ClipboardContent content = new ClipboardContent();
        content.putString(input);
        Clipboard.getSystemClipboard().setContent(content);
    } catch (Exception e) {
        LoggerHolder.get().error("艦隊分析のロック装備をクリップボードにコピーに失敗しました", e);
    }
}
 
源代码7 项目: phoebus   文件: RegionBaseRepresentation.java
/** Copy PV name to clipboard when middle button clicked
 *  @param event Mouse pressed event
 */
private void hookMiddleButtonCopy(final MouseEvent event)
{
    if (event.getButton() != MouseButton.MIDDLE)
        return;

    final String pv_name = ((PVWidget)model_widget).propPVName().getValue();

    // Copy to copy/paste clipboard
    final ClipboardContent content = new ClipboardContent();
    content.putString(pv_name);
    Clipboard.getSystemClipboard().setContent(content);

    // Copy to the 'selection' buffer used by X11
    // for middle-button copy/paste
    // Note: This is AWT API!
    // JavaFX has no API, https://bugs.openjdk.java.net/browse/JDK-8088117
    if (Toolkit.getDefaultToolkit().getSystemSelection() != null)
        Toolkit.getDefaultToolkit().getSystemSelection().setContents(new StringSelection(pv_name), null);
}
 
源代码8 项目: phoebus   文件: DisplayEditor.java
/** Copy currently selected widgets to clipboard
 *  @return Widgets that were copied or <code>null</code>
 */
public List<Widget> copyToClipboard()
{
    if (selection_tracker.isInlineEditorActive())
        return null;

    final List<Widget> widgets = selection.getSelection();
    if (widgets.isEmpty())
        return null;

    final String xml;
    try
    {
        xml = ModelWriter.getXML(widgets);
    }
    catch (Exception ex)
    {
        logger.log(Level.WARNING, "Cannot create content for clipboard", ex);
        return null;
    }

    final ClipboardContent content = new ClipboardContent();
    content.putString(xml);
    Clipboard.getSystemClipboard().setContent(content);
    return widgets;
}
 
源代码9 项目: jmonkeybuilder   文件: PasteFileAction.java
@Override
@FxThread
protected void execute(@Nullable ActionEvent event) {
    super.execute(event);

    var clipboard = Clipboard.getSystemClipboard();
    if (clipboard == null) {
        return;
    }

    List<File> files = unsafeCast(clipboard.getContent(DataFormat.FILES));
    if (files == null || files.isEmpty()) {
        return;
    }

    var currentFile = getElement().getFile();
    var isCut = "cut".equals(clipboard.getContent(EditorUtil.JAVA_PARAM));

    if (isCut) {
        files.forEach(file -> moveFile(currentFile, file.toPath()));
    } else {
        files.forEach(file -> copyFile(currentFile, file.toPath()));
    }

    clipboard.clear();
}
 
源代码10 项目: BetonQuest-Editor   文件: ExceptionController.java
@FXML private void copy() {
	try {
		Clipboard clipboard = Clipboard.getSystemClipboard();
        ClipboardContent content = new ClipboardContent();
        String string = stackTrace.getText();
		// add 4 spaces before each line so when pasted on GitHub it's formatted as code
        content.putString("    " + string.replace("\n", "\n    ").trim());
        clipboard.setContent(content);
	} catch (Exception e) {
		ExceptionController.display(e);
	}
}
 
源代码11 项目: logbook-kai   文件: Tools.java
/**
 * 選択行をヘッダ付きでクリップボードにコピーします
 *
 * @param table テーブル
 */
public static void selectionCopy(TableView<?> table) {
    ClipboardContent content = new ClipboardContent();
    content.putString(selectionToString(table));
    Clipboard.getSystemClipboard()
            .setContent(content);
}
 
源代码12 项目: constellation   文件: ClipboardUtilities.java
public static void copyToClipboard(final String text) {
    final Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    content.putString(text);
    clipboard.setContent(content);

    PluginExecution.withPlugin(new SimplePlugin("Copy To Clipboard") {
        @Override
        protected void execute(PluginGraphs graphs, PluginInteraction interaction, PluginParameters parameters) throws InterruptedException, PluginException {
            ConstellationLoggerHelper.copyPropertyBuilder(this, text.length(), ConstellationLoggerHelper.SUCCESS);
        }
    }).interactively(true).executeLater(null);
}
 
源代码13 项目: constellation   文件: TableViewUtilities.java
/**
 * Copy the given text to the system clipboard.
 *
 * @param text the text to copy.
 */
public static void copyToClipboard(final String text) {
    final Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    content.putString(text);
    clipboard.setContent(content);
}
 
源代码14 项目: Open-Lowcode   文件: ClientDisplay.java
/**
 * generates the JAVAFX component for the status bar
 * 
 * @return the Pane
 */
public Pane generateStatusBar() {
	Label statusbar = new Label("");
	statusbar.setOnMouseClicked(new EventHandler<MouseEvent>() {

		@Override
		public void handle(MouseEvent event) {

			if (event.getButton().equals(MouseButton.SECONDARY)) {

				final ClipboardContent content = new ClipboardContent();
				content.putString(statusbar.getText());
				Clipboard.getSystemClipboard().setContent(content);
			} else {

				Alert alert = new Alert(AlertType.INFORMATION);
				alert.setTitle("Status Message");
				alert.setHeaderText("Status Message");
				alert.setContentText(statusbar.getText());

				alert.showAndWait();
			}

		}
	});
	this.statuslabel = statusbar;
	HBox statusbarpane = new HBox(5);
	statusbarpane.setBackground(new Background(new BackgroundFill(Color.WHITE, null, null)));
	statusbarpane.getChildren().add(statusbar);
	return statusbarpane;

}
 
源代码15 项目: tools-ocr   文件: MainFm.java
private void pasteText() {
    String text = Clipboard.getSystemClipboard().getString();
    if (StrUtil.isBlank(text)) {
        return;
    }
    textArea.setText(textArea.getText()
            + (StrUtil.isBlank(textArea.getText()) ? "" : "\n")
            + Clipboard.getSystemClipboard().getString());
}
 
源代码16 项目: tools-ocr   文件: MainFm.java
private void copyText(){
    String text = textArea.getSelectedText();
    if (StrUtil.isBlank(text)){
        text = textArea.getText();
    }
    if (StrUtil.isBlank(text)){
        return;
    }
    Map<DataFormat, Object> data = new HashMap<>();
    data.put(DataFormat.PLAIN_TEXT, text);
    Clipboard.getSystemClipboard().setContent(data);
}
 
源代码17 项目: pmd-designer   文件: ControlUtil.java
public static void copyToClipboardButton(Button button, Supplier<String> copiedText) {
    button.setOnAction(e -> {
        final ClipboardContent content = new ClipboardContent();
        content.putString(copiedText.get());
        Clipboard.getSystemClipboard().setContent(content);
        SimplePopups.showActionFeedback(button, AlertType.CONFIRMATION, "Copied to clipboard");
    });
}
 
源代码18 项目: img2latex-mathpix   文件: UIUtils.java
/**
 * Put text into clipboard.
 *
 * @param text the recognised result to be put into clipboard.
 */
public static void putStringIntoClipboard(String text) {

    var content = new ClipboardContent();
    content.putString(text);
    Clipboard.getSystemClipboard().setContent(content);

}
 
源代码19 项目: erlyberly   文件: TraceContextMenu.java
private void copyToClipboard(StringBuilder sbuilder) {
    final Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();

    content.putString(sbuilder.toString());
    clipboard.setContent(content);
}
 
源代码20 项目: chart-fx   文件: Screenshot.java
/**
 * Save screenshot to clipbaord
 */
public void screenshotToClipboard() {
    Image image = getScreenshot();
    Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    content.putImage(image);
    clipboard.setContent(content);
    LOGGER.atInfo().log("Copied screenshot to clipboard");
}
 
源代码21 项目: logbook-kai   文件: ShipTablePane.java
/**
 * 選択された艦のみをクリップボードにコピーする。
 *
 * @param table テーブル
 */
public static void selectionCopy(TableView<ShipItem> table) {
    ClipboardContent content = new ClipboardContent();
    content.putString(text(table.getSelectionModel()
            .getSelectedItems()
            .stream()
            .map(ShipItem::getShip)
            .collect(Collectors.toList())));
    Clipboard.getSystemClipboard().setContent(content);
}
 
源代码22 项目: oim-fx   文件: WebViewContextMenuTest.java
public void cut() {
	String selectedText = (String) webView.getEngine().executeScript("editor.getSelection();");
	webView.getEngine().executeScript("editor.replaceSelection(\"\");");
	final Clipboard clipboard = Clipboard.getSystemClipboard();
	final ClipboardContent content = new ClipboardContent();
	content.putString(selectedText);
	clipboard.setContent(content);

}
 
源代码23 项目: oim-fx   文件: WebViewContextMenuTest.java
public void copy() {
	String selectedText = (String) webView.getEngine().executeScript("editor.getSelection();");
	final Clipboard clipboard = Clipboard.getSystemClipboard();
	final ClipboardContent content = new ClipboardContent();
	content.putString(selectedText);
	clipboard.setContent(content);
}
 
源代码24 项目: VocabHunter   文件: WordStateHandler.java
public void copyCurrentWord() {
    ClipboardContent content = new ClipboardContent();
    String currentWord = sessionModel.getCurrentWord().getWordIdentifier();
    content.putString(currentWord);

    Clipboard.getSystemClipboard().setContent(content);
}
 
源代码25 项目: pdfsam   文件: LogPaneTest.java
@Test
@Category(NoHeadless.class)
public void copy() {
    WaitForAsyncUtils.waitForAsyncFx(2000, () -> {
        Clipboard.getSystemClipboard().clear();
        assertTrue(isBlank(Clipboard.getSystemClipboard().getString()));
    });
    clickOn("A message").rightClickOn("A message").clickOn("#copyLogMenuItem");
    WaitForAsyncUtils.waitForAsyncFx(2000,
            () -> assertTrue(Clipboard.getSystemClipboard().getString().contains("A message")));
}
 
源代码26 项目: tcMenu   文件: UIMenuItem.java
public boolean handleCopy() {
    TextField focused = getFocusedTextField();
    if (focused == null) return false;
    String text = focused.getSelectedText();

    if (!StringHelper.isStringEmptyOrNull(text)) {
        Clipboard systemClipboard = Clipboard.getSystemClipboard();
        ClipboardContent content = new ClipboardContent();
        content.putString(text);
        systemClipboard.setContent(content);
    }
    return true;
}
 
源代码27 项目: pdfsam   文件: SelectionTableTest.java
@Test
@Category(NoHeadless.class)
public void copy() {
    WaitForAsyncUtils.waitForAsyncFx(2000, () -> Clipboard.getSystemClipboard().clear());
    rightClickOn("temp.pdf");
    clickOn(DefaultI18nContext.getInstance().i18n("Copy to clipboard"));
    WaitForAsyncUtils.waitForAsyncFx(2000, () -> assertFalse(
            StringUtils.isEmpty(Clipboard.getSystemClipboard().getContent(DataFormat.PLAIN_TEXT).toString())));
}
 
源代码28 项目: MyBox   文件: SystemTools.java
public static String fetchTextInClipboard(boolean clear) {
    Clipboard clipboard = Clipboard.getSystemClipboard();
    if (!clipboard.hasString()) {
        return null;
    }
    String text = clipboard.getString();
    if (clear) {
        clipboard.clear();
    }
    return text;
}
 
源代码29 项目: TerminalFX   文件: TerminalView.java
@WebkitCall(from = "hterm")
public void copy(String text) {
	final Clipboard clipboard = Clipboard.getSystemClipboard();
	final ClipboardContent clipboardContent = new ClipboardContent();
	clipboardContent.putString(text);
	clipboard.setContent(clipboardContent);
}
 
源代码30 项目: green_android   文件: ClickableBitcoinAddress.java
@FXML
protected void copyAddress(ActionEvent event) {
    // User clicked icon or menu item.
    Clipboard clipboard = Clipboard.getSystemClipboard();
    ClipboardContent content = new ClipboardContent();
    content.putString(addressStr.get());
    content.putHtml(String.format("<a href='%s'>%s</a>", uri(), addressStr.get()));
    clipboard.setContent(content);
}
 
 类所在包
 同包方法