javax.swing.JTextPane#moveCaretPosition ( )源码实例Demo

下面列出了javax.swing.JTextPane#moveCaretPosition ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: wpcleaner   文件: AddTextAction.java
/**
 * Replace text.
 * 
 * @param localNewText New text.
 * @param localElement Element.
 * @param localTextPane Text Pane.
 */
private void replace(
    String localNewText,
    Element localElement,
    JTextPane localTextPane) {
  if ((localElement == null) ||
      (localTextPane == null) ||
      (localNewText == null)) {
    return;
  }

  // Initialize
  int startOffset = MWPaneFormatter.getUUIDStartOffset(localTextPane, localElement);
  int endOffset = MWPaneFormatter.getUUIDEndOffet(localTextPane, localElement);

  // Replace
  try {
    localTextPane.getDocument().remove(startOffset, endOffset - startOffset);
    localTextPane.getDocument().insertString(startOffset, localNewText, localElement.getAttributes());
    localTextPane.setCaretPosition(startOffset);
    localTextPane.moveCaretPosition(startOffset + localNewText.length());
  } catch (BadLocationException e1) {
    // Nothing to be done
  }
}
 
源代码2 项目: wpcleaner   文件: AddInternalLinkAction.java
/**
 * Replace text.
 * 
 * @param localNewText New text.
 * @param localElement Element.
 * @param localTextPane Text pane.
 */
private void replace(
    String localNewText,
    Element localElement,
    JTextPane localTextPane) {
  if ((localElement == null) ||
      (localTextPane == null) ||
      (localNewText == null)) {
    return;
  }

  // Initialize
  int startOffset = MWPaneFormatter.getUUIDStartOffset(localTextPane, localElement);
  int endOffset = MWPaneFormatter.getUUIDEndOffet(localTextPane, localElement);

  // Replace
  try {
    localTextPane.getDocument().remove(startOffset, endOffset - startOffset);
    localTextPane.getDocument().insertString(startOffset, localNewText, localElement.getAttributes());
    localTextPane.setCaretPosition(startOffset);
    localTextPane.moveCaretPosition(startOffset + localNewText.length());
  } catch (BadLocationException e1) {
    // Nothing to be done
  }
}
 
源代码3 项目: wpcleaner   文件: ReplaceLinkAction.java
/**
 * Replace link and displayed text. 
 */
private void fullyReplace(
    String localOldTitle,
    String localNewTitle,
    String localText,
    Element localElement,
    JTextPane localTextPane) {
  if ((localElement != null) &&
      (localTextPane != null) &&
      (localNewTitle != null) &&
      (localNewTitle.length() > 0)) {
    localTextPane.setCaretPosition(MWPaneFormatter.getUUIDStartOffset(localTextPane, localElement));
    localTextPane.moveCaretPosition(MWPaneFormatter.getUUIDEndOffet(localTextPane, localElement));
    String newText = null;
    if ((localText != null) &&
        (localText.length() > 0) &&
        (localNewTitle.length() > 0) &&
        (localText.charAt(0) != localNewTitle.charAt(0)) &&
        (Character.toUpperCase(localText.charAt(0)) == Character.toUpperCase(localNewTitle.charAt(0)))) {
      newText = "[[" + localText.charAt(0) + localNewTitle.substring(1) + "]]";
    } else {
      newText = "[[" + localNewTitle + "]]";
    }
    localTextPane.replaceSelection(newText);
    LinkReplacement.addLastReplacement(localOldTitle, localNewTitle);
  }
}
 
源代码4 项目: wpcleaner   文件: ReplaceTextAction.java
/**
 * Replace text. 
 * 
 * @param localNewText New text.
 * @param localElement Element.
 * @param localTextPane Text pane.
 */
private void replace(
    String localNewText,
    Element localElement,
    JTextPane localTextPane) {
  if ((localElement == null) ||
      (localTextPane == null) ||
      (localNewText == null)) {
    return;
  }

  // Text finalization
  if (page != null) {
    try {
      PageAnalysis analysis = page.getAnalysis(localNewText, false);
      List<PageElementFunction> functions = analysis.getFunctions();
      boolean parseNeeded = false;
      if (functions != null) {
        for (PageElementFunction function : functions) {
          if (function.getMagicWord() == null) {
            parseNeeded = true;
          } else if (!function.getMagicWord().isFunctionNotPSTMagicWord()) {
            parseNeeded = true;
          }
        }
      }
      if (parseNeeded) {
        API api = APIFactory.getAPI();
        localNewText = api.parseText(page.getWikipedia(), page.getTitle(), localNewText, false);
      }
    } catch (APIException e) {
      // Nothing to do
    }
  }

  // Initialize
  int startOffset = MWPaneFormatter.getUUIDStartOffset(localTextPane, localElement);
  int endOffset = MWPaneFormatter.getUUIDEndOffet(localTextPane, localElement);

  // Replace
  try {
    localTextPane.getDocument().remove(startOffset, endOffset - startOffset);
    localTextPane.getDocument().insertString(startOffset, localNewText, localElement.getAttributes());
    localTextPane.setCaretPosition(startOffset);
    localTextPane.moveCaretPosition(startOffset + localNewText.length());
  } catch (BadLocationException e1) {
    // Nothing to be done
  }
}