Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.swing / org.gvsig.tools.swing.impl / src / main / java / org / gvsig / tools / swing / impl / ToolsSwingDefaultImplLibrary.java @ 1886

History | View | Annotate | Download (5.18 KB)

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

    
25
import java.net.URL;
26
import org.gvsig.tools.library.AbstractLibrary;
27
import org.gvsig.tools.library.Library;
28
import org.gvsig.tools.library.LibraryException;
29
import org.gvsig.tools.swing.api.ToolsSwingLibrary;
30
import org.gvsig.tools.swing.api.ToolsSwingLocator;
31
import org.gvsig.tools.swing.icontheme.IconTheme;
32
import org.gvsig.tools.swing.impl.coerce.CoerceToColor;
33
import org.gvsig.tools.swing.impl.component.DefaultComponentSwingManager;
34
import org.gvsig.tools.swing.impl.dialogreminder.DefaultDialogReminderManager;
35
import org.gvsig.tools.swing.impl.icontheme.DefaultIconThemeManager;
36
import org.gvsig.tools.swing.impl.pickercontroller.ColorPickerControllerImpl;
37
import org.gvsig.tools.swing.impl.pickercontroller.DatePickerControllerImpl;
38
import org.gvsig.tools.swing.impl.pickercontroller.FilePickerControllerImpl;
39
import org.gvsig.tools.swing.impl.pickercontroller.FolderPickerControllerImpl;
40
import org.gvsig.tools.swing.impl.script.DefaultScriptSwingManager;
41
import org.gvsig.tools.swing.impl.task.DefaultTaskStatusSwingManager;
42
import org.gvsig.tools.swing.impl.threadsafedialogs.DefaultThreadSafeDialogsManager;
43
import org.gvsig.tools.swing.impl.usability.DefaultUsabilitySwingManager;
44
import org.gvsig.tools.swing.impl.windowmanager.DefaultWindowManager;
45

    
46
/**
47
 * {@link Library} for the default tools swing implementation.
48
 *
49
 * @author gvSIG team
50
 */
51
public class ToolsSwingDefaultImplLibrary extends AbstractLibrary {
52

    
53
    @Override
54
    public void doRegistration() {
55
        super.doRegistration();
56
        registerAsImplementationOf(ToolsSwingLibrary.class);
57
    }
58

    
59
    @Override
60
    protected void doInitialize() throws LibraryException {
61
        ToolsSwingLocator.registerToolsSwingManager(DefaultToolsSwingManager.class);
62
        ToolsSwingLocator.registerUsabilitySwingManager(DefaultUsabilitySwingManager.class);
63
        ToolsSwingLocator.registerTaskStatusSwingManager(DefaultTaskStatusSwingManager.class);
64
        ToolsSwingLocator.registerComponentSwingManager(DefaultComponentSwingManager.class);
65
        ToolsSwingLocator.registerDefaultWindowManager(DefaultWindowManager.class);
66
        ToolsSwingLocator.registerDefaultIconThemeManager(DefaultIconThemeManager.class);
67
        ToolsSwingLocator.registerDefaultThreadSafeDialogsManager(DefaultThreadSafeDialogsManager.class);
68
        ToolsSwingLocator.registerDefaultDialogReminderManager(DefaultDialogReminderManager.class);
69
        
70
        CoerceToColor.selfRegister();
71
        
72
        ColorPickerControllerImpl.selfRegister();
73
        DatePickerControllerImpl.selfRegister();
74
        FilePickerControllerImpl.selfRegister();
75
        FolderPickerControllerImpl.selfRegister();
76
        
77
        DefaultScriptSwingManager.selfRegister();
78
        
79
        registerDataTypeIcons();
80
    }
81

    
82
    @Override
83
    protected void doPostInitialize() throws LibraryException {
84

    
85
    }
86

    
87
    private void registerDataTypeIcons() {
88
        String[][] iconNames = new String[][] {
89
            new String[] { "DataTypes", "datatype-any" },
90
            new String[] { "DataTypes", "datatype-binary" },
91
            new String[] { "DataTypes", "datatype-boolean" },
92
            new String[] { "DataTypes", "datatype-bytearray" },
93
            new String[] { "DataTypes", "datatype-date" },
94
            new String[] { "DataTypes", "datatype-double" },
95
            new String[] { "DataTypes", "datatype-float" },
96
            new String[] { "DataTypes", "datatype-image" },
97
            new String[] { "DataTypes", "datatype-integer" },
98
            new String[] { "DataTypes", "datatype-long" },
99
            new String[] { "DataTypes", "datatype-object" },
100
            new String[] { "DataTypes", "datatype-string" },
101
            new String[] { "DataTypes", "datatype-text" },
102
            new String[] { "DataTypes", "datatype-time" },
103
            new String[] { "DataTypes", "datatype-timestamp" },
104
            new String[] { "DataTypes", "datatype-timestamp" },
105
            new String[] { "DataTypes", "datatype-timestamp" }
106
        };
107
        IconTheme theme = ToolsSwingLocator.getIconThemeManager().getCurrent();
108
        for (String[] icon : iconNames) {
109
            URL url = ToolsSwingDefaultImplLibrary.class.getResource("datatypes/images/"+icon[1]+".png");
110
            theme.registerDefault("DataTypes", icon[0], icon[1], null, url);
111
        }
112
    }
113
}