예제 #1
0
  ClauseOrder(QueryClauses clauses) {
    super(new GridLayout(1, 2));

    this.clauses = clauses;

    DefaultPanel pnl;
    JToolBar bar;
    JScrollPane scroll;

    DefaultTableModel model =
        new DefaultTableModel(0, 2) {
          public boolean isCellEditable(int row, int column) {
            return column == 0;
          }
        };

    this.add(pnl = new DefaultPanel());
    pnl.setCenterComponent(
        scroll = new JScrollPane(availableExpressions = new JList(new DefaultListModel())));
    pnl.setEastComponent(bar = new JToolBar(JToolBar.VERTICAL));
    bar.add(createButton("put >", PUT));
    bar.add(createButton("< push", PUSH));
    bar.setFloatable(false);

    this.add(pnl = new DefaultPanel());
    pnl.setCenterComponent(scroll = new JScrollPane(selectedExpressions = new JTable(model)));
    pnl.setEastComponent(bar = new JToolBar(JToolBar.VERTICAL));
    bar.add(createButton("up", UP));
    bar.add(createButton("down", DOWN));
    bar.setFloatable(false);
    scroll.getViewport().setBackground(selectedExpressions.getBackground());

    TableColumn tableColumn = selectedExpressions.getColumn(selectedExpressions.getColumnName(0));
    tableColumn.setCellEditor(new CheckBoxCellRenderer());
    tableColumn.setCellRenderer(new CheckBoxCellRenderer());
    tableColumn.setPreferredWidth(15);
    tableColumn.setMaxWidth(15);
    tableColumn.setResizable(false);

    selectedExpressions.setIntercellSpacing(new Dimension(0, 0));
    selectedExpressions.setShowGrid(false);
    selectedExpressions.setColumnSelectionAllowed(false);
    selectedExpressions.setDefaultRenderer(Boolean.class, new CheckBoxCellRenderer());
    selectedExpressions.getTableHeader().setPreferredSize(new Dimension(0, 0));
    selectedExpressions.getTableHeader().setVisible(false);
  }