1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.xnap.util;
21
22 import java.beans.PropertyChangeListener;
23
24 /***
25 * Defines the requirements for classes that provide preferences support for
26 * tables. The preferences are used to manage column ordering, column sizes
27 * and the maintain sortorder setting.
28 */
29 public interface TablePreferencesProvider extends PreferencesProvider
30 {
31
32
33
34
35
36 void addTableListener(String table, PropertyChangeListener l);
37
38 boolean getTableMaintainSortOrder(String table);
39
40 /***
41 * Returns an array of visible columns as an array of column keys.
42 */
43 String[] getTableColumns(String table);
44
45 /***
46 * Sets an array of visible columns as an array of column keys.
47 */
48 void setTableColumns(String table, String[] columns);
49
50 int[] getTableColumnWidths(String table);
51
52 void setTableColumnWidths(String table, int[] widths);
53
54 void setTableMaintainSortOrder(String table, boolean enable);
55
56 /***
57 * Returns 0, if no column is sorted, otherwise the model index
58 * of the column + 1. If the return value is < 0 the column is sorted
59 * descending .
60 */
61 int getTableSortedColumn(String table);
62
63 void setTableSortedColumn(String table, int column);
64
65 }