Revision 45281

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/java/org/gvsig/app/extension/InitializeApplicationExtension.java
156 156

  
157 157
        initLastPath();
158 158
        registerIcons();
159
        loadExpressionBookmarks();
160
        loadExpressionHistory();
159
//        loadExpressionBookmarks();
160
//        loadExpressionHistory();
161 161
        loadHistoryAndBookmarks();
162 162
    }
163 163

  
......
186 186

  
187 187
    }
188 188

  
189
    public void loadExpressionHistory() {
190
        PluginsManager pluginManager = PluginsLocator.getManager();
191
        final PluginServices plugin = pluginManager.getPlugin(this);
192
        DynObject pluginProperties = plugin.getPluginProperties();
193
        List<Expression> dynBookmarks = (List<Expression>) pluginProperties.getDynValue("expressionHistory");
194
        if (dynBookmarks == null) {
195
            return;
196
        }
197
        final ExpressionEvaluatorManager expressionManager = ExpressionEvaluatorLocator.getExpressionEvaluatorManager();
198
        History<Expression> history = expressionManager.getHistory();
199
        for (Expression expression : dynBookmarks) {
200
            history.add(expression);
201
        }
202
        pluginManager.addShutdownTask("saveExpressionHistory", new Runnable() {
203
            @Override
204
            public void run() {
205
                DynObject properties = plugin.getPluginProperties();
206
                ArrayList<Expression> var = new ArrayList<>();
207
                for (Expression expression : history) {
208
                    var.add(expression);
209
                }
210
                properties.setDynValue("expressionHistory", var);
211
            }
212
        }, false, 100);
213

  
214
    }
215

  
216
    public void loadExpressionBookmarks() {
217
        PluginsManager pluginManager = PluginsLocator.getManager();
218
        final PluginServices plugin = pluginManager.getPlugin(this);
219
        DynObject pluginProperties = plugin.getPluginProperties();
220
        Map<String, Expression> dynBookmarks = (Map<String, Expression>) pluginProperties.getDynValue("expressionBookmarks");
221
        if (dynBookmarks == null) {
222
            return;
223
        }
224
        final ExpressionEvaluatorManager expressionManager = ExpressionEvaluatorLocator.getExpressionEvaluatorManager();
225
        Bookmarks<Expression> bookmarks = expressionManager.getBookmarks();
226
        for (String key : dynBookmarks.keySet()) {
227
            Expression bookmark = dynBookmarks.get(key);
228
            bookmarks.add(bookmark);
229
        }
230
        pluginManager.addShutdownTask("saveExpressionBookmarks", new Runnable() {
231
            @Override
232
            public void run() {
233
                DynObject properties = plugin.getPluginProperties();
234
                Map<String, Expression> var = new HashMap<>();
235
                for (Bookmark<Expression> bookmark : bookmarks) {
236
                    var.put(bookmark.getName(), bookmark.getValue());
237
                }
238
                properties.setDynValue("expressionBookmarks", var);
239
            }
240
        }, false, 100);
241

  
242
    }
243

  
244 189
    private void initLastPath() {
245 190
        Preferences prefs = Preferences.userRoot().node("gvsig.foldering");
246 191
        FoldersManager folderManager = ToolsLocator.getFoldersManager();

Also available in: Unified diff