source: java/main/src/main/java/com/framsticks/gui/ListPanel.java @ 77

Last change on this file since 77 was 77, checked in by psniegowski, 11 years ago

Add new java codebase.

File size: 2.6 KB
Line 
1package com.framsticks.gui;
2
3import com.framsticks.gui.view.TableModel;
4import com.framsticks.params.AccessInterface;
5import org.apache.log4j.Logger;
6
7import javax.swing.*;
8import javax.swing.table.TableColumn;
9
10/**
11 * Panel contains table and allows to manages displaying columns.
12 */
13@SuppressWarnings("serial")
14public class ListPanel extends Panel {
15
16        private static final Logger LOGGER = Logger.getLogger(ListPanel.class.getName());
17
18        final protected TableModel tableModel = new TableModel();
19        final protected JTable table = new JTable(tableModel);
20
21        public ListPanel(EndpointAtFrame endpoint) {
22                super(endpoint, "list");
23
24                table.getTableHeader().setReorderingAllowed(false);
25                table.setColumnSelectionAllowed(false);
26                table.setCellSelectionEnabled(false);
27                table.setColumnSelectionAllowed(false);
28
29                contentPanel.add(table);
30
31        /*
32                AccessInterface elementAccess = ((ListAccess)access).getElementAccess();
33                if (elementAccess == null) {
34                        LOGGER.error("no type class");
35                        return;
36                }
37                List<String> list = new ArrayList<String>();
38                addColumn(elementAccess.getId(), elementAccess.getId(), 0);
39                list.add(elementAccess.getId());
40                for (int p = 0; p < elementAccess.getParamCount(); ++p) {
41                        Param param = elementAccess.getParam(p);
42                        if (param.isUserHidden()) {
43                                continue;
44                        }
45                        if (param instanceof CompositeParam) {
46                                continue;
47                        }
48                        addColumn(param.getId(), param.getId(), 0);
49                        list.add(param.getId());
50                }
51                tableModel.addRow(list.toArray());
52        */
53                /*
54                JMenuBar menuBar = new JMenuBar();
55                selectColumnMenu = new JMenu("Columns");
56                menuBar.add(selectColumnMenu);
57                createTable();
58                this.setLayout(new BorderLayout());
59                this.add(menuBar, BorderLayout.PAGE_START);
60                */
61
62        }
63
64        /**
65         * Adds column to table.
66         *
67         * @param columnName Name of column.
68         * @param columnId   Column getId.
69         * @param index      Column index.
70         */
71        public void addColumn(String columnName, String columnId, int index) {
72                TableColumn tableColumn = new TableColumn();
73                tableColumn.setHeaderValue(columnName);
74                tableColumn.setIdentifier(columnId);
75                tableColumn.setModelIndex(index);
76                tableModel.addColumn(tableColumn);
77
78                //userColumnsConfig.addColumn(getPath(), columnId);
79        }
80
81        /**
82         * Removes column from table.
83         *
84         * @param columnId Id of column.
85         */
86        public void removeColumn(String columnId) {
87                tableModel.removeColumn(columnId);
88                //userColumnsConfig.removeColumn(getPath(), columnId);
89        }
90
91        /**
92         * Clears table.
93         */
94        public void clearTable() {
95                tableModel.setRowCount(0);
96        }
97
98        public void refreshTable() {
99                clearTable();
100        }
101
102        @Override
103        protected void applyChanges() {
104        }
105
106        @Override
107        public void refreshComponents(AccessInterface access) {
108
109        }
110}
Note: See TracBrowser for help on using the repository browser.