Revision 6337

View differences:

trunk/libraries/libCorePlugin/src/com/iver/core/PreferencesExtension.java
11 11
import com.iver.andami.plugins.config.generate.Extensions;
12 12
import com.iver.andami.plugins.config.generate.PluginConfig;
13 13
import com.iver.andami.preferences.DlgPreferences;
14
import com.iver.andami.preferences.IPreference;
14 15
import com.iver.andami.preferences.IPreferenceExtension;
15 16
import com.iver.core.preferences.general.AppearancePage;
16 17
import com.iver.core.preferences.general.DirExtensionsPage;
......
20 21
import com.iver.core.preferences.general.LanguagePage;
21 22
import com.iver.core.preferences.network.FirewallPage;
22 23
import com.iver.core.preferences.network.NetworkPage;
24
import com.iver.utiles.extensionPoints.ExtensionPoints;
25
import com.iver.utiles.extensionPoints.ExtensionPointsSingleton;
23 26

  
24
public class PreferencesExtension extends Extension{
25
	private DlgPreferences dlgPrefs = PluginServices.getDlgPreferences();
27
public class PreferencesExtension extends Extension{	
28
	private ExtensionPoints extensionPoints = 
29
		ExtensionPointsSingleton.getInstance();
26 30

  
27 31
	public void initialize() {
32
		initializeCoreExtensions();
33
		initializeExtensions();
34
		initializeExtensionsConfig();		
28 35
	}
29 36

  
30 37
	public void execute(String actionCommand) {
31
		initializeCoreExtensions();
32
		initializeExtensions();
33
		initializeExtensionsConfig();
34
		PluginServices.getMDIManager().addView(dlgPrefs);
38
		PluginServices.getMDIManager().addView(PluginServices.getDlgPreferences());
35 39
	}
36 40
	public boolean isEnabled() {
37 41
		return true;
......
42 46
	}
43 47

  
44 48
	private void initializeCoreExtensions() {
45
		dlgPrefs.addPreferencePage(new GeneralPage());
46
		dlgPrefs.addPreferencePage(new NetworkPage());
47
		dlgPrefs.addPreferencePage(new FirewallPage());
48
		dlgPrefs.addPreferencePage(new DirExtensionsPage());
49
		dlgPrefs.addPreferencePage(new LanguagePage());
50
		dlgPrefs.addPreferencePage(new ExtensionsPage());
51
		dlgPrefs.addPreferencePage(new AppearancePage());
49
		//dlgPrefs.addPreferencePage(new GeneralPage());
50
		this.extensionPoints.add("AplicationPreferences","GeneralPage", new GeneralPage());
51
		
52
		//dlgPrefs.addPreferencePage(new NetworkPage());
53
		this.extensionPoints.add("AplicationPreferences","NetworkPage", new NetworkPage());
54

  
55
		//dlgPrefs.addPreferencePage(new FirewallPage());
56
		this.extensionPoints.add("AplicationPreferences","FirewallPage", new FirewallPage());
57
		
58
		//dlgPrefs.addPreferencePage(new DirExtensionsPage());
59
		this.extensionPoints.add("AplicationPreferences","DirExtensionsPage", new DirExtensionsPage());
60
		
61
		//dlgPrefs.addPreferencePage(new LanguagePage());
62
		this.extensionPoints.add("AplicationPreferences","LanguagePage", new LanguagePage());
63
		
64
		//dlgPrefs.addPreferencePage(new ExtensionsPage());
65
		this.extensionPoints.add("AplicationPreferences","ExtensionsPage", new ExtensionsPage());
66
		
67
		//dlgPrefs.addPreferencePage(new AppearancePage());
68
		this.extensionPoints.add("AplicationPreferences","AppearancePage", new AppearancePage());
69
		
52 70
		//Falta los plugin
53 71
	}
54 72

  
......
70 88
				String sExt = ext.getClassName().toString();
71 89
				pn = sExt.substring(0, sExt.lastIndexOf("."));
72 90
				//dlgPrefs.addPreferencePage(new PluginsPage(pn));
73
				dlgPrefs.addPreferencePage(new ExtensionPage(ext));
91
				//dlgPrefs.addPreferencePage(new ExtensionPage(ext));
92
				this.extensionPoints.add("AplicationPreferences",pn, new ExtensionPage(ext));
74 93
			}
75 94
		}
76 95
	}
......
85 104

  
86 105
				if (extension.getExtension() instanceof IPreferenceExtension) {
87 106
					IPreferenceExtension pe=(IPreferenceExtension)extension.getExtension();
88
					dlgPrefs.addPreferencePage(pe.getPreferencesPage());
107
					IPreference pp=pe.getPreferencesPage();
108
					//dlgPrefs.addPreferencePage(pe.getPreferencesPage());
109
					this.extensionPoints.add("AplicationPreferences",pp.getID(), pp);
89 110
				}
90 111
		}
91 112
	}
trunk/extensions/extCAD/src/com/iver/cit/gvsig/gui/preferences/DialogEditionPreferences.java
141 141
			Random rnd = new Random();
142 142
			if (i> 5)
143 143
				newPref.setParentID("Titulo " + rnd.nextInt(i));
144
			panel.addPreferencePage(newPref);
144
			//panel.addPreferencePage(newPref);
145 145
			
146 146
		}
147 147
		
......
151 151
		layers.addLayer(lyrVect);
152 152
		
153 153
		EditionPreferencePage edPref = new EditionPreferencePage();
154
		panel.addPreferencePage(edPref);
154
		//panel.addPreferencePage(edPref);
155 155
		edPref.setLayers(layers);
156 156

  
157 157
		dlg.getContentPane().add(panel);
trunk/extensions/extCAD/src/com/iver/cit/gvsig/gui/popupmenu/PopupEditionProperties.java
40 40
 */
41 41
package com.iver.cit.gvsig.gui.popupmenu;
42 42

  
43
import java.awt.BorderLayout;
44
import java.awt.Frame;
45 43
import java.awt.event.ActionEvent;
46 44

  
47
import javax.swing.JDialog;
48 45
import javax.swing.JMenuItem;
49 46

  
50 47
import com.iver.andami.PluginServices;
......
53 50
import com.iver.cit.gvsig.gui.preferences.EditionPreferencePage;
54 51
import com.iver.cit.gvsig.gui.toc.FPopupMenu;
55 52
import com.iver.cit.gvsig.gui.toc.TocMenuEntry;
53
import com.iver.utiles.extensionPoints.ExtensionPoints;
54
import com.iver.utiles.extensionPoints.ExtensionPointsSingleton;
56 55

  
57 56
public class PopupEditionProperties extends TocMenuEntry {
58 57
	private JMenuItem propsMenuItem;
......
89 88
//		dlg.setModal(true);
90 89
//		dlg.setVisible(true);
91 90

  
92
		
91
		ExtensionPoints extensionPoints = 
92
			ExtensionPointsSingleton.getInstance();
93
		extensionPoints.add("AplicationPreferences",pref.getID(), pref);
93 94
		GenericDlgPreferences dlg = new GenericDlgPreferences();
94 95
		dlg.getViewInfo().setTitle(PluginServices.getText(this, "Edition_Properties"));
95
		dlg.addPreferencePage(pref);
96
		
97
		//dlg.addPreferencePage(pref);
96 98
		dlg.setActivePage(pref);
97 99
		PluginServices.getMDIManager().addView(dlg);
98 100
		
trunk/frameworks/_fwAndami/src/com/iver/andami/preferences/GenericDlgPreferences.java
47 47
import java.util.Enumeration;
48 48
import java.util.Hashtable;
49 49
import java.util.Iterator;
50
import java.util.Set;
50 51

  
51 52
import javax.swing.JLabel;
52 53
import javax.swing.JPanel;
......
63 64
import com.iver.andami.PluginServices;
64 65
import com.iver.andami.ui.mdiManager.View;
65 66
import com.iver.andami.ui.mdiManager.ViewInfo;
67
import com.iver.utiles.extensionPoints.ExtensionPoint;
68
import com.iver.utiles.extensionPoints.ExtensionPoints;
69
import com.iver.utiles.extensionPoints.ExtensionPointsSingleton;
66 70

  
67 71
/**
68 72
 * @author fjp
......
147 151

  
148 152

  
149 153
		treeModel = new DefaultTreeModel(root);
154
		
155
		refreshTree();
150 156

  
151 157
	}
158
	
159
	private void refreshTree() {
160
		ExtensionPoints extensionPoints = 
161
			ExtensionPointsSingleton.getInstance();
162
		
163
		ExtensionPoint extensionPoint =(ExtensionPoint)extensionPoints.get("AplicationPreferences");
164
		
165
		Iterator iterator = extensionPoint.keySet().iterator();
166
		while (iterator.hasNext()) {
167
			try {
168
				IPreference obj = (IPreference)extensionPoint.create((String)iterator.next());
169
				this.addPreferencePage(obj);
170
			} catch (InstantiationException e) {
171
				// TODO Auto-generated catch block
172
				e.printStackTrace();
173
			} catch (IllegalAccessException e) {
174
				// TODO Auto-generated catch block
175
				e.printStackTrace();
176
			} catch (ClassCastException e) {
177
				// TODO Auto-generated catch block
178
				e.printStackTrace();
179
			}
180
		}
181
	}
182
	
183
	
152 184
	/**
153 185
	 * It is very common to be confused with this method. But
154 186
	 * the one you are looking for is addPreferencePage(IPreference)
155 187
	 */
156 188
	public Component add(Component c) {
157
		throw new Error("Do not use com.iver.cit.gvsig.gui.preferences.DlgPreferences.add(Component) use com.iver.cit.gvsig.gui.preferences.DlgPreferences.addPreferencePage(IPreference) instead");
189
		//throw new Error("Do not use com.iver.cit.gvsig.gui.preferences.DlgPreferences.add(Component) use com.iver.cit.gvsig.gui.preferences.DlgPreferences.addPreferencePage(IPreference) instead");
190
		throw new Error("Do not use com.iver.cit.gvsig.gui.preferences.DlgPreferences.add(Component) register an extension point instead");
158 191
	}
159 192

  
160 193
	public Component add(Component c, int i) {
......
214 247
		return jTreePlugins;
215 248
	}
216 249

  
217
	public void addPreferencePage(IPreference page)
250
	private void addPreferencePage(IPreference page)
218 251
	{
219 252
		preferences.put(page.getID(), page);
220 253
		page.initializeValues(); // init values from the last settings
......
333 366
	 *
334 367
	 * @return JButton
335 368
	 */
336

  
337
	/**
338
	 * This method initializes jButtonOK
339
	 *
340
	 * @return JButton
341
	 */
342 369
	private JButton getJButtonRestore() {
343 370
		if (jButtonRestore == null) {
344 371
			jButtonRestore = new JButton();
......
368 395
			jButtonCancel = new JButton();
369 396
			jButtonCancel.setText(PluginServices.getText(this, "cancelar"));
370 397
			jButtonCancel.addActionListener(new java.awt.event.ActionListener() {
371
				public void actionPerformed(java.awt.event.ActionEvent e) {
398
				public void actionPerformed(java.awt.event.ActionEvent e) {					
372 399
					closeView();
373 400
				}
374 401
			});
trunk/frameworks/_fwAndami/src/com/iver/andami/preferences/DlgPreferences.java
46 46
	private static DlgPreferences singletonInstance = null;
47 47

  
48 48
	public static DlgPreferences getInstance() {
49
		/*
49 50
		if (singletonInstance == null)
50 51
			singletonInstance = new DlgPreferences();
51 52
		return singletonInstance;
53
		*/
54
		return new DlgPreferences();
52 55
	}
53 56

  
54 57
	DlgPreferences() {
trunk/frameworks/_fwAndami/src/com/iver/andami/preferences/AbstractPreferencePage.java
44 44
import java.awt.GridBagConstraints;
45 45
import java.awt.GridBagLayout;
46 46
import java.awt.Insets;
47
import java.util.Map;
47 48

  
48 49
import javax.swing.JComponent;
49 50
import javax.swing.JLabel;
50 51
import javax.swing.JPanel;
51 52
import javax.swing.border.EmptyBorder;
53

  
54
import com.iver.utiles.extensionPoints.IExtensionBuilder;
52 55
/**
53 56
 * The abstract class that any preference page should extend.
54 57
 * 
55 58
 * @author jaume dominguez faus - jaume.dominguez
56 59
 *
57 60
 */
58
public abstract class AbstractPreferencePage extends JPanel implements IPreference{
61
public abstract class AbstractPreferencePage extends JPanel implements IPreference, IExtensionBuilder{
59 62

  
60 63
	private GridBagLayout gridBag;
61 64
	
......
259 262
	{
260 263
		return title;
261 264
	}
265
	
266
	public Object create() {		
267
		return this;
268
	}
269

  
270
	public Object create(Object[] args) {
271
		return this;
272
	}
273

  
274
	public Object create(Map args) {
275
		return this;
276
	}
277

  
278

  
262 279
}

Also available in: Unified diff