Statistics
| Revision:

gvsig-projects-pool / org.gvsig.vcsgis / trunk / org.gvsig.vcsgis / org.gvsig.vcsgis.app / org.gvsig.vcsgis.app.mainplugin / src / main / java / org / gvsig / vcsgis / app / VCSGisExtension.java @ 5019

History | View | Annotate | Download (27.8 KB)

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

    
24
import java.util.EventListener;
25
import java.util.Map;
26
import javax.swing.JOptionPane;
27
import org.gvsig.andami.IconThemeHelper;
28
import org.gvsig.andami.PluginsLocator;
29
import org.gvsig.andami.plugins.Extension;
30
import org.gvsig.app.ApplicationLocator;
31
import org.gvsig.app.ApplicationManager;
32
import org.gvsig.app.extension.AddLayer;
33
import org.gvsig.app.project.ProjectManager.ProjectEvent;
34
import static org.gvsig.app.project.ProjectNotification.AFTER_LOAD_FROM_FILE;
35
import static org.gvsig.app.project.ProjectNotification.BEFORE_SAVE_TO_FILE;
36
import org.gvsig.tools.ToolsLocator;
37
import org.gvsig.tools.dynobject.DynObject;
38
import org.gvsig.tools.i18n.I18nManager;
39
import org.gvsig.tools.swing.api.ToolsSwingLocator;
40
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
41
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
42
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2;
43
import org.gvsig.tools.util.BaseListenerSupport;
44
import org.gvsig.vcsgis.app.VCSGisDialogsHelper.VCSGisDialogInfo;
45
import org.gvsig.vcsgis.app.addlayer.WizardVCSGisTabular;
46
import org.gvsig.vcsgis.app.addlayer.WizardVCSGisVectorial;
47
import org.gvsig.vcsgis.lib.VCSGisEntity;
48
import org.gvsig.vcsgis.lib.VCSGisLocator;
49
import org.gvsig.vcsgis.lib.VCSGisManager;
50
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspace;
51
import org.gvsig.vcsgis.lib.workspace.VCSGisWorkspaceDescriptor;
52
import org.gvsig.vcsgis.swing.VCSGisJAddToWorkspace;
53
import org.gvsig.vcsgis.swing.VCSGisJCheckout;
54
import org.gvsig.vcsgis.swing.VCSGisJCheckoutDataModel;
55
import org.gvsig.vcsgis.swing.VCSGisJCreateResourceTable;
56
import org.gvsig.vcsgis.swing.VCSGisJDownloadWorkingcopy;
57
import org.gvsig.vcsgis.swing.VCSGisJExport;
58
import org.gvsig.vcsgis.swing.VCSGisJBackupHistory;
59
import org.gvsig.vcsgis.swing.VCSGisJImportHistory;
60
import org.gvsig.vcsgis.swing.VCSGisJInitServer;
61
import org.gvsig.vcsgis.swing.VCSGisJInitWorkspace;
62
import org.gvsig.vcsgis.swing.VCSGisJLogout;
63
import org.gvsig.vcsgis.swing.VCSGisJPrepareWorkingcopy;
64
import org.gvsig.vcsgis.swing.VCSGisJRestoreHistory;
65
import org.gvsig.vcsgis.swing.VCSGisJShowServerTableForm;
66
import org.gvsig.vcsgis.swing.VCSGisSwingLocator;
67
import org.gvsig.vcsgis.swing.VCSGisSwingManager;
68

    
69
/**
70
 *
71
 * @author gvSIG Team
72
 */
73
public class VCSGisExtension extends Extension {
74

    
75
    private VCSGisDialogsHelper dialogsHelper;
76

    
77
    @Override
78
    public void initialize() {
79
        IconThemeHelper.registerIcon("action", "tools-vcsgis-init-server", this);
80
        IconThemeHelper.registerIcon("action", "tools-vcsgis-init-workspace", this);
81
        IconThemeHelper.registerIcon("action", "tools-vcsgis-add-to-workspace", this);
82
        IconThemeHelper.registerIcon("action", "tools-vcsgis-export", this);
83
        IconThemeHelper.registerIcon("action", "tools-vcsgis-checkout", this);
84
        IconThemeHelper.registerIcon("action", "tools-vcsgis-showchanges", this);
85
        IconThemeHelper.registerIcon("action", "tools-vcsgis-register-workspace", this);
86
        IconThemeHelper.registerIcon("action", "tools-vcsgis-show-revisions", this);
87
        IconThemeHelper.registerIcon("action", "tools-vcsgis-checkout-datamodel", this);
88
        
89
        this.dialogsHelper = new VCSGisDialogsHelper();
90
//        ToolsLocator.getDisposableManager().setStackLimit(200);
91
    }
92

    
93
    @Override
94
    public void postInitialize() {
95
        super.postInitialize();
96
        ApplicationManager application = ApplicationLocator.getApplicationManager();
97
        VCSGisManager manager = VCSGisLocator.getVCSGisManager();
98
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
99
        swingManager.setDefaultServices(new VCSGisSwingServicesImpl());
100

    
101
        DynObject pluginProperties = this.getPlugin().getPluginProperties();
102
        Map<String, VCSGisWorkspaceDescriptor> workspaces = (Map) pluginProperties.getDynValue("workspaces");
103
        manager.restoreWorkspaces(workspaces);
104

    
105
        PluginsLocator.getPluginsManager().addShutdownTask(
106
                "VCSGisSave", 
107
                () -> {
108
                    VCSGisManager manager1 = VCSGisLocator.getVCSGisManager();
109
                    DynObject pluginProperties1 = getPlugin().getPluginProperties();
110
                    pluginProperties1.setDynValue("workspaces", manager1.getWorkspaces());
111
                },
112
                false,
113
                100
114
        );
115

    
116
        ApplicationLocator.getManager().registerAddTableWizard(
117
                "VCSGis", 
118
                "VCSGis", 
119
                WizardVCSGisTabular.class
120
        );
121
        AddLayer.addWizard(WizardVCSGisVectorial.class);
122
        
123
        application.getProjectManager().addProjectListener(new BaseListenerSupport.NotificationListener() {
124
            @Override
125
            public void notify(EventListener e) {
126
                if( e instanceof ProjectEvent ) {
127
                    ProjectEvent pe = (ProjectEvent)e;
128
                    switch(pe.getId()) {
129
                        case AFTER_LOAD_FROM_FILE:
130
                            VCSGisSwingServicesImpl services = (VCSGisSwingServicesImpl) VCSGisSwingLocator.getVCSGisSwingManager().getDefaultServices();
131
                            services.projectLoaded(pe.getProject());
132
                            break;
133
                        case BEFORE_SAVE_TO_FILE:
134
                            break;
135
                    }
136
                }
137
            }
138
        });
139

    
140
    }
141

    
142
    @Override
143
    public void execute(String actionCommand) {
144

    
145
        switch (actionCommand) {
146
            case "tools-vcsgis-showchanges":
147
                this.showChangesDialog();
148
                break;
149

    
150
            case "tools-vcsgis-init-server":
151
                showInitializaRepositoryDialog();
152
                break;
153
            case "tools-vcsgis-init-workspace":
154
                showInitWorkspaceDialog();
155
                break;
156
            case "tools-vcsgis-add-to-workspace":
157
                showAddToWorkspaceDialog();
158
                break;
159
            case "tools-vcsgis-checkout":
160
                showCheckoutDialog();
161
                break;
162
            case "tools-vcsgis-export":
163
                showExportDialog();
164
                break;
165
            case "tools-vcsgis-register-workspace":
166
                showRegisterWorkspaceDialog();
167
                break;
168
            case "tools-vcsgis-show_server-entities":
169
                showServerEntitiesDialog();
170
                break;
171
            case "tools-vcsgis-show_server-hooks":
172
                showServerHooksDialog();
173
                break;
174
            case "tools-vcsgis-show-revisions":
175
                showHistory();
176
                break;
177
            case "tools-vcsgis-import-history":
178
                showImportHistoryDialog();
179
                break;
180
            case "tools-vcsgis-create-resource-table":
181
                showCreateResourceTableDialog();
182
                break;
183
            case "tools-vcsgis-logout":
184
                showLogoutDialog();
185
                break;
186
            case "tools-vcsgis-checkout-datamodel":
187
                showCheckoutDataModelDialog();
188
                break;
189
            case "tools-vcsgis-download-workingcopy":
190
                showDownloadWorkingcopyDialog();
191
                break;
192
            case "tools-vcsgis-prepare-workingcopy":
193
                showPrepareWorkingcopyDialog();
194
                break;
195
            case "tools-vcsgis-backup-history":
196
                showBackupHistoryDialog();
197
                break;
198
            case "tools-vcsgis-restore-history":
199
                showRestoreHistoryDialog();
200
                break;
201
        }
202
    }
203

    
204
    @Override
205
    public boolean isEnabled() {
206
        return true;
207
    }
208

    
209
    @Override
210
    public boolean isVisible() {
211
        return true;
212
    }
213

    
214
//    private void cleanHighligthed() {
215
//        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
216
//        swingManager.getDefaultServices().cleanHighligthed();
217
//    }
218
//
219

    
220
    private void showAddToWorkspaceDialog() {
221
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
222

    
223
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
224
                "AddToWorkingCopy",
225
                swingManager.createAddToWorkspacePanel(),
226
                "_VCS_Add_to_workingcopy",
227
                "_VCS_Add_to_workingcopy",
228
                "_VCS_Add_to_workingcopy",
229
                () -> {
230
                    I18nManager i18n = ToolsLocator.getI18nManager();
231
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
232
                    VCSGisJAddToWorkspace addToWorkspacePanel = (VCSGisJAddToWorkspace) this.dialogsHelper.getDialog("AddToWorkingCopy").getPanel();
233
                    int r = addToWorkspacePanel.add();
234
                    if (r != 0) {
235
                        dialogsManager.messageDialog(
236
                                addToWorkspacePanel.getLastErrorMessage(),
237
                                i18n.getTranslation("_VCS_Add_to_workingcopy"),
238
                                JOptionPane.WARNING_MESSAGE
239
                        );
240
                    }
241
                }
242
        );
243
        dialog.show();
244
    }
245

    
246
    private void showImportHistoryDialog() {
247
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
248

    
249
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
250
                "ImportHistory",
251
                swingManager.createImportHistoryPanel(),
252
                "_VCS_Import_history",
253
                "_VCS_Import_history",
254
                "_VCS_Import_history",
255
                () -> {
256
                    I18nManager i18n = ToolsLocator.getI18nManager();
257
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
258
                    VCSGisJImportHistory importHistoryPanel = (VCSGisJImportHistory) this.dialogsHelper.getDialog("ImportHistory").getPanel();
259
                    int r = importHistoryPanel.importHistory();
260
                    if (r != 0) {
261
//                        FeatureStore featureStore = importHistoryPanel.getFeatureStore();
262
//                        String targetName = importHistoryPanel.getTabletName();
263
                        VCSGisWorkspace workspace = importHistoryPanel.getWorkspace();
264
                        String errmsg = workspace.getErrorMessage(r);
265
                        if( errmsg==null ) {
266
                            errmsg = "";
267
                        }
268
                        dialogsManager.messageDialog(
269
                                i18n.getTranslation("_Cant_import_history")
270
                                    + "\n" 
271
                                    + errmsg
272
                                    + "\n" 
273
                                    + i18n.getTranslation("_see_error_log_for_more_information")
274
                                    ,
275
                                i18n.getTranslation("_VCS_Import_history"),
276
                                JOptionPane.WARNING_MESSAGE
277
                        );
278
                    }
279
                }
280
        );
281
        dialog.show();
282
    }
283

    
284
    private void showInitWorkspaceDialog() {
285
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
286

    
287
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
288
                "InitializeWorkingCopy",
289
                swingManager.createInitWorkspacePanel(),
290
                "_VCS_Initialize_workingcopy",
291
                "_VCS_Initialize_workingcopy",
292
                "_VCS_Initialize_workingcopy",
293
                () -> {
294
                    I18nManager i18n = ToolsLocator.getI18nManager();
295
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
296
                    VCSGisJInitWorkspace panelInitWorkspace = (VCSGisJInitWorkspace) this.dialogsHelper.getDialog("InitializeWorkingCopy").getPanel();
297
                    int r = panelInitWorkspace.initializeWorkspace();
298
                    if (r != 0) {
299
                        dialogsManager.messageDialog(
300
                                i18n.getTranslation(
301
                                        "_Cant_initialize_workingcopy_{0}",
302
                                        new String[]{panelInitWorkspace.getWorkspaceName()}
303
                                ),
304
                                i18n.getTranslation("_VCS_Initialize_workingcopy"),
305
                                JOptionPane.WARNING_MESSAGE
306
                        );
307
                    }
308
                }
309
        );
310
        dialog.setAutoclose(true);
311
        dialog.show();
312
    }
313

    
314
    private void showInitializaRepositoryDialog() {
315
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
316

    
317
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
318
                "InitializeRepository",
319
                swingManager.createInitRepositoryPanel(),
320
                "_VCS_Initialize_repository",
321
                "_VCS_Initialize_repository",
322
                "_VCS_Initialize_repository",
323
                () -> {
324
                    I18nManager i18n = ToolsLocator.getI18nManager();
325
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
326
                    VCSGisJInitServer panel = (VCSGisJInitServer) this.dialogsHelper.getDialog("InitializeRepository").getPanel();
327
                    int r = panel.initialize();
328
                    if (r != 0) {
329
                        dialogsManager.messageDialog(
330
                                i18n.getTranslation(
331
                                        "_Cant_initialize_server_{0}",
332
                                        new String[]{panel.getConnectionLabel()}
333
                                ),
334
                                i18n.getTranslation("_VCS_Initialize_repository"),
335
                                JOptionPane.WARNING_MESSAGE
336
                        );
337
                    }
338
                }
339
        );
340
        dialog.setAutoclose(true);
341
        dialog.show();
342
    }
343

    
344
    private void showCheckoutDialog() {
345
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
346

    
347
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
348
                "Checkout",
349
                swingManager.createCheckoutPanel(),
350
                "_VCS_Checkout",
351
                "_VCS_Checkout",
352
                "_VCS_Checkout",
353
                () -> {
354
                    I18nManager i18n = ToolsLocator.getI18nManager();
355
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
356
                    VCSGisJCheckout checkoutPanel = (VCSGisJCheckout) this.dialogsHelper.getDialog("Checkout").getPanel();
357
                    int r = checkoutPanel.checkout();
358
                    if (r != 0) {
359
                        VCSGisEntity entity = checkoutPanel.getTable();
360
                        dialogsManager.messageDialog(
361
                                i18n.getTranslation(
362
                                        "_Failed_checkout_of_{0}",
363
                                        new String[]{entity.toString()}
364
                                ),
365
                                i18n.getTranslation("_VCS_Checkout"),
366
                                JOptionPane.WARNING_MESSAGE
367
                        );
368
                    }
369
                }
370
        );
371
        dialog.show();
372
    }
373

    
374
    private void showExportDialog() {
375
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
376

    
377
        final VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
378
                "Export",
379
                swingManager.createExportPanel(),
380
                "_VCS_Export",
381
                "_Export_to_a_local_table_a_table_of_the_repository",
382
                "_VCS_Export",
383
                () -> {
384
                    I18nManager i18n = ToolsLocator.getI18nManager();
385
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
386
                    VCSGisJExport exportPanel = (VCSGisJExport) this.dialogsHelper.getDialog("Export").getPanel();
387
                    int r = exportPanel.export();
388
                    if (r != 0) {
389
                        VCSGisEntity entity = exportPanel.getTable();
390
                        dialogsManager.messageDialog(
391
                                i18n.getTranslation(
392
                                        "_Failed_export_of_{0}",
393
                                        new String[]{entity.toString()}
394
                                ),
395
                                i18n.getTranslation("_VCSGis_Export"),
396
                                JOptionPane.WARNING_MESSAGE
397
                        );
398
                    }
399
                }
400
        );
401
        dialog.show();
402
    }
403

    
404
    private void showChangesDialog() {
405
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
406

    
407
        final VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
408
                "Changes",
409
                swingManager.createChangesPanel(),
410
                "_VCS_Changes"
411
        );
412
        dialog.show();
413
    }
414

    
415
    private void showHistory() {
416
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
417

    
418
        final VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
419
                "Revisions",
420
                swingManager.createRevisionsPanel(),
421
                "_VCS_Revisions"
422
        );
423
        dialog.show();
424
    }
425

    
426
    private void showRegisterWorkspaceDialog() {
427
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
428

    
429
        final VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
430
                "RegisterWorkingCopies",
431
                swingManager.createRegisterWorkspacePanel(),
432
                "_VCS_Register_workingcopy"
433
        );
434
        dialog.show();
435
    }
436

    
437
    private void showServerEntitiesDialog() {
438
        I18nManager i18nManager = ToolsLocator.getI18nManager();
439
        WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
440
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
441

    
442
        final VCSGisJShowServerTableForm panel = swingManager.createShowTableServerFormPanel("VCSGIS_ENTITIES");
443
        winManager.showWindow(
444
                panel.asJComponent(),
445
                i18nManager.getTranslation("_VCS_Server_entities"),
446
                WindowManager.MODE.WINDOW
447
        );
448
    }
449

    
450
    private void showServerHooksDialog() {
451
        I18nManager i18nManager = ToolsLocator.getI18nManager();
452
        WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
453
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
454

    
455
        final VCSGisJShowServerTableForm panel = swingManager.createShowTableServerFormPanel("VCSGIS_HOOKS");
456
        winManager.showWindow(
457
                panel.asJComponent(),
458
                i18nManager.getTranslation("_VCS_Server_hooks"),
459
                WindowManager.MODE.WINDOW
460
        );
461
    }
462

    
463
    private void showCreateResourceTableDialog() {
464
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
465

    
466
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
467
                "CreateResourceTable",
468
                swingManager.createResourceTablePanel(),
469
                "_VCS_Create_resource_table",
470
                "_Create_resource_table_parameters",
471
                "_VCS_Create_resource_table",
472
                () -> {
473
                    I18nManager i18n = ToolsLocator.getI18nManager();
474
                    VCSGisJCreateResourceTable panel = (VCSGisJCreateResourceTable) this.dialogsHelper.getDialog("CreateResourceTable").getPanel();
475
                    panel.createResourceTable();
476
                }
477
        );
478
        dialog.setAutoclose(true);
479
        dialog.show();
480
    }
481

    
482
    private void showLogoutDialog() {
483
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
484

    
485
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
486
                "Logout",
487
                swingManager.createLogoutPanel(),
488
                "_VCS_Logout",
489
                "_Logout_the_current_user_from_a_VCSGis_working_copy",
490
                "_VCS_Logout",
491
                () -> {
492
                    I18nManager i18n = ToolsLocator.getI18nManager();
493
                    VCSGisJLogout panel = (VCSGisJLogout) this.dialogsHelper.getDialog("Logout").getPanel();
494
                    panel.logout();
495
                }
496
        );
497
        dialog.setAutoclose(true);
498
        dialog.show();
499
    }
500

    
501
    private void showCheckoutDataModelDialog() {
502
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
503

    
504
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
505
                "ConnectDataModel",
506
                swingManager.createCheckoutDataModelPanel(),
507
                "_VCS_Connect_to_datamodel",
508
                "_VCS_Connect_to_datamodel",
509
                "_VCS_Connect_to_datamodel",
510
                () -> {
511
                    I18nManager i18n = ToolsLocator.getI18nManager();
512
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
513
                    VCSGisJCheckoutDataModel checkoutDataModelPanel = (VCSGisJCheckoutDataModel) this.dialogsHelper.getDialog("ConnectDataModel").getPanel();
514
                    int r = checkoutDataModelPanel.connectToModel();
515
                    if (r != 0) {
516
                        String dataModel = checkoutDataModelPanel.getDataModel();
517
                        dialogsManager.messageDialog(
518
                                i18n.getTranslation(
519
                                        "_Failed_connect_to_{0}",
520
                                        new String[]{dataModel}
521
                                ),
522
                                i18n.getTranslation("_VCS_Connect_to_datamodel"),
523
                                JOptionPane.WARNING_MESSAGE
524
                        );
525
                    }
526
                }
527
        );
528
        dialog.show();
529
    }
530
   
531
    private void showDownloadWorkingcopyDialog() {
532
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
533

    
534
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("DownloadWorkingcopy",
535
                swingManager.createDownloadWorkingcopyPanel(),
536
                "_VCS_Download_workingcopy",
537
                "_VCS_Download_workingcopy",
538
                "_VCS_Download_workingcopy",
539
                () -> {
540
                    I18nManager i18n = ToolsLocator.getI18nManager();
541
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
542
                    VCSGisJDownloadWorkingcopy downloadWorkingcopyPanel = (VCSGisJDownloadWorkingcopy) this.dialogsHelper.getDialog("DownloadWorkingcopy").getPanel();
543
                    int r = downloadWorkingcopyPanel.download(false);
544
                    if (r != 0) {
545
                        dialogsManager.messageDialog(
546
                                i18n.getTranslation(
547
                                        "_Failed_dowloading_working_copy"
548
                                ),
549
                                i18n.getTranslation("_VCS_Download_working_copy"),
550
                                JOptionPane.WARNING_MESSAGE
551
                        );
552
                    }
553
                }
554
        );
555
        dialog.show();
556
    }
557

    
558
    private void showPrepareWorkingcopyDialog() {
559
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
560

    
561
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("PrepareWorkingcopy",
562
                swingManager.createPrepareWorkingcopyPanel(),
563
                "_VCS_Prepare_workingcopy",
564
                "_VCS_Prepare_workingcopy",
565
                "_VCS_Prepare_workingcopy",
566
                () -> {
567
                    I18nManager i18n = ToolsLocator.getI18nManager();
568
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
569
                    VCSGisJPrepareWorkingcopy prepareWorkingcopyPanel = (VCSGisJPrepareWorkingcopy) this.dialogsHelper.getDialog("PrepareWorkingcopy").getPanel();
570
                    int r = prepareWorkingcopyPanel.prepare();
571
                    if (r != 0) {
572
                        dialogsManager.messageDialog(
573
                                i18n.getTranslation(
574
                                        "_Failed_prepare_working_copy"
575
                                ),
576
                                i18n.getTranslation("_VCS_Prepare_working_copy"),
577
                                JOptionPane.WARNING_MESSAGE
578
                        );
579
                    }
580
                }
581
        );
582
        dialog.show();
583
    }
584

    
585
    private void showBackupHistoryDialog() {
586
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
587

    
588
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("BackupHistory",
589
                swingManager.createBackupHistoryPanel(),
590
                "_VCS_Backup_history",
591
                "_VCS_Backup_history",
592
                "_VCS_Backup_history",
593
                () -> {
594
                    I18nManager i18n = ToolsLocator.getI18nManager();
595
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
596
                    VCSGisJBackupHistory backupHistoryPanel = (VCSGisJBackupHistory) this.dialogsHelper.getDialog("BackupHistory").getPanel();
597
                    int r = backupHistoryPanel.backupHistory();
598
                    if (r != 0) {
599
                        dialogsManager.messageDialog(
600
                                i18n.getTranslation(
601
                                        "_Failed_doing_backup_history"
602
                                ),
603
                                i18n.getTranslation("_VCS_Backup_history"),
604
                                JOptionPane.WARNING_MESSAGE
605
                        );
606
                    }
607
                }
608
        );
609
        dialog.show();
610
    }
611

    
612
    private void showRestoreHistoryDialog() {
613
        VCSGisSwingManager swingManager = VCSGisSwingLocator.getVCSGisSwingManager();
614

    
615
        VCSGisDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("RestoreHistory",
616
                swingManager.createRestoreHistoryPanel(),
617
                "_VCS_Restore_history",
618
                "_VCS_Restore_history",
619
                "_VCS_Restore_history",
620
                () -> {
621
                    I18nManager i18n = ToolsLocator.getI18nManager();
622
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
623
                    VCSGisJRestoreHistory restoreHistoryPanel = (VCSGisJRestoreHistory) this.dialogsHelper.getDialog("RestoreHistory").getPanel();
624
                    int r = restoreHistoryPanel.restoreHistory();
625
                    if (r != 0) {
626
                        dialogsManager.messageDialog(
627
                                i18n.getTranslation(
628
                                        "_Failed_restoring_history"
629
                                ),
630
                                i18n.getTranslation("_VCS_Restore_history"),
631
                                JOptionPane.WARNING_MESSAGE
632
                        );
633
                    }
634
                }
635
        );
636
        dialog.show();
637
    }
638

    
639
}