summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
committerAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
commitb086f57f56bf0eb9dab9cf321a0f69aaaae84347 (patch)
tree8e6e26e8b7eed6abad7a17b093bdbb55c5e6b1ba /src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java
parent22088ae8d2d5ff390518dbe1c4372325ffb3a647 (diff)
Initial Maven Conversion
Diffstat (limited to 'src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java')
-rw-r--r--src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java90
1 files changed, 90 insertions, 0 deletions
diff --git a/src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java b/src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java
new file mode 100644
index 0000000..b6578bb
--- /dev/null
+++ b/src/main/java/com/c2kernel/gui/tabs/collection/AggregationView.java
@@ -0,0 +1,90 @@
+package com.c2kernel.gui.tabs.collection;
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JButton;
+import javax.swing.JSplitPane;
+
+import com.c2kernel.collection.Aggregation;
+import com.c2kernel.collection.AggregationMember;
+import com.c2kernel.collection.Collection;
+import com.c2kernel.collection.gui.model.AggregationVertexFactory;
+import com.c2kernel.collection.gui.model.AggregationVertexOutlineCreator;
+import com.c2kernel.collection.gui.view.AggregationMemberRenderer;
+import com.c2kernel.collection.gui.view.PropertyPanel;
+import com.c2kernel.collection.gui.view.SelectedMemberPanel;
+import com.c2kernel.graph.view.EditorPanel;
+import com.c2kernel.graph.view.GraphPanel;
+import com.c2kernel.gui.MainFrame;
+import com.c2kernel.utils.Language;
+import com.c2kernel.utils.Resource;
+/**
+ * @version $Revision: 1.5 $ $Date: 2006/09/15 15:02:24 $
+ * @author $Author: abranson $
+ */
+public class AggregationView extends CollectionView<AggregationMember>
+{
+ protected JButton mSaveButton = new JButton(Resource.findImage("graph/save.png"));
+ protected JButton mHistoryButton = new JButton(Resource.findImage("graph/history.png"));
+ protected JButton[] mOtherToolBarButtons = { mSaveButton, mHistoryButton };
+ // Graph editor panel
+ protected EditorPanel mEditorPanel;
+ // Objects to view/modify the properties of the selected activity
+ protected PropertyPanel mPropertyPanel;
+ protected JSplitPane mSplitPane;
+ private final AggregationVertexFactory mAggregationVertexFactory = new AggregationVertexFactory();
+ private final AggregationMemberRenderer mAggregationMemberRenderer = new AggregationMemberRenderer();
+ public AggregationView()
+ {
+ super();
+ setLayout(new GridLayout(1,1));
+ mPropertyPanel = new PropertyPanel();
+ mEditorPanel = new EditorPanel(null, mAggregationVertexFactory, new AggregationVertexOutlineCreator(), false, mOtherToolBarButtons, new GraphPanel(null, mAggregationMemberRenderer));
+ createLayout();
+ createListeners();
+ mPropertyPanel.setGraphModelManager(mEditorPanel.mGraphModelManager);
+ mPropertyPanel.createLayout(new SelectedMemberPanel());
+ mEditorPanel.setEditable(MainFrame.isAdmin);
+ }
+
+ @Override
+ public void setCollection(Collection<AggregationMember> contents)
+ {
+ thisColl = contents;
+ Aggregation agg = (Aggregation)thisColl;
+ mPropertyPanel.setCollection(agg);
+ mAggregationMemberRenderer.setAggregation(agg);
+ mEditorPanel.mGraphModelManager.setModel(agg.getLayout());
+ mEditorPanel.updateVertexTypes(agg.getVertexTypeNameAndConstructionInfo());
+ mEditorPanel.enterSelectMode();
+ mAggregationVertexFactory.setCreationContext(agg);
+ }
+ public void createLayout()
+ {
+ mSaveButton.setToolTipText(Language.translate("Save Layout Changes"));
+ mSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, mEditorPanel, mPropertyPanel);
+ mSplitPane.setDividerSize(5);
+ add(mSplitPane);
+ }
+
+ protected void createListeners()
+ {
+ mSaveButton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent ae)
+ {
+ saveCollection();
+ }
+ });
+ mHistoryButton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent ae)
+ {
+ new CollectionHistoryWindow(item, (Aggregation)thisColl);
+ }
+ });
+ }
+}