Revision 45527 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.symbology/org.gvsig.symbology.swing/org.gvsig.symbology.swing.api/src/main/java/org/gvsig/app/gui/styling/SymbolSelector.java

View differences:

SymbolSelector.java
56 56
import javax.swing.event.TreeSelectionListener;
57 57
import javax.swing.tree.DefaultMutableTreeNode;
58 58
import org.apache.commons.lang3.StringUtils;
59
import org.apache.commons.lang3.mutable.MutableObject;
59 60

  
60 61
import org.slf4j.Logger;
61 62
import org.slf4j.LoggerFactory;
......
65 66
import org.gvsig.app.gui.JComboBoxUnits;
66 67
import org.gvsig.app.gui.panels.ColorChooserPanel;
67 68
import org.gvsig.app.project.documents.view.legend.gui.ISymbolSelector;
69
import org.gvsig.fmap.dal.feature.Feature;
68 70
import org.gvsig.fmap.dal.feature.FeatureStore;
69 71
import org.gvsig.fmap.geom.Geometry;
70 72
import org.gvsig.fmap.geom.Geometry.SUBTYPES;
......
136 138
	protected JLabel lblTitle;
137 139
	protected File dir;
138 140
	protected File rootDir;
139
	protected JComponent jPanelPreview = null;
141
	protected SymbolPreviewer jPanelPreview = null;
140 142
	protected GridBagLayoutPanel jPanelOptions = null;
141 143
	protected JList jListSymbols = null;
142 144
	protected String treeRootName;
......
145 147
	protected boolean act = true;
146 148
	boolean accepted = true;
147 149
	private SymbolManager manager;
150
        private transient MutableObject<Feature> sampleFeature;
148 151

  
149 152

  
150 153
	protected SelectorFilter sFilter = new SelectorFilter() {
......
402 405
							: getJListSymbols().getBackground();
403 406

  
404 407
					pnl.setBackground(bgColor);
405
					SymbolPreviewer sp = new SymbolPreviewer(true);
408
					SymbolPreviewer sp = new SymbolPreviewer(getSampleFeature(), true);
406 409
					sp.setAlignmentX(Component.CENTER_ALIGNMENT);
407 410
					sp.setPreferredSize(new Dimension(50, 50));
408 411
					sp.setSymbol(sym);
......
658 661
	 *
659 662
	 * @return javax.swing.JComponent
660 663
	 */
661
	protected JComponent getJPanelPreview() {
664
	protected SymbolPreviewer getJPanelPreview() {
662 665
		if (jPanelPreview == null) {
663
			jPanelPreview = new SymbolPreviewer();
666
			jPanelPreview = new SymbolPreviewer(getSampleFeature());
664 667
			jPanelPreview.setPreferredSize(new java.awt.Dimension(100,100));
665 668
			jPanelPreview.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.LOWERED));
666 669
		}
......
878 881
            }
879 882
        }
880 883
        SymbolEditor se = new SymbolEditor(curr_sym, shapeType);
884
        se.setFeatureStore(featureStore);
881 885
        PluginServices.getMDIManager().addWindow(se);
882 886
        setSymbol(se.getSymbol());
883 887
    }
......
1198 1202
		return WindowInfo.DIALOG_PROFILE;
1199 1203
	}
1200 1204

  
1205
        @Override
1201 1206
        public void setFeatureStore(FeatureStore store) {
1202 1207
            this.featureStore = store;
1208
            if( this.featureStore!=null ) {
1209
                this.sampleFeature.setValue(this.featureStore.getSampleFeature());
1210
            }
1203 1211
        }
1212
        
1213
        public MutableObject<Feature> getSampleFeature() {
1214
            if( this.sampleFeature == null ) {
1215
                this.sampleFeature = new MutableObject();
1216
                if( this.featureStore!=null ) {
1217
                    this.sampleFeature.setValue(this.featureStore.getSampleFeature());
1218
                }
1219
            }
1220
            return this.sampleFeature;
1221
        }
1222
        
1204 1223

  
1205 1224
}

Also available in: Unified diff