Changeset 6221


Ignore:
Timestamp:
2003-12-10T17:21:45+13:00 (20 years ago)
Author:
jmt12
Message:

Cancelling the autofilter dialog no longer alternatively sets or clears a random filter

Location:
trunk/gli/src/org/greenstone/gatherer/gui/metaaudit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/gli/src/org/greenstone/gatherer/gui/metaaudit/Autofilter.java

    r5589 r6221  
    329329            source = values.get(i).toString().toLowerCase();
    330330        }
    331         System.err.println("Testing " + source + " against pattern " + target);
     331        ///ystem.err.println("Testing " + source + " against pattern " + target);
    332332        // Perform the match, based on the selected method.
    333333        switch(method) {
  • trunk/gli/src/org/greenstone/gatherer/gui/metaaudit/AutofilterDialog.java

    r5593 r6221  
    5959    /** A reference to ourselves so our inner classes can reference us. */
    6060    private AutofilterDialog self;
     61
     62    private boolean cancelled;
    6163    /** The value returned from the filter dialog prompt. Used to determine if a prompt was set or unset, and what subsequent action to take. */
    6264    private byte return_value = 0;
     
    193195    none_radiobutton.addActionListener(new CheckListener(false));
    194196    or_radiobutton.addActionListener(new CheckListener(true));
    195     cancel_button.addActionListener(new ButtonListener(false));
     197    cancel_button.addActionListener(new ButtonListener()); // It returns any currently set filter
    196198    remove_button.addActionListener(new ButtonListener(false));
    197199    set_button.addActionListener(new ButtonListener(true));
     
    264266    setLocation((screen_size.width - SIZE.width) / 2, (screen_size.height - SIZE.height) / 2);
    265267    screen_size = null;
     268    }
     269
     270    public boolean cancelled() {
     271    return cancelled;
    266272    }
    267273
     
    286292     */
    287293    public Autofilter display(Autofilter filter, ArrayList raw_values, String column_name) {
     294    this.cancelled = false;
    288295    this.filter = filter;
    289296    name.setText(column_name);
     
    332339    private final class ButtonListener
    333340    implements ActionListener {
     341    private boolean cancel_button;
    334342    private boolean return_filter;
     343   
     344    /** Default constructor. Returns any filter that was already set */
     345    public ButtonListener() {
     346        this.cancel_button = true;
     347    }
     348
    335349    /** Does an action on this button cause a filter to be returned. */
    336350    /** Constructor takes an associated return value as an argument.
     
    338352     */
    339353    public ButtonListener(boolean return_filter) {
     354        this.cancel_button = false;
    340355        this.return_filter = return_filter;
    341356    }
     
    345360     */
    346361    public void actionPerformed(ActionEvent event) {
    347         if(return_filter) {
     362        if(cancel_button) {
     363        cancelled = true;
     364        }
     365        else if(return_filter) {
    348366        if(control.getSelectedIndex() == 0) {
    349367            filter.setFilter(1, 0, (String)value.getSelectedItem(), true);
  • trunk/gli/src/org/greenstone/gatherer/gui/metaaudit/HeaderListener.java

    r5589 r6221  
    7373    String column_name = model.getColumnName(clicked_column);
    7474    filter = parent_frame.autofilter_dialog.display(filter, default_values, column_name);
    75     if(filter == null) {
    76         filter_model.clearFilter(clicked_column);
     75    if(!parent_frame.autofilter_dialog.cancelled()) {
     76        if(filter == null) {
     77        filter_model.clearFilter(clicked_column);
     78        }
     79        else {
     80        filter.setActive(true);
     81        TableModelSorter sorter = table.getSorter();
     82        sorter.setSortColumn(clicked_column);
     83        sorter.setSortAscending(filter.sort);
     84        }
     85        filter_model.fireFilterChanged();
    7786    }
    78     else {
    79         filter.setActive(true);
    80         TableModelSorter sorter = table.getSorter();
    81         sorter.setSortColumn(clicked_column);
    82         sorter.setSortAscending(filter.sort);
    83     }
    84     filter_model.fireFilterChanged();
    8587    }
    8688}
Note: See TracChangeset for help on using the changeset viewer.