public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); int caret = textArea.getCaretPosition(); int line = textArea.getCaretLine(); int lineStart = textArea.getLineStartOffset(line); caret -= lineStart; String lineText = textArea.getLineText(textArea .getCaretLine()); if(caret == 0) { if(lineStart == 0) { textArea.getToolkit().beep(); return; } caret--; } else { String noWordSep = (String)textArea.getDocument().getProperty("noWordSep"); caret = TextUtilities.findWordStart(lineText,caret,noWordSep); } if(select) textArea.select(textArea.getMarkPosition(), lineStart + caret); else textArea.setCaretPosition(lineStart + caret); }
public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); int caret = textArea.getCaretPosition(); int line = textArea.getCaretLine(); if(line == 0) { textArea.getToolkit().beep(); return; } int magic = textArea.getMagicCaretPosition(); if(magic == -1) { magic = textArea.offsetToX(line, caret - textArea.getLineStartOffset(line)); } caret = textArea.getLineStartOffset(line - 1) + textArea.xToOffset(line - 1,magic); if(select) textArea.select(textArea.getMarkPosition(),caret); else textArea.setCaretPosition(caret); textArea.setMagicCaretPosition(magic); }
public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); int caret = textArea.getCaretPosition(); int firstLine = textArea.getFirstLine(); int firstOfLine = textArea.getLineStartOffset( textArea.getCaretLine()); int firstVisibleLine = (firstLine == 0 ? 0 : firstLine + textArea.getElectricScroll()); int firstVisible = textArea.getLineStartOffset( firstVisibleLine); if(caret == 0) { textArea.getToolkit().beep(); return; } else if(!Boolean.TRUE.equals(textArea.getClientProperty( SMART_HOME_END_PROPERTY))) caret = firstOfLine; else if(caret == firstVisible) caret = 0; else if(caret == firstOfLine) caret = firstVisible; else caret = firstOfLine; if(select) textArea.select(textArea.getMarkPosition(),caret); else textArea.setCaretPosition(caret); }
public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); if(!textArea.isEditable()) { textArea.getToolkit().beep(); return; } if(textArea.getSelectionStart() != textArea.getSelectionEnd()) { textArea.setSelectedText(""); } else { int caret = textArea.getCaretPosition(); if(caret == textArea.getDocumentLength()) { textArea.getToolkit().beep(); return; } try { textArea.getDocument().remove(caret,1); } catch(BadLocationException bl) { bl.printStackTrace(); } } }
public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); int caret = textArea.getCaretPosition(); if(caret == 0) { textArea.getToolkit().beep(); return; } if(select) textArea.select(textArea.getMarkPosition(), caret - 1); else textArea.setCaretPosition(caret - 1); }
public void actionPerformed(ActionEvent evt) { JEditTextArea textArea = getTextArea(evt); int caret = textArea.getCaretPosition(); int lastOfLine = textArea.getLineEndOffset( textArea.getCaretLine()) - 1; int lastVisibleLine = textArea.getFirstLine() + textArea.getVisibleLines(); if(lastVisibleLine >= textArea.getLineCount()) { lastVisibleLine = Math.min(textArea.getLineCount() - 1, lastVisibleLine); } else lastVisibleLine -= (textArea.getElectricScroll() + 1); int lastVisible = textArea.getLineEndOffset(lastVisibleLine) - 1; int lastDocument = textArea.getDocumentLength(); if(caret == lastDocument) { textArea.getToolkit().beep(); return; } else if(!Boolean.TRUE.equals(textArea.getClientProperty( SMART_HOME_END_PROPERTY))) caret = lastOfLine; else if(caret == lastVisible) caret = lastDocument; else if(caret == lastOfLine) caret = lastVisible; else caret = lastOfLine; if(select) textArea.select(textArea.getMarkPosition(),caret); else textArea.setCaretPosition(caret); }