Example usage for javax.swing JSplitPane HORIZONTAL_SPLIT

List of usage examples for javax.swing JSplitPane HORIZONTAL_SPLIT

Introduction

In this page you can find the example usage for javax.swing JSplitPane HORIZONTAL_SPLIT.

Prototype

int HORIZONTAL_SPLIT

To view the source code for javax.swing JSplitPane HORIZONTAL_SPLIT.

Click Source Link

Document

Horizontal split indicates the Components are split along the x axis.

Usage

From source file:org.pmedv.blackboard.board.BoardDesignerPerspective.java

@Override
protected void initializeComponents() {
    setLayout(new BorderLayout());
    toolTabPane = new JTabbedPane(JTabbedPane.BOTTOM);
    horizontalSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);

    ctx = AppContext.getContext();//  www  .j a v  a  2s  . c  o m
    resources = ctx.getBean(ResourceService.class);
    advisor = ctx.getBean(ApplicationWindowAdvisor.class);

    final String position = (String) Preferences.values
            .get("org.pmedv.blackboard.BoardDesignerPerspective.layerPanelPlacement");

    SwingUtilities.invokeLater(new Runnable() {

        @Override
        public void run() {

            viewMap = new ViewMap();

            rootWindow = DockingUtil.createRootWindow(viewMap, true);
            rootWindow.getWindowBar(Direction.DOWN).setEnabled(true);
            rootWindow.getWindowProperties().setMinimizeEnabled(true);

            DockingWindowsTheme theme = new SoftBlueIceDockingTheme();

            rootWindow.getRootWindowProperties().addSuperObject(theme.getRootWindowProperties());
            rootWindow.getWindowProperties().getTabProperties().getHighlightedButtonProperties()
                    .getCloseButtonProperties().setVisible(false);
            rootWindow.getWindowProperties().getTabProperties().getNormalButtonProperties()
                    .getCloseButtonProperties().setVisible(false);

            editorArea = new TabWindow();
            editorArea.getWindowProperties().getTabProperties().getNormalButtonProperties()
                    .getCloseButtonProperties().setVisible(false);
            editorArea.getWindowProperties().getTabProperties().getHighlightedButtonProperties()
                    .getCloseButtonProperties().setVisible(false);
            editorArea.getWindowProperties().getTabProperties().getNormalButtonProperties()
                    .getMinimizeButtonProperties().setVisible(true);
            editorArea.getWindowProperties().getTabProperties().getHighlightedButtonProperties()
                    .getMinimizeButtonProperties().setVisible(true);

            DockingWindowAdapter dockingAdapter = new DockingWindowAdapter() {
                @Override
                public void windowClosing(DockingWindow window) throws OperationAbortedException {

                }
            };

            editorArea.addListener(dockingAdapter);
            setDockingListener(dockingAdapter);

            rootWindow.setWindow(editorArea);

            if (position.equalsIgnoreCase("left")) {
                horizontalSplitPane.setRightComponent(rootWindow);
            } else {
                horizontalSplitPane.setLeftComponent(rootWindow);
            }

            advisor.setCurrentEditorArea(editorArea);

        }

    });

    JXTaskPaneContainer taskpanecontainer = new JXTaskPaneContainer();
    taskpanecontainer.setBackground(new Color(182, 191, 205));

    JXTaskPane shapePane = new JXTaskPane();
    shapePane.setTitle(resources.getResourceByKey("BoardDesignerPerspective.shapes.title"));
    shapePane.add(ctx.getBean(ShapePropertiesPanel.class));
    taskpanecontainer.add(shapePane);

    ctx.getBean(ShapePropertiesPanel.class).getStartLineCombo().setSelectedItem(LineEdgeType.STRAIGHT);
    ctx.getBean(ShapePropertiesPanel.class).getEndLineCombo().setSelectedItem(LineEdgeType.STRAIGHT);
    ctx.getBean(ShapePropertiesPanel.class).getThicknessCombo().setSelectedItem(new BasicStroke(2.0f));

    JXTaskPane layerPane = new JXTaskPane();
    layerPane.setTitle(resources.getResourceByKey("BoardDesignerPerspective.layers"));
    layerPane.add(ctx.getBean(ShowLayersCommand.class).getLayerPanel());
    taskpanecontainer.add(layerPane);

    JScrollPane scrollPane = new JScrollPane(taskpanecontainer);

    if (position.equalsIgnoreCase("left")) {
        horizontalSplitPane.setLeftComponent(toolTabPane);
    } else {
        horizontalSplitPane.setRightComponent(toolTabPane);
    }

    horizontalSplitPane.setOneTouchExpandable(true);
    horizontalSplitPane.setDividerSize(10);

    toolTabPane.addTab(resources.getResourceByKey("tooltab.forms"), resources.getIcon("icon.paint"),
            scrollPane);

    final SymbolListPanel symbolListPanel = ctx.getBean(SymbolListPanel.class);
    toolTabPane.addTab(resources.getResourceByKey("tooltab.symbols"), resources.getIcon("icon.symbols"),
            symbolListPanel);

    final ModelListPanel modelListPanel = ctx.getBean(ModelListPanel.class);
    toolTabPane.addTab(resources.getResourceByKey("tooltab.models"), resources.getIcon("icon.model"),
            modelListPanel);

    add(horizontalSplitPane, BorderLayout.CENTER);

    commandArea = new RSyntaxTextArea();
    commandArea.setRows(1);
    commandArea.setColumns(100);

    JPanel commandPanel = new JPanel(new BorderLayout());
    commandPanel.add(new JLabel("Command :"), BorderLayout.WEST);
    commandPanel.add(commandArea, BorderLayout.CENTER);
    commandArea.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2),
            BorderFactory.createLineBorder(Color.BLACK)));
    add(commandPanel, BorderLayout.NORTH);
    setupAutoComplete();

    commandArea.addKeyListener(new KeyAdapter() {

        @Override
        public void keyPressed(KeyEvent e) {

            if (e.getKeyCode() == KeyEvent.VK_ENTER) {

                if (commandArea.getText().startsWith("add ") && commandArea.getText().length() > 4
                        && commandArea.hasFocus()) {

                    PartFactory pf = AppContext.getContext().getBean(PartFactory.class);

                    String tokens[] = commandArea.getText().split(" ");
                    StringBuffer partName = new StringBuffer();

                    for (int i = 1; i < tokens.length; i++) {
                        partName.append(tokens[i] + " ");
                    }

                    String name = partName.toString().trim();

                    if (pf.getPartnames().contains(name)) {
                        e.consume();
                        commandArea.setText("");
                        BoardUtil.addPart(name, EditorUtils.getCurrentActiveEditor());
                    }

                } else if (commandArea.getText().equals("new")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(CreateBoardCommand.class).execute(null);
                } else if (commandArea.getText().equals("resistor")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(AddResistorCommand.class).execute(null);
                } else if (commandArea.getText().equals("diode")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(AddDiodeCommand.class).execute(null);
                } else if (commandArea.getText().equals("text")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(AddTextCommand.class).execute(null);
                } else if (commandArea.getText().equals("open")) {
                    e.consume();
                    commandArea.setText("");
                    new OpenBoardCommand().execute(null);
                } else if (commandArea.getText().equals("save")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(SaveBoardCommand.class).execute(null);
                } else if (commandArea.getText().equals("color")) {
                    e.consume();
                    commandArea.setText("");
                    AppContext.getContext().getBean(ChooseColorCommand.class).execute(null);
                }

            }

        }

    });

    horizontalSplitPane.addPropertyChangeListener(new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            if (evt.getPropertyName().equalsIgnoreCase("dividerLocation")) {
                configProvider.getConfig().setDividerLocation(horizontalSplitPane.getDividerLocation());
            }
        }
    });

    ctx.getBean(ShapePropertiesPanel.class).getObjectField()
            .setText(resources.getResourceByKey("ShapePropertiesPanel.items.none"));
    ctx.getBean(ShapePropertiesPanel.class).getRotationSpinner().setEnabled(false);
    ctx.getBean(ShapePropertiesPanel.class).getStartAngleSpinner().setEnabled(false);

    initListeners();

}

From source file:org.porphyry.view.Opener.java

public Opener(PortfolioFrame portfolio, String title) {
    super(portfolio, portfolio.localize(title));
    this.portfolio = portfolio;
    this.add(new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, this.leftPanel, this.rightPanel));
    Portfolio model = portfolio.getModel();
    try {/*w  w w  .  j a  v a  2 s  . c  o  m*/
        this.populateList(model);
    } catch (Exception e) {
        e.printStackTrace(); //TODO
    }
    this.listView = new JSONList(listModel);
    this.display(this.listView, JSplitPane.RIGHT);

    this.display(new ActionButton("CANCEL", false), JSplitPane.RIGHT);
    this.display(new ActionButton("OPEN", true) {
        @Override
        public void onClick() {
            for (Object o : Opener.this.listView.getSelectedValues()) {
                Opener.this.open(((JSONObject) o).optString("id"), Opener.this.portfolio.getModel());
            }
            super.onClick();
        }
    }, JSplitPane.RIGHT);

    this.setBounds(0, 0, 640, 480);
    this.setVisible(true);
}

From source file:org.processmining.analysis.performance.PerformanceAnalysisGUI.java

/**
 * Actually builds the UI//from w  ww  . ja  v  a 2 s. com
 * 
 * @throws Exception
 */
private void jbInit() throws Exception {
    // Initialize the table which contains the log traces
    processInstanceIDsTable = new DoubleClickTable(new ExtendedLogTable(), updateButton);
    // select all rows as at the beginning the results count for the whole
    // log
    processInstanceIDsTable.getSelectionModel().addSelectionInterval(0, extendedLog.getSizeOfLog() - 1);

    tableContainer = new JScrollPane(processInstanceIDsTable);

    // initialize the westPanel (which contains the processInstanceIDsTable)
    westPanel.setPreferredSize(new Dimension(100, 300));
    westPanel.setLayout(new BorderLayout());
    westPanel.add(tableContainer, BorderLayout.CENTER);
    updateButton.setToolTipText("Update metrics to the selected process instances");
    westPanel.add(piButtonsPanel, BorderLayout.SOUTH);
    piButtonsPanel.setLayout(new BorderLayout());
    piButtonsPanel.add(updateButton, BorderLayout.CENTER);
    piButtonsPanel.add(invertButton, BorderLayout.SOUTH);

    // initialize the eastpanel (which contains the process-metrics)
    eastPanel.setPreferredSize(new Dimension(240, 390));
    eastPanel.setMinimumSize(new Dimension(240, 390));
    eastPanel.setLayout(new GridBagLayout());
    GridBagConstraints cons = new GridBagConstraints();
    cons.gridx = 0;
    cons.gridy = 0;
    cons.insets = new Insets(0, 5, 5, 0);
    cons.anchor = GridBagConstraints.WEST;
    processLabel.setFont(new Font("SansSerif", Font.BOLD, 16));
    eastPanel.add(processLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.insets = new Insets(8, 8, 0, 0);
    eastPanel.add(numberProcessLabel, cons);
    casesProcessLabel.setText(extendedLog.getSizeOfLog() + " cases");
    casesProcessLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 2;
    eastPanel.add(casesProcessLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    eastPanel.add(properLabel, cons);
    completedLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 4;
    eastPanel.add(completedLabel, cons);
    cons.gridx = 0;
    cons.gridy = 5;
    eastPanel.add(arrivalProcessLabel, cons);
    rateProcessLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 6;
    eastPanel.add(rateProcessLabel, cons);
    cons.gridx = 0;
    cons.gridy = 7;
    cons.gridwidth = 2;
    cons.insets = new Insets(15, 5, 0, 2);
    cons.ipadx = 300;
    eastPanel.add(processTablePanel, cons);
    cons.gridx = 0;
    cons.gridy = 8;
    cons.gridwidth = 1;
    cons.insets = new Insets(0, 5, 0, 0);
    cons.weightx = 1;
    cons.ipadx = 0;
    exportProcessButton.setPreferredSize(new Dimension(110, 42));
    exportProcessButton.setMaximumSize(new Dimension(110, 42));
    changeProcessPercButton.setPreferredSize(new Dimension(110, 42));
    changeProcessPercButton.setMaximumSize(new Dimension(110, 42));
    JPanel buttonPanel = new JPanel();
    buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
    buttonPanel.setPreferredSize(new Dimension(240, 42));
    buttonPanel.add(changeProcessPercButton);
    buttonPanel.add(exportProcessButton);
    eastPanel.add(buttonPanel, cons);

    processContainer = new JScrollPane(eastPanel);
    processContainer.setPreferredSize(new Dimension(240, 390));
    // initialize the processTablePanel (which contains the table with
    // throughput times)
    processTablePanel.setLayout(new BorderLayout());
    processTablePanel.setMinimumSize(new Dimension(240, 130));
    processTablePanel.setPreferredSize(new Dimension(240, 130));
    processTable.setRowSelectionAllowed(false);
    processTablePanel.add(processTable.getTableHeader(), BorderLayout.PAGE_START);
    processTablePanel.add(processTable, BorderLayout.CENTER);

    // initialize the grappaPanel (which contains the Petri net UI) and
    // place
    // it on the centerPanel
    grappaPanel = replayResult.getVisualization(extendedLog.getLogTraceIDs());
    grappaPanel.addGrappaListener(new ExtendedGrappaAdapter());
    mapping = new HashMap();
    buildGraphMapping(mapping, grappaPanel.getSubgraph());
    modelContainer = new JScrollPane(grappaPanel);
    centerPanel.setLayout(new BorderLayout());
    centerPanel.add(modelContainer, BorderLayout.CENTER);

    // initialize the colored panels
    Color tCol = (Color) levelColors.get(0);
    lowPanel.setBackground(tCol);
    lowPanel.setBorder(BorderFactory.createEtchedBorder());
    lowPanel.setPreferredSize(new Dimension(25, 12));
    tCol = (Color) levelColors.get(1);
    mediumPanel.setBackground(tCol);
    mediumPanel.setBorder(BorderFactory.createEtchedBorder());
    mediumPanel.setPreferredSize(new Dimension(25, 12));
    tCol = (Color) levelColors.get(2);
    highPanel.setBackground(tCol);
    highPanel.setBorder(BorderFactory.createEtchedBorder());
    highPanel.setPreferredSize(new Dimension(25, 12));

    // initialize the levelPanel (which contains the waiting time settings)
    levelPanel.setBorder(BorderFactory.createRaisedBevelBorder());
    levelPanel.setLayout(new GridBagLayout());
    cons.gridx = 0;
    cons.gridy = 0;
    cons.gridwidth = 2;
    cons.insets = new Insets(2, 2, 0, 5);
    cons.weightx = 0;
    levelPanel.add(waitingLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.anchor = GridBagConstraints.WEST;
    cons.insets = new Insets(2, 2, 0, 5);
    cons.gridwidth = 1;
    levelPanel.add(highPanel, cons);
    cons.gridx = 1;
    cons.gridy = 1;
    levelPanel.add(highLabel, cons);
    cons.gridx = 0;
    cons.gridy = 2;
    cons.insets = new Insets(1, 2, 0, 5);
    levelPanel.add(mediumPanel, cons);
    cons.gridx = 1;
    cons.gridy = 2;
    levelPanel.add(mediumLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    cons.insets = new Insets(2, 2, 2, 5);
    levelPanel.add(lowPanel, cons);
    cons.gridx = 1;
    cons.gridy = 3;
    levelPanel.add(lowLabel, cons);
    cons.gridx = 0;
    cons.gridy = 4;
    cons.gridwidth = 2;
    cons.insets = new Insets(2, 2, 2, 2);
    changeSettingsButton.setMnemonic(KeyEvent.VK_S);
    levelPanel.add(changeSettingsButton, cons);
    levelPanel.setBackground(new Color(220, 220, 220));

    // initialize the selectionPanel (which contains the selected
    // transitions/place)
    initializeSelection();

    // initialize the metricsBottomPanel
    metricsBottomPanel.setLayout(new GridBagLayout());
    cons = new GridBagConstraints();
    cons.gridx = 0;
    cons.gridy = 0;
    cons.gridwidth = 5;
    cons.anchor = GridBagConstraints.WEST;
    cons.insets = new Insets(1, 2, 5, 0);
    titleLabel.setFont(new Font("SansSerif", Font.BOLD, 14));
    metricsBottomPanel.add(titleLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.gridwidth = 1;
    cons.insets = new Insets(1, 2, 2, 0);
    metricsBottomPanel.add(numberObjectLabel, cons);
    cons.gridx = 1;
    cons.gridy = 1;
    cons.gridwidth = 1;
    freqObjectLabel.setFont(new Font("SansSerif", Font.PLAIN, 12));
    metricsBottomPanel.add(freqObjectLabel, cons);
    cons.gridx = 0;
    cons.gridy = 2;
    cons.gridwidth = 1;
    metricsBottomPanel.add(arrivalPlaceLabel, cons);
    cons.gridx = 1;
    cons.gridy = 2;
    cons.gridwidth = 1;
    ratePlaceLabel.setFont(new Font("SansSerif", Font.PLAIN, 12));
    metricsBottomPanel.add(ratePlaceLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    cons.gridwidth = 5;
    metricsBottomPanel.add(tablePanel, cons);
    cons.gridx = 0;
    cons.gridy = 4;
    cons.gridwidth = 2;
    changePercentagesButton.setPreferredSize(new Dimension(170, 25));
    metricsBottomPanel.add(changePercentagesButton, cons);
    cons.gridx = 2;
    cons.gridy = 4;
    cons.gridwidth = 2;
    metricsBottomPanel.add(exportButton, cons);
    // hide all place/transition metrics
    hideAllMetrics();
    metricsBottomContainer = new JScrollPane(metricsBottomPanel);
    metricsBottomContainer.setPreferredSize(new Dimension(550, 140));
    metricsBottomContainer.setMinimumSize(new Dimension(550, 140));
    metricsBottomContainer.setMaximumSize(new Dimension(550, 800));
    metricsBottomContainer.setBorder(BorderFactory.createEmptyBorder());

    // initialize the bottomPanel
    bottomPanel.setBorder(BorderFactory.createEtchedBorder());
    bottomPanel.setPreferredSize(new Dimension(650, 143));
    bottomPanel.setMinimumSize(new Dimension(650, 143));
    bottomPanel.setLayout(new GridBagLayout());
    GridBagConstraints con = new GridBagConstraints();
    con.gridx = 0;
    con.gridy = 0;
    con.gridwidth = 4;
    con.weightx = 2;
    bottomPanel.add(metricsBottomContainer, con);
    con.gridx = 4;
    con.gridy = 0;
    con.gridwidth = 1;
    con.weightx = 1;
    con.anchor = GridBagConstraints.EAST;
    bottomPanel.add(levelPanel, con);
    con.gridx = 5;
    con.gridy = 0; // con.gridwidth = 2;
    con.weightx = 1;
    con.anchor = GridBagConstraints.EAST;
    bottomPanel.add(selectionPanel, con);
    // Divide the upper panels by using splitPanes
    leftSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, westPanel, centerPanel);
    leftSplitPane.setDividerLocation(130);
    leftSplitPane.setOneTouchExpandable(true);
    rightSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftSplitPane, processContainer);
    rightSplitPane.setDividerLocation(rightSplitPane.getSize().width - rightSplitPane.getInsets().right
            - rightSplitPane.getDividerSize() - 240); // processContainer.getWidth());
    rightSplitPane.setOneTouchExpandable(true);
    rightSplitPane.setResizeWeight(1.0);
    rightSplitPane.setDividerSize(3);

    // set tooltips
    processTable.setToolTipText("Throughput time of the process, based on" + " the selected cases");
    rateProcessLabel.setToolTipText("Arrival rate of the selected cases");
    arrivalProcessLabel.setToolTipText("Arrival rate of the selected cases");
    completedLabel.setToolTipText(
            "Total number of the selected cases that" + "  have completed properly and successfully");
    properLabel.setToolTipText(
            "Total number of the selected cases that" + " have completed properly and successfully");
    casesProcessLabel.setToolTipText("Total number of cases selected in" + " the table on the left");
    numberProcessLabel.setToolTipText("Total number of cases selected in" + " the table on the left");
    changeSettingsButton.setToolTipText("Adjust the current waiting time" + " classifications");
    placeTable.setToolTipText("Time-metrics of the selected place, based on" + " the selected cases");
    transitionTable.setToolTipText(
            "Time cases spend in between the" + " selected transitions, based on the selected cases");
    activityTable.setToolTipText(
            "Time-metrics of activity related to the" + " selected transition, based on the selected cases");
    processInstanceIDsTable.setToolTipText("Selected cases");
    changePercentagesButton.setToolTipText("Change percentages of slow," + " fast and normal");
    changeProcessPercButton.setToolTipText("Change percentages of slow," + " fast and normal");
    exportButton.setToolTipText("Export the values of all measurements of"
            + " the metrics in the table above to a comma-seperated" + " text-file");
    exportProcessButton.setToolTipText("Export the value of the throughput"
            + " time of all selected process instances to a comma-seperated" + " text-file");
    // initialize the performanceAnalysisGUI
    this.setLayout(new BorderLayout());
    this.add(bottomPanel, BorderLayout.SOUTH);
    this.add(rightSplitPane, BorderLayout.CENTER);
    this.validate();
    this.repaint();
}

From source file:org.prom5.analysis.performance.PerformanceAnalysisGUI.java

/**
 * Actually builds the UI//from w ww . j a  va2 s .  c o m
 * @throws Exception
 */
private void jbInit() throws Exception {
    //Initialize the table which contains the log traces
    processInstanceIDsTable = new DoubleClickTable(new ExtendedLogTable(), updateButton);
    // select all rows as at the beginning the results count for the whole log
    processInstanceIDsTable.getSelectionModel().addSelectionInterval(0, extendedLog.getSizeOfLog() - 1);

    tableContainer = new JScrollPane(processInstanceIDsTable);

    //initialize the westPanel (which contains the processInstanceIDsTable)
    westPanel.setPreferredSize(new Dimension(100, 300));
    westPanel.setLayout(new BorderLayout());
    westPanel.add(tableContainer, BorderLayout.CENTER);
    updateButton.setToolTipText("Update metrics to the selected process instances");
    westPanel.add(piButtonsPanel, BorderLayout.SOUTH);
    piButtonsPanel.setLayout(new BorderLayout());
    piButtonsPanel.add(updateButton, BorderLayout.CENTER);
    piButtonsPanel.add(invertButton, BorderLayout.SOUTH);

    //initialize the eastpanel (which contains the process-metrics)
    eastPanel.setPreferredSize(new Dimension(240, 390));
    eastPanel.setMinimumSize(new Dimension(240, 390));
    eastPanel.setLayout(new GridBagLayout());
    GridBagConstraints cons = new GridBagConstraints();
    cons.gridx = 0;
    cons.gridy = 0;
    cons.insets = new Insets(0, 5, 5, 0);
    cons.anchor = GridBagConstraints.WEST;
    processLabel.setFont(new Font("SansSerif", Font.BOLD, 16));
    eastPanel.add(processLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.insets = new Insets(8, 8, 0, 0);
    eastPanel.add(numberProcessLabel, cons);
    casesProcessLabel.setText(extendedLog.getSizeOfLog() + " cases");
    casesProcessLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 2;
    eastPanel.add(casesProcessLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    eastPanel.add(properLabel, cons);
    completedLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 4;
    eastPanel.add(completedLabel, cons);
    cons.gridx = 0;
    cons.gridy = 5;
    eastPanel.add(arrivalProcessLabel, cons);
    rateProcessLabel.setFont(new Font("SansSerif", Font.PLAIN, 11));
    cons.gridx = 0;
    cons.gridy = 6;
    eastPanel.add(rateProcessLabel, cons);
    cons.gridx = 0;
    cons.gridy = 7;
    cons.gridwidth = 2;
    cons.insets = new Insets(15, 5, 0, 2);
    cons.ipadx = 300;
    eastPanel.add(processTablePanel, cons);
    cons.gridx = 0;
    cons.gridy = 8;
    cons.gridwidth = 1;
    cons.insets = new Insets(0, 5, 0, 0);
    cons.weightx = 1;
    cons.ipadx = 0;
    exportProcessButton.setPreferredSize(new Dimension(110, 42));
    exportProcessButton.setMaximumSize(new Dimension(110, 42));
    changeProcessPercButton.setPreferredSize(new Dimension(110, 42));
    changeProcessPercButton.setMaximumSize(new Dimension(110, 42));
    JPanel buttonPanel = new JPanel();
    buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
    buttonPanel.setPreferredSize(new Dimension(240, 42));
    buttonPanel.add(changeProcessPercButton);
    buttonPanel.add(exportProcessButton);
    eastPanel.add(buttonPanel, cons);

    processContainer = new JScrollPane(eastPanel);
    processContainer.setPreferredSize(new Dimension(240, 390));
    //initialize the processTablePanel (which contains the table with throughput times)
    processTablePanel.setLayout(new BorderLayout());
    processTablePanel.setMinimumSize(new Dimension(240, 130));
    processTablePanel.setPreferredSize(new Dimension(240, 130));
    processTable.setRowSelectionAllowed(false);
    processTablePanel.add(processTable.getTableHeader(), BorderLayout.PAGE_START);
    processTablePanel.add(processTable, BorderLayout.CENTER);

    //initialize the grappaPanel (which contains the Petri net UI) and place
    //it on the centerPanel
    grappaPanel = replayResult.getVisualization(extendedLog.getLogTraceIDs());
    grappaPanel.addGrappaListener(new ExtendedGrappaAdapter());
    mapping = new HashMap();
    buildGraphMapping(mapping, grappaPanel.getSubgraph());
    modelContainer = new JScrollPane(grappaPanel);
    centerPanel.setLayout(new BorderLayout());
    centerPanel.add(modelContainer, BorderLayout.CENTER);

    //initialize the colored panels
    Color tCol = (Color) levelColors.get(0);
    lowPanel.setBackground(tCol);
    lowPanel.setBorder(BorderFactory.createEtchedBorder());
    lowPanel.setPreferredSize(new Dimension(25, 12));
    tCol = (Color) levelColors.get(1);
    mediumPanel.setBackground(tCol);
    mediumPanel.setBorder(BorderFactory.createEtchedBorder());
    mediumPanel.setPreferredSize(new Dimension(25, 12));
    tCol = (Color) levelColors.get(2);
    highPanel.setBackground(tCol);
    highPanel.setBorder(BorderFactory.createEtchedBorder());
    highPanel.setPreferredSize(new Dimension(25, 12));

    //initialize the levelPanel (which contains the waiting time settings)
    levelPanel.setBorder(BorderFactory.createRaisedBevelBorder());
    levelPanel.setLayout(new GridBagLayout());
    cons.gridx = 0;
    cons.gridy = 0;
    cons.gridwidth = 2;
    cons.insets = new Insets(2, 2, 0, 5);
    cons.weightx = 0;
    levelPanel.add(waitingLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.anchor = GridBagConstraints.WEST;
    cons.insets = new Insets(2, 2, 0, 5);
    cons.gridwidth = 1;
    levelPanel.add(highPanel, cons);
    cons.gridx = 1;
    cons.gridy = 1;
    levelPanel.add(highLabel, cons);
    cons.gridx = 0;
    cons.gridy = 2;
    cons.insets = new Insets(1, 2, 0, 5);
    levelPanel.add(mediumPanel, cons);
    cons.gridx = 1;
    cons.gridy = 2;
    levelPanel.add(mediumLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    cons.insets = new Insets(2, 2, 2, 5);
    levelPanel.add(lowPanel, cons);
    cons.gridx = 1;
    cons.gridy = 3;
    levelPanel.add(lowLabel, cons);
    cons.gridx = 0;
    cons.gridy = 4;
    cons.gridwidth = 2;
    cons.insets = new Insets(2, 2, 2, 2);
    changeSettingsButton.setMnemonic(KeyEvent.VK_S);
    levelPanel.add(changeSettingsButton, cons);
    levelPanel.setBackground(new Color(220, 220, 220));

    //initialize the selectionPanel (which contains the selected transitions/place)
    initializeSelection();

    //initialize the metricsBottomPanel
    metricsBottomPanel.setLayout(new GridBagLayout());
    cons = new GridBagConstraints();
    cons.gridx = 0;
    cons.gridy = 0;
    cons.gridwidth = 5;
    cons.anchor = GridBagConstraints.WEST;
    cons.insets = new Insets(1, 2, 5, 0);
    titleLabel.setFont(new Font("SansSerif", Font.BOLD, 14));
    metricsBottomPanel.add(titleLabel, cons);
    cons.gridx = 0;
    cons.gridy = 1;
    cons.gridwidth = 1;
    cons.insets = new Insets(1, 2, 2, 0);
    metricsBottomPanel.add(numberObjectLabel, cons);
    cons.gridx = 1;
    cons.gridy = 1;
    cons.gridwidth = 1;
    freqObjectLabel.setFont(new Font("SansSerif", Font.PLAIN, 12));
    metricsBottomPanel.add(freqObjectLabel, cons);
    cons.gridx = 0;
    cons.gridy = 2;
    cons.gridwidth = 1;
    metricsBottomPanel.add(arrivalPlaceLabel, cons);
    cons.gridx = 1;
    cons.gridy = 2;
    cons.gridwidth = 1;
    ratePlaceLabel.setFont(new Font("SansSerif", Font.PLAIN, 12));
    metricsBottomPanel.add(ratePlaceLabel, cons);
    cons.gridx = 0;
    cons.gridy = 3;
    cons.gridwidth = 5;
    metricsBottomPanel.add(tablePanel, cons);
    cons.gridx = 0;
    cons.gridy = 4;
    cons.gridwidth = 2;
    changePercentagesButton.setPreferredSize(new Dimension(170, 25));
    metricsBottomPanel.add(changePercentagesButton, cons);
    cons.gridx = 2;
    cons.gridy = 4;
    cons.gridwidth = 2;
    metricsBottomPanel.add(exportButton, cons);
    //hide all place/transition metrics
    hideAllMetrics();
    metricsBottomContainer = new JScrollPane(metricsBottomPanel);
    metricsBottomContainer.setPreferredSize(new Dimension(550, 140));
    metricsBottomContainer.setMinimumSize(new Dimension(550, 140));
    metricsBottomContainer.setMaximumSize(new Dimension(550, 800));
    metricsBottomContainer.setBorder(BorderFactory.createEmptyBorder());

    //initialize the bottomPanel
    bottomPanel.setBorder(BorderFactory.createEtchedBorder());
    bottomPanel.setPreferredSize(new Dimension(650, 143));
    bottomPanel.setMinimumSize(new Dimension(650, 143));
    bottomPanel.setLayout(new GridBagLayout());
    GridBagConstraints con = new GridBagConstraints();
    con.gridx = 0;
    con.gridy = 0;
    con.gridwidth = 4;
    con.weightx = 2;
    bottomPanel.add(metricsBottomContainer, con);
    con.gridx = 4;
    con.gridy = 0;
    con.gridwidth = 1;
    con.weightx = 1;
    con.anchor = GridBagConstraints.EAST;
    bottomPanel.add(levelPanel, con);
    con.gridx = 5;
    con.gridy = 0; //con.gridwidth = 2;
    con.weightx = 1;
    con.anchor = GridBagConstraints.EAST;
    bottomPanel.add(selectionPanel, con);
    //Divide the upper panels by using splitPanes
    leftSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, westPanel, centerPanel);
    leftSplitPane.setDividerLocation(130);
    leftSplitPane.setOneTouchExpandable(true);
    rightSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftSplitPane, processContainer);
    rightSplitPane.setDividerLocation(rightSplitPane.getSize().width - rightSplitPane.getInsets().right
            - rightSplitPane.getDividerSize() - 240); //processContainer.getWidth());
    rightSplitPane.setOneTouchExpandable(true);
    rightSplitPane.setResizeWeight(1.0);
    rightSplitPane.setDividerSize(3);

    //set tooltips
    processTable.setToolTipText("Throughput time of the process, based on" + " the selected cases");
    rateProcessLabel.setToolTipText("Arrival rate of the selected cases");
    arrivalProcessLabel.setToolTipText("Arrival rate of the selected cases");
    completedLabel.setToolTipText(
            "Total number of the selected cases that" + "  have completed properly and successfully");
    properLabel.setToolTipText(
            "Total number of the selected cases that" + " have completed properly and successfully");
    casesProcessLabel.setToolTipText("Total number of cases selected in" + " the table on the left");
    numberProcessLabel.setToolTipText("Total number of cases selected in" + " the table on the left");
    changeSettingsButton.setToolTipText("Adjust the current waiting time" + " classifications");
    placeTable.setToolTipText("Time-metrics of the selected place, based on" + " the selected cases");
    transitionTable.setToolTipText(
            "Time cases spend in between the" + " selected transitions, based on the selected cases");
    activityTable.setToolTipText(
            "Time-metrics of activity related to the" + " selected transition, based on the selected cases");
    processInstanceIDsTable.setToolTipText("Selected cases");
    changePercentagesButton.setToolTipText("Change percentages of slow," + " fast and normal");
    changeProcessPercButton.setToolTipText("Change percentages of slow," + " fast and normal");
    exportButton.setToolTipText("Export the values of all measurements of"
            + " the metrics in the table above to a comma-seperated" + " text-file");
    exportProcessButton.setToolTipText("Export the value of the throughput"
            + " time of all selected process instances to a comma-seperated" + " text-file");
    //initialize the performanceAnalysisGUI
    this.setLayout(new BorderLayout());
    this.add(bottomPanel, BorderLayout.SOUTH);
    this.add(rightSplitPane, BorderLayout.CENTER);
    this.validate();
    this.repaint();
}

From source file:org.rdv.ui.MainPanel.java

private void initSplitPane() {
    splitPane = Factory.createStrippedSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftPanel, rightPanel, 0.2f);
    splitPane.setContinuousLayout(true);
    add(splitPane, BorderLayout.CENTER);
}

From source file:org.richie.codeGen.ui.CodeGenMainUI.java

private void initlize() {
    setTitle("??");
    setBounds(120, 80, 1024, 550);//  w  w w .j  a  v a 2s.  co m
    setDefaultCloseOperation(3);
    setLayout(new BorderLayout(5, 5));
    // ?MenuBar
    initMenuBar();
    JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, getWestPanel(), getCenterPanel());
    split.setContinuousLayout(false);
    split.setOneTouchExpandable(true);
    split.setDividerLocation(150);
    add(split, BorderLayout.CENTER);
    //?pdm
    openLastPdmFile();
    addCloseListener();
    this.setIconImage(new ImageIcon(ClassLoader.getSystemResource("resources/images/logo.jpg")).getImage());
}

From source file:org.roche.antibody.ui.components.AntibodyEditorPane.java

/**
 * initates swing component// ww  w .ja  v a2  s  .  co m
 */
private void initComponents() {
    abstractGraphLayouter = AbstractGraphLayoutService.createLayouter();
    this.abstractAntibodyView = new Graph2DView();
    this.abstractAntibodyView.setFitContentOnResize(true);
    editMode = new AntibodyEditMode(this);
    abstractAntibodyView.addViewMode(editMode);

    // enable bridges for PolyLineEdgeRealizer
    BridgeCalculator bridgeCalculator = new BridgeCalculator();
    bridgeCalculator.setCrossingMode(BridgeCalculator.CROSSING_MODE_HORIZONTAL_CROSSES_VERTICAL);
    ((DefaultGraph2DRenderer) abstractAntibodyView.getGraph2DRenderer()).setBridgeCalculator(bridgeCalculator);
    configureKeyboardActions();

    this.addComponentListener(new ComponentAdapter() {
        @Override
        public void componentShown(ComponentEvent e) {
            super.componentShown(e);
            LOG.debug("Call componentShown of: {}", this.getClass().getName());
            updateGraphLayout();
        }
    });
    this.setLayout(new BorderLayout());

    // --- START Graphical Representation of Antybody (Center Panel)
    JSplitPane pnlSplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
    pnlSplit.setOneTouchExpandable(true);
    this.add(pnlSplit, BorderLayout.CENTER);
    pnlSplit.setLeftComponent(abstractAntibodyView);
    pnlSplit.setResizeWeight(1);
    // --- START Property Table, HELM Notation etc. (Right Panel)
    pnlEast = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
    pnlEast.setBorder(DEFAULT_BORDER);
    pnlEast.setResizeWeight(0.65);
    antibodyPropertyModel = new DomainTableModel();
    antibodyPropertyModel.addTableModelListener(new TableModelListener() {
        @Override
        public void tableChanged(TableModelEvent e) {
            abstractGraph.updateViews();
        }
    });
    propertyTable = new JTable(antibodyPropertyModel);
    propertyTable.setDefaultRenderer(Object.class, new DomainTableCellRenderer());

    JScrollPane spnlPropertyTable = new JScrollPane(propertyTable);
    pnlEast.setTopComponent(spnlPropertyTable);
    pnlSplit.setRightComponent(pnlEast);

    // graphical preview
    graphicsPane = new JPanel(new BorderLayout());
    anotherView = new Graph2DView();
    graphicsPane.add(anotherView, BorderLayout.CENTER);

    // Tabcontainer for graphic and helm notation preview
    tabbedPane = new JTabbedPane(JTabbedPane.TOP);

    // --- HELM notation Preview Panel
    helmPreviewPane = new JPanel();
    helmPreviewPane.setLayout(new BorderLayout());
    tabbedPane.addTab("HELM Notation Preview", null, helmPreviewPane, null);

    // --- Button Panel for HELM notation preview
    JPanel pnlButtons = new JPanel(new FlowLayout(FlowLayout.RIGHT));

    cmdSaveAsXml = new JButton("Save Antibody",
            new ImageIcon(ResourceProvider.getInstance().get(ResourceProvider.DISK_IMAGE)));
    cmdSaveAsXml.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            XmlFileChooser dialog = new XmlFileChooser();
            if (dialog.showSaveDialog(mainEditor.getFrame()) == JFileChooser.APPROVE_OPTION) {
                File abFile = dialog.getSelectedFile();
                String newPath = FilenameUtils.removeExtension(abFile.getAbsolutePath());
                abFile = new File(newPath + AntibodyFileChooser.XML_EXTENSION);
                AntibodyContainer abContainer = new AntibodyContainer();
                try {
                    antibody.setDomainLibraryPath(ConfigFileService.getInstance().getDomainLibFilename());
                    // PreferencesService.getInstance().getDomainLibraryFile().getAbsolutePath());

                    abContainer.setAntibody(antibody);
                    abContainer.setHelmCode(helmTextArea.getText());
                    xmlService.marshal(abContainer, abFile);
                } catch (JAXBException e1) {
                    JOptionPane.showMessageDialog(mainEditor.getFrame(),
                            "Could not save Antibody! Please try again", "Error", JOptionPane.ERROR_MESSAGE);
                    LOG.error("Could not save Antibody-XML to disk! {}", e1);
                }
            }
        }
    });
    pnlButtons.add(cmdSaveAsXml);

    cmdLoadFromXml = new JButton("Load Antibody",
            new ImageIcon(ResourceProvider.getInstance().get(ResourceProvider.OPEN_FOLDER)));
    cmdLoadFromXml.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            XmlFileChooser dialog = new XmlFileChooser();
            if (dialog.showOpenDialog(mainEditor.getFrame()) == JFileChooser.APPROVE_OPTION) {
                File abFile = dialog.getSelectedFile();
                try {
                    AntibodyContainer newAbContainer = xmlService.unmarshal(abFile);
                    setModel(newAbContainer.getAntibody());
                } catch (JAXBException e1) {
                    JOptionPane.showMessageDialog(mainEditor.getFrame(),
                            "Could not load Antibody! Please try again", "Error", JOptionPane.ERROR_MESSAGE);
                    LOG.error("Could not load Antibody-XML to disk! {}", e1);
                }
            }
        }
    });
    pnlButtons.add(cmdLoadFromXml);
    helmPreviewPane.add(pnlButtons, BorderLayout.SOUTH);

    pnlEast.setBottomComponent(tabbedPane);

    // --- HELM Notation Text Area
    helmTextArea = new JTextArea();
    helmTextArea.setLineWrap(true);
    JScrollPane spnlHELMTextArea = new JScrollPane(helmTextArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
            JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    helmPreviewPane.add(spnlHELMTextArea, BorderLayout.CENTER);
}

From source file:org.sikuli.ide.SikuliIDE.java

private void initSikuliIDE(String[] args) {
    prefs = PreferencesUser.getInstance();
    if (prefs.getUserType() < 0) {
        prefs.setUserType(PreferencesUser.NEWBEE);
        prefs.setIdeSession("");
        prefs.setDefaults(prefs.getUserType());
    }//from www . j  a  va2 s.  co  m

    ResourceLoader.get().check(Settings.SIKULI_LIB);

    _windowSize = prefs.getIdeSize();
    _windowLocation = prefs.getIdeLocation();
    Screen m = (Screen) (new Location(_windowLocation)).getScreen();
    if (m == null) {
        String em = "Remembered window not valid.\nGoing to primary screen";
        log(-1, em);
        Sikulix.popError(em, "IDE has problems ...");
        m = Screen.getPrimaryScreen();
        _windowSize.width = 0;
    }
    Rectangle s = m.getBounds();
    if (_windowSize.width == 0 || _windowSize.width > s.width || _windowSize.height > s.height) {
        if (s.width < 1025) {
            _windowSize = new Dimension(1024, 700);
            _windowLocation = new Point(0, 0);
        } else {
            _windowSize = new Dimension(s.width - 150, s.height - 100);
            _windowLocation = new Point(75, 0);
        }
    }
    setSize(_windowSize);
    setLocation(_windowLocation);

    Debug.log(3, "IDE: Adding components to window");
    initMenuBars(this);
    final Container c = getContentPane();
    c.setLayout(new BorderLayout());
    Debug.log(3, "IDE: creating tabbed editor");
    initTabPane();
    Debug.log(3, "IDE: creating message area");
    initMsgPane(prefs.getPrefMoreMessage() == PreferencesUser.HORIZONTAL);
    // RaiMan not used      initSidePane(); // IDE UnitTest

    Debug.log(3, "IDE: creating combined work window");
    JPanel codeAndUnitPane = new JPanel(new BorderLayout(10, 10));
    codeAndUnitPane.setBorder(BorderFactory.createEmptyBorder(0, 8, 0, 0));
    codeAndUnitPane.add(tabPane, BorderLayout.CENTER);
    // RaiMan not used      codeAndUnitPane.add(_sidePane, BorderLayout.EAST);
    if (prefs.getPrefMoreMessage() == PreferencesUser.VERTICAL) {
        _mainSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, codeAndUnitPane, msgPane);
    } else {
        _mainSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, codeAndUnitPane, msgPane);
    }
    _mainSplitPane.setResizeWeight(0.6);
    _mainSplitPane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));

    Debug.log(3, "IDE: Putting all together");
    JPanel editPane = new JPanel(new BorderLayout(0, 0));

    JComponent cp = createCommandPane();

    if (PreferencesUser.getInstance().getPrefMoreCommandBar()) {
        editPane.add(cp, BorderLayout.WEST);
    }

    editPane.add(_mainSplitPane, BorderLayout.CENTER);
    c.add(editPane, BorderLayout.CENTER);

    JToolBar tb = initToolbar();
    c.add(tb, BorderLayout.NORTH); // the buttons

    c.add(initStatusbar(), BorderLayout.SOUTH);
    c.doLayout();

    initShortcutKeys();
    initHotkeys();
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    initWindowListener();
    initTooltip();

    autoCheckUpdate();

    _inited = true;
    try {
        getCurrentCodePane().requestFocus();
    } catch (Exception e) {
    }

    restoreSession(0);
    if (tabPane.getTabCount() == 0) {
        (new FileAction()).doNew(null);
    }
    tabPane.setSelectedIndex(0);

    Debug.log(3, "Sikuli-IDE startup: " + ((new Date()).getTime() - start));
    setVisible(true);
    _mainSplitPane.setDividerLocation(0.6);
    return; // as breakpoint
}

From source file:org.sintef.thingml.ThingMLFrame.java

public ThingMLFrame(String args[]) {
    int i = 0;/*from   w  ww  .j a v  a 2  s.  c o  m*/
    for (String s : args) {
        if (i > 0) {
            argsFlat += "=";
        }
        argsFlat += s;
    }

    if (argsFlat.contains("-open=")) {
        File filePath = new File(argsFlat.substring(argsFlat.indexOf("=") + 1));
        filePanel = new FilePanel(editor, this, filePath.getParentFile());

        String content = "";
        try {
            final InputStream input = new FileInputStream(filePath);
            final java.util.List<String> packLines = IOUtils.readLines(input);
            for (String line : packLines) {
                content += line + "\n";
            }
            input.close();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        editor.loadText(content, null);
    } else {
        filePanel = new FilePanel(editor, this, null);
    }

    setTitle("ThingML Editor");
    this.setLayout(new BorderLayout());

    filePanel.setPreferredSize(new Dimension(300, 300));
    filePanel.setSize(300, 300);

    JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, filePanel, editor);
    splitPane.setContinuousLayout(true);
    splitPane.setDividerSize(6);
    splitPane.setDividerLocation(200);
    splitPane.setResizeWeight(0.0);
    splitPane.setBorder(null);

    add(splitPane, BorderLayout.CENTER);
}

From source file:org.trianacode.gui.hci.ApplicationFrame.java

/**
 * Initialises the panels in the main window
 *///from   w ww .  j a v a 2  s  .  c  om
private void initLayout() {

    GUIEnv.setApplicationFrame(this);
    ColorManager.setDefaultColorModel(new TrianaColorModel());
    ColorManager.registerColorModel(ScriptConstants.SCRIPT_RENDERING_HINT, new ScriptColorModel());

    // do this after all other color loading
    ColorTable.instance().loadUserPrefs();

    TaskGraphView defaultview = new TaskGraphView("Default View");
    TrianaComponentModel compmodel = new TrianaComponentModel(tools, this, this);

    defaultview.setDefaultToolModel(compmodel);
    defaultview.setDefaultOpenGroupModel(compmodel);
    defaultview.registerToolModel(ScriptConstants.SCRIPT_RENDERING_HINT, new ScriptComponentModel());
    defaultview.registerToolModel(TextToolConstants.TEXT_TOOL_RENDERING_HINT, new TextToolComponentModel());
    defaultview.registerToolModel(HiddenToolConstants.HIDDEN_RENDERING_HINT, new HiddenComponentModel());

    TaskGraphView mapview = new TaskGraphView("Map View", defaultview);
    mapview.registerOpenGroupModel(MapConstants.MAP_RENDERING_HINT, new MapComponentModel());
    mapview.registerToolModel(MapConstants.MAP_LOCATION_RENDERING_HINT, new MapLocationComponentModel());

    TaskGraphViewManager.setDefaultTaskGraphView(defaultview);
    TaskGraphViewManager.registerTaskGraphView(MapConstants.MAP_RENDERING_HINT, mapview);

    taskGraphFileHandler = new TaskGraphFileHandler();

    trianaMenuBar = new TrianaMainMenu(this, tools);
    this.setJMenuBar(trianaMenuBar);

    TrianaShutdownHook shutDownHook = new TrianaShutdownHook();
    Runtime.getRuntime().addShutdownHook(shutDownHook);
    getDesktopViewManager().addDesktopViewListener(this);
    this.workspace.add(getDesktopViewManager().getWorkspace(), BorderLayout.CENTER);

    ((TrianaMainMenu) trianaMenuBar).addHelp();

    ToolTreeModel treemodel = new ToolTreeModel(tools);
    toolboxTree = new JTree(treemodel);
    toolboxTree.addFocusListener(this);
    toolboxTree.setCellRenderer(new TrianaTreeRenderer());
    toolmonitor.setTree(toolboxTree);

    treemodel.addTreeModelListener(this);

    ToolTipManager.sharedInstance().registerComponent(toolboxTree);
    ToolTipManager.sharedInstance().setInitialDelay(TOOL_TIP_SHOW_DELAY);
    ToolTipManager.sharedInstance().setDismissDelay(TOOL_TIP_HIDE_DELAY);

    //set up key maps
    MainTrianaKeyMapFactory keymaps = new MainTrianaKeyMapFactory(this, ActionDisplayOptions.DISPLAY_NAME);
    InputMap inputMap = keymaps.getInputMap();
    inputMap.setParent(this.getRootPane().getInputMap());
    this.getRootPane().setInputMap(JComponent.WHEN_FOCUSED, inputMap);
    ActionMap actMap = keymaps.getActionMap();
    actMap.setParent(this.getRootPane().getActionMap());
    this.getRootPane().setActionMap(actMap);

    leaflistener = new LeafListener(toolboxTree, this, tools);

    keymaps = new MainTrianaKeyMapFactory(leaflistener, ActionDisplayOptions.DISPLAY_NAME);
    inputMap = keymaps.getInputMap();
    inputMap.setParent(toolboxTree.getInputMap());
    toolboxTree.setInputMap(JComponent.WHEN_FOCUSED, inputMap);
    actMap = keymaps.getActionMap();
    actMap.setParent(toolboxTree.getActionMap());
    toolboxTree.setActionMap(actMap);

    toolboxTree.addMouseListener(leaflistener);
    toolboxTree.addMouseMotionListener(leaflistener);
    //toolboxTree.setRootVisible(false);
    JPanel toolPanel = new JPanel(new BorderLayout());

    SearchToolBar searchtoolbar = new SearchToolBar("Search", toolboxTree, treemodel);
    searchtoolbar.setFloatable(false);

    toolPanel.add(searchtoolbar, BorderLayout.NORTH);
    JScrollPane scroll = new JScrollPane(toolboxTree);

    toolPanel.add(scroll, BorderLayout.CENTER);

    JSplitPane verticalSplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, toolPanel, workspace);

    TrianaToolBar toolbar = new TrianaToolBar("Main ToolBar", this);
    TrianaUnitToolBar unitToolbar = new TrianaUnitToolBar("Unit ToolBar");
    toolbar.setRollover(true);
    unitToolbar.setRollover(true);

    JPanel innerpanel = new JPanel();
    innerpanel.setLayout(new BoxLayout(innerpanel, BoxLayout.X_AXIS));
    innerpanel.add(toolbar);
    innerpanel.add(Box.createHorizontalStrut(10));
    innerpanel.add(unitToolbar);
    innerpanel.add(Box.createHorizontalGlue());

    JPanel outerpanel = new JPanel(new BorderLayout());

    outerpanel.add(innerpanel, BorderLayout.NORTH);
    outerpanel.add(verticalSplit, BorderLayout.CENTER);
    getContentPane().add(outerpanel);
}