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: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists