37 |
37 |
import javax.swing.event.ChangeListener;
|
38 |
38 |
|
39 |
39 |
import org.gvsig.andami.PluginServices;
|
40 |
|
import org.gvsig.andami.messages.NotificationManager;
|
41 |
|
import org.gvsig.andami.ui.mdiFrame.MDIFrame;
|
42 |
40 |
import org.gvsig.andami.ui.mdiManager.IWindow;
|
43 |
|
import org.gvsig.andami.ui.mdiManager.MDIManagerFactory;
|
44 |
41 |
import org.gvsig.andami.ui.mdiManager.WindowInfo;
|
45 |
|
import org.gvsig.app.ApplicationLocator;
|
46 |
|
import org.gvsig.app.ApplicationManager;
|
47 |
42 |
import org.gvsig.fmap.mapcontext.layers.FLayer;
|
48 |
|
import org.gvsig.fmap.mapcontext.layers.FLyrDefault;
|
49 |
43 |
import org.gvsig.gui.beans.swing.JButton;
|
50 |
44 |
import org.slf4j.Logger;
|
51 |
45 |
import org.slf4j.LoggerFactory;
|
... | ... | |
67 |
61 |
//private Legend legend; // Le asignaremos la leyenda del primer tema activo.
|
68 |
62 |
private JTabbedPane tabs = new JTabbedPane(); // @jve:decl-index=0:
|
69 |
63 |
private JPanel panelButtons;
|
70 |
|
private static Hashtable<Class<? extends AbstractThemeManagerPage>, ArrayList<Class<? extends FLyrDefault>>> s =
|
71 |
|
new Hashtable<Class<? extends AbstractThemeManagerPage>, ArrayList<Class<? extends FLyrDefault>>>();
|
|
64 |
private static Hashtable<Class<? extends AbstractThemeManagerPage>, ArrayList<Class<? extends FLayer>>> s =
|
|
65 |
new Hashtable<Class<? extends AbstractThemeManagerPage>, ArrayList<Class<? extends FLayer>>>();
|
72 |
66 |
|
73 |
67 |
|
74 |
68 |
/**
|
... | ... | |
99 |
93 |
continue;
|
100 |
94 |
}
|
101 |
95 |
if (tab!=null){
|
102 |
|
if (s.get(tab.getClass()).contains(layer.getClass())){
|
|
96 |
if( tab.isTabEnabledForLayer(layer) ) {
|
103 |
97 |
String tabName = null;
|
104 |
98 |
try {
|
105 |
99 |
tab.setModel(layer);
|
... | ... | |
229 |
223 |
pages.add(abstractThemeManagerPageClass);
|
230 |
224 |
}
|
231 |
225 |
|
232 |
|
public static void setTabEnabledForLayer(Class<? extends AbstractThemeManagerPage> abstractThemeManagerPageClass, Class<? extends FLyrDefault> fLayerClazz, boolean enabled) {
|
233 |
|
ArrayList<Class<? extends FLyrDefault>> enabledLayers;
|
|
226 |
public static void setTabEnabledForLayer(Class<? extends AbstractThemeManagerPage> abstractThemeManagerPageClass, Class<? extends FLayer> fLayerClazz, boolean enabled) {
|
|
227 |
ArrayList<Class<? extends FLayer>> enabledLayers;
|
234 |
228 |
if (enabled == true) {
|
235 |
229 |
if (!s.containsKey(abstractThemeManagerPageClass)) {
|
236 |
|
enabledLayers = new ArrayList<Class<? extends FLyrDefault>> ();
|
|
230 |
enabledLayers = new ArrayList<Class<? extends FLayer>> ();
|
237 |
231 |
enabledLayers.add(fLayerClazz);
|
238 |
232 |
s.put(abstractThemeManagerPageClass, enabledLayers);
|
239 |
233 |
} else {
|
... | ... | |
248 |
242 |
enabledLayers.remove(fLayerClazz);
|
249 |
243 |
}
|
250 |
244 |
};
|
251 |
|
public Object getWindowProfile() {
|
|
245 |
|
|
246 |
public static boolean isTabEnabledForLayer(AbstractThemeManagerPage page, FLayer layer) {
|
|
247 |
try {
|
|
248 |
return s.get(page.getClass()).contains(layer.getClass());
|
|
249 |
} catch( Exception ex) {
|
|
250 |
return false;
|
|
251 |
}
|
|
252 |
}
|
|
253 |
|
|
254 |
public Object getWindowProfile() {
|
252 |
255 |
return WindowInfo.TOOL_PROFILE;
|
253 |
256 |
};
|
254 |
257 |
} // @jve:decl-index=0:visual-constraint="10,10"
|