Exemplo n.º 1
0
  /** Creates new form FilterEditor */
  public FilterEditor(FilterRepository filters) {
    initComponents();
    this.filterRepository = filters;
    if (filterRepository.size() == 0) filterRepository.add(filterRepository.createNewFilter());
    this.filterModel = new FilterModel(filterRepository);

    init();
  }
Exemplo n.º 2
0
 public FilterModel(FilterRepository rep) {
   filters = new ArrayList<TaskFilter>(rep.size() * 2);
   int selectedi = 0;
   for (TaskFilter f : rep.getFilters()) {
     if (f == rep.getActive()) selection.setSelectionInterval(selectedi, selectedi);
     filters.add((TaskFilter) f.clone());
     selectedi++;
   }
 }
Exemplo n.º 3
0
  /**
   * Reads data from the form into the filter repository that was passed-in in the constructor
   * (returned by {@link #getFilterRepository})
   */
  void updateFilters() {
    filterRepository.clear(); // throw away all original filters

    Iterator filterIt = filterModel.iterator();
    while (filterIt.hasNext()) {
      TaskFilter f = (TaskFilter) filterIt.next();
      if (filter2keywords.get(f.getKeywordsFilter()) != null)
        f.setKeywordsFilter(
            filter2keywords.get(f.getKeywordsFilter()).getFilter()); // has panel, was touched

      if (filter2types.get(f.getTypesFilter()) != null)
        f.setTypesFilter(
            filter2types.get(f.getTypesFilter()).getFilter()); // has panel, was touched

      filterRepository.add(f);
    }
    if (filterModel.getSelectedFilter() != null) {
      filterRepository.setActive(filterModel.getSelectedFilter());
    }
  }
Exemplo n.º 4
0
 private void onNewFilter(java.awt.event.ActionEvent evt) { // GEN-FIRST:event_onNewFilter
   TaskFilter f = filterRepository.createNewFilter();
   filterModel.add(f);
   showFilter(f);
 } // GEN-LAST:event_onNewFilter
Exemplo n.º 5
0
  private void init() {
    initComponents();

    // init filters-listbox model
    lstFilters.setModel(filterModel);
    lstFilters.setSelectionModel(filterModel.selection);
    lstFilters.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

    // try to select just applied filter

    TaskFilter selected = filterRepository.getActive();
    if (null != selected) {
      int selIndex = filterModel.getIndexOf(selected);
      lstFilters.setSelectedIndex(selIndex);
    }

    if (filterModel.getSelectedIndex() == -1) {
      if (filterModel.getSize() > 0) {
        lstFilters.setSelectedIndex(0);
      }
    }

    txtFilterName
        .getDocument()
        .addDocumentListener(
            new DocumentListener() {
              public void changedUpdate(DocumentEvent e) {
                update(e);
              }

              public void insertUpdate(DocumentEvent e) {
                update(e);
              }

              public void removeUpdate(DocumentEvent e) {
                update(e);
              }

              private void update(DocumentEvent e) {
                try {
                  filterModel.setCurrentFilterName(
                      e.getDocument().getText(0, e.getDocument().getLength()));
                  propertyChange(null);
                } catch (BadLocationException ex) {
                  // ignore
                }
              }
            });

    // hook list selection
    lstFilters.addListSelectionListener(
        new ListSelectionListener() {
          public void valueChanged(ListSelectionEvent e) {
            if (!e.getValueIsAdjusting()) {
              showFilter(filterModel.getSelectedFilter());
              btnRemoveFilter.setEnabled(filterModel.getSelectedIndex() != -1);
              txtFilterName.setEnabled(filterModel.getSelectedIndex() != -1);
            }
          }
        });

    showFilter(filterModel.getSelectedFilter());
    btnRemoveFilter.setEnabled(filterModel.getSelectedIndex() != -1);

    btnOk = new JButton(NbBundle.getMessage(FilterEditor.class, "btnOk")); // NOI18N
    btnCancel = new JButton(NbBundle.getMessage(FilterEditor.class, "btnCancel")); // NOI18N
  }