svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.plugin / org.gvsig.downloader / org.gvsig.downloader.swing / org.gvsig.downloader.swing.impl / src / main / java / org / gvsig / downloader / swing / impl / configController / DownloaderConfigControllerImpl.java @ 47853
History | View | Annotate | Download (4.7 KB)
1 |
package org.gvsig.downloader.swing.impl.configController; |
---|---|
2 |
|
3 |
import java.awt.event.ActionEvent; |
4 |
import java.awt.event.ActionListener; |
5 |
import java.util.function.Supplier; |
6 |
import javax.swing.JButton; |
7 |
import org.gvsig.downloader.DownloaderAuthenticationConfig; |
8 |
import org.gvsig.downloader.DownloaderLocator; |
9 |
import org.gvsig.downloader.DownloaderManager; |
10 |
import org.gvsig.downloader.swing.DownloaderConfigController; |
11 |
import org.gvsig.downloader.swing.DownloaderConfigPanel; |
12 |
import org.gvsig.downloader.swing.DownloaderConfigServicePanel; |
13 |
import org.gvsig.downloader.swing.DownloaderSwingLocator; |
14 |
import org.gvsig.downloader.swing.DownloaderSwingManager; |
15 |
import org.gvsig.tools.ToolsLocator; |
16 |
import org.gvsig.tools.i18n.I18nManager; |
17 |
import org.gvsig.tools.swing.api.ToolsSwingLocator; |
18 |
import org.gvsig.tools.swing.api.ToolsSwingUtils; |
19 |
import org.gvsig.tools.swing.api.windowmanager.Dialog; |
20 |
import org.gvsig.tools.swing.api.windowmanager.WindowManager; |
21 |
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2; |
22 |
|
23 |
/**
|
24 |
*
|
25 |
* @author jjdelcerro
|
26 |
*/
|
27 |
public class DownloaderConfigControllerImpl implements DownloaderConfigController { |
28 |
|
29 |
private final Supplier<String> serviceUrl; |
30 |
private final JButton btnAddService; |
31 |
private final JButton btnShowConfig; |
32 |
|
33 |
public DownloaderConfigControllerImpl(Supplier<String> serviceUrl, JButton btnAddService, JButton btnShowConfig) { |
34 |
this.btnAddService = btnAddService==null? new JButton():btnAddService; |
35 |
this.btnShowConfig = btnShowConfig==null? new JButton():btnShowConfig; |
36 |
this.serviceUrl = serviceUrl;
|
37 |
this.initComponents();
|
38 |
} |
39 |
|
40 |
private void initComponents() { |
41 |
ToolsSwingUtils.configurePickersButton(btnAddService, |
42 |
"_Add_configuration_for_service_authentication",
|
43 |
"downloader-addservice",
|
44 |
(ActionEvent e) -> {doAddService();},
|
45 |
null
|
46 |
); |
47 |
ToolsSwingUtils.configurePickersButton( |
48 |
btnShowConfig, |
49 |
"_Edit_settings_for_service_authentication",
|
50 |
"downloader-admin",
|
51 |
(ActionEvent e) -> {doShowConfig();},
|
52 |
null
|
53 |
); |
54 |
} |
55 |
|
56 |
private void doAddService() { |
57 |
WindowManager_v2 winmgr = (WindowManager_v2) ToolsSwingLocator.getWindowManager(); |
58 |
DownloaderManager manager = DownloaderLocator.getDownloaderManager(); |
59 |
DownloaderSwingManager swingManager = DownloaderSwingLocator.getDownloaderSwingManager(); |
60 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
61 |
|
62 |
String theServiceUrl = null; |
63 |
if( this.serviceUrl!=null ) { |
64 |
theServiceUrl = this.serviceUrl.get();
|
65 |
} |
66 |
DownloaderConfigServicePanel panel = swingManager.createDownloaderConfigServicePanel(theServiceUrl); |
67 |
|
68 |
Dialog dialog = winmgr.createDialog(
|
69 |
panel.asJComponent(), |
70 |
i18n.getTranslation("_Add_service"),
|
71 |
null,
|
72 |
WindowManager_v2.BUTTONS_OK_CANCEL |
73 |
); |
74 |
dialog.addActionListener((ActionEvent e) -> {
|
75 |
if( dialog.getAction()==WindowManager_v2.BUTTON_OK ) {
|
76 |
DownloaderAuthenticationConfig x = panel.fetch(); |
77 |
manager.registerAuthenticationConfigurationService(x); |
78 |
} |
79 |
}); |
80 |
dialog.show(WindowManager.MODE.DIALOG); |
81 |
} |
82 |
|
83 |
private void doShowConfig() { |
84 |
WindowManager_v2 winmgr = (WindowManager_v2) ToolsSwingLocator.getWindowManager(); |
85 |
DownloaderSwingManager manager = DownloaderSwingLocator.getDownloaderSwingManager(); |
86 |
I18nManager i18n = ToolsLocator.getI18nManager(); |
87 |
|
88 |
DownloaderConfigPanel panel = manager.createDownloaderConfigPanel(); |
89 |
Dialog dialog = winmgr.createDialog(
|
90 |
panel.asJComponent(), |
91 |
i18n.getTranslation("_Download_manager"),
|
92 |
null,
|
93 |
WindowManager_v2.BUTTONS_OK |
94 |
); |
95 |
dialog.setButtonLabel( |
96 |
WindowManager_v2.BUTTONS_OK, |
97 |
i18n.getTranslation("_Close")
|
98 |
); |
99 |
dialog.addActionListener((ActionEvent e) -> {
|
100 |
dialog.hideDialog(); |
101 |
}); |
102 |
dialog.show(WindowManager.MODE.DIALOG); |
103 |
} |
104 |
|
105 |
public static void selfRegister() { |
106 |
ToolsSwingUtils.registerIcons(DownloaderConfigServicePanel.class, |
107 |
"/org/gvsig/downloader/swing/impl/images",
|
108 |
"downloader",
|
109 |
new String[] { "downloader", "downloader-admin" }, |
110 |
new String[] { "downloader", "downloader-addservice" } |
111 |
); |
112 |
// ToolsSwingUtils.registerGroupIconScreenshot(DownloaderConfigServicePanel.class,
|
113 |
// "downloader",
|
114 |
// "/org/gvsig/downloader/swing/impl/screenshots/downloader.png"
|
115 |
// );
|
116 |
} |
117 |
} |