Example usage for javax.swing BorderFactory createRaisedBevelBorder

List of usage examples for javax.swing BorderFactory createRaisedBevelBorder

Introduction

In this page you can find the example usage for javax.swing BorderFactory createRaisedBevelBorder.

Prototype

public static Border createRaisedBevelBorder() 

Source Link

Document

Creates a border with a raised beveled edge, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.

Usage

From source file:com.xilinx.virtex7.MainScreen.java

private JPanel testAndStats() {
    JPanel tstats = new JPanel();
    tstats.setLayout(new BoxLayout(tstats, BoxLayout.Y_AXIS));

    JPanel tstats1 = new JPanel();
    tstats1.setLayout(new BoxLayout(tstats1, BoxLayout.Y_AXIS));

    tstats1.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(""),
            BorderFactory.createRaisedBevelBorder()));

    tstats1.add(testPanelItems());/* w  ww. ja  va 2  s.  com*/

    JPanel dmaInner = new JPanel(new BorderLayout());

    JPanel dmaPanel = new JPanel(new BorderLayout());

    dmaPanel.setBackground(new Color(130, 170, 180));
    table1 = new MyTableModel(dummy_data, dmaColumnNames0);
    dmaStats1 = new JTable(table1);
    try {
        dmaStats1.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }
    JTableHeader dmaHeader = dmaStats1.getTableHeader();
    dmaHeader.setForeground(new Color(92, 25, 25));

    dmaPanel.add(dmaHeader, BorderLayout.PAGE_START);
    dmaPanel.add(dmaStats1, BorderLayout.CENTER);
    dmaInner.add(dmaPanel, BorderLayout.CENTER);
    tstats1.add(dmaInner);
    tstats.add(tstats1);

    //tstats.add(trnPanel);

    JPanel tstats2 = new JPanel();
    tstats2.setLayout(new BoxLayout(tstats2, BoxLayout.Y_AXIS));
    tstats2.add(testPanelItems1());

    tstats2.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(""),
            BorderFactory.createRaisedBevelBorder()));

    JPanel dmaPanel1 = new JPanel(new BorderLayout());

    table2 = new MyTableModel(dummy_data, dmaColumnNames1);
    dmaStats2 = new JTable(table2);
    try {
        dmaStats2.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }
    JTableHeader dmaHeader1 = dmaStats2.getTableHeader();
    dmaHeader1.setForeground(new Color(92, 25, 25));

    dmaPanel1.add(dmaHeader1, BorderLayout.PAGE_START);
    dmaPanel1.add(dmaStats2, BorderLayout.CENTER);
    tstats2.add(dmaPanel1);
    tstats.add(tstats2);

    return tstats;
}

From source file:com.xilinx.virtex7.MainScreen.java

private JPanel messageBox() {
    JPanel tstats3 = new JPanel(new BorderLayout());
    /*tstats3.setBorder(BorderFactory.createCompoundBorder(
                BorderFactory.createTitledBorder("Message Log"),
                BorderFactory.createRaisedBevelBorder()));*/
    JPanel trnPanel = new JPanel(new GridLayout(1, 1));
    trnPanel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder("PCIe Statistics"),
            BorderFactory.createRaisedBevelBorder()));
    JPanel trn1 = new JPanel(new FlowLayout());
    trn1.add(new JLabel("Transmit (writes in Gbps): "));
    trnLTX = new JTextField("0.0", 5);
    trnLTX.setEditable(false);//from  w w  w. j  a  v  a2  s .co  m
    trn1.add(trnLTX);
    trn1.add(new JLabel("Receive (reads in Gbps): "));
    trnLRX = new JTextField("0.0", 5);
    trnLRX.setEditable(false);
    trn1.add(trnLRX);
    trnPanel.add(trn1);

    textArea = new CustomTextPane();

    final JScrollPane scrollPane = new JScrollPane(textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
            JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
    scrollPane.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder("Message Log"),
            BorderFactory.createRaisedBevelBorder()));
    scrollPane.setPreferredSize(new Dimension(scrollPane.getPreferredSize().width, 100));
    //scrollPane.setMaximumSize(new Dimension(scrollPane.getPreferredSize().width, 100));  
    // keep scrollbar at end showing latest messages
    /*scrollPane.getVerticalScrollBar().addAdjustmentListener(new AdjustmentListener() {
    BoundedRangeModel brm = scrollPane.getVerticalScrollBar().getModel();
    boolean wasAtBottom = true;
    @Override
    public void adjustmentValueChanged(AdjustmentEvent ae) {
        if (!brm.getValueIsAdjusting() &&
                 (scrollPane.) == brm.getMaximum()) {
            if (wasAtBottom)
                brm.setValue(brm.getMaximum());
                       
         } else
                wasAtBottom = ((brm.getValue() + brm.getExtent()) == brm.getMaximum());
            
        }
    });*/

    textArea.setEditable(false);

    tstats3.add(scrollPane, BorderLayout.CENTER);

    tstats3.add(trnPanel, BorderLayout.PAGE_START);
    return tstats3;
    // testPanel.add(tstats3, BorderLayout.PAGE_END);
}

From source file:com.xilinx.virtex7.MainScreen.java

private JPanel testAndStatsSecondTab() {
    JPanel tstats = new JPanel();
    tstats.setLayout(new BoxLayout(tstats, BoxLayout.Y_AXIS));

    JPanel tstats1 = new JPanel();
    tstats1.setLayout(new BoxLayout(tstats1, BoxLayout.Y_AXIS));

    tstats1.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(""),
            BorderFactory.createRaisedBevelBorder()));

    tstats1.add(testPanelItems2());// need to change testPanelItems method.

    JPanel dmaInner = new JPanel(new BorderLayout());

    JPanel dmaPanel = new JPanel(new BorderLayout());

    dmaPanel.setBackground(new Color(130, 170, 180));
    table1T2 = new MyTableModel(dummy_data, dmaColumnNames2);
    dmaStats1T2 = new JTable(table1T2);
    try {//from w w  w  . ja v a  2s  .  c o m
        dmaStats1T2.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }
    JTableHeader dmaHeader = dmaStats1T2.getTableHeader();
    dmaHeader.setForeground(new Color(92, 25, 25));

    dmaPanel.add(dmaHeader, BorderLayout.PAGE_START);
    dmaPanel.add(dmaStats1T2, BorderLayout.CENTER);
    dmaInner.add(dmaPanel, BorderLayout.CENTER);
    tstats1.add(dmaInner);
    tstats.add(tstats1);

    /*JPanel trnPanel = new JPanel(new GridLayout(1,1));
    trnPanel.setBorder(BorderFactory.createCompoundBorder(
                BorderFactory.createTitledBorder("PCIe Statistics"),
                BorderFactory.createRaisedBevelBorder()));
    JPanel trn1 = new JPanel(new FlowLayout());
    trn1.add(new JLabel("Transmit (writes in Gbps): "));
    trnLTXT2 = new JTextField("0.0", 5);
    trnLTXT2.setEditable(false);
    trn1.add(trnLTXT2);
    trn1.add(new JLabel("Receive (reads in Gbps): "));
    trnLRXT2 = new JTextField("0.0", 5);
    trnLRXT2.setEditable(false);
    trn1.add(trnLRXT2);
    trnPanel.add(trn1);
    tstats.add(trnPanel);*/

    JPanel tstats2 = new JPanel();
    tstats2.setLayout(new BoxLayout(tstats2, BoxLayout.Y_AXIS));
    tstats2.add(testPanelItems3());

    tstats2.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(""),
            BorderFactory.createRaisedBevelBorder()));

    JPanel dmaPanel1 = new JPanel(new BorderLayout());

    table2T2 = new MyTableModel(dummy_data, dmaColumnNames3);
    dmaStats2T2 = new JTable(table2T2);
    try {
        dmaStats2T2.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }
    JTableHeader dmaHeader1 = dmaStats2T2.getTableHeader();
    dmaHeader1.setForeground(new Color(92, 25, 25));

    dmaPanel1.add(dmaHeader1, BorderLayout.PAGE_START);
    dmaPanel1.add(dmaStats2T2, BorderLayout.CENTER);
    tstats2.add(dmaPanel1);
    tstats.add(tstats2);
    return tstats;
}

From source file:com.xilinx.virtex7.MainScreen.java

private JPanel pciInfo() {
    JPanel pciSystemPanel = new JPanel();
    pciSystemPanel.setLayout(new BoxLayout(pciSystemPanel, BoxLayout.Y_AXIS));
    //pciSystemPanel.setLayout(new GridLayout(2, 1));

    JPanel topPanel = new JPanel(new GridLayout(1, 2));
    topPanel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder("PCIe Settings"),
            BorderFactory.createRaisedBevelBorder()));
    /*JPanel sPanel = new JPanel(new FlowLayout());
    sPanel.add(new JLabel("Link Speed: "));
    Object[] speeds = {"2.5 Gbps","5.0 Gbps"};
    final PartialDisableComboBox lspeed = new PartialDisableComboBox();
    lspeed.addItems(speeds);//from   w  w  w.  j a v a2s  .c o m
            
    // hack for safe exit
    if (di.getPCIInfo().LinkSpeed != 0 && di.getPCIInfo().LinkSpeed-1 < speeds.length){
    lspeed.setSelectedIndex(di.getPCIInfo().LinkSpeed-1);
    lspeed.setItemEnabled(di.getPCIInfo().LinkSpeed-1, false);
    }else{
    if (di.getPCIInfo().LinkSpeed == 4){
        System.out.println(di.getPCIInfo().LinkSpeed-2);
       // lspeed.setSelectedIndex(di.getPCIInfo().LinkSpeed-2);
       // lspeed.setItemEnabled(di.getPCIInfo().LinkSpeed-2, false);
    }else
        updateLog("Invalid Link Speed", keyWord);
    }
    sPanel.add(lspeed);
    JButton setSpeed = new JButton("Go");
    setSpeed.setToolTipText("This enables directed PCIe link speed change");
    setSpeed.addActionListener(new ActionListener() {
            
    @Override
    public void actionPerformed(ActionEvent ae) {
        if (lspeed.isItemEnabled(lspeed.getSelectedIndex()))
        {
            int ret = 0;
            if (lspeed.getSelectedIndex() == 2)
               ret = di.setLinkSpeed(lspeed.getSelectedIndex()+2);
            else
               ret = di.setLinkSpeed(lspeed.getSelectedIndex()+1); 
            if (ret == 0){
                //update pcie information
                di.get_PCIstate();
                lspeed.setItemEnabled(0, true);
                lspeed.setItemEnabled(1, true);
                lspeed.setSelectedIndex(di.getPCIInfo().LinkSpeed-1);
                lspeed.setItemEnabled(di.getPCIInfo().LinkSpeed-1, false);
                ptable.setData(di.getPCIInfo().getPCIData(), pcieColumnNames);
                ptable.fireTableDataChanged();
            }
            else{
                updateLog("Unable to set Link Speed "+lspeed.getSelectedItem(), keyWord);
            }
        }
    }
    });
            
    sPanel.add(setSpeed);
    // topPanel.add(sPanel);
            
    JPanel sPanel1 = new JPanel(new FlowLayout());
    sPanel1.add(new JLabel("Link Width: "));
    Object[] widths = {"x1","x2","x4","x8"};
    final PartialDisableComboBox lwidths = new PartialDisableComboBox();
    lwidths.addItems(widths);
    lwidths.setSelectedItem("x"+di.getPCIInfo().LinkWidth);
    lwidths.setItemEnabled(lwidths.getSelectedIndex(), false);
    sPanel1.add(lwidths);
    JButton setWidth = new JButton("Go");
    setWidth.setToolTipText("This enables directed PCIe link width change");
    setWidth.addActionListener(new ActionListener() {
            
    @Override
    public void actionPerformed(ActionEvent ae) {
        if (lwidths.isItemEnabled(lwidths.getSelectedIndex()))
        {
            int ret = di.setLinkWidth(lwidths.getSelectedIndex()+1);
            if (ret == 0){
                //update pcie information
                // some times width change affect link speed so
                // enable the same in lspeedd also
                di.get_PCIstate();
                lwidths.setItemEnabled(0, true);
                lwidths.setItemEnabled(1, true);
                lwidths.setItemEnabled(2, true);
                lwidths.setItemEnabled(3, true);
                lwidths.setSelectedItem("x"+di.getPCIInfo().LinkWidth);
                lwidths.setItemEnabled(lwidths.getSelectedIndex(), false);
            
                // some times width change affect link speed so
                // enable the same in lspeed also
                lspeed.setItemEnabled(0, true);
                lspeed.setItemEnabled(1, true);
                lspeed.setSelectedIndex(di.getPCIInfo().LinkSpeed-1);
                lspeed.setItemEnabled(di.getPCIInfo().LinkSpeed-1, false);
            
                ptable.setData(di.getPCIInfo().getPCIData(), pcieColumnNames);
                ptable.fireTableDataChanged();
            
            }else
            {
                di.get_PCIstate();
                int upCap = di.getPCIInfo().LinkUpCap;
                                             
                if (upCap == 0)
                    updateLog("Unable to set Link Width "+lwidths.getSelectedItem()+". PCIe link not upconfigurable", keyWord);
            
                else
                    updateLog("Unable to set Link Width "+lwidths.getSelectedItem(), keyWord);
            
            }
        }
    }
    });
    sPanel1.add(setWidth);
    //  topPanel.add(sPanel1);
    */

    //  pciSystemPanel.add(topPanel);
    JPanel panel = new JPanel(new GridLayout(1, 2));

    JPanel pciPanel = new JPanel(new BorderLayout());
    pciPanel.setBorder(BorderFactory.createCompoundBorder(
            BorderFactory.createTitledBorder("PCIe Endpoint Status"), BorderFactory.createRaisedBevelBorder()));
    ptable = new MyTableModel(di.getPCIInfo().getPCIData(), pcieColumnNames);
    pcieTable = new JTable(ptable);
    try {
        pcieTable.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }

    JTableHeader pcieHeader = pcieTable.getTableHeader();
    pcieHeader.setForeground(new Color(92, 25, 25));

    pciPanel.add(pcieHeader, BorderLayout.PAGE_START);
    pciPanel.add(pcieTable, BorderLayout.CENTER);

    panel.add(pciPanel);

    JPanel hostPanel = new JPanel(new BorderLayout());
    hostPanel.setBorder(BorderFactory.createCompoundBorder(
            BorderFactory.createTitledBorder("Host System's Initial Credits"),
            BorderFactory.createRaisedBevelBorder()));
    htable = new MyTableModel(di.getPCIInfo().getHostedData(), pcieColumnNames);
    hostTable = new JTable(htable);
    try {
        hostTable.setDefaultRenderer(Object.class, new CustomTableCellRenderer());
    } catch (Exception e) {
    }

    JTableHeader hostHeader = hostTable.getTableHeader();
    hostHeader.setForeground(new Color(92, 25, 25));

    hostPanel.add(hostHeader, BorderLayout.PAGE_START);
    hostPanel.add(hostTable, BorderLayout.CENTER);

    panel.add(hostPanel);

    pciSystemPanel.add(panel);

    pciSystemPanel.add(dialChart(pciSystemPanel.getWidth()));

    return pciSystemPanel;
}

From source file:AppearanceExplorer.java

public Color3fEditor(String initName, Color3f initColor) {
    name = initName;/* w w w.  j  ava  2s  .  c om*/
    color.set(initColor);

    JLabel label = new JLabel(name);

    preview = new JPanel();
    preview.setPreferredSize(new Dimension(40, 40));
    preview.setBackground(color.get());
    preview.setBorder(BorderFactory.createRaisedBevelBorder());

    button = new JButton("Set");
    button.addActionListener(this);

    JPanel filler = new JPanel();
    filler.setPreferredSize(new Dimension(100, 20));

    setLayout(new BorderLayout());
    Box box = new Box(BoxLayout.X_AXIS);
    add(box, BorderLayout.WEST);

    box.add(label);
    box.add(preview);
    box.add(button);
    box.add(filler);

}

From source file:AppearanceExplorer.java

public Color4fEditor(String initName, Color4f initColor) {
    super(BoxLayout.Y_AXIS);
    name = initName;/*from   w  w  w  . java2  s .co m*/
    color.set(initColor);
    color3f.x = color.x;
    color3f.y = color.y;
    color3f.z = color.z;

    JPanel colorPanel = new JPanel();
    colorPanel.setLayout(new BorderLayout());
    add(colorPanel);

    JLabel label = new JLabel(name);

    preview = new JPanel();
    preview.setPreferredSize(new Dimension(40, 40));
    preview.setBackground(color3f.get());
    preview.setBorder(BorderFactory.createRaisedBevelBorder());

    button = new JButton("Set");
    button.addActionListener(this);

    JPanel filler = new JPanel();
    filler.setPreferredSize(new Dimension(100, 20));

    Box box = new Box(BoxLayout.X_AXIS);
    colorPanel.add(box, BorderLayout.WEST);

    box.add(label);
    box.add(preview);
    box.add(button);
    box.add(filler);

    FloatLabelJSlider alphaSlider = new FloatLabelJSlider("    Alpha");
    alphaSlider.setValue(color.w);
    alphaSlider.addFloatListener(new FloatListener() {
        public void floatChanged(FloatEvent event) {
            color.w = event.getValue();
            valueChanged();
        }
    });
    add(alphaSlider);
}

From source file:org.dwfa.ace.classifier.CNFormsLabelPanel.java

private void setBorder(JLabel tLabel, Color deltaColor) {
    if (deltaColor == null) {
        deltaColor = Color.white;
    }/*from  w w  w.  j ava2 s  .c o  m*/
    Dimension size = tLabel.getSize();
    tLabel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createRaisedBevelBorder(),
            BorderFactory.createCompoundBorder(BorderFactory.createMatteBorder(1, 5, 1, 5, deltaColor),
                    BorderFactory.createEmptyBorder(1, 3, 1, 3))));
    size.width = size.width + 18;
    size.height = size.height + 6;
    tLabel.setSize(size);
    tLabel.setPreferredSize(size);
    tLabel.setMaximumSize(size);
    tLabel.setMinimumSize(size);
}

From source file:org.openmicroscopy.shoola.agents.util.ui.ChannelButton.java

/**
 * Overridden to set the border of the button.
 * @see ColouredButton#setSelected(boolean)
 *//* www. j ava  2  s.c o m*/
public void setSelected(boolean selected) {
    super.setSelected(selected);
    if (selected)
        setBorder(BorderFactory.createLoweredBevelBorder());
    else
        setBorder(BorderFactory.createRaisedBevelBorder());
}

From source file:org.openuat.apps.OpenUATtoolkit.java

private void initUI() {

    frame = new JFrame("OpenUAT Toolkit");
    frame.setSize(1000, 1000);/*from   w ww. j  av a2 s. com*/
    frame.setLocation(100, 100);
    JPanel pane = new JPanel();
    pane.setLayout(new BoxLayout(pane, BoxLayout.Y_AXIS));

    java.net.URL printerImage = getClass().getResource("/printer_bg.png");

    ImageIcon printerIcon = new ImageIcon(printerImage);
    pane.add(new JLabel("Print service started", printerIcon, SwingConstants.CENTER));
    //      pane.add(new JLabel("Available input/output methods: button, small display, audio", null, SwingConstants.CENTER));

    pane.add(status);
    pane.add(progress);
    pane.setBorder(BorderFactory.createRaisedBevelBorder());
    frame.setContentPane(pane);
    frame.setVisible(true);
}

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

/**
 * Actually builds the UI//from  ww w . j av  a 2s .co 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();
}