■ ■ ■ ■ ■ ■
src/main/java/com/nccgroup/loggerplusplus/logview/logtable/LogTable.java
| skipped 3 lines |
4 | 4 | | // extend JTable to handle cell selection and column move/resize |
5 | 5 | | // |
6 | 6 | | |
7 | | - | import com.nccgroup.loggerplusplus.logview.LogTableFilterStatusListener; |
8 | 7 | | import com.nccgroup.loggerplusplus.LoggerPlusPlus; |
9 | | - | import com.nccgroup.loggerplusplus.logview.RequestViewerController; |
10 | 8 | | import com.nccgroup.loggerplusplus.filter.colorfilter.ColorFilter; |
11 | 9 | | import com.nccgroup.loggerplusplus.filter.colorfilter.ColorFilterListener; |
12 | 10 | | import com.nccgroup.loggerplusplus.filter.logfilter.LogFilter; |
| skipped 2 lines |
15 | 13 | | import com.nccgroup.loggerplusplus.logentry.LogEntry; |
16 | 14 | | import com.nccgroup.loggerplusplus.logentry.LogEntryListener; |
17 | 15 | | import com.nccgroup.loggerplusplus.logview.LogEntryMenu; |
| 16 | + | import com.nccgroup.loggerplusplus.logview.LogTableFilterStatusListener; |
| 17 | + | import com.nccgroup.loggerplusplus.logview.RequestViewerController; |
18 | 18 | | import com.nccgroup.loggerplusplus.userinterface.LogTableModel; |
19 | 19 | | import com.nccgroup.loggerplusplus.userinterface.renderer.BooleanRenderer; |
20 | 20 | | import com.nccgroup.loggerplusplus.util.Globals; |
| skipped 5 lines |
26 | 26 | | import java.awt.*; |
27 | 27 | | import java.awt.event.MouseAdapter; |
28 | 28 | | import java.awt.event.MouseEvent; |
| 29 | + | import java.util.List; |
29 | 30 | | import java.util.*; |
30 | | - | import java.util.List; |
31 | 31 | | |
32 | 32 | | public class LogTable extends JTable implements LogFilterListener, ColorFilterListener, LogEntryListener |
33 | 33 | | { |
| skipped 23 lines |
57 | 57 | | LoggerPlusPlus.preferences.setSetting(Globals.PREF_SORT_COLUMN, null); |
58 | 58 | | }else { |
59 | 59 | | RowSorter.SortKey sortKey = sortKeys.get(0); |
60 | | - | LoggerPlusPlus.preferences.setSetting(Globals.PREF_SORT_ORDER, String.valueOf(sortKey.getSortOrder())); |
| 60 | + | LoggerPlusPlus.preferences.setSetting(Globals.PREF_SORT_ORDER, sortKey.getSortOrder()); |
61 | 61 | | LoggerPlusPlus.preferences.setSetting(Globals.PREF_SORT_COLUMN, sortKey.getColumn()); |
62 | 62 | | } |
63 | 63 | | }); |
64 | 64 | | |
65 | 65 | | Integer sortColumn = LoggerPlusPlus.preferences.getSetting(Globals.PREF_SORT_COLUMN); |
66 | | - | SortOrder sortOrder; |
67 | | - | try{ |
68 | | - | sortOrder = SortOrder.valueOf(LoggerPlusPlus.preferences.getSetting(Globals.PREF_SORT_ORDER)); |
69 | | - | }catch(Exception e){ |
70 | | - | sortOrder = SortOrder.ASCENDING; |
71 | | - | } |
72 | | - | if(sortColumn > 0){ //TODO Fix bug with renderer throwing null pointer when |
| 66 | + | SortOrder sortOrder = LoggerPlusPlus.preferences.getSetting(Globals.PREF_SORT_ORDER); |
| 67 | + | if(sortColumn >= 0 && sortOrder != SortOrder.UNSORTED){ |
73 | 68 | | this.getRowSorter().setSortKeys(Collections.singletonList(new RowSorter.SortKey(sortColumn, sortOrder))); |
74 | 69 | | } |
75 | 70 | | |
| skipped 11 lines |
87 | 82 | | } |
88 | 83 | | } |
89 | 84 | | }); |
| 85 | + | //TODO Multi selection + relevant context menu changes |
90 | 86 | | this.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION); |
91 | 87 | | |
92 | 88 | | registerListeners(); |
| skipped 239 lines |