this.av = ap.av;
}
-
+ public class FeatureRendererSettings implements Cloneable {
+ String[] renderOrder;
+ Hashtable featureGroups;
+ Hashtable featureColours;
+ float transparency;
+ Hashtable featureOrder;
+ public FeatureRendererSettings(String[] renderOrder,
+ Hashtable featureGroups, Hashtable featureColours,
+ float transparency, Hashtable featureOrder)
+ {
+ super();
+ this.renderOrder = renderOrder;
+ this.featureGroups = featureGroups;
+ this.featureColours = featureColours;
+ this.transparency = transparency;
+ this.featureOrder = featureOrder;
+ }
+ public FeatureRendererSettings(FeatureRenderer fr)
+ {
+ this.renderOrder = fr.renderOrder;
+ this.featureGroups = fr.featureGroups;
+ this.featureColours = fr.featureColours;
+ this.transparency = fr.transparency;
+ this.featureOrder = fr.featureOrder;
+ }
+ }
+ public FeatureRendererSettings getSettings()
+ {
+ return new FeatureRendererSettings(this);
+ }
+ public void transferSettings(FeatureRendererSettings fr)
+ {
+ this.renderOrder = fr.renderOrder;
+ this.featureGroups = fr.featureGroups;
+ this.featureColours = fr.featureColours;
+ this.transparency = fr.transparency;
+ this.featureOrder = fr.featureOrder;
+ }
public void transferSettings(FeatureRenderer fr)
{
this.renderOrder = fr.renderOrder;
* them. Then fires a PropertyChangeEvent on the changeSupport object.
*
*/
- synchronized void findAllFeatures()
+ void findAllFeatures()
{
- findAllFeatures(true); // add all new features as visible
- if (!firing) {
- firing=true;
- changeSupport.firePropertyChange("changeSupport",null,null);
- firing=false;
+ synchronized (firing)
+ {
+ if (firing.equals(Boolean.FALSE)) {
+ firing=Boolean.TRUE;
+ findAllFeatures(true); // add all new features as visible
+ changeSupport.firePropertyChange("changeSupport",null,null);
+ firing=Boolean.FALSE;
+ }
}
}
/**
if(!visible)
{
- System.out.println(features[index].featureGroup
- +" not visible");
index++;
continue;
}
updateRenderOrder(allfeatures);
findingFeatures = false;
}
- protected boolean firing=false;
+ protected Boolean firing=Boolean.FALSE;
/**
* replaces the current renderOrder with the unordered features in allfeatures.
* The ordering of any types in both renderOrder and allfeatures is preserved,