Skip to content

Commit 504a626

Browse files
8291799: IGV: make "Selection mode" a toggle button
Reviewed-by: kvn, thartmann, rcastanedalo
1 parent 6e7cd76 commit 504a626

File tree

4 files changed

+18
-86
lines changed

4 files changed

+18
-86
lines changed

src/utils/IdealGraphVisualizer/View/src/main/java/com/sun/hotspot/igv/view/EditorTopComponent.java

+6-16
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,6 @@ public final class EditorTopComponent extends TopComponent implements PropertyCh
103103
private PredSuccAction predSuccAction;
104104
private ShowEmptyBlocksAction showEmptyBlocksAction;
105105
private SelectionModeAction selectionModeAction;
106-
private PanModeAction panModeAction;
107106
private boolean notFirstTime;
108107
private JComponent satelliteComponent;
109108
private JPanel centerPanel;
@@ -320,19 +319,9 @@ public void changed(DiagramViewModel source) {
320319
toolBar.add(redoAction);
321320

322321
toolBar.addSeparator();
323-
ButtonGroup interactionButtons = new ButtonGroup();
324-
325-
panModeAction = new PanModeAction();
326-
panModeAction.setSelected(true);
327-
button = new JToggleButton(panModeAction);
328-
button.setSelected(true);
329-
interactionButtons.add(button);
330-
toolBar.add(button);
331-
panModeAction.addPropertyChangeListener(this);
332-
333322
selectionModeAction = new SelectionModeAction();
334323
button = new JToggleButton(selectionModeAction);
335-
interactionButtons.add(button);
324+
button.setSelected(false);
336325
toolBar.add(button);
337326
selectionModeAction.addPropertyChangeListener(this);
338327

@@ -579,11 +568,12 @@ public void propertyChange(PropertyChangeEvent evt) {
579568
} else if (evt.getSource() == this.hideDuplicatesAction) {
580569
boolean b = (Boolean) hideDuplicatesAction.getValue(HideDuplicatesAction.STATE);
581570
this.getModel().setHideDuplicates(b);
582-
} else if (evt.getSource() == this.selectionModeAction || evt.getSource() == this.panModeAction) {
583-
if (panModeAction.isSelected()) {
584-
scene.setInteractionMode(DiagramViewer.InteractionMode.PANNING);
585-
} else if (selectionModeAction.isSelected()) {
571+
} else if (evt.getSource() == this.selectionModeAction) {
572+
boolean b = (Boolean) selectionModeAction.getValue(SelectionModeAction.STATE);
573+
if (b) {
586574
scene.setInteractionMode(DiagramViewer.InteractionMode.SELECTION);
575+
} else {
576+
scene.setInteractionMode(DiagramViewer.InteractionMode.PANNING);
587577
}
588578
} else {
589579
assert false : "Unknown event source";

src/utils/IdealGraphVisualizer/View/src/main/java/com/sun/hotspot/igv/view/actions/PanModeAction.java

-59
This file was deleted.

src/utils/IdealGraphVisualizer/View/src/main/java/com/sun/hotspot/igv/view/actions/SelectionModeAction.java

+12-11
Original file line numberDiff line numberDiff line change
@@ -31,27 +31,28 @@
3131

3232
public class SelectionModeAction extends AbstractAction {
3333

34+
private boolean state;
35+
36+
public static final String STATE = "state";
37+
3438
public SelectionModeAction() {
3539
putValue(AbstractAction.SMALL_ICON, new ImageIcon(ImageUtilities.loadImage(iconResource())));
36-
putValue(SELECTED_KEY, false);
3740
putValue(Action.SHORT_DESCRIPTION, "Selection mode");
41+
state = false;
42+
putValue(STATE, false);
3843
}
3944

40-
public boolean isSelected() {
41-
return (Boolean)getValue(SELECTED_KEY);
45+
@Override
46+
public void actionPerformed(ActionEvent ev) {
47+
setState(!state);
4248
}
4349

44-
public void setSelected(boolean b) {
45-
if (isSelected() != b) {
46-
this.putValue(SELECTED_KEY, b);
47-
}
50+
public void setState(boolean b) {
51+
this.putValue(STATE, b);
52+
this.state = b;
4853
}
4954

5055
protected String iconResource() {
5156
return "com/sun/hotspot/igv/view/images/selection_mode.png";
5257
}
53-
54-
@Override
55-
public void actionPerformed(ActionEvent e) {
56-
}
5758
}

0 commit comments

Comments
 (0)