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

View differences:

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