Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.swing / org.gvsig.fmap.dal.swing.api / src / main / java / org / gvsig / fmap / dal / swing / DataSwingManager.java @ 44713

History | View | Annotate | Download (6.4 KB)

1
/* gvSIG. Desktop Geographic Information System.
2
 *
3
 * Copyright ? 2007-2014 gvSIG Association
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
18
 * MA  02110-1301, USA.
19
 *
20
 * For any additional information, do not hesitate to contact us
21
 * at info AT gvsig.com, or visit our website www.gvsig.com.
22
 */
23
package org.gvsig.fmap.dal.swing;
24

    
25
import java.awt.Component;
26
import java.util.Collection;
27
import java.util.List;
28
import java.util.function.Predicate;
29
import javax.swing.AbstractButton;
30
import javax.swing.JButton;
31
import javax.swing.JComboBox;
32
import javax.swing.JList;
33
import javax.swing.JTextField;
34
import javax.swing.ListCellRenderer;
35
import javax.swing.table.TableModel;
36
import javax.swing.text.JTextComponent;
37
import org.cresques.cts.IProjection;
38
import org.gvsig.expressionevaluator.swing.ExpressionBuilderConfig;
39
import org.gvsig.expressionevaluator.swing.ExpressionPickerController;
40
import org.gvsig.expressionevaluator.swing.JExpressionBuilder;
41
import org.gvsig.featureform.swing.CreateJFeatureFormException;
42
import org.gvsig.featureform.swing.JFeatureForm;
43
import org.gvsig.featureform.swing.JFeaturesForm;
44
import org.gvsig.fmap.dal.exception.DataException;
45
import org.gvsig.fmap.dal.feature.Feature;
46
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
47
import org.gvsig.fmap.dal.feature.FeatureQuery;
48
import org.gvsig.fmap.dal.feature.FeatureStore;
49
import org.gvsig.fmap.dal.feature.FeatureType;
50
import org.gvsig.fmap.dal.feature.paging.FeaturePagingHelper;
51
import org.gvsig.fmap.dal.store.jdbc.JDBCServerExplorerParameters;
52
import org.gvsig.fmap.dal.swing.DALActionFactory.DALActionContext;
53
import org.gvsig.fmap.dal.swing.expressionevaluator.FeatureStoreElement;
54
import org.gvsig.fmap.dal.swing.featuretype.AttributeDescriptorPickerController;
55
import org.gvsig.fmap.dal.swing.featuretype.FeatureTypeAttributePanel;
56
import org.gvsig.fmap.dal.swing.featuretype.FeatureTypePanel;
57
import org.gvsig.fmap.dal.swing.jdbc.JDBCConnectionPanel;
58
import org.gvsig.fmap.dal.swing.searchpanel.FeatureStoreSearchPanel;
59
import org.gvsig.tools.dynobject.DynStruct;
60
import org.gvsig.tools.swing.api.pickercontroller.PickerController;
61
import org.gvsig.fmap.dal.swing.jdbc.JDBCConnectionDialog;
62
import org.gvsig.fmap.dal.swing.searchpanel.SearchConditionPanel;
63
import org.gvsig.fmap.dal.swing.searchpanel.SearchConditionPanel.SearchConditionPanelFactory;
64
import org.gvsig.fmap.dal.swing.featurequery.FeatureQueryOrderPanel;
65
import org.gvsig.fmap.dal.swing.featuretype.FeatureAttributesSelectionPanel;
66

    
67
/**
68
 * @author fdiaz
69
 *
70
 */
71
public interface DataSwingManager {
72
    public static final String  FEATURE_STORE_EXPRESSION_ELEMENT = "DAL.FeatureStoreExpressionElement";
73

    
74
    public JFeaturesForm createJFeaturesForm(FeatureStore store) throws CreateJFeatureFormException;
75

    
76
    public JFeatureForm createJFeatureForm(FeatureStore store) throws CreateJFeatureFormException;
77

    
78
    public JFeatureForm createJFeatureForm(Feature feature) throws CreateJFeatureFormException;
79

    
80
    public JDBCConnectionPanel createJDBCConnectionPanel();
81
    
82
    public JDBCConnectionDialog createJDBCConectionDialog();
83

    
84
    public JExpressionBuilder createQueryFilterExpresion(FeatureStore store);
85

    
86
    public FeatureTableModel createFeatureTableModel(FeatureStore featureStore, FeatureQuery featureQuery);
87

    
88
    public FeatureTableModel createFeatureTableModel(FeaturePagingHelper featurePager);
89

    
90
    public FeatureTableModel createEmptyFeatureTableModel(DynStruct struct);
91

    
92
    public JFeatureTable createJFeatureTable(FeatureTableModel model);
93

    
94
    public JFeatureTable createJFeatureTable(FeatureTableModel model, boolean isDoubleBuffered);
95

    
96
    public PickerController<IProjection> createProjectionPickerController(
97
            JTextField txtProjection,
98
            JButton btnSelectProjection
99
        );
100
 
101
    public AttributeDescriptorPickerController createAttributeDescriptorPickerController(JComboBox combo);
102

    
103
    public AttributeDescriptorPickerController createAttributeDescriptorPickerController(JList list);
104

    
105
    public AttributeDescriptorPickerController createAttributeDescriptorPickerController(JComboBox combo, Predicate<FeatureAttributeDescriptor> filter);
106
    
107
    public AttributeDescriptorPickerController createAttributeDescriptorPickerController(JList list, Predicate<FeatureAttributeDescriptor> filter);
108

    
109
    public FeatureTypePanel createFeatureTypePanel();
110
    
111
    public FeatureTypeAttributePanel createFeatureTypeAttributePanel();    
112

    
113
    public FeatureStoreElement createFeatureStoreElement();
114
    
115
    public FeatureStoreElement createFeatureStoreElement(FeatureStore store);
116

    
117
    public ExpressionPickerController createExpressionPickerController(FeatureStore store, JTextComponent text, JButton button);
118
    
119
    public FeatureStoreSearchPanel createFeatureStoreSearchPanel(FeatureStore store);
120
    
121
    public void registerStoreAction(DALActionFactory action);
122
    
123
    public  Collection<DALActionFactory> getStoreActions();
124

    
125
    public  DALActionFactory getStoreAction(String name);
126
    
127
    public void setStoreAction(AbstractButton component, String name, boolean preserveLabel, DALActionContext context);
128

    
129
    public PickerController<JDBCServerExplorerParameters> createJDBCConnectionPickerController(
130
            JComboBox cboConnection, JButton btnConnection
131
    );
132
    public TableModel createSimpleFeaturesTableModel(FeatureStore store);
133
    
134
    public TableModel createSimpleFeaturesTableModel(FeatureType featureType, List<String> columnNames, List<Feature> features);
135

    
136
    public ListCellRenderer createDefaultFeatureAttributeListCellRenderer();
137
    
138
    public FeatureQueryOrderPanel createFeatureStoreOrderPanel();
139

    
140
    public Iterable<SearchConditionPanelFactory> getSearchConditionPanels();
141
    
142
    public void registerSearchConditionPanel(SearchConditionPanelFactory factory);
143
    
144
    public FeatureAttributesSelectionPanel createFeatureAttributeSelectionPanel();
145
}