示例#1
1
  public void filterBase(String ft) {
    if (ft.contains("-i")) {
      RowFilter<Storage, Object> tmpFilter = null;
      try {
        tmpFilter = RowFilter.regexFilter("^new$", Storage.COL_TAGS);
      } catch (Exception e) {
        System.err.println("Failed to filter new ones");
      }
      tableSorter.setRowFilter(tmpFilter);
      return;
    }

    boolean names = false;
    boolean bads = false;
    boolean exclusive = true;
    if (ft.contains("-n")) {
      names = true;
      ft = ft.substring(0, ft.indexOf("-n")) + ft.substring(ft.indexOf("-n") + 2);
    }
    if (ft.contains("-z")) {
      bads = true;
      ft = ft.substring(0, ft.indexOf("-z")) + ft.substring(ft.indexOf("-z") + 2);
    }
    if (ft.contains("-x")) {
      exclusive = false;
      ft = ft.substring(0, ft.indexOf("-x")) + ft.substring(ft.indexOf("-x") + 2);
    }

    ft = ft.replaceAll("[^a-zA-Z0-9]", " ").replaceAll("  *", " ").trim().toLowerCase();
    String[] terms = ft.split(" ");
    ArrayList<RowFilter<Storage, Object>> termFilters = new ArrayList<RowFilter<Storage, Object>>();
    for (int i = 0; i < terms.length; i++) {
      if (terms[i].length() > 0) {
        try {
          RowFilter<Storage, Object> tmp =
              RowFilter.regexFilter(".*" + terms[i] + ".*", Storage.COL_TAGS);
          if (names) tmp = RowFilter.regexFilter(".*" + terms[i] + ".*", Storage.COL_NAME);
          termFilters.add(tmp);
        } catch (Exception e) {
          // do nothing
          System.err.println("Term filter error for term " + terms[i]);
        }
      }
    }

    RowFilter<Storage, Object> badFilter = RowFilter.regexFilter(".*zz.*", Storage.COL_TAGS);
    if (!bads) badFilter = RowFilter.notFilter(badFilter);

    RowFilter<Storage, Object> omniFilter = badFilter;
    if (termFilters.size() != 0) {
      ArrayList<RowFilter<Storage, Object>> tmpFilters =
          new ArrayList<RowFilter<Storage, Object>>();
      RowFilter<Storage, Object> orFilter =
          (exclusive ? RowFilter.andFilter(termFilters) : RowFilter.orFilter(termFilters));
      tmpFilters.add(orFilter);
      tmpFilters.add(badFilter);
      omniFilter = RowFilter.andFilter(tmpFilters);
    }

    tableSorter.setRowFilter(omniFilter);
  }
示例#2
1
 // Фильтрация классификаторов
 public void setClassifierFilter(String beginsWith) {
   TableRowSorter<AbstractTableModel> sorter = new TableRowSorter<>(table.getModel());
   RowFilter<Object, Object> rf = RowFilter.regexFilter("^" + beginsWith, 0);
   table.setRowSorter(sorter);
   sorter.setRowFilter(rf);
 }
示例#3
0
 public void filter() {
   String expr = filterField.getText().trim();
   if (expr.length() == 0) {
     expr = null;
   }
   try {
     final TableRowSorter<? extends TableModel> sorter =
         ((TableRowSorter<? extends TableModel>) shortcutTable.getRowSorter());
     if (expr == null) {
       sorter.setRowFilter(null);
     } else {
       expr = expr.replace("+", "\\+");
       // split search string on whitespace, do case-insensitive AND search
       ArrayList<RowFilter<Object, Object>> andFilters =
           new ArrayList<RowFilter<Object, Object>>();
       for (String word : expr.split("\\s+")) {
         andFilters.add(RowFilter.regexFilter("(?i)" + word));
       }
       sorter.setRowFilter(RowFilter.andFilter(andFilters));
     }
     model.fireTableDataChanged();
   } catch (PatternSyntaxException ex) {
   } catch (ClassCastException ex2) {
     /* eliminate warning */
   }
 }
  public void activarFiltrosTabla() {
    TableRowSorter<TableModel> modeloOrdenado;
    // model.setRowFilter(RowFilter.regexFilter("2", 1));
    modeloOrdenado = new TableRowSorter<TableModel>(model);
    tablaCapacitadores.setRowSorter(modeloOrdenado);

    if (filtroBuscarActivado) {
      String[] cadena = txtBuscar.getText().split(" ");
      List<RowFilter<Object, Object>> filters = new ArrayList<RowFilter<Object, Object>>();
      for (int i = 0; i < cadena.length; i++) {
        filters.add(RowFilter.regexFilter("(?i)" + cadena[i]));
      }
      if (rbFiltroActivos.isSelected()) {
        filters.add(RowFilter.regexFilter(gestor.nombreEstadoCapacitadorActivo(), 3));
      }
      RowFilter<Object, Object> cadenaFilter = RowFilter.andFilter(filters);
      modeloOrdenado.setRowFilter(cadenaFilter);

    } else {
      if (rbFiltroActivos.isSelected()) {
        modeloOrdenado.setRowFilter(
            RowFilter.regexFilter(gestor.nombreEstadoCapacitadorActivo(), 3));
      }
    }
  }
 public void actionPerformed(ActionEvent arg0) {
   if (cmbEstablecimientos.getSelectedIndex() != 0) {
     trsfiltro.setRowFilter(
         RowFilter.regexFilter(cmbEstablecimientos.getSelectedItem() + "", 3));
   } else {
     trsfiltro.setRowFilter(RowFilter.regexFilter("", 2));
   }
 }
示例#6
0
 private void aplicaFiltro() {
   String textoFiltro = filtro.getText();
   if (textoFiltro.length() > 0) {
     sorter.setRowFilter(new BusquedaAutoRowFilter(textoFiltro));
   } else {
     sorter.setRowFilter(null);
   }
 }
  /**
   * @param sorter come from the same class of table
   * @param table need a array
   * @param stringFiltre1 filtre no1
   * @param idColFiltre1 col that apply the filtre no1
   * @param stringFiltre2 filtre no2
   * @param idColFiltre2 col that apply the filtre no2
   *     <p>This method handle the double filtrate of an array
   */
  public void doubleFilter(
      TableRowSorter<DefaultTableModel> sorter,
      JTable table,
      String stringFiltre1,
      int idColFiltre1,
      String stringFiltre2,
      int idColFiltre2) {

    RowFilter<DefaultTableModel, Object> rfType = null;
    RowFilter<DefaultTableModel, Object> rfStatus = null;

    System.out.println("double filtre, string 1 :" + stringFiltre1);
    System.out.println("double filtre, string 2 :" + stringFiltre2);

    if (stringFiltre1 == "Tout") {
      stringFiltre1 = "";
    }
    if (stringFiltre2 == "Tout") {
      stringFiltre2 = "";
    }
    rfType = RowFilter.regexFilter(stringFiltre1, idColFiltre1);
    rfStatus = RowFilter.regexFilter(stringFiltre2, idColFiltre2);

    ArrayList<RowFilter<DefaultTableModel, Object>> andFilters =
        new ArrayList<RowFilter<DefaultTableModel, Object>>();
    andFilters.add(rfType);
    andFilters.add(rfStatus);

    sorter.setRowFilter(RowFilter.andFilter(andFilters));

    nbRowsField.setText(table.getRowCount() + " trouvés");
    System.out.println(table.getRowCount());

    setAllAvgField(table, 1, 1, 3, 2);
  }
示例#8
0
  private void createUIComponents() {
    portFreightTableModel = new FreightTableModel(Game.getInstance().getFreightMarket());
    portFreightTable = new JTable(portFreightTableModel);
    TableRowSorter<FreightTableModel> portTableSorter =
        new TableRowSorter<FreightTableModel>(portFreightTableModel);
    portTableSorter.setRowFilter(new FreightTableModel.PortRowFilter(portProxy));
    portFreightTable.setRowSorter(portTableSorter);

    Company playerCompany = Game.getInstance().getPlayerCompany();
    List<ShipModel> shipsInPortList = playerCompany.findShipsInPort(portProxy);

    shipsInPortListBox = new JList(shipsInPortList.toArray());

    // TODO this is fugly-hacked at the moment.
    FreightTableModel shipFreightTableModel = null;

    if (shipsInPortList.size() > 0) {
      shipFreightTableModel = new FreightTableModel(shipsInPortList.get(0));
    } else {
      shipFreightTableModel = new FreightTableModel(null);
    }

    shipFreightTable = new JTable(shipFreightTableModel);
    TableRowSorter<FreightTableModel> shipTableSorter =
        new TableRowSorter<FreightTableModel>(shipFreightTableModel);
    shipFreightTable.setRowSorter(shipTableSorter);

    nameOfPort = new JLabel();
    nameOfPort.setText(portProxy.getName());
  }
示例#9
0
 private void filterUsers(final String fragment) {
   table.clearSelection();
   userCertificatePanel.setUserCertificateModel(null);
   if (StringUtils.isEmpty(fragment)) {
     table.setRowSorter(defaultSorter);
     return;
   }
   RowFilter<UserCertificateTableModel, Object> containsFilter =
       new RowFilter<UserCertificateTableModel, Object>() {
         @Override
         public boolean include(
             Entry<? extends UserCertificateTableModel, ? extends Object> entry) {
           for (int i = entry.getValueCount() - 1; i >= 0; i--) {
             if (entry.getStringValue(i).toLowerCase().contains(fragment.toLowerCase())) {
               return true;
             }
           }
           return false;
         }
       };
   TableRowSorter<UserCertificateTableModel> sorter =
       new TableRowSorter<UserCertificateTableModel>(tableModel);
   sorter.setRowFilter(containsFilter);
   table.setRowSorter(sorter);
 }
 // This method is used to filter table by column
 protected void update_filter() {
   txt_search_word.setText("");
   Object selected = cmb_search_catagory.getSelectedItem();
   TableRowSorter<?> sorter = (TableRowSorter<?>) tbl_service_details.getRowSorter();
   String text = "(?i)" + txt_search_text.getText();
   if ("Nothing".equals(selected)) {
     sorter.setRowFilter(null);
   } else {
     int col = -1;
     if ("Customer Name".equals(selected)) {
       col = 1;
     } else if ("Vehicle Number".equals(selected)) {
       col = 3;
     }
     sorter.setRowFilter(RowFilter.regexFilter(text, col));
   }
 }
示例#11
0
 private void buscarJtblPagos() throws Exception {
   if (jtable.getModel().getRowCount() > 0) {
     String msg = jtfBuscar.getText();
     javax.swing.table.TableRowSorter modeloOrdenado =
         new javax.swing.table.TableRowSorter(jtable.getModel());
     modeloOrdenado.setRowFilter(javax.swing.RowFilter.regexFilter(msg));
     jtable.setRowSorter(modeloOrdenado);
   }
 }
示例#12
0
  private void jBPesquisarActionPerformed(
      java.awt.event.ActionEvent evt) { // GEN-FIRST:event_jBPesquisarActionPerformed
    // TODO add your handling code here:

    String text = jTFPesquisar.getText();

    if (text.length() == 0) {
      sorter.setRowFilter(null);
    } else {
      try {
        sorter.setRowFilter(RowFilter.regexFilter(text));
      } catch (PatternSyntaxException pse) {
        JOptionPane.showMessageDialog(null, "Bad regex pattern");

      } catch (RuntimeException ex2) {
        JOptionPane.showMessageDialog(null, "Erro: " + ex2.getMessage());
      }
    }
  } // GEN-LAST:event_jBPesquisarActionPerformed
示例#13
0
  public void Pesquisar(String texto) {

    String textoInicialMaiuscula = "";

    if (texto != null && !texto.trim().equals("")) {
      textoInicialMaiuscula = texto.substring(0, 1).toUpperCase().concat(texto.substring(1));
    }

    if (textoInicialMaiuscula.length() == 0) {
      sorter.setRowFilter(null);
    } else {
      try {
        sorter.setRowFilter(RowFilter.regexFilter(textoInicialMaiuscula));
      } catch (PatternSyntaxException pse) {
        JOptionPane.showMessageDialog(null, "Bad regex pattern");

      } catch (RuntimeException ex2) {
        JOptionPane.showMessageDialog(null, "Erro: " + ex2.getMessage());
      }
    }

    tabela.grabFocus();
  }
  private void filterButtonActionPerformed(
      java.awt.event.ActionEvent evt) { // GEN-FIRST:event_filterButtonActionPerformed
    m = monthComboBox.getSelectedIndex();
    String yearString = yearField.getText();
    if (yearString.equals("")) {
      JOptionPane.showMessageDialog(null, "Введите год", "Ошибка", JOptionPane.ERROR_MESSAGE);
      return;
    }
    int year = Integer.valueOf(yearString);
    infoLabel.setText(
        "Отображаются записи за "
            + monthComboBox.getSelectedItem().toString()
            + " "
            + yearString
            + " года.");
    infoLabel.setVisible(true);
    Date beginDate = new Date();
    Date endDate = new Date();
    beginDate.setYear(year - 1900);
    beginDate.setMonth(m);
    beginDate.setDate(0);
    endDate.setYear(year - 1900);
    endDate.setMonth(m);
    endDate.setDate(SaldoCalculator.daysQuantity(m, year));

    List<RowFilter<Object, Object>> filters = new ArrayList<>(2);
    filters.add(RowFilter.dateFilter(ComparisonType.AFTER, beginDate));
    filters.add(RowFilter.dateFilter(ComparisonType.BEFORE, endDate));

    TableRowSorter moneySorter = new TableRowSorter(moneyTable.getModel());
    moneySorter.setRowFilter(RowFilter.andFilter(filters));
    moneyTable.setRowSorter(moneySorter);

    TableRowSorter productSorter = new TableRowSorter(productTable.getModel());
    productSorter.setRowFilter(RowFilter.andFilter(filters));
    productTable.setRowSorter(productSorter);
  } // GEN-LAST:event_filterButtonActionPerformed
示例#15
0
  public static void cargarjugadorestorneo() {

    id_torneo = Principal.labelserialtorneo.getText();
    equipo = id_torneo + labelserial.getText();

    try {
      String[] titulos = {"N°", "Cedula", "Nombre", "Apellido"};
      String[] registro = new String[4];
      String sql =
          "Select hj.n_nomina ,j.cedula, j.nombre_j, j.apellido_j from jugador j, h_jugador hj where hj.cedula=j.cedula and hj.id_torneo='"
              + id_torneo
              + "' and hj.id_equipo='"
              + equipo
              + "' order by hj.n_nomina;";
      Conexion parametro = new Conexion();
      Class.forName(parametro.getDriver());
      Connection con =
          DriverManager.getConnection(
              parametro.getURL(), parametro.getUsuario(), parametro.getPass());
      modelo1 = new DefaultTableModel(null, titulos);
      Statement st =
          con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
      ResultSet rs = st.executeQuery(sql);
      while (rs.next()) {
        registro[0] = rs.getString("hj.n_nomina");
        registro[1] = rs.getString("j.cedula");
        registro[2] = rs.getString("j.nombre_j");
        registro[3] = rs.getString("j.apellido_j");
        modelo1.addRow(registro);
      }
      jugadorestorneo.setModel(modelo1);
      jugadorestorneo.getColumnModel().getColumn(0).setPreferredWidth(27);
      jugadorestorneo.getColumnModel().getColumn(1).setPreferredWidth(135);
      jugadorestorneo.getColumnModel().getColumn(2).setPreferredWidth(135);
      jugadorestorneo.getColumnModel().getColumn(3).setPreferredWidth(135);
      TableRowSorter modeloordenado = new TableRowSorter(modelo1);
      jugadorestorneo.setRowSorter(modeloordenado);
      modeloordenado.setRowFilter(RowFilter.regexFilter(filtro2.getText()));

    } catch (SQLException | ClassNotFoundException ex) {
      Logger.getLogger(jugadoresequipot.class.getName()).log(Level.SEVERE, null, ex);
    }
  }
  @Test
  public void testFilteredTable() {
    JTable jTable = new JTable(10, 1);
    TableRowSorter rowSorter = new TableRowSorter(jTable.getModel());
    jTable.setRowSorter(rowSorter);
    RowFilter<TableModel, Integer> rowFilter =
        new RowFilter<TableModel, Integer>() {

          public boolean include(Entry<? extends TableModel, ? extends Integer> entry) {
            return entry.getIdentifier().intValue() % 2 == 0;
          }
        };

    rowSorter.setRowFilter(rowFilter);
    NextRowProvider nextRowProvider = NextRowProviderFactory.getNextFilteredTableRow(jTable);
    for (int i = 0; i < 5; i++) {
      int nextRow = nextRowProvider.getNextRow();
      assertEquals(i * 2, nextRow);
    }
    assertEquals(-1, nextRowProvider.getNextRow());
  }
  /**
   * Update the filter for the {@link #projectsTable}, depending on the state of the check boxes
   * that are associated with the {@link #hideSkippedBuildsAction}, {@link
   * #hideBuildsWithoutMessagesAction} and {@link #hideBuildsWithoutIncludesAction}
   */
  private void updateProjectsTableFilter() {
    RowFilter<TableModel, Object> isSkipped = booleanValueFilter(SKIPPED_COLUMN_INDEX);

    RowFilter<TableModel, Object> hasCompilerWarnings =
        RowFilter.numberFilter(ComparisonType.AFTER, 0, COMPILER_WARNINGS_COLUMN_INDEX);

    RowFilter<TableModel, Object> hasCompilerErrors =
        RowFilter.numberFilter(ComparisonType.AFTER, 0, COMPILER_ERRORS_COLUMN_INDEX);

    RowFilter<TableModel, Object> hasLinkerWarnings =
        RowFilter.numberFilter(ComparisonType.AFTER, 0, LINKER_WARNINGS_COLUMN_INDEX);

    RowFilter<TableModel, Object> hasLinkerErrors =
        RowFilter.numberFilter(ComparisonType.AFTER, 0, LINKER_ERRORS_COLUMN_INDEX);

    RowFilter<TableModel, Object> hasMessages =
        RowFilter.orFilter(
            Arrays.asList(
                hasCompilerWarnings, hasCompilerErrors,
                hasLinkerWarnings, hasLinkerErrors));

    RowFilter<TableModel, Object> hasIncludes = booleanValueFilter(INCLUDE_COLUMN_INDEX);

    RowFilter<TableModel, Object> r = trueFilter();
    if (isSelected(hideSkippedBuildsAction)) {
      r = RowFilter.andFilter(Arrays.asList(r, RowFilter.notFilter(isSkipped)));
    }
    if (isSelected(hideBuildsWithoutMessagesAction)) {
      r = RowFilter.andFilter(Arrays.asList(r, hasMessages));
    }
    if (isSelected(hideBuildsWithoutIncludesAction)) {
      r = RowFilter.andFilter(Arrays.asList(r, hasIncludes));
    }
    projectsTableRowSorter.setRowFilter(r);
    JTables.adjustColumnWidths(projectsTable, Short.MAX_VALUE);
  }
示例#18
0
  public BatchXPDialog(JFrame parent, Campaign campaign) {
    super(parent, "", true); // $NON-NLS-1$

    this.resourceMap =
        ResourceBundle.getBundle(
            "mekhq.resources.BatchXPDialog", new EncodeControl()); // $NON-NLS-1$

    setTitle(resourceMap.getString("dialogue.title")); // $NON-NLS-1$
    choiceNoSkill = resourceMap.getString("skill.choice.text"); // $NON-NLS-1$

    this.campaign = Objects.requireNonNull(campaign);
    this.personnelModel = new PersonnelTableModel(campaign);
    personnelModel.refreshData();
    personnelSorter = new TableRowSorter<PersonnelTableModel>(personnelModel);
    personnelSorter.setSortsOnUpdates(true);
    personnelSorter.setComparator(PersonnelTableModel.COL_RANK, new RankSorter(campaign));
    personnelSorter.setComparator(PersonnelTableModel.COL_AGE, new FormattedNumberSorter());
    personnelSorter.setComparator(PersonnelTableModel.COL_XP, new FormattedNumberSorter());
    personnelSorter.setSortKeys(Arrays.asList(new RowSorter.SortKey(1, SortOrder.ASCENDING)));
    personnelFilter = new PersonnelFilter();
    personnelSorter.setRowFilter(personnelFilter);

    initComponents();
  }
示例#19
0
  protected void initFilters(JTable table) {
    TableRowSorter sorter = new TableRowSorter(table.getModel());
    table.setRowSorter(sorter);

    if (visualsFilter == null) {
      visualsFilter =
          new RowFilter<UIDefaultsTableModel, Integer>() {
            public boolean include(Entry<? extends UIDefaultsTableModel, ? extends Integer> entry) {
              UIDefaultsTableModel model = entry.getModel();
              Object defaultsValue =
                  model.getValueAt(
                      entry.getIdentifier().intValue(), UIDefaultsTableModel.VALUE_COLUMN);

              return defaultsValue instanceof Color
                  || defaultsValue instanceof Font
                  || defaultsValue instanceof Icon;
            }
          };
    }

    if (onlyVisualsCheckBox.isSelected()) {
      sorter.setRowFilter(visualsFilter);
    }
  }
  /**
   * Update the display after filtering
   *
   * @see org.scilab.modules.ui_data.variablebrowser.SimpleVariableBrowser#updateRowFiltering()
   */
  public void updateRowFiltering() {
    if (isSetData == false) {
        /* If the pull of the data has not been done, do it (please) */
      try {
        ScilabInterpreterManagement.synchronousScilabExec("browsevar");
        isSetData = true;
      } catch (InterpreterException e) {
        System.err.println(e);
      }
    }
    VariableBrowserRowTypeFilter rowTypeFilter =
        new VariableBrowserRowTypeFilter(getFilteredTypeValues());
    VariableBrowserRowDataFilter rowDataFilter =
        new VariableBrowserRowDataFilter(getFilteredDataValues());

    List<RowFilter<Object, Object>> filters = new ArrayList<RowFilter<Object, Object>>();
    RowFilter<Object, Object> compoundRowFilter = null;
    filters.add(rowTypeFilter);
    filters.add(rowDataFilter);
    compoundRowFilter = RowFilter.andFilter(filters);

    rowSorter.setRowFilter(compoundRowFilter);
    table.setRowSorter(rowSorter);
  }
 private void procurar(String texto) {
   TableRowSorter<AbstractTableModel> tr = new TableRowSorter<AbstractTableModel>(table);
   jTable1.setRowSorter(tr);
   tr.setRowFilter(RowFilter.regexFilter("(?i)" + texto));
 }
  /** Filters table by name, by code, by price. */
  private void applyFilters() {
    List<RowFilter<DiscountCardsTableModel, Integer>> andFilters = new ArrayList<>();
    for (final FilterUnit filterUnit : filters) {
      final int columnIndex = tableModel.findColumn(filterUnit.columnTitle);

      RowFilter<DiscountCardsTableModel, Integer> filter = null;
      if (FilterType.PART_TEXT == filterUnit.filterType) {
        filter =
            RowFilter.regexFilter(("(?iu)" + filterUnit.textField.getText().trim()), columnIndex);
      } else if (FilterType.FULL_TEXT == filterUnit.filterType) {
        filter = RowFilter.regexFilter(filterUnit.textField.getText().trim(), columnIndex);
      } else if (FilterType.NUMBER == filterUnit.filterType
          || FilterType.NUMBER_DIAPASON == filterUnit.filterType
              && !filterUnit.textField.getText().contains("-")) {
        if (filterUnit.textField.getText().length() > 0) {
          String numberStr =
              filterUnit.textField.getText().trim().replace(",", ".").replaceAll("[^0-9.]", "");
          Double number = Double.parseDouble(numberStr);
          filter = RowFilter.numberFilter(RowFilter.ComparisonType.EQUAL, number, columnIndex);
        }
      } else if (FilterType.NUMBER_DIAPASON == filterUnit.filterType) {
        if (filterUnit.textField.getText().length() > 0) {
          String[] numbers = filterUnit.textField.getText().split("-", 2);
          if (numbers.length > 1 && !numbers[0].trim().isEmpty() && !numbers[1].trim().isEmpty()) {
            String numbers0 = numbers[0].replace(",", ".").replaceAll("[^0-9.]", "");
            String numbers1 = numbers[1].replace(",", ".").replaceAll("[^0-9.]", "");
            final Double number1 = Double.parseDouble(numbers0);
            final Double number2 = Double.parseDouble(numbers1);
            filter =
                new RowFilter<DiscountCardsTableModel, Integer>() {
                  @Override
                  public boolean include(
                      Entry<? extends DiscountCardsTableModel, ? extends Integer> entry) {
                    Double number =
                        (Double) tableModel.getRawValueAt(entry.getIdentifier(), columnIndex);
                    return number > number1 && number < number2;
                  }
                };
          }
        }
      } else if (FilterType.NUMBER_MORE == filterUnit.filterType) {
        if (filterUnit.textField.getText().length() > 0) {
          String numberStr =
              filterUnit.textField.getText().trim().replace(",", ".").replaceAll("[^0-9.]", "");
          final Double number = Double.parseDouble(numberStr);
          filter =
              new RowFilter<DiscountCardsTableModel, Integer>() {
                @Override
                public boolean include(
                    Entry<? extends DiscountCardsTableModel, ? extends Integer> entry) {
                  Double numberEntry =
                      (Double) tableModel.getRawValueAt(entry.getIdentifier(), columnIndex);
                  return numberEntry >= number;
                }
              };
        }

      } else if (FilterType.DATE == filterUnit.filterType
          || FilterType.DATE_DIAPASON == filterUnit.filterType
              && !filterUnit.textField.getText().contains("-")) {
        if (filterUnit.textField.getText().length() > 0) {
          final Date correctedDate = getCorrectedDate(filterUnit.textField.getText().trim());
          filter =
              new RowFilter<DiscountCardsTableModel, Integer>() {
                @Override
                public boolean include(
                    Entry<? extends DiscountCardsTableModel, ? extends Integer> entry) {
                  Object dateObject = tableModel.getRawValueAt(entry.getIdentifier(), columnIndex);
                  if (dateObject != null) {
                    Date date;
                    if (dateObject instanceof Date) {
                      date = (Date) dateObject;
                    } else if (dateObject instanceof Calendar) {
                      date = ((Calendar) dateObject).getTime();
                    } else {
                      throw new RuntimeException(
                          "Unsupported class for DATE filterType! " + dateObject.getClass());
                    }
                    return date.after(addDays(correctedDate, -1))
                        && date.before(addDays(correctedDate, 1));
                  } else {
                    return false;
                  }
                }
              };
        }
      } else if (FilterType.DATE_DIAPASON == filterUnit.filterType) {
        if (filterUnit.textField.getText().length() > 0) {
          String[] dates = filterUnit.textField.getText().split("-", 2);
          if (dates.length > 1 && !dates[0].trim().isEmpty() && !dates[1].trim().isEmpty()) {
            final Date correctedDate1 = getCorrectedDate(dates[0]);
            final Date correctedDate2 = getCorrectedDate(dates[1]);
            filter =
                new RowFilter<DiscountCardsTableModel, Integer>() {
                  @Override
                  public boolean include(
                      Entry<? extends DiscountCardsTableModel, ? extends Integer> entry) {
                    Object saleDateObj =
                        tableModel.getRawValueAt(entry.getIdentifier(), columnIndex);
                    if (saleDateObj != null) {
                      Date date =
                          ((Calendar) tableModel.getRawValueAt(entry.getIdentifier(), columnIndex))
                              .getTime();
                      return date.after(addDays(correctedDate1, -1))
                          && date.before(addDays(correctedDate2, 1));
                    } else {
                      return false;
                    }
                  }
                };
          }
        }
      } else if (FilterType.CHECKBOXES == filterUnit.filterType) {
        if (anyDeselected(filterUnit.checkBoxes)) {
          filter =
              new RowFilter<DiscountCardsTableModel, Integer>() {
                @Override
                public boolean include(
                    Entry<? extends DiscountCardsTableModel, ? extends Integer> entry) {
                  Object columnObject =
                      tableModel.getRawValueAt(entry.getIdentifier(), columnIndex);
                  return correspondsToCheckBoxes(filterUnit.checkBoxes, columnObject);
                }
              };
        }
      }
      if (filter != null) {
        andFilters.add(filter);
      }
      sorter.setRowFilter(RowFilter.andFilter(andFilters));
    }
  }
示例#23
0
 protected void do_button_actionPerformed(ActionEvent e) {
   sorter.setRowFilter(RowFilter.regexFilter(textField.getText()));
 }
  /** Creates new form EDACCExperimentModeImportSolverConfigs */
  public EDACCExperimentModeImportSolverConfigs(
      java.awt.Frame parent, boolean modal, ExperimentController expController) {
    super(parent, modal);

    ArrayList<SolverConfiguration> scs = null;
    ArrayList<Solver> solvers = new ArrayList<Solver>();
    try {
      scs = SolverConfigurationDAO.getAll();
      ParameterInstanceDAO.cacheParameterInstances(scs);
      LinkedList<Solver> tmp = SolverDAO.getAll();
      solvers.addAll(tmp);
    } catch (SQLException ex) {
    }

    cancelled = true;
    selectedSolverConfigs = new ArrayList<SolverConfiguration>();
    experimentTableModel = new ExperimentTableModel(true);
    solverConfigTableModelByExperiments = new SolverConfigurationTableModel();
    solverConfigTableModelBySolvers = new SolverConfigurationTableModel();
    experimentTableModel.setExperiments(expController.getExperiments());

    initComponents();

    tblExperiments.setDefaultRenderer(
        char.class,
        new DefaultTableCellRenderer() {

          @Override
          public Component getTableCellRendererComponent(
              JTable table,
              Object value,
              boolean isSelected,
              boolean hasFocus,
              int row,
              int column) {
            JLabel lbl =
                (JLabel)
                    super.getTableCellRendererComponent(
                        table, value, isSelected, hasFocus, row, column);
            lbl.setHorizontalAlignment(JLabel.CENTER);
            return lbl;
          }
        });

    tblExperiments
        .getSelectionModel()
        .addListSelectionListener(
            new ListSelectionListener() {

              @Override
              public void valueChanged(ListSelectionEvent e) {
                solverConfigurationTableRowFilterByExperiments.clearIncludedExperiments();
                for (int row : tblExperiments.getSelectedRows()) {
                  Experiment exp =
                      experimentTableModel.getExperimentAt(
                          tblExperiments.convertRowIndexToModel(row));
                  solverConfigurationTableRowFilterByExperiments.includeExperiment(exp.getId());
                }
                solverConfigTableModelByExperiments.fireTableDataChanged();
              }
            });

    TableRowSorter tableSolverConfigurationsRowSorterByExperiments =
        new TableRowSorter<SolverConfigurationTableModel>(solverConfigTableModelByExperiments);
    solverConfigurationTableRowFilterByExperiments = new SolverConfigurationTableRowFilter();
    tableSolverConfigurationsRowSorterByExperiments.setRowFilter(
        solverConfigurationTableRowFilterByExperiments);
    tblSolverConfigsByExperiments.setRowSorter(tableSolverConfigurationsRowSorterByExperiments);
    tblSolverConfigsByExperiments.setModel(solverConfigTableModelByExperiments);
    Util.addSpaceSelection(tblSolverConfigsByExperiments, SolverConfigurationTableModel.COL_SEL);
    solverConfigTableModelByExperiments.setSolverConfigurations(scs);

    solTableModel = new SolverTableModel();
    tableSolvers.setModel(solTableModel);
    tableSolvers.removeColumn(
        tableSolvers.getColumnModel().getColumn(SolverTableModel.COL_SELECTED));
    solTableModel.setSolvers(solvers);
    TableRowSorter tableSolverConfigurationsRowSorterBySolvers =
        new TableRowSorter<SolverConfigurationTableModel>(solverConfigTableModelBySolvers);
    solverConfigurationTableRowFilterBySolvers = new SolverConfigurationTableRowFilter();
    tableSolverConfigurationsRowSorterBySolvers.setRowFilter(
        solverConfigurationTableRowFilterBySolvers);
    tblSolverConfigsBySolvers.setRowSorter(tableSolverConfigurationsRowSorterBySolvers);
    tblSolverConfigsBySolvers.setModel(solverConfigTableModelBySolvers);
    Util.addSpaceSelection(tblSolverConfigsBySolvers, SolverConfigurationTableModel.COL_SEL);
    solverConfigTableModelBySolvers.setSolverConfigurations(scs);

    tableSolvers
        .getSelectionModel()
        .addListSelectionListener(
            new ListSelectionListener() {

              @Override
              public void valueChanged(ListSelectionEvent e) {
                solverConfigurationTableRowFilterBySolvers.clearSolverBinaryIds();
                for (int rowView : tableSolvers.getSelectedRows()) {
                  int rowModel = tableSolvers.convertRowIndexToModel(rowView);
                  for (SolverBinaries sb : solTableModel.getSolver(rowModel).getSolverBinaries()) {
                    solverConfigurationTableRowFilterBySolvers.addSolverBinaryId(sb.getId());
                  }
                }
                solverConfigTableModelBySolvers.fireTableDataChanged();
                updateExistingSolverConfigFilterStatus();
              }
            });

    SwingUtilities.invokeLater(
        new Runnable() {

          @Override
          public void run() {
            existingSolverConfigFilter =
                new EDACCFilter(
                    EDACCApp.getApplication().getMainFrame(),
                    true,
                    tblSolverConfigsBySolvers,
                    true);
            solverFilter =
                new EDACCFilter(EDACCApp.getApplication().getMainFrame(), true, tableSolvers, true);
          }
        });
  }
示例#25
0
 public void filterParts() {
   RowFilter<PartsTableModel, Integer> partsTypeFilter = null;
   final int nGroup = choiceParts.getSelectedIndex();
   partsTypeFilter =
       new RowFilter<PartsTableModel, Integer>() {
         @Override
         public boolean include(Entry<? extends PartsTableModel, ? extends Integer> entry) {
           PartsTableModel partsModel = entry.getModel();
           Part part = partsModel.getPartAt(entry.getIdentifier());
           if (txtFilter.getText().length() > 0
               && !part.getName().toLowerCase().contains(txtFilter.getText().toLowerCase())) {
             return false;
           }
           if (part.getTechBase() == Part.T_CLAN
               && !campaign.getCampaignOptions().allowClanPurchases()) {
             return false;
           }
           if (part.getTechBase() == Part.T_IS
               && !campaign.getCampaignOptions().allowISPurchases()) {
             return false;
           }
           if (campaign.getCampaignOptions().getTechLevel()
               < Utilities.getSimpleTechLevel(part.getTechLevel())) {
             return false;
           }
           if (campaign.getCampaignOptions().limitByYear()
               && !part.isIntroducedBy(campaign.getCalendar().get(Calendar.YEAR))) {
             return false;
           }
           if (campaign.getCampaignOptions().disallowExtinctStuff()
               && (part.isExtinctIn(campaign.getCalendar().get(Calendar.YEAR))
                   || part.getAvailability(campaign.getEra()) == EquipmentType.RATING_X)) {
             return false;
           }
           // TODO: limit by year
           if (nGroup == SG_ALL) {
             return true;
           } else if (nGroup == SG_ARMOR) {
             return part instanceof Armor
                 || part instanceof ProtomekArmor
                 || part instanceof BaArmor;
           } else if (nGroup == SG_SYSTEM) {
             return part instanceof MekLifeSupport
                 || part instanceof MekSensor
                 || part instanceof LandingGear
                 || part instanceof Avionics
                 || part instanceof FireControlSystem
                 || part instanceof AeroSensor
                 || part instanceof VeeSensor
                 || part instanceof VeeStabiliser
                 || part instanceof ProtomekSensor;
           } else if (nGroup == SG_EQUIP) {
             return part instanceof EquipmentPart || part instanceof ProtomekJumpJet;
           } else if (nGroup == SG_LOC) {
             return part instanceof MekLocation
                 || part instanceof TankLocation
                 || part instanceof ProtomekLocation;
           } else if (nGroup == SG_WEAP) {
             return part instanceof EquipmentPart
                 && ((EquipmentPart) part).getType() instanceof WeaponType;
           } else if (nGroup == SG_AMMO) {
             return part instanceof EquipmentPart
                 && ((EquipmentPart) part).getType() instanceof AmmoType;
           } else if (nGroup == SG_MISC) {
             return (part instanceof EquipmentPart
                     && ((EquipmentPart) part).getType() instanceof MiscType)
                 || part instanceof ProtomekJumpJet;
           } else if (nGroup == SG_ENGINE) {
             return part instanceof EnginePart;
           } else if (nGroup == SG_GYRO) {
             return part instanceof MekGyro;
           } else if (nGroup == SG_ACT) {
             return part instanceof MekActuator
                 || part instanceof ProtomekArmActuator
                 || part instanceof ProtomekLegActuator;
           } else if (nGroup == SG_COCKPIT) {
             return part instanceof MekCockpit;
           } else if (nGroup == SG_BA_SUIT) {
             return part instanceof BattleArmorSuit;
           }
           return false;
         }
       };
   partsSorter.setRowFilter(partsTypeFilter);
 }
 public void keyReleased(KeyEvent arg0) {
   trsfiltro.setRowFilter(
       RowFilter.regexFilter(txtNombre_Completo.getText().toUpperCase().trim(), 2));
 }
 public void keyReleased(KeyEvent arg0) {
   trsfiltro.setRowFilter(RowFilter.regexFilter(txtFolio.getText(), 1));
 }
  public void update(List<Client> clientSet, List<Payment> payments) {
    Object[] columnNames =
        new Object[] {
          "#Cliente",
          "Nombre",
          "Apellido",
          "Celular",
          "Inscripción",
          "Domicilio",
          "Correo electrónico",
          "Próxima cuota"
        };

    Map<Integer, List<Payment>> paymentsByIds = new HashMap<>(clientSet.size());
    for (Payment payment : payments) {
      paymentsByIds.getOrDefault(payment.getClientId(), new ArrayList<>()).add(payment);

      List<Payment> idPayments = paymentsByIds.get(payment.getClientId());
      if (idPayments == null) {
        idPayments = new ArrayList<>();
        paymentsByIds.put(payment.getClientId(), idPayments);
      }
      idPayments.add(payment);
    }

    Object[][] data = new Object[clientSet.size()][columnNames.length];
    int i = 0;
    for (Client client : clientSet) {
      data[i][COLUMN_CLIENT] = client;
      data[i][COLUMN_FIRSTNAME] = client.getFirstName();
      data[i][COLUMN_LASTNAME] = client.getLastName();
      data[i][COLUMN_PHONENUMBER] = client.getPhoneNumber();
      data[i][COLUMN_INSCRIPTIONDATE] = client.getInscriptionDate().format(Utils.DATE_FORMATTER);
      data[i][COLUMN_HOMEADDRESS] = client.getHomeAddress();
      data[i][COLUMN_MAIL] = client.getMail();

      String finalString = "Nunca";
      Optional<Payment> lastPayment = getClientLastPayment(client, paymentsByIds);
      if (lastPayment.isPresent()) {
        LocalDate nextMonthToPay = lastPayment.get().getMonthDate().plusMonths(1);
        Period periodBetweenNowAndNextMonthToPay = Period.between(LocalDate.now(), nextMonthToPay);
        finalString = readablePeriod(periodBetweenNowAndNextMonthToPay);
      }
      data[i][COLUMN_NEXTPAYMENT] = finalString;
      i++;
    }
    TableModel tableModel = new DefaultTableModel(data, columnNames);
    setModel(tableModel);

    RowFilter<Object, Object> filter =
        new RowFilter<Object, Object>() {
          @Override
          public boolean include(Entry entry) {
            Client client = (Client) entry.getValue(COLUMN_CLIENT);
            if (!inactiveClientsVisible && client.isInactive()) {
              return false;
            }

            if (filteringWords == null) {
              return true;
            }

            for (String word : filteringWords) {
              if (!entryContainsWord(entry, word)) {
                return false;
              }
            }
            return true;
          }
        };

    TableRowSorter<TableModel> sorter = new TableRowSorter<>(tableModel);
    sorter.setRowFilter(filter);
    setRowSorter(sorter);
  }
示例#29
0
 private void hideCatchingRooms() {
   printSorter.setRowFilter(roomFilter);
 }
示例#30
-1
  private void jBPesquisarKeyTyped(
      java.awt.event.KeyEvent evt) { // GEN-FIRST:event_jBPesquisarKeyTyped

    if (evt.getKeyChar() == KeyEvent.VK_ENTER) {
      if (evt.getSource() == jBPesquisar) {

        String text = jTFPesquisar.getText();

        if (text.length() == 0) {
          sorter.setRowFilter(null);
        } else {
          try {
            sorter.setRowFilter(RowFilter.regexFilter(text));
            int total = calculaTotalPecas(text);
            jLabelTotalPecas.setText(String.valueOf(total));
          } catch (PatternSyntaxException pse) {
            JOptionPane.showMessageDialog(this, "Erro na pesquisa");
          } catch (RuntimeException ex2) {
            JOptionPane.showMessageDialog(null, "Erro: " + ex2.getMessage());
          }
        }
      }
    }
    tabela.grabFocus();
  } // GEN-LAST:event_jBPesquisarKeyTyped