Note: These pages are being reviewed.
How can I track what file the user is currently editing?
EditorRegistry
The editor keeps a registry of open editors; you can track the active editor using the following code:
import org.netbeans.api.editor.EditorRegistry;
PropertyChangeListener l = new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
JTextComponent jtc = EditorRegistry.lastFocusedComponent();
if (jtc != null) {
Document d = jtc.getDocument();
// use the document
}
}
};
EditorRegistry.addPropertyChangeListener(l);
IMPORTANT: If you attach any listener to the Document
or anything else in the active editor text component, remember to remove them when the active editor changes.
Please read javadoc on EditorRegistry
to see details about the properties delivered through the listener used in the above code. There are many property changes fired and if an event comes it does not necessarily mean that the active editor has changed.
NbDocument.findRecentEditorPane
If you have a EditorCookie
you can use NbDocument.findRecentEditorPane
Applies to: Netbeans 6.x and later
Platforms: All
Apache Migration Information
The content in this page was kindly donated by Oracle Corp. to the Apache Software Foundation.
This page was exported from http://wiki.netbeans.org/DevFaqListenEditorChanges , that was last modified by NetBeans user Markiewb on 2016-02-22T22:27:20Z.
NOTE: This document was automatically converted to the AsciiDoc format on 2018-02-07, and needs to be reviewed.