-
Notifications
You must be signed in to change notification settings - Fork 1
DevFaqListenForSaveEvents
The DataObject.Registry in LoadersAPI gives you a set of modified DataObjects. You can also add a listener and be notified when the set of modified objects changes.
If you have a FileObject and want to listen for save events, you will need to get its DataObject by calling DataObject.find()
.
To listen on a single DataObject for save events, simply add a PropertyChangeListener
and listen for changes in DataObject.PROP_MODIFIED
.
Note that listening for something to be saved is not the same as listening for any changes in the file - you are really listening only for (directly or indirectly) user-initiated save events, as in the user pressing CTRL-S when the file is modified and opened in the editor. For notifications about any changes in a file, instead attach a FileChangeListener
to the underlying FileObject
.
DataObject.Registry registries = DataObject.getRegistry();
registries.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
System.out.println("ChangedListener: o = " + e.getSource().getClass());
System.out.println("ChangedListener: o.source = " + e.getSource());
}
});
DataObject[] objects = registries.getModified();
for (int i = 0; i < objects.length; i++) {
DataObject dataObj = objects[I];
System.out.println("data object name = " + dataObj.getName());
System.out.println("data object pimary file name = " + dataObj.getPrimaryFile().getName());
Set fss = dataObj.files();
Iterator iter = fss.iterator();
while (iter.hasNext()) {
FileObject fo = (FileObject) iter.next();
System.out.println("\tset file object: " + fo.getName());
}
}
-
Datasystems API
-
File System API
-
Nodes API
-
Utilities API
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/DevFaqListenForSaveEvents , that was last modified by NetBeans user Jtulach on 2010-07-24T19:50:39Z.
NOTE: This document was automatically converted to the AsciiDoc format on 2018-01-26, and needs to be reviewed.
Apache NetBeans is an effort undergoing incubation at The Apache Software Foundation (ASF).
Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects.
While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
This wiki is an experiment pending Apache NetBeans Community approval.