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
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