svn commit: r18580 - trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram
[email protected] Mon, 26 Jul 2010 01:07:38 -0700 (PDT)
Newsgroups
gmane.comp.lang.uml.argouml.cvs
Message-ID
<[email protected] >
Author: bobtarling
Date: 2010-07-26 01:07:38-0700
New Revision: 18580
Modified:
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDiagram.java
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/UMLActivityDiagram.java
Log:
Allow tools to be in dropdown tool buttons
Modified: trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDiagram.java?view=diff&pathrev=18580&r1=18579&r2=18580
==============================================================================
--- trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDiagram.java (original)
+++ trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDiagram.java 2010-07-26 01:07:38-0700
@@ -74,14 +74,32 @@
new Object[edgeTools.length + nodeTools.length];
int i = 0;
for (Object meta : edgeTools) {
- actions[i++] = getCreateEdgeAction(
- meta,
- Model.getMetaTypes().getName(meta));
+ if (meta instanceof Object[]) {
+ Object[] childEdgeTools = (Object[]) meta;
+ final Object[] childActions =
+ new Object[childEdgeTools.length];
+ int j = 0;
+ for (Object childMeta : childEdgeTools) {
+ childActions[j++] = getCreateEdgeAction(childMeta);
+ }
+ actions[i++] = childActions;
+ } else {
+ actions[i++] = getCreateEdgeAction(meta);
+ }
}
for (Object meta : nodeTools) {
- actions[i++] = getCreateNodeAction(
- meta,
- Model.getMetaTypes().getName(meta));
+ if (meta instanceof Object[]) {
+ Object[] childNodeTools = (Object[]) meta;
+ final Object[] childActions =
+ new Object[childNodeTools.length];
+ int j = 0;
+ for (Object childMeta : childNodeTools) {
+ childActions[j++] = getCreateNodeAction(childMeta);
+ }
+ actions[i++] = childActions;
+ } else {
+ actions[i++] = getCreateNodeAction(meta);
+ }
}
return actions;
}
@@ -92,12 +110,14 @@
/**
* @return Returns a diagram tool creation action.
*/
- private Action getCreateNodeAction(Object metaType, String label) {
+ private Action getCreateNodeAction(Object metaType) {
+ String label = Model.getMetaTypes().getName(metaType);
return new RadioAction(
new CmdCreateNode(metaType, label));
}
- protected Action getCreateEdgeAction(Object metaType, String label) {
+ protected Action getCreateEdgeAction(Object metaType) {
+ String label = Model.getMetaTypes().getName(metaType);
return new RadioAction(
new ActionSetMode(
ModeCreatePolyEdge.class,
Modified: trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/UMLActivityDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/UMLActivityDiagram.java?view=diff&pathrev=18580&r1=18579&r2=18580
==============================================================================
--- trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/UMLActivityDiagram.java (original)
+++ trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/UMLActivityDiagram.java 2010-07-26 01:07:38-0700
@@ -56,15 +56,18 @@
@Override
Object[] getNewNodeTypes() {
return new Object[] {
- Model.getMetaTypes().getCallBehaviorAction(),
- Model.getMetaTypes().getCreateObjectAction(),
- Model.getMetaTypes().getDestroyObjectAction(),
+ new Object[] {
+ Model.getMetaTypes().getCallBehaviorAction(),
+ Model.getMetaTypes().getCreateObjectAction(),
+ Model.getMetaTypes().getDestroyObjectAction(),
+ },
Model.getMetaTypes().getAcceptEventAction(),
Model.getMetaTypes().getSendSignalAction(),
- Model.getMetaTypes().getDestroyObjectAction(),
- Model.getMetaTypes().getActivityParameterNode(),
- Model.getMetaTypes().getCentralBufferNode(),
- Model.getMetaTypes().getDataStoreNode(),
+ new Object[] {
+ Model.getMetaTypes().getActivityParameterNode(),
+ Model.getMetaTypes().getCentralBufferNode(),
+ Model.getMetaTypes().getDataStoreNode(),
+ },
};
}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2638172
To unsubscribe from this discussion, e-mail: [[email protected] ].