NetBeans Platform - how to refresh the property sheet view of a node?

Posted by I82Much on Stack Overflow See other posts from Stack Overflow or by I82Much
Published on 2010-04-11T21:51:19Z Indexed on 2010/04/11 21:53 UTC
Read the original article Hit count: 248

Hi all,

I am using the PropertySheetView component to visualize and edit the properties of a node. This view should always reflect the most recent properties of the object; if there is a change to the object in another process, I want to somehow refresh the view and see the updated properties.

The best way I was able to do this is something like the following (making use of EventBus library to publish and subscribe to changes in objects):

public DomainObjectWrapperNode(DomainObject obj) {
    super (Children.LEAF, Lookups.singleton(obj));
    EventBus.subscribe(DomainObject.class, this);
}

public void onEvent(DomainObject event) {
    // Do a check to determine if the updated object is the one wrapped by this node;
    // if so fire a property sets change

    firePropertySetsChange(null, this.getPropertySets());
}

This works, but my place in the scrollpane is lost when the sheet refreshes; it resets the view to the top of the list and I have to scroll back down to where I was before the refresh action.

So my question is, is there a better way to refresh the property sheet view of a node, specifically so my place in the property list is not lost upon refresh?

© Stack Overflow or respective owner

Related posts about netbeans

Related posts about java