public static JToggleButton getSevenSegmentDisplayButton() {

    JToggleButton button = new JToggleButton(DCDUtility.loadIconResource("SevenSegmentDisplay"));
    button.setMaximumSize(size);
    button.setActionCommand("SEVENSEGMENTDISPLAY");
    button.addItemListener(DCDUtility.getInstance());
    button.setToolTipText("SEVEN SEGMENT DISPLAY");
    return (button);
  }
  public static JToggleButton getSteadyInputButton() {

    JToggleButton button = new JToggleButton(DCDUtility.loadIconResource("steadyIP"));
    button.setMaximumSize(size);
    button.setActionCommand("STEADY_INPUT");
    button.addItemListener(DCDUtility.getInstance());
    button.setToolTipText("STEADY_INPUT");
    return (button);
  }
  public static JToggleButton getLEDButton() {

    JToggleButton button = new JToggleButton(DCDUtility.loadIconResource("led"));
    button.setMaximumSize(size);
    button.setActionCommand("LED");
    button.addItemListener(DCDUtility.getInstance());
    button.setToolTipText("LED");
    return (button);
  }
  public static JToggleButton getDFlipFlopButton() {

    JToggleButton button = new JToggleButton(DCDUtility.loadIconResource("DFlipFlop"));
    button.setMaximumSize(size);
    button.setActionCommand("DFLIPFLOP");
    button.addItemListener(DCDUtility.getInstance());
    button.setToolTipText("D FLIP-FLOP");
    return (button);
  }
  public static JToggleButton getToggleButton(
      String iconResource, String actionCommand, String tooltipText) {

    JToggleButton button = new JToggleButton(DCDUtility.loadIconResource(iconResource));
    button.setMaximumSize(size);
    button.setActionCommand(actionCommand);
    button.addItemListener(DCDUtility.getInstance());
    button.setToolTipText(tooltipText);
    return (button);
  }
示例#6
0
文件: ListMerger.java 项目: kuny/josm
 /**
  * Java 1.5 doesn't known Action.SELECT_KEY. Wires a toggle button to this action such that the
  * action gets notified about item state changes and the button gets notified about selection
  * state changes of the action.
  *
  * @param btn a toggle button
  */
 public void adapt(final JToggleButton btn) {
   btn.addItemListener(this);
   addPropertyChangeListener(
       new PropertyChangeListener() {
         @Override
         public void propertyChange(PropertyChangeEvent evt) {
           if (evt.getPropertyName().equals(PROP_SELECTED)) {
             btn.setSelected((Boolean) evt.getNewValue());
           }
         }
       });
 }
示例#7
0
  @Override
  public List<AbstractButton> getButtons() {
    List<AbstractButton> buttons = new ArrayList<AbstractButton>();
    // JToggleButton and JButton are both javax.swing.AbstractButton

    // Toggle button
    JToggleButton buttonPoint = new JToggleButton();
    buttonPoint.setMargin(new Insets(0, 0, 0, 0));
    buttonPoint.setMinimumSize(new Dimension(16, 16));
    buttonPoint.setToolTipText("Mark reference point");
    try {
      buttonPoint.setIcon(new ImageIcon(StamperPS.class.getResource("icons/markPoint.png")));
    } catch (Exception e) {
      e.printStackTrace();
    }
    buttonPoint.addItemListener(
        new ItemListener() {

          @Override
          public void itemStateChanged(ItemEvent itemEvent) {
            int state = itemEvent.getStateChange();
            if (state == ItemEvent.SELECTED) {
              toggleMarkReferencePoint(true);
            } else {
              toggleMarkReferencePoint(false);
            }
          }
        });
    buttonPoint.setToolTipText("Mark reference point");
    buttonPoint.setMargin(new Insets(0, 0, 0, 0));
    buttonPoint.setMinimumSize(new Dimension(16, 16));
    buttons.add(buttonPoint);
    // Clear Points button
    JButton buttonClearPoints = new JButton();
    buttonClearPoints.setMargin(new Insets(0, 0, 0, 0));
    buttonClearPoints.setMinimumSize(new Dimension(16, 16));
    buttonClearPoints.setToolTipText("Clear marked points");
    try {
      buttonClearPoints.setIcon(
          new ImageIcon(StamperPS.class.getResource("icons/markPointClear.png")));
    } catch (Exception e) {
      e.printStackTrace();
    }
    buttonClearPoints.addActionListener(
        new ActionListener() {

          public void actionPerformed(ActionEvent e) {
            clearMarkedPoints();
          }
        });
    buttons.add(buttonClearPoints);
    return buttons;
  }
  protected void initShapePane() {

    shapepn = new JPanel(new FlowLayout(FlowLayout.LEFT));
    ShapeItemListener shapelistener = new ShapeItemListener();
    shapepn.add(new JLabel("Shape:"));
    Icon icon = XmippResource.getIcon("circle.png");
    circlechb = new JToggleButton(icon);
    circlechb.setSelected(true);
    circlechb.addItemListener(shapelistener);

    rectanglechb = new JToggleButton(XmippResource.getIcon("square.png"));
    rectanglechb.setPreferredSize(null);
    rectanglechb.setSelected(true);
    rectanglechb.addItemListener(shapelistener);

    centerchb = new JToggleButton(XmippResource.getIcon("plus.png"));
    centerchb.setSelected(true);
    centerchb.addItemListener(shapelistener);

    shapepn.add(circlechb);
    shapepn.add(rectanglechb);
    shapepn.add(centerchb);
  }
  public void addColorChooserPanel(final AbstractColorChooserPanel ccp) {
    final String displayName = ccp.getDisplayName();
    if (displayName == null) {
      // Return if we haven't initialized yet
      return;
    }

    if (ccp.getClass()
        .getName()
        .equals("ch.randelshofer.quaqua.colorchooser.Quaqua15ColorPicker")) {
      northPanel.add(ccp, BorderLayout.WEST);
    } else {
      Icon displayIcon = ccp.getLargeDisplayIcon();
      JToggleButton tb = new JToggleButton(null, displayIcon);
      tb.setToolTipText(displayName);
      tb.setFocusable(false);
      tb.setHorizontalTextPosition(SwingConstants.CENTER);
      tb.setVerticalTextPosition(SwingConstants.BOTTOM);
      tb.setFont(UIManager.getFont("ColorChooser.font"));
      tb.putClientProperty("Quaqua.Button.style", "toolBarTab");
      JPanel centerView = new JPanel(new BorderLayout());
      centerView.add(ccp);
      chooserPanelHolder.add(centerView, displayName);
      toolBarButtonGroup.add(tb);
      toolBar.add(tb);

      if (toolBar.getComponentCount() == 1
          || lastSelectedChooserName != null && lastSelectedChooserName.equals(displayName)) {
        tb.setSelected(true);
        CardLayout cl = (CardLayout) chooserPanelHolder.getLayout();
        cl.show(chooserPanelHolder, displayName);
      }

      tb.addItemListener(
          new ItemListener() {
            public void itemStateChanged(ItemEvent evt) {
              if (evt.getStateChange() == ItemEvent.SELECTED) {
                CardLayout cl = (CardLayout) chooserPanelHolder.getLayout();
                cl.show(chooserPanelHolder, displayName);
                lastSelectedChooserName = displayName;
              }
            }
          });
    }
  }
示例#10
0
 /**
  * Adds a panel to this configuration panel.
  *
  * @param text the text to use on the toolbar button
  * @param icon the icon to use on the toolbar button
  * @param icon2 the icon to use on the toolbar button when the mouse button is held down
  * @param p the configuration panel page
  */
 public void addPanel(String text, Icon icon, Icon icon2, JPanel p) {
   JToggleButton button = new JToggleButton(text, icon);
   button.setVerticalTextPosition(AbstractButton.BOTTOM);
   button.setHorizontalTextPosition(AbstractButton.CENTER);
   button.setContentAreaFilled(false);
   try {
     // JDK 1.4+
     // button.setIconTextGap(0);
     AbstractButton.class
         .getMethod("setIconTextGap", new Class[] {Integer.TYPE})
         .invoke(button, new Object[] {new Integer(0)});
   } catch (Exception ex) {
   }
   button.setPressedIcon(icon2);
   group.add(button);
   toolbar.add(button);
   toolbar.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, Color.gray));
   button.addItemListener(
       new ItemListener() {
         public void itemStateChanged(ItemEvent e) {
           JToggleButton b = (JToggleButton) e.getSource();
           switch (e.getStateChange()) {
             case ItemEvent.SELECTED:
               select(b);
               break;
             case ItemEvent.DESELECTED:
               unselect(b);
               break;
           }
         }
       });
   if (panel.getComponentCount() == 0) {
     button.setSelected(true);
     page = 0;
   } else {
     unselect(button);
   }
   panel.add(p, text.intern());
 }
  // adding right buttons in JPanel
  private JPanel smallPanel() {
    rightPanel = new JPanel();

    rightBtn = new JButton[rightNames.length];

    for (int i = 0; i < rightNames.length; i++) {
      rightBtn[i] = new JButton(rightNames[i]);
      rightBtn[i].setBackground(Color.BLACK);
      rightBtn[i].setForeground(Color.WHITE);
      rightBtn[i].addActionListener(this);
      rightPanel.add(rightBtn[i]);
    }

    scrlk = new JToggleButton("ScrLk");
    scrlk.setBackground(Color.black);
    scrlk.setForeground(Color.white);
    scrlk.addItemListener(this);
    rightPanel.add(scrlk);

    rightPanel.setBounds(764, 0, 153, 125);
    return rightPanel;
  }
示例#12
0
  private JComponent createContents() {
    final JTable table = new JTable(10, 5);
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    table.getColumnModel().getColumn(2).setMinWidth(0);
    final String showColumnLabel = "Show Column C";
    final String hideColumnLabel = "Hide Column C";
    final JToggleButton button = new JToggleButton(hideColumnLabel);
    button.addItemListener(
        new ItemListener() {
          // the old size of the column.
          private SizeRequirements size = new SizeRequirements();

          public void itemStateChanged(ItemEvent ie) {
            TableColumn col = table.getColumnModel().getColumn(2);
            // get the current size of the column
            SizeRequirements temp = new SizeRequirements();
            temp.preferred = col.getPreferredWidth();
            temp.minimum = col.getMinWidth();
            temp.maximum = col.getMaxWidth();
            // change the column size to the old size (or 0 if the first time).
            col.setMinWidth(size.minimum);
            col.setMaxWidth(size.maximum);
            col.setPreferredWidth(size.preferred);
            // save the old size.
            size = temp;
            if (ie.getStateChange() == ItemEvent.SELECTED) {
              button.setText(showColumnLabel);
            } else {
              button.setText(hideColumnLabel);
            }
          }
        });

    JPanel result = new JPanel(new BorderLayout(0, 10));
    result.add(button, BorderLayout.NORTH);
    result.add(new JScrollPane(table), BorderLayout.CENTER);
    return result;
  }
  public GraphEditorDemo() {

    // create a simple graph for the demo
    graph = new SparseMultigraph<Sommet, Number>();

    Transformer<Sommet, Paint> vertexPaint =
        new Transformer<Sommet, Paint>() {
          private final Color vert = Color.GREEN;
          private final Color bleu = Color.BLUE;
          private final Color rouge = Color.RED;

          public Paint transform(Sommet s) {
            if (s.isColoriee()) {
              return rouge;
            } else {
              if (s.proprietaire == 0) {

                return vert;
              } else {
                return bleu;
              }
            }
          }
        };

    this.layout = new StaticLayout<Sommet, Number>(graph, new Dimension(600, 600));

    vv = new VisualizationViewer<Sommet, Number>(layout);
    vv.setBackground(Color.white);

    vv.getRenderContext()
        .setVertexLabelTransformer(
            MapTransformer.<Sommet, String>getInstance(
                LazyMap.<Sommet, String>decorate(
                    new HashMap<Sommet, String>(), new ToStringLabeller<Sommet>())));

    vv.getRenderContext()
        .setEdgeLabelTransformer(
            MapTransformer.<Number, String>getInstance(
                LazyMap.<Number, String>decorate(
                    new HashMap<Number, String>(), new ToStringLabeller<Number>())));

    vv.setVertexToolTipTransformer(vv.getRenderContext().getVertexLabelTransformer());

    vv.getRenderContext().setVertexFillPaintTransformer(vertexPaint);

    Container content = getContentPane();
    final GraphZoomScrollPane panel = new GraphZoomScrollPane(vv);
    content.add(panel);
    Factory<Sommet> vertexFactory = new VertexFactory();
    Factory<Number> edgeFactory = new EdgeFactory();

    final EditingModalGraphMouse<Sommet, Number> graphMouse =
        new EditingModalGraphMouse<Sommet, Number>(
            vv.getRenderContext(), vertexFactory, edgeFactory);

    // the EditingGraphMouse will pass mouse event coordinates to the
    // vertexLocations function to set the locations of the vertices as
    // they are created
    //        graphMouse.setVertexLocations(vertexLocations);
    vv.setGraphMouse(graphMouse);
    vv.addKeyListener(graphMouse.getModeKeyListener());

    graphMouse.setMode(ModalGraphMouse.Mode.CREATION);

    final ScalingControl scaler = new CrossoverScalingControl();

    JButton plus = new JButton("+");
    plus.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1.1f, vv.getCenter());
          }
        });
    JButton minus = new JButton("-");
    minus.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1 / 1.1f, vv.getCenter());
          }
        });

    JToggleButton jtb = new JToggleButton("Joueur 1");
    jtb.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent ev) {
            if (ev.getStateChange() == ItemEvent.SELECTED) {
              joueurcourant = 1;

            } else if (ev.getStateChange() == ItemEvent.DESELECTED) {
              joueurcourant = 0;
            }
          }
        });

    JToggleButton jtf = new JToggleButton("Final");
    jtf.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent ev) {
            if (ev.getStateChange() == ItemEvent.SELECTED) {
              etatfinal = true;

            } else if (ev.getStateChange() == ItemEvent.DESELECTED) {
              etatfinal = false;
            }
          }
        });

    JButton att = new JButton("Attracteur Accessibilité");
    minus.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            ArrayList<Sommet> vertices = (ArrayList<Sommet>) graph.getVertices();
            ArrayList<Sommet> finaux = new ArrayList<Sommet>();
            for (Sommet s : vertices) {
              if (s.isFinal) finaux.add(s);
            }
            colorierAttracteur(finaux, graph.getVertexCount());
          }
        });

    AnnotationControls<Sommet, Number> annotationControls =
        new AnnotationControls<Sommet, Number>(graphMouse.getAnnotatingPlugin());
    JPanel controls = new JPanel();
    controls.add(plus);
    controls.add(minus);
    JComboBox modeBox = graphMouse.getModeComboBox();
    controls.add(modeBox);
    controls.add(jtb);
    controls.add(jtf);
    controls.add(att);
    // controls.add(annotationControls.getAnnotationsToolBar());
    content.add(controls, BorderLayout.SOUTH);
  }
示例#14
0
  private void addResultTable(
      final String sql, long duration, final StatementExecutionResultSetResult resultSetResult) {
    int rowCount = resultSetResult.getRowCount();
    JPanel resultPane = addResultPane();
    final JLabel label = new JLabel(" " + rowCount + " rows");
    FlowLayout flowLayout = new FlowLayout(FlowLayout.LEFT, 0, 0);
    flowLayout.setAlignOnBaseline(true);
    JPanel statusPane = new JPanel(flowLayout);
    statusPane.setOpaque(false);
    if (rowCount <= resultSetResult.getRetainParsedRSDataRowCountThreshold()) {
      final JTableX table = new ResultTable(resultSetResult);
      JTableHeader tableHeader =
          new JTableHeader(table.getColumnModel()) {
            @Override
            public String getToolTipText(MouseEvent e) {
              int col = getTable().convertColumnIndexToModel(columnAtPoint(e.getPoint()));
              return col == 0 ? null : resultSetResult.getTypeInfos()[col - 1].toString();
            }
          };
      ToolTipManager.sharedInstance().registerComponent(tableHeader);
      table.setTableHeader(tableHeader);
      table.setDefaultRenderer(
          String.class,
          new DefaultTableCellRenderer() {
            @Override
            public Component getTableCellRendererComponent(
                JTable table,
                Object value,
                boolean isSelected,
                boolean hasFocus,
                int row,
                int column) {
              if (value != null) {
                value = "\"" + value + "\"";
              }
              return super.getTableCellRendererComponent(
                  table, value, isSelected, hasFocus, row, column);
            }
          });
      final TableCellRenderer booleanRenderer = table.getDefaultRenderer(Boolean.class);
      table.setDefaultRenderer(
          Boolean.class,
          new DefaultTableCellRenderer() {
            @Override
            public Component getTableCellRendererComponent(
                JTable table,
                Object value,
                boolean isSelected,
                boolean hasFocus,
                int row,
                int column) {
              Component c = null;
              if (value == null) {
                c =
                    super.getTableCellRendererComponent(
                        table, " ", isSelected, hasFocus, row, column);
              } else {
                c =
                    booleanRenderer.getTableCellRendererComponent(
                        table, value, isSelected, hasFocus, row, column);
              }
              if (!isSelected) {
                c.setBackground(
                    row % 2 == 0
                        ? UIManager.getColor("Table.background")
                        : JTableX.getTableAlternateRowBackgroundColor());
              }
              return c;
            }
          });
      table.setDefaultRenderer(
          Timestamp.class,
          new DefaultTableCellRenderer() {
            @SuppressWarnings("deprecation")
            @Override
            public Component getTableCellRendererComponent(
                JTable table,
                Object value,
                boolean isSelected,
                boolean hasFocus,
                int row,
                int column) {
              Component c =
                  super.getTableCellRendererComponent(
                      table, value, isSelected, hasFocus, row, column);
              if (value != null && c instanceof JLabel) {
                Timestamp timestamp = (Timestamp) value;
                String s;
                if (timestamp.getHours() != 0
                    || timestamp.getMinutes() != 0
                    || timestamp.getSeconds() != 0) {
                  s = Utils.formatDateTimeGMT((Timestamp) value);
                } else {
                  s = Utils.formatDateGMT((Timestamp) value);
                }
                ((JLabel) c).setText(s);
              }
              return c;
            }
          });
      table.setDefaultRenderer(
          byte[].class,
          new DefaultTableCellRenderer() {
            @Override
            public Component getTableCellRendererComponent(
                JTable table,
                Object value,
                boolean isSelected,
                boolean hasFocus,
                int row,
                int column) {
              Component c =
                  super.getTableCellRendererComponent(
                      table, value, isSelected, hasFocus, row, column);
              if (value != null && c instanceof JLabel) {
                byte[] bytes = (byte[]) value;
                ((JLabel) c).setText("Blob (" + bytes.length + " bytes)");
              }
              return c;
            }
          });
      table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
      table.setAutoCreateRowSorter(true);
      table
          .getRowSorter()
          .setSortKeys(Arrays.asList(new RowSorter.SortKey(0, SortOrder.ASCENDING)));
      table.setColumnSelectionAllowed(true);
      table.applyMinimumAndPreferredColumnSizes(200);
      resultPane.add(new JScrollPane(table), BorderLayout.CENTER);
      table
          .getSelectionModel()
          .addListSelectionListener(
              new ListSelectionListener() {
                @Override
                public void valueChanged(ListSelectionEvent e) {
                  int selectedRowCount = table.getSelectedRowCount();
                  label.setText(
                      " "
                          + resultSetResult.getRowData().length
                          + " rows"
                          + (selectedRowCount == 0
                              ? ""
                              : " - " + selectedRowCount + " selected rows"));
                }
              });
      table.addMouseListener(
          new MouseAdapter() {
            @Override
            public void mousePressed(MouseEvent e) {
              int row = table.rowAtPoint(e.getPoint());
              int column = table.columnAtPoint(e.getPoint());
              if (!table.isCellSelected(row, column)) {
                table.changeSelection(row, column, false, false);
              }
              maybeShowPopup(e);
            }

            @Override
            public void mouseReleased(MouseEvent e) {
              maybeShowPopup(e);
            }

            private void maybeShowPopup(MouseEvent e) {
              if (!e.isPopupTrigger()) {
                return;
              }
              boolean isEditable = resultSetResult.isEditable();
              JPopupMenu menu = new JPopupMenu();
              int selectedRowCount = table.getSelectedRowCount();
              int selectedColumnCount = table.getSelectedColumnCount();
              boolean isAddingSeparator = false;
              // Here to add custom menus.
              if (isEditable) {
                if (isAddingSeparator) {
                  isAddingSeparator = false;
                  menu.addSeparator();
                }
                JMenuItem insertNullMenuItem = new JMenuItem("Insert NULL");
                insertNullMenuItem.addActionListener(
                    new ActionListener() {
                      @Override
                      public void actionPerformed(ActionEvent e) {
                        int row = table.getSelectedRow();
                        int column = table.getSelectedColumn();
                        table.setValueAt(null, row, column);
                      }
                    });
                insertNullMenuItem.setEnabled(
                    selectedRowCount == 1
                        && selectedColumnCount == 1
                        && table.convertColumnIndexToModel(table.getSelectedColumn()) != 0);
                menu.add(insertNullMenuItem);
                menu.addSeparator();
                JMenuItem deleteRowMenuItem =
                    new JMenuItem(
                        "Delete " + (selectedRowCount > 1 ? selectedRowCount + " rows" : "row"));
                deleteRowMenuItem.addActionListener(
                    new ActionListener() {
                      @Override
                      public void actionPerformed(ActionEvent e) {
                        int[] selectedRows = table.getSelectedRows();
                        for (int i = selectedRows.length - 1; i >= 0; i--) {
                          selectedRows[i] = table.convertRowIndexToModel(selectedRows[i]);
                        }
                        Arrays.sort(selectedRows);
                        for (int i = selectedRows.length - 1; i >= 0; i--) {
                          int row = selectedRows[i];
                          boolean isSuccess = resultSetResult.deleteRow(row);
                          if (isSuccess) {
                            ((AbstractTableModel) table.getModel()).fireTableRowsDeleted(row, row);
                          }
                        }
                      }
                    });
                deleteRowMenuItem.setEnabled(selectedRowCount > 0);
                menu.add(deleteRowMenuItem);
              }
              if (menu.getComponentCount() > 0) {
                menu.show(e.getComponent(), e.getX(), e.getY());
              }
            }
          });
      final JPanel filterPane = new JPanel(flowLayout);
      filterPane.setOpaque(false);
      final JToggleButton filterToggleButton =
          new JToggleButton(
              new ImageIcon(
                  getClass().getResource("/org/jooq/debug/console/resources/Search16.png")));
      filterToggleButton.setOpaque(false);
      filterToggleButton.setToolTipText(
          "Filter ("
              + KeyEvent.getKeyModifiersText(InputEvent.CTRL_MASK)
              + "+"
              + KeyEvent.getKeyText(KeyEvent.VK_F)
              + ")");
      filterToggleButton.setMargin(new Insets(0, 0, 0, 0));
      filterPane.add(filterToggleButton);
      final JTextField searchField = new JTextField(7);
      searchField
          .getDocument()
          .addDocumentListener(
              new DocumentListener() {
                @Override
                public void removeUpdate(DocumentEvent e) {
                  adjustFilter();
                }

                @Override
                public void insertUpdate(DocumentEvent e) {
                  adjustFilter();
                }

                @Override
                public void changedUpdate(DocumentEvent e) {
                  adjustFilter();
                }

                private void adjustFilter() {
                  setFilter(table, searchField.getText());
                }
              });
      searchField.setVisible(false);
      filterPane.add(searchField);
      filterToggleButton.addItemListener(
          new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
              boolean isActive = e.getStateChange() == ItemEvent.SELECTED;
              searchField.setVisible(isActive);
              if (isActive) {
                searchField.requestFocus();
              } else {
                searchField.setText("");
                table.requestFocus();
              }
              filterPane.revalidate();
              filterPane.repaint();
            }
          });
      searchField.addKeyListener(
          new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
              if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
                e.consume();
                filterToggleButton.setSelected(false);
              } else if (e.getKeyCode() == KeyEvent.VK_F && e.isControlDown()) {
                filterToggleButton.setSelected(false);
              }
            }
          });
      table.addKeyListener(
          new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
              if (e.getKeyCode() == KeyEvent.VK_F && e.isControlDown()) {
                e.consume();
                filterToggleButton.setSelected(true);
                searchField.requestFocus();
                searchField.selectAll();
              }
            }
          });
      statusPane.add(filterPane);
    }
    JPanel southResultPanel = new JPanel(new BorderLayout());
    southResultPanel.setOpaque(false);
    if (isUsingMaxRowCount && rowCount == MAX_ROW_COUNT) {
      label.setForeground(Color.RED);
    }
    statusPane.add(label);
    southResultPanel.add(statusPane, BorderLayout.WEST);
    southResultPanel.add(
        new JLabel(
            Utils.formatDuration(duration)
                + " - "
                + Utils.formatDuration(resultSetResult.getResultSetParsingDuration())),
        BorderLayout.EAST);
    resultPane.add(southResultPanel, BorderLayout.SOUTH);
    southResultPanel.setToolTipText(sql);
    resultPane.revalidate();
    resultPane.repaint();
  }
示例#15
0
  private void init(Graph<? extends Object, ? extends Object>[] graph_array, double[][][] matrix) {

    // super("DendrogramView View");
    Graph<String, Number> g = (Graph<String, Number>) graph_array[0];

    SparseDoubleMatrix2D matrixArray =
        GraphMatrixOperations.graphToSparseMatrix((Graph<String, Number>) graph_array[0]);

    /*
     * matrix=new double[g.getVertexCount()][g.getVertexCount()]; for(int
     * i=0; i<matrix.length; i++){ matrix[i][i]=0; for(int j=i+1;
     * j<matrix[i].length; j++) if(g.isNeighbor(String.valueOf(i),
     * String.valueOf(j))){ matrix[i][j]=1; matrix[j][i]=1; } else{
     * matrix[i][j]=0; matrix[j][i]=0; } }
     */

    graph = new DelegateForest<String, Number>();
    Collection<String> c = g.getVertices();

    // create a simple graph for the demo
    // graph = new DelegateForest<String,Integer>();
    String labels[] = new String[matrix[0].length];
    for (int i = 0; i < labels.length; i++) {
      labels[i] = String.valueOf(i);
    }

    mlc = new MultiLevelConcor(labels, matrix);
    initTree();

    treeLayout = new TreeLayout<String, Number>(graph);

    radialLayout = new BalloonLayout<String, Number>(graph);
    radialLayout.setSize(new Dimension(600, 600));
    vv = new VisualizationViewer<String, Number>(treeLayout, new Dimension(600, 600));
    vv.setBackground(Color.white);
    nfc = new NodeFillColor<String>(vv.getPickedVertexState());
    vv.getRenderContext().setVertexFillPaintTransformer(nfc);
    /*
     * nh = new NodeHighlight<String>(vv.getPickedVertexState()); nh.ID = 2;
     * nh.node_no = graph.getVertexCount(); nh.node_count = nh.node_no;
     * nh.synchroFlag = syncFlag;
     * vv.getRenderContext().setVertexFillPaintTransformer(nh);
     */
    vv.getRenderContext().setEdgeShapeTransformer(new EdgeShape.Line());
    vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller());
    // add a listener for ToolTips
    vv.setVertexToolTipTransformer(new ToStringLabeller());
    vv.getRenderContext().setArrowFillPaintTransformer(new ConstantTransformer(Color.lightGray));
    rings = new Rings(radialLayout);

    // Container content = getContentPane();
    // final GraphZoomScrollPane panel = new GraphZoomScrollPane(vv);
    // content.add(panel);

    final DefaultModalGraphMouse graphMouse = new DefaultModalGraphMouse();

    vv.setGraphMouse(graphMouse);

    JComboBox modeBox = graphMouse.getModeComboBox();
    modeBox.addItemListener(graphMouse.getModeListener());
    graphMouse.setMode(ModalGraphMouse.Mode.TRANSFORMING);

    final ScalingControl scaler = new CrossoverScalingControl();

    JButton plus = new JButton("+");
    plus.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1.1f, vv.getCenter());
          }
        });
    JButton minus = new JButton("-");
    minus.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1 / 1.1f, vv.getCenter());
          }
        });

    radial = new JToggleButton("Balloon");
    radial.addItemListener(
        new ItemListener() {

          public void itemStateChanged(ItemEvent e) {
            if (e.getStateChange() == ItemEvent.SELECTED) {

              LayoutTransition<String, Number> lt =
                  new LayoutTransition<String, Number>(vv, treeLayout, radialLayout);
              Animator animator = new Animator(lt);
              animator.start();
              vv.getRenderContext().getMultiLayerTransformer().setToIdentity();
              vv.addPreRenderPaintable(rings);
            } else {
              LayoutTransition<String, Number> lt =
                  new LayoutTransition<String, Number>(vv, radialLayout, treeLayout);
              Animator animator = new Animator(lt);
              animator.start();
              vv.getRenderContext().getMultiLayerTransformer().setToIdentity();
              vv.removePreRenderPaintable(rings);
            }
            vv.repaint();
          }
        });

    JPanel scaleGrid = new JPanel(new GridLayout(1, 0));
    scaleGrid.setBorder(BorderFactory.createTitledBorder("Zoom"));

    JPanel controls = new JPanel();
    scaleGrid.add(plus);
    scaleGrid.add(minus);
    controls.add(radial);
    controls.add(scaleGrid);
    controls.add(modeBox);

    int max = (int) Math.round(Math.log(matrix[0].length) / Math.log(2));
    levelControl = new JSlider(JSlider.HORIZONTAL, 1, max, 1);
    levelControl.setMajorTickSpacing(1);
    levelControl.setMinorTickSpacing(1);
    levelControl.setPaintTicks(true);
    levelControl.addChangeListener(this);
    levelControl.setPaintLabels(true);
    Hashtable<Integer, JLabel> ht = new Hashtable<Integer, JLabel>();
    for (int i = 1; i <= max; i++) {
      ht.put(new Integer(i), new JLabel(String.valueOf(i)));
    }
    levelControl.setLabelTable(ht);
    controls.add(levelControl);

    setBackground(Color.WHITE);
    setLayout(new BorderLayout());
    this.add(vv, BorderLayout.CENTER);
    this.add(controls, BorderLayout.NORTH);

    // content.add(controls, BorderLayout.SOUTH);
    // Dimension preferredSize = new Dimension(600,600);
    // setSize(preferredSize);
    // setLocation(600,0);
    // setVisible(true);
    // Thread t = new Thread(this);
    // t.start();
    vv.addMouseListener(this);
  }
示例#16
0
  public void setListeners() {

    addWindowFocusListener(
        new WindowFocusListener() {
          public void windowGainedFocus(WindowEvent e) {
            updateTreeAndLabels();
          }

          public void windowLostFocus(WindowEvent e) {}
        });

    dumpButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            dumpData();
          }
        });

    xmlButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            dumpXmlData();
          }
        });

    expandAllItem.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            expandAll();
          }
        });

    collapseAllItem.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            collapseAll();
          }
        });

    detailsTree.addMouseListener(
        new MouseAdapter() {
          public void mouseReleased(MouseEvent e) {
            if (e.isPopupTrigger()) {
              detailsTreePopupMenu.show((JComponent) e.getSource(), e.getX(), e.getY());
            }
          }
        });

    exitButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            dispose();
          }
        });

    filterCBItem.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent e) {
            filterButton.setSelected(filterCBItem.isSelected());
            updateTreeAndLabels();
          }
        });

    filterButton.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent e) {
            filterCBItem.setSelected(filterButton.isSelected());
            updateTreeAndLabels();
          }
        });

    searchButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            if (!searchTF.getText().equals("")) {
              lastNodeResult =
                  findNode(
                      searchTF.getText(),
                      ((DefaultMutableTreeNode) detailsTree.getModel().getRoot())
                          .breadthFirstEnumeration(),
                      lastNodeResult);
              if (lastNodeResult != null) {
                TreePath tp = new TreePath(lastNodeResult.getPath());
                detailsTree.setSelectionPath(tp);
                detailsTree.scrollPathToVisible(tp);
                if (lastNodeResult instanceof InfoNode && searchCoordinates != null) {

                  table.changeSelection(searchCoordinates.x, searchCoordinates.y, false, false);
                }
              }
            }
          }
        });

    detailsTree.addTreeSelectionListener(
        new TreeSelectionListener() {
          public void valueChanged(TreeSelectionEvent e) {
            if (detailsTree.getLastSelectedPathComponent() instanceof InfoNode) {
              InfoNode node = (InfoNode) detailsTree.getLastSelectedPathComponent();
              if (node == null) return;
              Object nodeInfo = node.getUserObject();
              if (nodeInfo == null) return;
              if (nodeInfo instanceof LinkedHashMap) {
                LinkedHashMap<String, Object> info = (LinkedHashMap<String, Object>) nodeInfo;
                ((TreeTableModel) table.getModel()).setData(info);
              }
            } else ((TreeTableModel) table.getModel()).setData(null);
          }
        });

    updateTreeAndLabels();
  }
示例#17
0
  public CGOL_UI() {
    setResizable(true);
    setTitle("Conway's GOL");
    setSize(gX, gY);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    // --------------------------------------------------------------------
    timing = new JTextField();
    timing.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
            try {
              tr.setDelay(Integer.parseInt(timing.getText().trim()));
              timingL.setText("Delay (ms) [" + tr.getDelay() + "]: ");
              repaint();
            } catch (Exception e) {
              System.out.println("Bad Input!");
            } finally {
              timing.setText("");
            }
          }
        });
    cVal1 = new JSlider(SwingConstants.HORIZONTAL, 1, 8, 2);
    cVal1.setMajorTickSpacing(1);
    cVal1.setPaintTicks(true);
    cVal1.addChangeListener(
        new ChangeListener() {
          public void stateChanged(ChangeEvent e) {
            tr.setVal1(cVal1.getValue());
            repaint();
          }
        });
    cVal2 = new JSlider(SwingConstants.HORIZONTAL, 1, 8, 3);
    cVal2.setMajorTickSpacing(1);
    cVal2.setPaintTicks(true);
    cVal2.addChangeListener(
        new ChangeListener() {
          public void stateChanged(ChangeEvent e) {
            tr.setVal2(cVal2.getValue());
            repaint();
          }
        });
    cVal3 = new JSlider(SwingConstants.HORIZONTAL, 1, 8, 3);
    cVal3.setMajorTickSpacing(1);
    cVal3.setPaintTicks(true);
    cVal3.addChangeListener(
        new ChangeListener() {
          public void stateChanged(ChangeEvent e) {
            tr.setVal3(cVal3.getValue());
            repaint();
          }
        });
    step = new JButton("Step");
    step.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
            // tr.toggleStep();
            //
            tr.findIndexSmoothedII(1450, 0, 1450, 2000);
            repaint();
          }
        });
    reset = new JButton("Reset Grid");
    reset.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
            tr.setStart(false);
            start.setSelected(false);
            start.setText("Start");
            try {
              Thread.sleep(100);
            } catch (InterruptedException ex) {
              Thread.currentThread().interrupt();
            }
            tr.reset();
            repaint();
          }
        });
    showCached = new JToggleButton("Show Cached");
    showCached.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent ev) {
            if (!tr.isSuperSampled()) {
              if (ev.getStateChange() == ItemEvent.SELECTED) {
                tr.setUsingCached(true);
                showCached.setText("Hide Cached");
              } else if (ev.getStateChange() == ItemEvent.DESELECTED) {
                tr.setUsingCached(false);
                showCached.setText("Show Cached");
                repaint();
              }
            } else {
              if (ev.getStateChange() == ItemEvent.SELECTED) {
                tr.setShowingHeatmap(true);
                showCached.setText("Hide HeatMap");
              } else if (ev.getStateChange() == ItemEvent.DESELECTED) {
                tr.setShowingHeatmap(false);
                showCached.setText("Show HeatMap");
                repaint();
              }
            }
          }
        });
    start = new JToggleButton("Start");
    start.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent ev) {
            if (ev.getStateChange() == ItemEvent.SELECTED) {
              tr.setStart(true);
              start.setText("Stop");
            } else if (ev.getStateChange() == ItemEvent.DESELECTED) {
              tr.setStart(false);
              start.setText("Start");
              repaint();
            }
          }
        });
    brush = new JSlider(SwingConstants.HORIZONTAL, 1, 20, 2);
    brush.setMajorTickSpacing(1);
    brush.setPaintTicks(true);
    brush.addChangeListener(
        new ChangeListener() {
          public void stateChanged(ChangeEvent e) {
            tr.setBrushSize(brush.getValue());
            repaint();
          }
        });
    grid = new JComboBox<Object>(txts1);
    grid.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
            tr.setStart(false);
            start.setSelected(false);
            start.setText("Start");
            JComboBox<?> cb = (JComboBox<?>) evt.getSource();
            // a quick but effective fix
            try {
              Thread.sleep(150);
            } catch (InterruptedException ex) {
              Thread.currentThread().interrupt();
            }
            tr.resizeGrid(cb.getSelectedIndex());
            if (tr.isSuperSampled()) showCached.setText("Show HeatMap");
            else {
              if (showCached.isSelected()) {
                showCached.setText("Hide Cached");
              } else {
                showCached.setText("Show Cached");
              }
            }
            brush.setValue(tr.getBrushSize());
          }
        });
    timingL = new JLabel("Delay (ms) [" + tr.getDelay() + "]: ");
    brushL = new JLabel("Brush size: ");
    cVal1L = new JLabel("Underpop Lim [Default 2]: ");
    cVal2L = new JLabel(" Overpop Lim [Default 3]: ");
    cVal3L = new JLabel(" \"Birth\" Lim [Default 3]: ");
    gen1 = new JLabel("Generation: " + tr.getGen());
    pop1 = new JLabel("Living Cells: " + tr.getPop());
    // ------------------------------------------------------------------------
    tr.addMouseListener(
        new MouseListener() {
          @Override
          public void mouseEntered(MouseEvent arg0) {}

          @Override
          public void mouseExited(MouseEvent arg0) {}

          @Override
          public void mousePressed(MouseEvent arg0) {
            tr.findIndexSmoothed(arg0.getX(), arg0.getY());
            preX = arg0.getX();
            preY = arg0.getY();
            repaint();
          }

          @Override
          public void mouseReleased(MouseEvent arg0) {
            tr.updatePop();
          }

          @Override
          public void mouseClicked(MouseEvent e) {}
        });
    tr.addMouseMotionListener(
        new MouseMotionListener() {
          @Override
          public void mouseDragged(MouseEvent arg0) {
            if (first) {
              preX = arg0.getX();
              preY = arg0.getY();
              tr.findIndexSmoothed(preX, preY, arg0.getX(), arg0.getY());
              first = false;
            } else if (tr.isSuperSampled()) {
              tr.findIndexSmoothedII(preX << 1, preY << 1, arg0.getX() << 1, arg0.getY() << 1);
            } else if (tr.isUsingBres()) {
              tr.findIndexSmoothedII(preX, preY, arg0.getX(), arg0.getY());
            } else {
              tr.findIndexSmoothed(preX, preY, arg0.getX(), arg0.getY());
            }
            preX = arg0.getX();
            preY = arg0.getY();
            repaint();
          }

          @Override
          public void mouseMoved(MouseEvent arg0) {}
        });
    // -----------------------------------------------------------------------
    reset.setBounds(gX - 190, 70, 150, 50);
    timingL.setBounds(gX - 190, 250, 100, 20);
    timing.setBounds(gX - 190, 280, 150, 40);
    tr.setBounds(5, 5, 1154, 928);
    start.setBounds(gX - 190, 130, 150, 50);
    step.setBounds(gX - 190, 190, 150, 50);
    brush.setBounds(gX - 190, 360, 155, 40);
    brushL.setBounds(gX - 190, 330, 150, 20);
    grid.setBounds(gX - 190, 420, 150, 30);
    showCached.setBounds(gX - 190, 470, 150, 50);
    cVal1L.setBounds(gX - 190, 530, 150, 20);
    cVal1.setBounds(gX - 190, 560, 150, 40);
    cVal2L.setBounds(gX - 190, 610, 150, 20);
    cVal2.setBounds(gX - 190, 640, 150, 40);
    cVal3L.setBounds(gX - 190, 690, 150, 20);
    cVal3.setBounds(gX - 190, 720, 150, 40);
    gen1.setBounds(gX - 190, 10, 150, 20);
    pop1.setBounds(gX - 190, 35, 150, 20);
    add(gen1);
    add(pop1);
    add(reset);
    add(cVal1);
    add(cVal1L);
    add(cVal2);
    add(cVal2L);
    add(cVal3);
    add(cVal3L);
    add(showCached);
    add(grid);
    add(brushL);
    add(brush);
    add(start);
    add(step);
    add(timingL);
    add(timing);
    add(tr); // always last
    setVisible(true);
    tr.popGrid();
    while (true) { // this little ditty took me a *while* to figure out
      gen1.setText("Generation: " + tr.getGen());
      pop1.setText("Living Cells: " + tr.getPop());
      repaint();
    }
  }
示例#18
0
  private void SetupUI(String loginID) {
    chatFrame = new JFrame("Chat " + loginID);
    PrivateMessageDialog = new JDialog(chatFrame, true);
    PvtMsgPanel = new javax.swing.JPanel();
    SendPrivate = new javax.swing.JButton();
    PrivateInput = new javax.swing.JTextArea();
    PvtUserId = new javax.swing.JTextField();
    RecipientLabel = new javax.swing.JLabel();
    MessageLabel = new javax.swing.JLabel();
    MainWindowTabs = new javax.swing.JTabbedPane();
    ChatWindow = new javax.swing.JPanel();
    ChatDisplayScroll = new javax.swing.JScrollPane();
    MessageDisplay = new javax.swing.JTextArea();
    MessageScroll = new javax.swing.JScrollPane();
    MessageInput = new javax.swing.JTextArea();
    Send = new javax.swing.JButton();
    PrivateMsg = new javax.swing.JButton();
    DrawPadButton = new javax.swing.JButton();
    Availability = new javax.swing.JToggleButton();
    SettingsWindow = new javax.swing.JPanel();
    settingsChatPanel = new javax.swing.JPanel();
    SetChannelButton = new javax.swing.JButton();
    ChannelToSetTo = new javax.swing.JTextField();
    ForwardTo = new javax.swing.JTextField();
    ForwardButton = new javax.swing.JButton();
    blockPanel = new javax.swing.JPanel();
    WhoIBlockButton = new javax.swing.JButton();
    BlockButton = new javax.swing.JButton();
    WhoBlocksMeButton = new javax.swing.JButton();
    UnblockButton = new javax.swing.JButton();
    UserToChangeBlock = new javax.swing.JTextField();
    networkPanel = new javax.swing.JPanel();
    PortInput = new javax.swing.JTextField();
    SetPortButton = new javax.swing.JButton();
    HostInput = new javax.swing.JTextField();
    SetHostButton = new javax.swing.JButton();
    GetHost = new javax.swing.JButton();
    GetPort = new javax.swing.JButton();

    // Customize Form
    Send.setBackground(Color.decode("#16A085"));
    SendPrivate.setBackground(Color.decode("#16A085"));
    Availability.setBackground(Color.decode("#2ECC71"));
    MessageDisplay.setEditable(false);
    PrivateMessageDialog.setSize(405, 335);

    chatFrame.setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    chatFrame.setBackground(new java.awt.Color(52, 73, 94));

    MainWindowTabs.setBackground(new java.awt.Color(44, 62, 80));
    MainWindowTabs.setOpaque(true);

    // Netbeans
    PvtMsgPanel.setBackground(new java.awt.Color(52, 73, 94));
    SendPrivate.setText("Send");
    PrivateInput.setBackground(new java.awt.Color(127, 140, 141));
    PrivateInput.setColumns(20);
    PrivateInput.setFont(new java.awt.Font("Arial", 0, 13));
    PrivateInput.setLineWrap(true);
    PrivateInput.setRows(5);
    PvtUserId.setBackground(new java.awt.Color(127, 140, 141));
    RecipientLabel.setForeground(new java.awt.Color(240, 240, 240));
    RecipientLabel.setText("Recipient Id:");
    MessageLabel.setForeground(new java.awt.Color(240, 240, 240));
    MessageLabel.setText("Message:");

    javax.swing.GroupLayout PvtMsgPanelLayout = new javax.swing.GroupLayout(PvtMsgPanel);
    PvtMsgPanel.setLayout(PvtMsgPanelLayout);
    PvtMsgPanelLayout.setHorizontalGroup(
        PvtMsgPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                PvtMsgPanelLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        PvtMsgPanelLayout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(PvtUserId)
                            .addGroup(
                                PvtMsgPanelLayout.createParallelGroup(
                                        javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(
                                        SendPrivate,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        128,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGroup(
                                        PvtMsgPanelLayout.createParallelGroup(
                                                javax.swing.GroupLayout.Alignment.TRAILING, false)
                                            .addComponent(
                                                PrivateInput,
                                                javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(
                                                PvtMsgPanelLayout.createSequentialGroup()
                                                    .addComponent(RecipientLabel)
                                                    .addGap(310, 310, 310))))
                            .addComponent(MessageLabel))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    PvtMsgPanelLayout.setVerticalGroup(
        PvtMsgPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                PvtMsgPanelLayout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(RecipientLabel)
                    .addGap(1, 1, 1)
                    .addComponent(
                        PvtUserId,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(MessageLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        PrivateInput,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        168,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        SendPrivate,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        35,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    javax.swing.GroupLayout PrivateMessageDialogLayout =
        new javax.swing.GroupLayout(PrivateMessageDialog.getContentPane());
    PrivateMessageDialog.getContentPane().setLayout(PrivateMessageDialogLayout);
    PrivateMessageDialogLayout.setHorizontalGroup(
        PrivateMessageDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                PvtMsgPanel,
                javax.swing.GroupLayout.DEFAULT_SIZE,
                javax.swing.GroupLayout.DEFAULT_SIZE,
                Short.MAX_VALUE));
    PrivateMessageDialogLayout.setVerticalGroup(
        PrivateMessageDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                PrivateMessageDialogLayout.createSequentialGroup()
                    .addComponent(
                        PvtMsgPanel,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 3, Short.MAX_VALUE)));

    MainWindowTabs.setBackground(new java.awt.Color(52, 73, 94));
    ChatWindow.setBackground(new java.awt.Color(52, 73, 94));
    ChatWindow.setPreferredSize(new java.awt.Dimension(430, 600));
    ChatWindow.setVerifyInputWhenFocusTarget(false);

    ChatDisplayScroll.setAutoscrolls(true);
    MessageDisplay.setEditable(false);
    MessageDisplay.setBackground(new java.awt.Color(127, 140, 141));
    MessageDisplay.setColumns(20);
    MessageDisplay.setFont(new java.awt.Font("Arial", 0, 13));
    MessageDisplay.setLineWrap(true);
    MessageDisplay.setRows(5);
    ChatDisplayScroll.setViewportView(MessageDisplay);

    MessageInput.setBackground(new java.awt.Color(127, 140, 141));
    MessageInput.setColumns(2);
    MessageInput.setLineWrap(true);
    MessageInput.setRows(3);
    MessageScroll.setViewportView(MessageInput);

    Send.setText("Send");
    PrivateMsg.setText("Private Message");
    DrawPadButton.setText("Draw Pad");
    Availability.setText("Available");

    javax.swing.GroupLayout ChatWindowLayout = new javax.swing.GroupLayout(ChatWindow);
    ChatWindow.setLayout(ChatWindowLayout);
    ChatWindowLayout.setHorizontalGroup(
        ChatWindowLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                ChatWindowLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        ChatWindowLayout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                ChatDisplayScroll, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                ChatWindowLayout.createSequentialGroup()
                                    .addComponent(MessageScroll)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        Send,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        85,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                ChatWindowLayout.createSequentialGroup()
                                    .addComponent(
                                        DrawPadButton,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        122,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(
                                        PrivateMsg,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        146,
                                        Short.MAX_VALUE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(
                                        Availability,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        122,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap()));
    ChatWindowLayout.setVerticalGroup(
        ChatWindowLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                ChatWindowLayout.createSequentialGroup()
                    .addGap(7, 7, 7)
                    .addComponent(
                        ChatDisplayScroll,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        289,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        ChatWindowLayout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                MessageScroll,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                67,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(
                                Send,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        ChatWindowLayout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(DrawPadButton)
                            .addComponent(PrivateMsg)
                            .addComponent(Availability))
                    .addContainerGap()));

    MainWindowTabs.addTab("Chat", ChatWindow);
    SettingsWindow.setBackground(new java.awt.Color(52, 73, 94));
    settingsChatPanel.setBackground(new java.awt.Color(52, 73, 94));
    settingsChatPanel.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED),
            "Chat",
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            null,
            new java.awt.Color(240, 240, 240)));

    SetChannelButton.setText("Set Channel");
    SetChannelButton.setBorderPainted(false);
    ChannelToSetTo.setBackground(new java.awt.Color(127, 140, 141));
    ForwardTo.setBackground(new java.awt.Color(127, 140, 141));

    ForwardButton.setText("Forward");
    ForwardButton.setBorderPainted(false);

    javax.swing.GroupLayout settingsChatPanelLayout =
        new javax.swing.GroupLayout(settingsChatPanel);
    settingsChatPanel.setLayout(settingsChatPanelLayout);
    settingsChatPanelLayout.setHorizontalGroup(
        settingsChatPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                settingsChatPanelLayout
                    .createSequentialGroup()
                    .addContainerGap(80, Short.MAX_VALUE)
                    .addGroup(
                        settingsChatPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.LEADING,
                                settingsChatPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        ChannelToSetTo,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        151,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(SetChannelButton))
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.LEADING,
                                settingsChatPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        ForwardTo,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        151,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        ForwardButton,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE)))
                    .addContainerGap(68, Short.MAX_VALUE)));
    settingsChatPanelLayout.setVerticalGroup(
        settingsChatPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                settingsChatPanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        settingsChatPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(
                                ChannelToSetTo,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(SetChannelButton))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        settingsChatPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(ForwardButton)
                            .addComponent(
                                ForwardTo,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    blockPanel.setBackground(new java.awt.Color(52, 73, 94));
    blockPanel.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED),
            "Block",
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            null,
            new java.awt.Color(240, 240, 240)));
    blockPanel.setForeground(new java.awt.Color(255, 255, 255));

    WhoIBlockButton.setText("My Blocks");
    BlockButton.setBorderPainted(false);
    BlockButton.setText("Block");
    WhoBlocksMeButton.setText("Blocks Me");
    UnblockButton.setText("Unblock");
    UnblockButton.setActionCommand("Unblock");
    UnblockButton.setBorderPainted(false);

    UserToChangeBlock.setBackground(new java.awt.Color(127, 140, 141));

    javax.swing.GroupLayout blockPanelLayout = new javax.swing.GroupLayout(blockPanel);
    blockPanel.setLayout(blockPanelLayout);
    blockPanelLayout.setHorizontalGroup(
        blockPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                blockPanelLayout
                    .createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(
                        UserToChangeBlock,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        151,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        blockPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                blockPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        BlockButton,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        75,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(WhoIBlockButton))
                            .addGroup(
                                blockPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        UnblockButton,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        75,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(WhoBlocksMeButton)))
                    .addGap(23, 23, 23)));
    blockPanelLayout.setVerticalGroup(
        blockPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                blockPanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        blockPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                blockPanelLayout
                                    .createSequentialGroup()
                                    .addGroup(
                                        blockPanelLayout
                                            .createParallelGroup(
                                                javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(BlockButton)
                                            .addComponent(WhoIBlockButton))
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(
                                        blockPanelLayout
                                            .createParallelGroup(
                                                javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(UnblockButton)
                                            .addComponent(WhoBlocksMeButton)))
                            .addGroup(
                                blockPanelLayout
                                    .createSequentialGroup()
                                    .addGap(13, 13, 13)
                                    .addComponent(
                                        UserToChangeBlock,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    networkPanel.setBackground(new java.awt.Color(52, 73, 94));
    networkPanel.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED),
            "Network",
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            null,
            new java.awt.Color(240, 240, 240)));

    PortInput.setBackground(new java.awt.Color(127, 140, 141));
    SetPortButton.setText("Set Port");
    HostInput.setBackground(new java.awt.Color(127, 140, 141));
    SetHostButton.setText("Set Host");
    GetHost.setText("Get Host");
    GetPort.setText("Get Port");

    javax.swing.GroupLayout networkPanelLayout = new javax.swing.GroupLayout(networkPanel);
    networkPanel.setLayout(networkPanelLayout);
    networkPanelLayout.setHorizontalGroup(
        networkPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                networkPanelLayout
                    .createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(
                        networkPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(PortInput)
                            .addComponent(
                                HostInput,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                151,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(
                        networkPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(
                                networkPanelLayout
                                    .createSequentialGroup()
                                    .addGap(6, 6, 6)
                                    .addComponent(
                                        SetHostButton,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE))
                            .addGroup(
                                networkPanelLayout
                                    .createSequentialGroup()
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        SetPortButton,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        79,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(
                        networkPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(
                                GetPort,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(GetHost))
                    .addGap(25, 25, 25)));
    networkPanelLayout.setVerticalGroup(
        networkPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                networkPanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        networkPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(
                                PortInput,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(SetPortButton)
                            .addComponent(GetPort))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        networkPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(
                                HostInput,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(SetHostButton)
                            .addComponent(GetHost))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    javax.swing.GroupLayout SettingsWindowLayout = new javax.swing.GroupLayout(SettingsWindow);
    SettingsWindow.setLayout(SettingsWindowLayout);
    SettingsWindowLayout.setHorizontalGroup(
        SettingsWindowLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                SettingsWindowLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        SettingsWindowLayout.createParallelGroup(
                                javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                networkPanel,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(
                                settingsChatPanel,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(
                                blockPanel,
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE))
                    .addContainerGap()));
    SettingsWindowLayout.setVerticalGroup(
        SettingsWindowLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                SettingsWindowLayout.createSequentialGroup()
                    .addGap(20, 20, 20)
                    .addComponent(
                        networkPanel,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(33, 33, 33)
                    .addComponent(
                        blockPanel,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(31, 31, 31)
                    .addComponent(
                        settingsChatPanel,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(34, Short.MAX_VALUE)));

    MainWindowTabs.addTab("Settings", SettingsWindow);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(chatFrame.getContentPane());
    chatFrame.getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                layout
                    .createSequentialGroup()
                    .addComponent(
                        MainWindowTabs,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        413,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));
    layout.setVerticalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                MainWindowTabs,
                javax.swing.GroupLayout.PREFERRED_SIZE,
                439,
                javax.swing.GroupLayout.PREFERRED_SIZE));

    // ##################### Listeners #####################

    // display scrollbar vertical update
    ChatDisplayScroll.getVerticalScrollBar()
        .addAdjustmentListener(
            new AdjustmentListener() {
              public void adjustmentValueChanged(AdjustmentEvent event) {
                event.getAdjustable().setValue(event.getAdjustable().getMaximum());
              }
            });

    MessageInput.addKeyListener(
        new KeyListener() {
          @Override
          public void keyPressed(KeyEvent arg0) {
            int keyCode = arg0.getKeyCode();
            if (keyCode == 10) { // enter key
              String message = MessageInput.getText();
              if (message != null && message.length() > 0) {
                client.handleMessageFromClientUI(message);
                MessageInput.setText("");
                arg0.consume();
              }
            }
          }

          @Override
          public void keyTyped(KeyEvent arg0) {}

          @Override
          public void keyReleased(KeyEvent arg0) {}
        });

    SetChannelButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = SetChannelButton.getActionCommand();
            if (command == "Set Channel") {
              // get new channel
              String channel = ChannelToSetTo.getText();
              if (channel.length() > 0) {
                client.handleMessageFromClientUI("#setchannel " + channel);
                ChannelToSetTo.setText("");
                MainWindowTabs.setSelectedIndex(0);
              }
            }
          }
        });

    SetPortButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = SetPortButton.getActionCommand();
            if (command == "Set Port") {
              // get new port
              String port = PortInput.getText();
              if (port.length() > 0) {
                client.connectionClosed();
                client.handleMessageFromClientUI("#setport " + port);
                MainWindowTabs.setSelectedIndex(0);
                PortInput.setText("");
              }
            }
          }
        });

    GetPort.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = GetPort.getActionCommand();
            if (command == "Get Port") {
              client.handleMessageFromClientUI("#getport");
              MainWindowTabs.setSelectedIndex(0);
            }
          }
        });

    SetHostButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = SetHostButton.getActionCommand();
            if (command == "Set Host") {
              // get new host
              String host = HostInput.getText();
              if (host.length() > 0) {
                client.connectionClosed();
                client.handleMessageFromClientUI("#sethost " + host);
                MainWindowTabs.setSelectedIndex(0);
                HostInput.setText("");
              }
            }
          }
        });

    GetHost.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = GetHost.getActionCommand();
            if (command == "Get Host") {
              client.handleMessageFromClientUI("#gethost");
              MainWindowTabs.setSelectedIndex(0);
            }
          }
        });

    WhoIBlockButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = WhoIBlockButton.getActionCommand();
            if (command == "My Blocks") {
              client.handleMessageFromClientUI("#whoiblock");
              MainWindowTabs.setSelectedIndex(0);
            }
          }
        });

    WhoBlocksMeButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = WhoBlocksMeButton.getActionCommand();
            if (command == "Blocks Me") {
              client.handleMessageFromClientUI("#whoblocksme");
              MainWindowTabs.setSelectedIndex(0);
            }
          }
        });

    BlockButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = BlockButton.getActionCommand();
            if (command == "Block") {
              // get blockee
              String blockee = UserToChangeBlock.getText();
              if (blockee.length() > 0) {
                client.handleMessageFromClientUI("#block " + blockee);
                UserToChangeBlock.setText("");
                MainWindowTabs.setSelectedIndex(0);
              }
            }
          }
        });

    UnblockButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = UnblockButton.getActionCommand();
            if (command == "Unblock") {
              // get unblockee
              String unblockee = UserToChangeBlock.getText();
              client.handleMessageFromClientUI("#unblock " + unblockee);
              UserToChangeBlock.setText("");
              MainWindowTabs.setSelectedIndex(0);
            }
          }
        });

    ForwardButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = ForwardButton.getActionCommand();
            if (command == "Forward") {
              // get new monitor
              String monitor = ForwardTo.getText();
              if (monitor.length() > 0) {
                client.handleMessageFromClientUI("#forward " + monitor);
                ForwardTo.setText("");
                MainWindowTabs.setSelectedIndex(0);
              }
            } else if (command == "Stop Forwarding") {
              client.handleMessageFromClientUI("#endforward");
            }
          }
        });

    Availability.addItemListener(
        new ItemListener() {
          public void itemStateChanged(ItemEvent e) {
            if (Availability.isSelected()) {
              client.handleMessageFromClientUI("#notavailable");
              Availability.setText("Unavailable");
              Availability.setBackground(Color.decode("#E74C3C"));
              ForwardButton.setEnabled(false);
              MessageInput.setEnabled(false);
              DrawPadButton.setEnabled(false);
              PrivateMsg.setEnabled(false);
              Send.setEnabled(false);
            } else {
              client.handleMessageFromClientUI("#available");
              Availability.setText("Available");
              Availability.setBackground(Color.decode("#2ECC71"));
              ForwardButton.setEnabled(true);
              MessageInput.setEnabled(true);
              DrawPadButton.setEnabled(true);
              PrivateMsg.setEnabled(true);
              Send.setEnabled(true);
            }
          }
        });

    Send.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = Send.getActionCommand();
            if (command == "Send") {
              String message = MessageInput.getText();
              if (message != null && message.length() > 0) {
                client.handleMessageFromClientUI(message);
                MessageInput.setText("");
              }
            }
          }
        });

    DrawPadButton.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = DrawPadButton.getActionCommand();
            if (command == "Draw Pad") {
              drawPad = new ChatDrawPad();
              new OpenDrawPad(drawPad, self);
            }
          }
        });

    PrivateMsg.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = PrivateMsg.getActionCommand();
            if (command == "Private Message") {
              PrivateMessageDialog.setVisible(true);
            }
          }
        });

    SendPrivate.addActionListener(
        new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            String command = SendPrivate.getActionCommand();
            if (command == "Send") {
              String recipId = PvtUserId.getText();
              String msg = PrivateInput.getText();
              if (recipId.length() > 0 && msg.length() > 0)
                client.handleMessageFromClientUI("#private " + recipId + " " + msg);
              PvtUserId.setText("");
              PrivateInput.setText("");
              PrivateMessageDialog.setVisible(false);
            }
          }
        });

    // Display the window.
    chatFrame.pack();
    chatFrame.setVisible(true);
  }
  public SearchTreeFrame(DelegateForest<MetaVariable, ConstraintNetwork> graph) {

    this.graph = graph;
    treeLayout = new TreeLayout<MetaVariable, ConstraintNetwork>(graph);
    radialLayout = new RadialTreeLayout<MetaVariable, ConstraintNetwork>(graph);
    radialLayout.setSize(new Dimension(600, 600));
    vv =
        new VisualizationViewer<MetaVariable, ConstraintNetwork>(
            treeLayout, new Dimension(600, 600));
    vv.setBackground(Color.white);
    vv.getRenderContext()
        .setEdgeShapeTransformer(new EdgeShape.Line<MetaVariable, ConstraintNetwork>());
    vv.getRenderContext()
        .setVertexLabelTransformer(
            new Transformer<MetaVariable, String>() {
              @Override
              public String transform(MetaVariable arg0) {
                return arg0.toString();
              }
            });

    vv.setVertexToolTipTransformer(
        new Transformer<MetaVariable, String>() {
          @Override
          public String transform(MetaVariable arg0) {
            return arg0.toString();
          }
        });

    // vv.getRenderContext().setArrowFillPaintTransformer(new ConstantTransformer(Color.lightGray));
    vv.getRenderContext()
        .setArrowFillPaintTransformer(
            new Transformer<ConstraintNetwork, Paint>() {
              @Override
              public Paint transform(ConstraintNetwork arg0) {
                return Color.lightGray;
              }
            });

    // System.out.println(graph.getVertices());
    rings = new Rings();

    Container content = getContentPane();
    final GraphZoomScrollPane panel = new GraphZoomScrollPane(vv);
    content.add(panel);

    final DefaultModalGraphMouse<?, ?> graphMouse = new DefaultModalGraphMouse<Object, Object>();

    vv.setGraphMouse(graphMouse);

    JComboBox modeBox = graphMouse.getModeComboBox();
    modeBox.addItemListener(graphMouse.getModeListener());
    graphMouse.setMode(Mode.TRANSFORMING);

    final ScalingControl scaler = new CrossoverScalingControl();

    JButton plus = new JButton("+");
    plus.addActionListener(
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1.1f, vv.getCenter());
          }
        });
    JButton minus = new JButton("-");
    minus.addActionListener(
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1 / 1.1f, vv.getCenter());
          }
        });

    JToggleButton radial = new JToggleButton("Radial");
    radial.addItemListener(
        new ItemListener() {

          @Override
          public void itemStateChanged(ItemEvent e) {
            if (e.getStateChange() == ItemEvent.SELECTED) {

              LayoutTransition<MetaVariable, ConstraintNetwork> lt =
                  new LayoutTransition<MetaVariable, ConstraintNetwork>(
                      vv, treeLayout, radialLayout);
              Animator animator = new Animator(lt);
              animator.start();
              vv.getRenderContext().getMultiLayerTransformer().setToIdentity();
              vv.addPreRenderPaintable(rings);
            } else {
              LayoutTransition<MetaVariable, ConstraintNetwork> lt =
                  new LayoutTransition<MetaVariable, ConstraintNetwork>(
                      vv, radialLayout, treeLayout);
              Animator animator = new Animator(lt);
              animator.start();
              vv.getRenderContext().getMultiLayerTransformer().setToIdentity();
              vv.removePreRenderPaintable(rings);
            }
            vv.repaint();
          }
        });

    JPanel scaleGrid = new JPanel(new GridLayout(1, 0));
    scaleGrid.setBorder(BorderFactory.createTitledBorder("Zoom"));

    JPanel controls = new JPanel();
    scaleGrid.add(plus);
    scaleGrid.add(minus);
    controls.add(radial);
    controls.add(scaleGrid);
    controls.add(modeBox);

    content.add(controls, BorderLayout.SOUTH);
  }
示例#20
0
  private CollapsiblePane addFilters() {

    JPanel labelPanel = new JPanel();
    labelPanel.setBackground(Color.WHITE);
    labelPanel.setLayout(new VerticalLayout(3));

    CollapsiblePane panelFilter = new CollapsiblePane(SYSTools.xx("misc.msg.Filter"));
    panelFilter.setStyle(CollapsiblePane.PLAIN_STYLE);
    panelFilter.setCollapsible(false);

    tbMedi = GUITools.getNiceToggleButton(SYSTools.xx("misc.msg.medication"));
    tbMedi.addItemListener(
        new ItemListener() {
          @Override
          public void itemStateChanged(ItemEvent e) {
            if (initPhase) return;
            //                SYSPropsTools.storeState(internalClassID + ":tbMedi", tbMedi);
            reloadDisplay();
          }
        });
    tbMedi.setHorizontalAlignment(SwingConstants.LEFT);
    labelPanel.add(tbMedi);
    //        SYSPropsTools.restoreState(internalClassID + ":tbMedi", tbMedi);

    tbBerichte = GUITools.getNiceToggleButton(SYSTools.xx("nursingrecords.reports"));
    tbBerichte.addItemListener(
        new ItemListener() {
          @Override
          public void itemStateChanged(ItemEvent e) {
            if (initPhase) return;
            //                SYSPropsTools.storeState(internalClassID + ":tbBerichte", tbBerichte);
            reloadDisplay();
          }
        });
    tbBerichte.setHorizontalAlignment(SwingConstants.LEFT);
    labelPanel.add(tbBerichte);
    //        SYSPropsTools.restoreState(internalClassID + ":tbBerichte", tbBerichte);

    tbBilanz = GUITools.getNiceToggleButton(SYSTools.xx("misc.msg.liquid.result"));
    tbBilanz.addItemListener(
        new ItemListener() {
          @Override
          public void itemStateChanged(ItemEvent e) {
            if (initPhase) return;
            //                SYSPropsTools.storeState(internalClassID + ":tbBilanz", tbBilanz);
            reloadDisplay();
          }
        });
    tbBilanz.setHorizontalAlignment(SwingConstants.LEFT);
    labelPanel.add(tbBilanz);
    //        SYSPropsTools.restoreState(internalClassID + ":tbBilanz", tbBilanz);

    //        tbBWInfo = GUITools.getNiceToggleButton(SYSTools.xx(PnlInfo.internalClassID));
    //        tbBWInfo.addItemListener(new ItemListener() {
    //            @Override
    //            public void itemStateChanged(ItemEvent e) {
    //                if (initPhase) return;
    //                SYSPropsTools.storeState(internalClassID + ":tbBWInfo", tbBWInfo);
    //                reloadDisplay();
    //            }
    //        });
    //        tbBilanz.setHorizontalAlignment(SwingConstants.LEFT);
    //        labelPanel.add(tbBWInfo);
    //        SYSPropsTools.restoreState(internalClassID + ":tbBWInfo", tbBWInfo);

    panelFilter.setContentPane(labelPanel);

    return panelFilter;
  }
示例#21
0
  @Override
  public void attach(Train t) {
    super.attach(t);

    throttle = new JSlider(SwingConstants.VERTICAL, 0, Train.MAX_THROTTLE, 0);
    // create slider labels
    Hashtable<Integer, JLabel> h = new Hashtable<Integer, JLabel>();
    h.put(new Integer(0), new JLabel("IDLE"));

    for (int i = 1; i <= Train.MAX_THROTTLE; i++)
      h.put(
          new Integer(i),
          new JLabel(
              Integer.toString(i)
                  + " ("
                  + Integer.toString(i * (Train.MAX_SPEED_MPH / Train.MAX_THROTTLE))
                  + " MPH)"));
    throttle.setLabelTable(h);
    throttle.setPaintLabels(true);
    throttle.setSnapToTicks(true);
    // throttle.setEnabled(false);
    throttle.addChangeListener(this);
    add(throttle);

    add(Box.createRigidArea(new Dimension(0, 5)));
    add(Box.createVerticalGlue());

    JPanel cp = new JPanel();
    cp.setLayout(new GridLayout(4, 2));

    brake = new JToggleButton("BRAKE");
    // brake.setEnabled(false);
    brake.addItemListener(this);

    // add(center(brake));
    cp.add(brake);

    follow = new JToggleButton("FOLLOW");
    follow.addItemListener(this);
    cp.add(follow);

    reverse = new JButton("REVERSE");
    reverse.addActionListener(this);
    cp.add(reverse);

    split = new JButton("SPLIT");
    split.addActionListener(this);
    cp.add(split);

    unload = new JButton("UNLOAD");
    unload.addActionListener(this);
    cp.add(unload);

    load = new JButton("LOAD");
    load.addActionListener(this);
    cp.add(load);

    horn = new JButton("HORN");
    horn.addActionListener(this);
    cp.add(horn);

    add(center(cp));
    add(Box.createRigidArea(new Dimension(0, 5)));

    add(Box.createVerticalGlue());
    add(Box.createVerticalGlue());
  }
  private void initComponentsCustom() {
    SGuiUtils.setWindowBounds(this, 1024, 640);

    mnFilterEmpStatus = SLibConsts.UNDEFINED;
    moPanelHrsDepartaments = new SPanelHrsDepartaments(miClient);
    moPanelHrsFilterPayrollStatus = new SPanelHrsFilterPayrollStatus(miClient);

    moRadReportTypeEarDed.setBooleanSettings(
        SGuiUtils.getLabelName(moRadReportTypeEarDed.getText()), true);
    moRadReportTypeEmployee.setBooleanSettings(
        SGuiUtils.getLabelName(moRadReportTypeEmployee.getText()), false);
    moRadReportTypeEmployeeDep.setBooleanSettings(
        SGuiUtils.getLabelName(moRadReportTypeEmployeeDep.getText()), false);
    moRadReportTypeDepartament.setBooleanSettings(
        SGuiUtils.getLabelName(moRadReportTypeDepartament.getText()), false);
    moRadReportTypeDepartamentEmp.setBooleanSettings(
        SGuiUtils.getLabelName(moRadReportTypeDepartamentEmp.getText()), false);
    moRadShowEarDed.setBooleanSettings(SGuiUtils.getLabelName(moRadShowEarDed.getText()), true);
    moRadShowEar.setBooleanSettings(SGuiUtils.getLabelName(moRadShowEar.getText()), false);
    moKeyEarning.setKeySettings(miClient, SGuiUtils.getLabelName(moRadShowEar.getText()), false);
    moRadShowDed.setBooleanSettings(SGuiUtils.getLabelName(moRadShowDed.getText()), false);
    moKeyDeduction.setKeySettings(miClient, SGuiUtils.getLabelName(moRadShowDed.getText()), false);
    moKeyPaymentType.setKeySettings(
        miClient, SGuiUtils.getLabelName(jlPaymentType.getText()), false);
    moKeyEmployee.setKeySettings(miClient, SGuiUtils.getLabelName(jlEmployee.getText()), false);
    moRadIsSummary.setBooleanSettings(SGuiUtils.getLabelName(moRadIsSummary.getText()), true);
    moRadIsDetailPayroll.setBooleanSettings(
        SGuiUtils.getLabelName(moRadIsDetailPayroll.getText()), false);
    moRadFilterTypePeriod.setBooleanSettings(
        SGuiUtils.getLabelName(moRadFilterTypePeriod.getText()), true);
    moRadFilterTypeDate.setBooleanSettings(
        SGuiUtils.getLabelName(moRadFilterTypeDate.getText()), false);
    moIntPeriodYear.setCalendarSettings(SGuiUtils.getLabelName(jlYear.getText()));
    moIntPeriodStart.setCalendarSettings(SGuiUtils.getLabelName(jlPeriodStart.getText()));
    moIntPeriodEnd.setCalendarSettings(SGuiUtils.getLabelName(jlPeriodEnd.getText()));
    moDateDateStart.setDateSettings(miClient, SGuiUtils.getLabelName(jlDateStart.getText()), true);
    moDateDateEnd.setDateSettings(miClient, SGuiUtils.getLabelName(jlDateEnd.getText()), true);
    moRadOrderByNumEmployee.setBooleanSettings(
        SGuiUtils.getLabelName(moRadOrderByNumEmployee.getText()), false);
    moRadOrderByNameEmployee.setBooleanSettings(
        SGuiUtils.getLabelName(moRadOrderByNameEmployee.getText()), true);
    moRadOrderByNumDepartament.setBooleanSettings(
        SGuiUtils.getLabelName(moRadOrderByNumDepartament.getText()), false);
    moRadOrderByNameDepartament.setBooleanSettings(
        SGuiUtils.getLabelName(moRadOrderByNameDepartament.getText()), true);

    jPanel3.add(moPanelHrsDepartaments, BorderLayout.CENTER);
    jpFilterStatusPay.add(moPanelHrsFilterPayrollStatus, BorderLayout.CENTER);
    moPanelHrsFilterPayrollStatus.setSelectedAll();

    moFields.addField(moRadReportTypeEarDed);
    moFields.addField(moRadReportTypeEmployee);
    moFields.addField(moRadReportTypeEmployeeDep);
    moFields.addField(moRadReportTypeDepartament);
    moFields.addField(moRadReportTypeDepartamentEmp);
    moFields.addField(moRadShowEarDed);
    moFields.addField(moRadShowEar);
    moFields.addField(moKeyEarning);
    moFields.addField(moRadShowDed);
    moFields.addField(moKeyDeduction);
    moFields.addField(moKeyPaymentType);
    moFields.addField(moKeyEmployee);
    moFields.addField(moRadIsSummary);
    moFields.addField(moRadIsDetailPayroll);
    moFields.addField(moRadFilterTypePeriod);
    moFields.addField(moRadFilterTypeDate);
    moFields.addField(moIntPeriodYear);
    moFields.addField(moIntPeriodStart);
    moFields.addField(moIntPeriodEnd);
    moFields.addField(moDateDateStart);
    moFields.addField(moDateDateEnd);
    moFields.addField(moRadOrderByNumEmployee);
    moFields.addField(moRadOrderByNameEmployee);
    moFields.addField(moRadOrderByNumDepartament);
    moFields.addField(moRadOrderByNameDepartament);

    moFields.setFormButton(jbPrint);

    moRadReportTypeEmployee.addChangeListener(this);
    moRadReportTypeEarDed.addChangeListener(this);
    moRadFilterTypePeriod.addChangeListener(this);
    moRadFilterTypeDate.addChangeListener(this);
    moRadFilterTypeDatePay.addChangeListener(this);

    moRadShowEarDed.addChangeListener(this);
    moRadShowEar.addChangeListener(this);
    moRadShowDed.addChangeListener(this);

    jtbEmployeeActive.addItemListener(this);

    moRadReportTypeEarDed.setSelected(true);
    moRadShowEarDed.setSelected(true);
    moRadFilterTypePeriod.setSelected(true);
    moRadOrderByNameEmployee.setSelected(true);
    moRadOrderByNameDepartament.setSelected(true);

    jtbEmployeeActive.setSelected(false);
    moRadIsSummary.setSelected(true);

    moIntPeriodYear.setValue(miClient.getSession().getCurrentYear());
    moIntPeriodStart.setValue(SLibTimeUtils.digestMonth(miClient.getSession().getCurrentDate())[1]);
    moIntPeriodEnd.setValue(SLibTimeUtils.digestMonth(miClient.getSession().getCurrentDate())[1]);
    moDateDateStart.setValue(SLibTimeUtils.getBeginOfYear(miClient.getSession().getCurrentDate()));
    moDateDateEnd.setValue(SLibTimeUtils.getEndOfYear(miClient.getSession().getCurrentDate()));

    reloadCatalogues();
    actionEnableFieldsDates();
    actionEnableFieldsEarDed();
  }
  /** Create the dialog. */
  public GRDialogNewDocument(GREditor father) {
    super(father, "Nuovo documento");

    this.grfather = father;
    setResizable(false);

    Container c = getContentPane();
    c.setLayout(new BorderLayout());

    DefaultListModel<String> model = new DefaultListModel<String>();
    for (int i = 0; i < nomeFormato.length; i++) {
      String el =
          "<html><body><span style='font-family: Tahoma; font-weight: bold; font-size: 10px;'>"
              + nomeFormato[i]
              + "</span><br><span style='font-size: 9px; font-family: Tahoma;'>"
              + descFormato[i]
              + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><br><br></body></html>";
      model.addElement(el);
    }

    formatoCarta = new JList(model);
    formatoCarta.setForeground(new Color(57, 105, 138));
    formatoCarta.addListSelectionListener(this);

    JScrollPane scroll = new JScrollPane(formatoCarta);
    scroll.setPreferredSize(new Dimension(200, 330));
    scroll.setBorder(null);

    JPanel panel = new JPanel();
    panel.setBorder(new MatteBorder(0, 0, 0, 1, (Color) UIManager.getColor("Button.background")));
    panel.setBackground(Color.WHITE);
    panel.add(scroll);

    c.add(panel, BorderLayout.WEST);

    JPanel buttonPane = new JPanel();
    buttonPane.setBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null));
    buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));

    okButton = new JButton("OK");
    okButton.addActionListener(this);
    buttonPane.add(okButton);
    getRootPane().setDefaultButton(okButton);

    cancelButton = new JButton("Cancella");
    cancelButton.addActionListener(this);
    buttonPane.add(cancelButton);

    c.add(buttonPane, BorderLayout.SOUTH);

    JPanel panelDati = new JPanel();
    panelDati.setBackground(Color.WHITE);
    panelDati.setLayout(new GridLayout(2, 1));
    c.add(panelDati, BorderLayout.CENTER);

    JPanel panelDimension = new JPanel();
    panelDimension.setBackground(Color.WHITE);
    panelDimension.setLayout(null);
    panelDati.add(panelDimension);

    JPanel panelDatiDim = new JPanel();
    panelDatiDim.setBackground(Color.WHITE);
    panelDatiDim.setBorder(
        new TitledBorder(null, "Formato", TitledBorder.LEADING, TitledBorder.TOP, null, null));
    panelDatiDim.setBounds(28, 46, 346, 110);
    panelDimension.add(panelDatiDim);
    panelDatiDim.setLayout(null);

    JLabel lblLarghezza = new JLabel("Larghezza (mm):");
    lblLarghezza.setBounds(88, 34, 92, 14);
    panelDatiDim.add(lblLarghezza);

    JLabel lblAltezzamm = new JLabel("Altezza (mm):");
    lblAltezzamm.setBounds(88, 59, 103, 14);
    panelDatiDim.add(lblAltezzamm);

    txtLarghezza = new JTextField();
    txtLarghezza.setFont(new Font("Tahoma", Font.PLAIN, 9));
    txtLarghezza.setBounds(190, 31, 86, 24);
    txtLarghezza.addFocusListener(this);
    panelDatiDim.add(txtLarghezza);
    txtLarghezza.setColumns(10);

    txtAltezza = new JTextField();
    txtAltezza.setFont(new Font("Tahoma", Font.PLAIN, 9));
    txtAltezza.setBounds(190, 59, 86, 24);
    txtAltezza.addFocusListener(this);
    panelDatiDim.add(txtAltezza);
    txtAltezza.setColumns(10);

    chckbxDimensioniPersonalizzate = new JCheckBox("Dimensioni personalizzate");
    chckbxDimensioniPersonalizzate.setBounds(28, 7, 346, 23);
    chckbxDimensioniPersonalizzate.addItemListener(this);
    panelDimension.add(chckbxDimensioniPersonalizzate);

    JPanel panelOrientation = new JPanel();
    panelOrientation.setBackground(Color.WHITE);
    panelOrientation.setLayout(new GridLayout(1, 2, 10, 10));
    panelDati.add(panelOrientation);

    portrait =
        new JToggleButton("Verticale", new ImageIcon(GRSetting.PATHIMAGE + "portrait.png"), false);
    portrait.setHorizontalTextPosition(JLabel.CENTER);
    portrait.setVerticalTextPosition(JLabel.BOTTOM);
    portrait.setSize(128, 128);
    portrait.setSelected(true);
    portrait.addItemListener(this);
    panelOrientation.add(portrait);

    landscape =
        new JToggleButton(
            "Orizzontale", new ImageIcon(GRSetting.PATHIMAGE + "landscape.png"), false);
    landscape.setHorizontalTextPosition(JLabel.CENTER);
    landscape.setVerticalTextPosition(JLabel.BOTTOM);
    landscape.setSize(128, 128);
    landscape.addItemListener(this);
    panelOrientation.add(landscape);

    formatoCarta.setSelectedIndex(1);
    enableCustomDimension(false);

    setBounds(100, 100, 620, 400);
    setVisible(true);
  }