Thierry Danard created NETBEANS-1792:
----------------------------------------

             Summary: Behavior of BooleanStateAction has changed
                 Key: NETBEANS-1792
                 URL: https://issues.apache.org/jira/browse/NETBEANS-1792
             Project: NetBeans
          Issue Type: Bug
          Components: platform - Actions
    Affects Versions: 10.0
            Reporter: Thierry Danard
             Fix For: 10.0


I used the latest release candidate of NetBeans 10 (vc4), and found that 
BooleanStateAction fires two "booleanState" events instead of one when a button 
backed by a BooleanStateAction is pressed, the first event reporting that the 
state is changing to "true", the second event reporting that the state is 
changing back to "false" (even though the button is still showing as "pressed")

In my case, this BooleanStateAction is inside a JToolbar.

javax.swing.JToolBar toolbar = new JToolBar();
 toolbar.setFloatable(false);
 toolbar.setRollover(true);

Component tp1 = 
SystemAction.get(MyBooleanStateAction1.class).getToolbarPresenter();
 Component tp2 = 
SystemAction.get(MyBooleanStateAction2.class).getToolbarPresenter();
 Component tp3 = 
SystemAction.get(MyBooleanStateAction3.class).getToolbarPresenter();

tp1.setFocusable(false);
 tp2.setFocusable(false);
 tp3.setFocusable(false);

toolbar.add(tp1);
 toolbar.add(tp2);
 toolbar.add(tp3);

JPanel toolbarPanel = new JPanel(new BorderLayout());
 toolbarPanel.add(toolbar, BorderLayout.WEST);

 

This is a breaking change, it was working just fine in NetBeans 9. It breaks a 
lot of code in my app as I rely on the booleanState event to enable to disable 
behaviors: right now, when a user clicks a button, it shows as "pressed", but 
the associated function gets disabled right after it gets enabled.

I wasn't able to find a root cause after running from NetBeans source.

I did note that the BooleanStateAction is deprecated.

I'll try to provide a sample code to reproduce.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org
For additional commands, e-mail: commits-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to