01: /* uDig - User Friendly Desktop Internet GIS client
02: * http://udig.refractions.net
03: * (C) 2004, Refractions Research Inc.
04: *
05: * This library is free software; you can redistribute it and/or
06: * modify it under the terms of the GNU Lesser General Public
07: * License as published by the Free Software Foundation;
08: * version 2.1 of the License.
09: *
10: * This library is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13: * Lesser General Public License for more details.
14: */
15: package net.refractions.udig.ui;
16:
17: import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
18:
19: /**
20: * The WorkbenchConfiguration configures the Eclipse WorkbenchWindow.
21: * This is called when the workbench is starting up and gives the client
22: * application a chance to customize the properties of the WorkbenchWindow.
23: *
24: * The implementation of this interface that is called by the framework
25: * is specified by the extension in the preferences under the key
26: * 'net.refractions.udig.ui/workbenchConfiguration'. You can place this in your
27: * product's plugin_customization.ini.
28: *
29: * Example:
30: * <pre>
31: * net.refractions.udig.ui/workbenchConfiguration=net.refractions.udig.internal.ui.uDigWorkbenchConfiguration
32: * </pre>
33: *
34: * Example class implementation:
35: * <pre>
36: * public void configureWorkbench( IWorkbenchWindowConfigurer configurer ) {
37: * configurer.setShowProgressIndicator(true);
38: * configurer.setInitialSize(new Point(800, 600));
39: *
40: * configurer.setShowPerspectiveBar( true );
41: * configurer.setShowCoolBar(true);
42: * configurer.setShowStatusLine(true);
43: * configurer.setShowFastViewBars(true);
44: * }
45: * </pre>
46: *
47: * @author rgould
48: * @since 1.1.0
49: */
50: public interface WorkbenchConfiguration {
51:
52: public final String XPID = "net.refractions.udig.ui.workbenchConfigurations"; //$NON-NLS-1$
53: /**
54: * Points to id field of extension point attribute
55: */
56: public final String ATTR_ID = "id"; //$NON-NLS-1$
57:
58: /**
59: * Points to class field of extension point attribute
60: */
61: public final String ATTR_CLASS = "class"; //$NON-NLS-1$
62:
63: /**
64: * Called by the framework when the WorkbenchWindow is being initialized.
65: * Implementing code can set the various properties here.
66: *
67: * @param configurer IWorkbenchWindowConfigurer used for configuring the workbench window
68: */
69: public void configureWorkbench(IWorkbenchWindowConfigurer configurer);
70: }
|