Revision 45739 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/featuretype/DefaultFeatureAttributePanel.java

View differences:

DefaultFeatureAttributePanel.java
441 441
    private AvailableValuesController availableValuesController;
442 442
    private TagsController tagsController;
443 443
    private ForeingKeyController foreingKeyController;
444
    private ExpressionPickerController pickerValuesFilter;
444 445

  
445 446
    private int mode;
446 447
    private FeatureStoreElement featureStoreElement;
......
488 489

  
489 490
    private void initComponents() {
490 491
        final ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager();
491
        final ExpressionEvaluatorSwingManager evaluatorManager = ExpressionEvaluatorSwingLocator.getManager();
492
        final ExpressionEvaluatorSwingManager evaluatorSwingManager = ExpressionEvaluatorSwingLocator.getManager();
492 493
        final DataSwingManager dataSwingManager = DALSwingLocator.getSwingManager();
493 494
        final I18nManager i18n = ToolsLocator.getI18nManager();
494 495
        final DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager();
......
567 568
        swingManager.translate(this.btnAvailableValuesRemoveAll);
568 569
        swingManager.translate(this.lblTagsName);
569 570
        swingManager.translate(this.lblTagsValue);
571
        swingManager.translate(this.lblValuesFilter);
570 572

  
571 573
        swingManager.translate(this.lblForeingKeyCodeName);
572 574
        swingManager.translate(this.lblForeingKeyLabelFormula);
......
637 639
                this.txtIntervalStart,
638 640
                this.btnIntervalStart
639 641
        );
640
        this.pickerSize = evaluatorManager.createCalculatorController(
642
        this.pickerSize = evaluatorSwingManager.createCalculatorController(
641 643
                this.txtSize, DataTypes.INT
642 644
        );
643
        this.pickerDisplaySize = evaluatorManager.createCalculatorController(this.txtDisplaySize, DataTypes.INT
645
        this.pickerDisplaySize = evaluatorSwingManager.createCalculatorController(this.txtDisplaySize, DataTypes.INT
644 646
        );
645
        this.pickerPrecision = evaluatorManager.createCalculatorController(
647
        this.pickerPrecision = evaluatorSwingManager.createCalculatorController(
646 648
                this.txtPrecision, DataTypes.INT
647 649
        );
648
        this.pickerScale = evaluatorManager.createCalculatorController(
650
        this.pickerScale = evaluatorSwingManager.createCalculatorController(
649 651
                this.txtScale, DataTypes.INT
650 652
        );
651
        this.txtDefaultValue.getComponentPopupMenu().add(evaluatorManager.createJExpressionBuilderAction(txtDefaultValue));
652
        this.pickerOrder = evaluatorManager.createCalculatorController(
653
        this.txtDefaultValue.getComponentPopupMenu().add(evaluatorSwingManager.createJExpressionBuilderAction(txtDefaultValue));
654
        this.pickerOrder = evaluatorSwingManager.createCalculatorController(
653 655
                this.txtOrder, DataTypes.INT
654 656
        );
655 657

  
......
676 678

  
677 679
        this.btnVirtualField.setText("");
678 680
        this.featureStoreElement = dataSwingManager.createFeatureStoreElement();
679
        this.pickerVirtualField = ExpressionEvaluatorSwingLocator.getManager()
680
                .createExpressionPickerController(txtVirtualField, btnVirtualField, btnVirtualFieldBookmarks, btnVirtualFieldHistory);
681
        this.pickerVirtualField = evaluatorSwingManager.createExpressionPickerController(
682
                txtVirtualField, btnVirtualField, btnVirtualFieldBookmarks, btnVirtualFieldHistory
683
        );
681 684
        this.pickerVirtualField.addElement(this.featureStoreElement);
682 685
        this.chkVirtualField.addChangeListener((ChangeEvent e) -> {
683 686
          if (chkVirtualField.isSelected()) {
......
722 725
        relationTypeModel.addElement(new ListElement<>(i18n.getTranslation("_Composition_1_N"),DynField.RELATION_TYPE_COMPOSITION));
723 726
        relationTypeModel.addElement(new ListElement<>(i18n.getTranslation("_Aggregate_1_N"),DynField.RELATION_TYPE_AGGREGATE));
724 727
        this.cboRelationType.setModel(relationTypeModel);
728

  
729

  
730
        this.pickerValuesFilter = evaluatorSwingManager.createExpressionPickerController(
731
                txtValuesFilter, btnValuesFilter, btnValuesFilterBookmarks, btnValuesFilterHistory
732
        );
733
        this.pickerValuesFilter.addElement(this.featureStoreElement);
734

  
725 735
    }
726 736

  
727 737
    @Override
......
935 945

  
936 946
//        this.txtMinValue.setText(Objects.toString(descriptor.getMinValue(), ""));
937 947
//        this.txtMinValue.setText(Objects.toString(descriptor.getMaxValue(), ""));
948
        Expression valuesFilter = this.pickerValuesFilter.get();
949
        
938 950
        descriptor.setAvailableValues(this.availableValuesController.get());
939 951

  
940 952
        this.tagsController.fetch(descriptor.getTags());
......
1007 1019
                    FeatureSymbolTable featureSymbolTable = DALLocator.getDataManager().createFeatureSymbolTable();
1008 1020
                    featureSymbolTable.setFeature(sampleFeature);
1009 1021
                    this.pickerVirtualField.setPreviewSymbolTable(featureSymbolTable.createParent());
1022
                    this.pickerValuesFilter.setPreviewSymbolTable(featureSymbolTable.createParent());
1010 1023
                }
1011 1024
            }
1012 1025
            List<String> groups = new ArrayList<>();
......
1067 1080
            this.chkVirtualField.setSelected(false);
1068 1081
            this.pickerVirtualField.set(null);
1069 1082
        }
1083
        this.pickerVirtualField.setEnabled(true);
1070 1084

  
1085
        Expression expression = descriptor.getAvailableValuesFilter();
1086
        this.pickerValuesFilter.set(expression);
1087

  
1071 1088
        this.pickerCRS.set(descriptor.getSRS());
1072 1089

  
1073 1090
        if (descriptor.getGeomType() != null) {
......
1275 1292
                this.txtDescription.setEditable(true);
1276 1293
                this.txtMinValue.setEditable(false);
1277 1294
                this.txtMaxValue.setEditable(false);
1295
                this.pickerValuesFilter.setEditable(true);
1278 1296
                this.availableValuesController.setEditable(true);
1279 1297
                this.tagsController.setEditable(true);
1280 1298
                this.foreingKeyController.setEditable(true);
......
1328 1346
                this.txtDescription.setEditable(true);
1329 1347
                this.txtMinValue.setEditable(false);
1330 1348
                this.txtMaxValue.setEditable(false);
1349
                this.pickerValuesFilter.setEditable(true);
1331 1350
                this.availableValuesController.setEditable(true);
1332 1351
                this.tagsController.setEditable(true);
1333 1352
                this.foreingKeyController.setEditable(true);
......
1364 1383
                this.txtDescription.setEditable(false);
1365 1384
                this.txtMinValue.setEditable(false);
1366 1385
                this.txtMaxValue.setEditable(false);
1386
                this.pickerValuesFilter.setEditable(false);
1367 1387
                this.availableValuesController.setEditable(false);
1368 1388
                this.tagsController.setEditable(false);
1369 1389
                this.foreingKeyController.setEditable(false);

Also available in: Unified diff