source: trunk/gli/src/org/greenstone/gatherer/gui/metaaudit/HeaderListener.java@ 8313

Last change on this file since 8313 was 8313, checked in by mdewsnip, 20 years ago

Finally committing the (many) changes to the GLI to use the new metadata code... I hope this doesn't have too many bugs in it and committing it now doesn't stuff anyone up! (Katherine said I could commit it, so blame her if anything goes wrong).

  • Property svn:keywords set to Author Date Id Revision
File size: 2.7 KB
Line 
1/**
2 *#########################################################################
3 *
4 * A component of the Gatherer application, part of the Greenstone digital
5 * library suite from the New Zealand Digital Library Project at the
6 * University of Waikato, New Zealand.
7 *
8 * <BR><BR>
9 *
10 * Author: John Thompson, Greenstone Digital Library, University of Waikato
11 *
12 * <BR><BR>
13 *
14 * Copyright (C) 1999 New Zealand Digital Library Project
15 *
16 * <BR><BR>
17 *
18 * This program is free software; you can redistribute it and/or modify
19 * it under the terms of the GNU General Public License as published by
20 * the Free Software Foundation; either version 2 of the License, or
21 * (at your option) any later version.
22 *
23 * <BR><BR>
24 *
25 * This program is distributed in the hope that it will be useful,
26 * but WITHOUT ANY WARRANTY; without even the implied warranty of
27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28 * GNU General Public License for more details.
29 *
30 * <BR><BR>
31 *
32 * You should have received a copy of the GNU General Public License
33 * along with this program; if not, write to the Free Software
34 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
35 *########################################################################
36 */
37package org.greenstone.gatherer.gui.metaaudit;
38
39
40import de.qfs.lib.gui.TableModelSorter;
41import java.awt.event.MouseAdapter;
42import java.awt.event.MouseEvent;
43import java.util.ArrayList;
44import org.greenstone.gatherer.metadata.MetadataAuditTableModel;
45
46public class HeaderListener
47 extends MouseAdapter {
48 private MetaAuditFrame parent_frame;
49 private MetaAuditTable table;
50 public HeaderListener(MetaAuditFrame parent_frame, MetaAuditTable table) {
51 this.parent_frame = parent_frame;
52 this.table = table;
53 }
54
55 public void mouseClicked(MouseEvent event) {
56 // Determine the column this was clicked on.
57 int column = table.getColumnModel().getColumnIndexAtX(event.getX());
58 int clicked_column = table.convertColumnIndexToModel(column);
59 // Display the currently assigned filter.
60 Filter filter_model = table.getFilter();
61 Autofilter filter = filter_model.getFilter(clicked_column);
62 MetadataAuditTableModel model = table.getOriginalModel();
63 ArrayList default_values = model.getColumnValues(clicked_column);
64 String column_name = model.getColumnName(clicked_column);
65 filter = parent_frame.autofilter_dialog.display(filter, default_values, column_name);
66 if(!parent_frame.autofilter_dialog.cancelled()) {
67 if(filter == null) {
68 filter_model.clearFilter(clicked_column);
69 }
70 else {
71 filter.setActive(true);
72 TableModelSorter sorter = table.getSorter();
73 sorter.setSortColumn(clicked_column);
74 sorter.setSortAscending(filter.sort);
75 }
76 filter_model.fireFilterChanged();
77 }
78 }
79}
Note: See TracBrowser for help on using the repository browser.