Author: bobtarling
Date: 2010-09-26 09:58:27-0700
New Revision: 18782
Modified:
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
Log:
Use a 2 row toolbox instead of 2 toolbars for the list controls
Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java?view=diff&pathrev=18782&r1=18781&r2=18782
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java (original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java 2010-09-26 09:58:27-0700
@@ -39,6 +39,7 @@
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Dimension;
+import java.awt.FlowLayout;
import java.awt.KeyboardFocusManager;
import java.awt.event.ActionEvent;
import java.awt.event.MouseEvent;
@@ -78,9 +79,7 @@
import org.argouml.ui.ActionCreateContainedModelElement;
import org.argouml.ui.UndoableAction;
import org.tigris.gef.presentation.FigTextEditor;
-import org.tigris.swidgets.FlexiGridLayout;
-import org.tigris.toolbar.ToolBar;
-import org.tigris.toolbar.ToolBarFactory;
+import org.tigris.toolbar.toolbutton.ToolBox;
/**
* A control for displaying the contents of a list model elements in a panel
@@ -388,10 +387,6 @@
moveDownAction = new MoveDownAction();
moveTopAction = new MoveTopAction();
moveBottomAction = new MoveBottomAction();
- actions.add(moveUpAction);
- actions.add(moveDownAction);
- actions.add(moveTopAction);
- actions.add(moveBottomAction);
} else {
moveUpAction = null;
moveDownAction = null;
@@ -482,6 +477,12 @@
popup.add((Action) action);
}
}
+ if (moveTopAction != null) {
+ popup.add(moveTopAction);
+ popup.add(moveBottomAction);
+ popup.add(moveUpAction);
+ popup.add(moveDownAction);
+ }
if (popup.getComponentCount() > 0) {
popup.show(this, e.getX(), e.getY());
}
@@ -497,6 +498,12 @@
popup.add((Action) action);
}
}
+ if (moveTopAction != null) {
+ popup.add(moveTopAction);
+ popup.add(moveBottomAction);
+ popup.add(moveUpAction);
+ popup.add(moveDownAction);
+ }
if (popup.getComponentCount() > 0) {
popup.show(this, e.getX(), e.getY());
}
@@ -509,37 +516,36 @@
}
public JComponent getExpansion() {
- actions.size();
- ArrayList actions1 = new ArrayList(actions.size() / 2 + actions.size() % 2);
- ArrayList actions2 = new ArrayList(actions.size() / 2);
- Object[] actionPair = {
- actions1, actions2
- };
-
- for (int i=0; i < actions.size(); ++i) {
- if (i % 2 == 0) {
- actions1.add(actions.get(i));
- } else {
- actions2.add(actions.get(i));
- }
+ final ToolBox tb =
+ new ToolBox(2, actions.size() / 2 + actions.size() % 2, true);
+ for (int i = 0; i < actions.size() / 2 + actions.size() % 2; ++i) {
+ tb.add((Action) actions.get(i));
+ }
+ if (moveUpAction != null) {
+ tb.add(moveUpAction);
+ }
+ if (moveTopAction != null) {
+ tb.add(moveTopAction);
+ }
+ if (actions.size() % 2 == 1) {
+ tb.add(new JPanel());
}
+ for (int i = actions.size() / 2 + actions.size() % 2; i < actions.size(); ++i) {
+ tb.add((Action) actions.get(i));
+ }
+ if (moveDownAction != null) {
+ tb.add(moveDownAction);
+ }
+ if (moveBottomAction != null) {
+ tb.add(moveBottomAction);
+ }
+
+ JComponent expander = new JPanel(
+ new FlowLayout(FlowLayout.RIGHT));
+
+ expander.add(tb);
- final ToolBarFactory tbf = new ToolBarFactory(actions1);
- JToolBar toolbar = tbf.createToolBar();
- toolbar.setRollover(true);
- final ToolBarFactory tbf2 = new ToolBarFactory(actions2);
- JToolBar toolbar2 = tbf2.createToolBar();
- toolbar2.setRollover(true);
-
- JComponent expander =
- new JPanel(new FlexiGridLayout(
- 2, 1, 0, 0,
- FlexiGridLayout.HORIZONTAL,
- FlexiGridLayout.EAST));
- expander.add(toolbar);
- expander.add(toolbar2);
-
return expander;
}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2664790
To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.