Revision 45154 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.swing/org.gvsig.fmap.dal.swing.impl/src/main/java/org/gvsig/fmap/dal/swing/impl/featuretype/DefaultFeatureTypePanel.java
DefaultFeatureTypePanel.java | ||
---|---|---|
7 | 7 |
import java.awt.event.ActionListener; |
8 | 8 |
import java.util.ArrayList; |
9 | 9 |
import java.util.Objects; |
10 |
import javax.swing.AbstractAction; |
|
10 | 11 |
import javax.swing.JComponent; |
11 | 12 |
import javax.swing.JOptionPane; |
12 | 13 |
import javax.swing.event.ChangeListener; |
... | ... | |
17 | 18 |
import org.apache.commons.lang3.StringUtils; |
18 | 19 |
import org.gvsig.configurableactions.ConfigurableActionsMamager; |
19 | 20 |
import org.gvsig.expressionevaluator.ExpressionUtils; |
21 |
import org.gvsig.fmap.dal.JsonUtils; |
|
20 | 22 |
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor; |
21 | 23 |
import org.gvsig.fmap.dal.feature.EditableFeatureType; |
22 | 24 |
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor; |
23 | 25 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
24 | 26 |
import org.gvsig.fmap.dal.feature.FeatureType; |
27 |
import org.gvsig.texteditor.JTextEditor; |
|
25 | 28 |
import org.gvsig.tools.ToolsLocator; |
26 | 29 |
import org.gvsig.tools.dataTypes.DataType; |
27 | 30 |
import org.gvsig.tools.dataTypes.DataTypes; |
... | ... | |
31 | 34 |
import org.gvsig.tools.swing.api.ToolsSwingLocator; |
32 | 35 |
import org.gvsig.tools.swing.api.ToolsSwingManager; |
33 | 36 |
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager; |
37 |
import org.gvsig.tools.swing.api.windowmanager.WindowManager; |
|
34 | 38 |
import org.gvsig.tools.util.ToolsUtilLocator; |
35 | 39 |
import org.slf4j.Logger; |
36 | 40 |
import org.slf4j.LoggerFactory; |
... | ... | |
167 | 171 |
} |
168 | 172 |
} |
169 | 173 |
|
174 |
public static class ViewAsJsonAction extends AbstractAction { |
|
175 |
|
|
176 |
@SuppressWarnings("OverridableMethodCallInConstructor") |
|
177 |
public ViewAsJsonAction() { |
|
178 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
|
179 |
|
|
180 |
this.putValue(NAME, i18n.getTranslation("_View_as_Json")); |
|
181 |
this.putValue(ACTION_COMMAND_KEY, "ViewAsJson"); |
|
182 |
} |
|
183 |
|
|
184 |
@Override |
|
185 |
public Object getValue(String key) { |
|
186 |
if (NAME.equals(key)) { |
|
187 |
// Cuando se registra la accion aun no se han cargado las traducciones |
|
188 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
|
189 |
return i18n.getTranslation("_View_as_Json"); |
|
190 |
} |
|
191 |
return super.getValue(key); |
|
192 |
} |
|
193 |
@Override |
|
194 |
public void actionPerformed(ActionEvent e) { |
|
195 |
DefaultFeatureTypePanel featureTypePanel = (DefaultFeatureTypePanel) e.getSource(); |
|
196 |
FeatureType featureType = featureTypePanel.fetch(null); |
|
197 |
|
|
198 |
JTextEditor editor = ToolsUtilLocator.getTextEditorManager().createTextEditor(); |
|
199 |
editor.setText(JsonUtils.toString(featureType.toJson())); |
|
200 |
|
|
201 |
WindowManager winmanager = ToolsSwingLocator.getWindowManager(); |
|
202 |
winmanager.showWindow( |
|
203 |
editor.asJComponent(), |
|
204 |
"FeatureType - "+featureType.getName(), |
|
205 |
WindowManager.MODE.WINDOW |
|
206 |
); |
|
207 |
} |
|
208 |
|
|
209 |
} |
|
210 |
|
|
170 | 211 |
private DefaultFeatureAttributePanel descriptorPanel; |
171 | 212 |
private EditableFeatureType featureType; |
172 | 213 |
private int mode; |
... | ... | |
183 | 224 |
this.fieldSelectionAllowed = true; |
184 | 225 |
this.initComponents(); |
185 | 226 |
} |
186 |
|
|
227 |
|
|
187 | 228 |
@SuppressWarnings("Convert2Lambda") |
188 | 229 |
private void initComponents() { |
189 | 230 |
ToolsSwingManager swingManager = ToolsSwingLocator.getToolsSwingManager(); |
... | ... | |
569 | 610 |
} |
570 | 611 |
|
571 | 612 |
public static void selfRegister() { |
572 |
|
|
613 |
ConfigurableActionsMamager cfgActionsManager = ToolsUtilLocator.getConfigurableActionsMamager(); |
|
614 |
cfgActionsManager.addConfigurableAction(CONFIGURABLE_PANEL_ID, new ViewAsJsonAction()); |
|
573 | 615 |
} |
574 | 616 |
} |
Also available in: Unified diff