javax.swing.event.DocumentEvent#getType()源码实例Demo

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

源代码1 项目: netbeans   文件: DocumentUtilities.java
/**
 * Get string representation of an offset for debugging purposes
 * in form "offset[line:column]". Both lines and columns start counting from 1
 * like in the editor's status bar. Tabs are expanded when counting the column.
 *
 * @param sb valid string builder to which text will be appended or null in which case
 *  the method itself will create a string builder and it will return it.
 * @param evt non-null document event.
 * @return non-null string builder to which the description was added.
 * @since 1.27
 */
public static StringBuilder appendEvent(StringBuilder sb, DocumentEvent evt) {
    if (sb == null) {
        sb = new StringBuilder(100);
    }
    DocumentEvent.EventType type = evt.getType();
    sb.append(type).append(", ");
    appendOffset(sb, evt.getDocument(), evt.getOffset());
    sb.append(", l=").append(evt.getLength());
    // Possibly append the modification text
    String modText;
    if ((modText = getModificationText(evt)) != null) {
        sb.append(", modText=\"");
        CharSequenceUtilities.debugText(sb, modText);
        sb.append('"');
    }
    return sb;
}
 
private void checkEventsEqual(DocumentEvent testEvent) {
    if (masterEvent.getOffset() != testEvent.getOffset()) {
        fail("masterEvent.getOffset()=" + masterEvent.getOffset()
            + " != testEvent.getOffset()=" + testEvent.getOffset());
    }
    if (masterEvent.getLength() != testEvent.getLength()) {
        fail("masterEvent.getLength()=" + masterEvent.getLength()
            + " != testEvent.getLength()=" + testEvent.getLength());
    }
    if (masterEvent.getType() != testEvent.getType()) {
        fail("masterEvent.getType()=" + masterEvent.getType()
            + " != testEvent.getType()=" + testEvent.getType());
    }
    DocumentEvent.ElementChange masterChange = masterEvent.getChange(masterDoc.getDefaultRootElement());
    DocumentEvent.ElementChange testChange = testEvent.getChange(testDoc.getDefaultRootElement());
    checkElementChangesEqual(masterChange, testChange);
}
 
源代码3 项目: netbeans   文件: DocumentUtilities.java
/**
 * Fix the given offset according to the performed modification.
 * 
 * @param offset >=0 offset in a document.
 * @param evt document event describing change in the document.
 * @return offset updated by applying the document change to the offset.
 */
public static int fixOffset(int offset, DocumentEvent evt) {
    int modOffset = evt.getOffset();
    if (evt.getType() == DocumentEvent.EventType.INSERT) {
        if (offset >= modOffset) {
            offset += evt.getLength();
        }
    } else if (evt.getType() == DocumentEvent.EventType.REMOVE) {
        if (offset > modOffset) {
            offset = Math.max(offset - evt.getLength(), modOffset);
        }
    }
    return offset;
}
 
源代码4 项目: netbeans   文件: ExtPlainView.java
@Override
   protected void updateDamage(DocumentEvent changes, Shape a, ViewFactory f) {
       Document doc = getDocument();
       if (!(doc instanceof Document)) {
           super.updateDamage(changes, a, f);
           return;
       }
       if (longestLineLength == -1) {
           calcLongestLineLength();
       }
Component host = getContainer();
updateMetrics();
Element elem = getElement();
DocumentEvent.ElementChange ec = changes.getChange(elem);
Element[] added = (ec != null) ? ec.getChildrenAdded() : null;
Element[] removed = (ec != null) ? ec.getChildrenRemoved() : null;
if (((added != null) && (added.length > 0)) ||
    ((removed != null) && (removed.length > 0))) {
    // lines were added or removed...
    if (added != null) {
	for (int i = 0; i < added.length; i++) {
	    int w = getLineWidth(added[i]);
	    if (w > longestLineLength) {
		longestLineLength = w;
		longestLine = added[i];
	    }
	}
    }
    if (removed != null) {
	for (int i = 0; i < removed.length; i++) {
	    if (removed[i] == longestLine) {
		calcLongestLineLength();
		break;
	    }
	}
    }
    preferenceChanged(null, true, true);
    host.repaint();
} else {
    Element map = getElement();
    int line = map.getElementIndex(changes.getOffset());
    damageLineRange(line, line, a, host);
    if (changes.getType() == DocumentEvent.EventType.INSERT) {
	// check to see if the line is longer than current longest line.
	Element e = map.getElement(line);
               int lineLen = getLineWidth(e);
	if (e == longestLine) {
	    preferenceChanged(null, true, false);
	} else if (lineLen > longestLineLength) {
                   longestLineLength = lineLen;
	    longestLine = e;
	    preferenceChanged(null, true, false);
	}
    } else if (changes.getType() == DocumentEvent.EventType.REMOVE) {
	if (map.getElement(line) == longestLine) {
	    // removed from longest line... recalc
	    calcLongestLineLength();
	    preferenceChanged(null, true, false);
	}
    }
}
   }
 
源代码5 项目: netbeans   文件: StatusBar.java
public void insertUpdate(DocumentEvent evt) {
    if (evt.getType() == DocumentEvent.EventType.REMOVE) { // undo
        documentUndo(evt);
    }
}
 
源代码6 项目: netbeans   文件: StatusBar.java
public void removeUpdate(DocumentEvent evt) {
    if (evt.getType() == DocumentEvent.EventType.INSERT) { // undo
        documentUndo(evt);
    }
}
 
源代码7 项目: netbeans   文件: ModRootElement.java
@Override
public void removeUpdate(DocumentEvent evt) {
    if (evt.getType() == DocumentEvent.EventType.REMOVE) {
        changedUpdate(evt);
    }
}
 
源代码8 项目: netbeans   文件: ModRootElement.java
@Override
public void insertUpdate(DocumentEvent evt) {
    if (evt.getType() == DocumentEvent.EventType.INSERT) {
        changedUpdate(evt);
    }
}