use of org.apache.airavata.xbaya.ui.views.ComponentViewer in project airavata by apache.
the class XBayaGUI method initPane.
/**
* Initializes the GUI.
*/
private void initPane() {
Container contentPane = this.frame.getContentPane();
// Error window
this.errorWindow = new ErrorWindow(contentPane);
contentPane.add(getToolbar().getSwingComponent(), BorderLayout.PAGE_START);
this.portViewer = new PortViewer();
this.componentViewer = new ComponentViewer();
this.componentSelector = new ComponentSelector(this.engine);
this.componentSelector.addComponentSelectorListener(this.componentViewer);
this.monitorPane = new MonitorPanel(this, this.engine.getMonitor());
compTreeXBayapanel = new ScrollPanel(this.componentSelector, ComponentSelector.TITLE);
ScrollPanel compViewXBayaPanel = new ScrollPanel(this.componentViewer, ComponentViewer.TITLE);
this.rightBottomTabbedPane = new JTabbedPane();
this.rightBottomTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
this.rightBottomTabbedPane.setPreferredSize(new Dimension(0, 200));
this.rightBottomTabbedPane.addTab(PortViewer.TITLE, this.portViewer.getSwingComponent());
this.rightBottomTabbedPane.addTab(MonitorPanel.TITLE, this.monitorPane.getSwingComponent());
this.graphTabbedPane = new JTabbedPane();
this.graphTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
this.graphTabbedPane.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() >= 2) {
toggleMaximizeGraphPanel();
}
}
});
this.graphTabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent event) {
// Called when the active tab changed.
// Note that this is not called when a tab is removed.
logger.debug(event.toString());
XBayaGUI.this.activeTabChanged();
}
});
this.leftSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true);
this.rightSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true);
this.mainSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, this.leftSplitPane, this.rightSplitPane);
contentPane.add(this.mainSplitPane, BorderLayout.CENTER);
this.leftSplitPane.setOneTouchExpandable(true);
this.rightSplitPane.setOneTouchExpandable(true);
this.mainSplitPane.setOneTouchExpandable(true);
// this.leftSplitPane.setTopComponent(compTreeXBayapanel.getSwingComponent());
// this.leftSplitPane.setTopComponent(new JCRBrowserPanel(engine));
this.componentTabbedPane = new JTabbedPane();
this.componentTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
this.leftSplitPane.setTopComponent(this.componentTabbedPane);
this.componentTabbedPane.add(this.compTreeXBayapanel.getSwingComponent());
this.componentTabbedPane.setTitleAt(0, "Component");
this.leftSplitPane.setBottomComponent(compViewXBayaPanel.getSwingComponent());
this.rightSplitPane.setTopComponent(this.graphTabbedPane);
this.rightSplitPane.setBottomComponent(this.rightBottomTabbedPane);
this.leftSplitPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
this.rightSplitPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
//
// Adjust sizes
//
// Need to pack the frame first to get the size of each component.
this.frame.pack();
final int leftPanelWidth = 250;
final int portViewHight = 200;
this.mainSplitPane.setDividerLocation(leftPanelWidth);
this.leftSplitPane.setDividerLocation(0.5);
this.leftSplitPane.setResizeWeight(0.5);
this.rightSplitPane.setDividerLocation(this.rightSplitPane.getSize().height - portViewHight);
// The bottom component to stay the same size
this.rightSplitPane.setResizeWeight(1.0);
}
Aggregations