Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.plugin / org.gvsig.app / org.gvsig.app.mainplugin / src / main / java / org / gvsig / app / extension / SearchByAttributesExtension.java @ 44259

History | View | Annotate | Download (2.42 KB)

1
package org.gvsig.app.extension;
2

    
3
import org.gvsig.andami.plugins.Extension;
4
import org.gvsig.app.ApplicationLocator;
5
import org.gvsig.app.ApplicationManager;
6
import org.gvsig.app.project.documents.view.ViewDocument;
7
import org.gvsig.app.project.documents.view.gui.IView;
8
import org.gvsig.fmap.dal.feature.FeatureStore;
9
import org.gvsig.fmap.dal.swing.DALSwingLocator;
10
import org.gvsig.fmap.dal.swing.DataSwingManager;
11
import org.gvsig.fmap.dal.swing.searchpanel.FeatureStoreSearchPanel;
12
import org.gvsig.fmap.mapcontext.layers.FLayer;
13
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
14
import org.gvsig.tools.ToolsLocator;
15
import org.gvsig.tools.swing.api.ToolsSwingLocator;
16
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
17

    
18
/**
19
 *
20
 * @author jjdelcerro
21
 */
22
public class SearchByAttributesExtension extends Extension {
23

    
24
    @Override
25
    public void initialize() {
26
    }
27

    
28
    @Override
29
    public void execute(String actionCommand) {
30
        ApplicationManager application = ApplicationLocator.getManager();
31

    
32
        IView view = (IView) application.getActiveComponent(ViewDocument.class);
33
        if (view == null) {
34
            return;
35
        }
36
        if ("search-by-attributes-layer".equals(actionCommand)) {
37
            DataSwingManager dataSwingManager = DALSwingLocator.getSwingManager();
38
            WindowManager winManager = ToolsSwingLocator.getWindowManager();
39
            
40
            ViewDocument document = view.getViewDocument();
41

    
42
            FLayer layer = document.getMapContext().getLayers().getActives()[0];
43
            String title = "Search: " + layer.getName();
44
            FeatureStore featureStore = ((FLyrVect) layer).getFeatureStore();
45
            
46
            FeatureStoreSearchPanel panel = dataSwingManager.createFeatureStoreSearchPanel(featureStore);
47
            winManager.showWindow(
48
                    panel.asJComponent(), 
49
                    title, 
50
                    WindowManager.MODE.WINDOW
51
            );
52
            
53
        }
54
    }
55

    
56
    @Override
57
    public boolean isEnabled() {
58
        return true;
59
    }
60

    
61
    @Override
62
    public boolean isVisible() {
63
        ApplicationManager application = ApplicationLocator.getManager();
64

    
65
        IView view = (IView) application.getActiveComponent(ViewDocument.class);
66
        if (view == null) {
67
            return false;
68
        }
69
        ViewDocument document = view.getViewDocument();
70
        return document.getMapContext().hasActiveVectorLayers();
71
    }
72
}