Split left panel into 4 views.
authorp.ciardelli <p.ciardelli@localhost>
Wed, 4 Jun 2008 11:32:53 +0000 (11:32 +0000)
committerp.ciardelli <p.ciardelli@localhost>
Wed, 4 Jun 2008 11:32:53 +0000 (11:32 +0000)
.gitattributes
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/FreetextPropertiesPerspective.java
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ITaxEditorConstants.java
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/TaxEditorPlugin.java
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/FavoritesView.java [new file with mode: 0644]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/RecentNamesView.java [new file with mode: 0644]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/SearchView.java [new file with mode: 0644]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeView.java [new file with mode: 0644]

index 12ad9414bd14563b78ee4679791f5de8e2d0718d..6f5f3ddbb2257f586463315d2a6684e8624e091c 100644 (file)
@@ -415,6 +415,7 @@ eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/ContextMe
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/EditorDetailsPage.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/EmptyEditorView.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/FavoritesTableViewer.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/FavoritesView.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/IFavoritesDraggable.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/IterableSynonymyList.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/LeftPane.java -text
@@ -424,8 +425,11 @@ eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/NameListV
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/NameViewer.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/PropertySheetViewer.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/RecentNamesTableViewer.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/RecentNamesView.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/SearchView.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/SelectTaxonDialog.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeLabelProvider.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeView.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeViewer.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/UndoView.java -text
 eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/nameviewersupport/AnnotationMarkerAccess.java -text
index 603e3c4c7ed58d490f0e3e3e6a5ba323f6d829a6..b7150798b968274c026f184d04e56bac977c0c26 100644 (file)
@@ -14,7 +14,10 @@ import org.eclipse.ui.IFolderLayout;
 import org.eclipse.ui.IPageLayout;
 import org.eclipse.ui.IPerspectiveFactory;
 
-import eu.etaxonomy.taxeditor.view.NameListView;
+import eu.etaxonomy.taxeditor.view.FavoritesView;
+import eu.etaxonomy.taxeditor.view.RecentNamesView;
+import eu.etaxonomy.taxeditor.view.SearchView;
+import eu.etaxonomy.taxeditor.view.TaxonomicTreeView;
 
 /**
  * @author p.ciardelli
@@ -33,16 +36,28 @@ public class FreetextPropertiesPerspective implements IPerspectiveFactory {
        
        public void createInitialLayout(IPageLayout layout) {
                String editorArea = layout.getEditorArea();
-               layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.30f, editorArea);          
-               layout.getViewLayout(NameListView.ID).setCloseable(false);              
                
                // Note: plug-in org.eclipse.ui.ide necessary for 
                //  IPageLayout.ID_PROBLEM_VIEW ("org.eclipse.ui.views.ProblemView") to run
 //             layout.addView(IPageLayout.ID_PROBLEM_VIEW, IPageLayout.BOTTOM, 0.8f, editorArea);              
                
-               IFolderLayout folderLayout = layout.createFolder("folder", IPageLayout.RIGHT, 0.5f, editorArea);                
-               folderLayout.addView(IPageLayout.ID_PROP_SHEET);
+               IFolderLayout folderLayoutLeft = layout.createFolder("leftfolder", IPageLayout.LEFT, 0.3f, editorArea);
+               folderLayoutLeft.addView(TaxonomicTreeView.ID);
+               folderLayoutLeft.addView(SearchView.ID);
+               
+//             IFolderLayout folderLayoutMiddleLeft = layout.createFolder("middleleftfolder", IPageLayout.BOTTOM, 0.3f, "leftfolder");
+//             folderLayoutMiddleLeft.addView(RecentNamesView.ID);
+               IFolderLayout folderLayoutBottomLeft = layout.createFolder("bottomleftfolder", IPageLayout.BOTTOM, 0.75f, "leftfolder");
+               folderLayoutBottomLeft.addView(RecentNamesView.ID);
+               folderLayoutBottomLeft.addView(FavoritesView.ID);
+               
+               IFolderLayout folderLayoutRight = layout.createFolder("rightfolder", IPageLayout.RIGHT, 0.5f, editorArea);              
+               folderLayoutRight.addView(IPageLayout.ID_PROP_SHEET);
+               
                layout.getViewLayout(IPageLayout.ID_PROP_SHEET).setCloseable(false);
+               layout.getViewLayout(TaxonomicTreeView.ID).setCloseable(false);
+//             layout.getViewLayout(RecentNamesView.ID).setCloseable(false);
+//             layout.getViewLayout(FavoritesView.ID).setCloseable(false);
                
                addFastViews(layout);
                
index b0dd791c98f4395e85a9910ede74ab5c526c44a4..138d99a2f696b7a3122bbdece555628e8c9e60b2 100644 (file)
@@ -55,10 +55,11 @@ public class ITaxEditorConstants {
        /* ***************************************************************************************\r
                FONTS\r
        ************************************************************************************** */       \r
-       public static final String MENU_ITEM_ITALICS = "menu_item_italics";\r
+       public static final String MENU_ITEM_ITALICS_FONT = "menu_item_italics_font";\r
        public static final String ACCEPTED_TAXON_FONT = "accepted_taxon_font";\r
        public static final String SYNONYM_FONT = "synonym_font";\r
        public static final String MISAPPLIEDNAME_FONT = "misappliedname_font";\r
+       public static final String DATASOURCE_FONT = "datasource_font";\r
 \r
        \r
 }\r
index 58d0714ec1c27e4d376578d57f8d896d552dee16..57c04e2a17d04cf481ae38792ace343212026a72 100644 (file)
@@ -309,7 +309,8 @@ public class TaxEditorPlugin extends AbstractUIPlugin {
                if (fontRegistry == null) {\r
                        fontRegistry = new FontRegistry(Display.getCurrent());\r
                        \r
-                       fontRegistry.put(ITaxEditorConstants.MENU_ITEM_ITALICS, new FontData[]{new FontData("Arial", 9, SWT.ITALIC)});\r
+                       fontRegistry.put(ITaxEditorConstants.DATASOURCE_FONT, new FontData[]{new FontData("Arial", 8, SWT.NONE)});\r
+                       fontRegistry.put(ITaxEditorConstants.MENU_ITEM_ITALICS_FONT, new FontData[]{new FontData("Arial", 9, SWT.ITALIC)});\r
                        fontRegistry.put(ITaxEditorConstants.ACCEPTED_TAXON_FONT, new FontData[]{new FontData("Georgia", 12, SWT.NONE)});\r
                        fontRegistry.put(ITaxEditorConstants.SYNONYM_FONT, new FontData[]{new FontData("Georgia", 10, SWT.NONE)});\r
                        fontRegistry.put(ITaxEditorConstants.MISAPPLIEDNAME_FONT, new FontData[]{new FontData("Georgia", 10, SWT.NONE)});\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/FavoritesView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/FavoritesView.java
new file mode 100644 (file)
index 0000000..4a4f0e8
--- /dev/null
@@ -0,0 +1,91 @@
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the favoritesComposite of this package for the full license terms.\r
+ */\r
+\r
+package eu.etaxonomy.taxeditor.view;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.action.IMenuManager;\r
+import org.eclipse.jface.action.IToolBarManager;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.layout.FillLayout;\r
+import org.eclipse.swt.layout.GridData;\r
+import org.eclipse.swt.layout.GridLayout;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Display;\r
+import org.eclipse.swt.widgets.Label;\r
+import org.eclipse.ui.part.ViewPart;\r
+\r
+/**\r
+ * The left navigation pane.\r
+ * \r
+ * @author p.ciardelli\r
+ * @created 27.05.2008\r
+ * @version 1.0\r
+ */\r
+public class FavoritesView extends ViewPart {\r
+       private static final Logger logger = Logger.getLogger(FavoritesView.class);\r
+               \r
+       private Composite favoritesComposite = null;    \r
+       public static final String ID = "eu.etaxonomy.taxeditor.view.favoritesview"; //$NON-NLS-1$\r
+               \r
+       /**\r
+        * Create contents of the view part\r
+        * @param parent\r
+        */\r
+       @Override\r
+       public void createPartControl(Composite parent) {\r
+               \r
+               parent.setLayout(new FillLayout());\r
+//             GridLayout gridLayout = new GridLayout();\r
+//             gridLayout.horizontalSpacing = 0;\r
+//             gridLayout.marginWidth = 0;\r
+//             gridLayout.marginHeight = 0;\r
+//             gridLayout.verticalSpacing = 0; \r
+                               \r
+               favoritesComposite = new Composite(parent, SWT.NONE);\r
+               favoritesComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               favoritesComposite.setLayout(new GridLayout());\r
+\r
+               Label favoritesLabel = new Label(favoritesComposite, SWT.WRAP);\r
+               favoritesLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               favoritesLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
+               favoritesLabel.setText("Drag favorite elements into this area for easy access later.");\r
+               \r
+               new FavoritesTableViewer(favoritesComposite);   \r
+\r
+               createActions();\r
+               initializeToolBar();\r
+               initializeMenu();\r
+       }\r
+       \r
+       private void createActions() {\r
+               // Create the actions\r
+       }\r
+\r
+       /**\r
+        * Initialize the toolbar\r
+        */\r
+       private void initializeToolBar() {\r
+               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
+                               .getToolBarManager();\r
+       }\r
+\r
+       /**\r
+        * Initialize the menu\r
+        */\r
+       private void initializeMenu() {\r
+               IMenuManager menuManager = getViewSite().getActionBars()\r
+                               .getMenuManager();\r
+       }\r
+\r
+       @Override\r
+       public void setFocus() {\r
+               // Set the focus\r
+       }\r
+}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/RecentNamesView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/RecentNamesView.java
new file mode 100644 (file)
index 0000000..874d7e9
--- /dev/null
@@ -0,0 +1,84 @@
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the recentNamesComposite of this package for the full license terms.\r
+ */\r
+\r
+package eu.etaxonomy.taxeditor.view;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.action.IMenuManager;\r
+import org.eclipse.jface.action.IToolBarManager;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.layout.FillLayout;\r
+import org.eclipse.swt.layout.GridLayout;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Display;\r
+import org.eclipse.ui.part.ViewPart;\r
+\r
+/**\r
+ * The left navigation pane.\r
+ * \r
+ * @author p.ciardelli\r
+ * @created 27.05.2008\r
+ * @version 1.0\r
+ */\r
+public class RecentNamesView extends ViewPart {\r
+       private static final Logger logger = Logger.getLogger(RecentNamesView.class);\r
+       \r
+       private Composite recentNamesComposite = null;\r
+       public static final String ID = "eu.etaxonomy.taxeditor.view.recentnamesview"; //$NON-NLS-1$\r
+       \r
+       /**\r
+        * Create contents of the view part\r
+        * @param parent\r
+        */\r
+       @Override\r
+       public void createPartControl(Composite parent) {\r
+               \r
+               parent.setLayout(new FillLayout());\r
+               GridLayout gridLayout = new GridLayout();\r
+               gridLayout.horizontalSpacing = 0;\r
+               gridLayout.marginWidth = 0;\r
+               gridLayout.marginHeight = 0;\r
+               gridLayout.verticalSpacing = 0; \r
+                               \r
+               recentNamesComposite = new Composite(parent, SWT.NONE);\r
+               recentNamesComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               recentNamesComposite.setLayout(new FillLayout());\r
+\r
+               new RecentNamesTableViewer(recentNamesComposite);\r
+\r
+               createActions();\r
+               initializeToolBar();\r
+               initializeMenu();\r
+       }\r
+       \r
+       private void createActions() {\r
+               // Create the actions\r
+       }\r
+\r
+       /**\r
+        * Initialize the toolbar\r
+        */\r
+       private void initializeToolBar() {\r
+               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
+                               .getToolBarManager();\r
+       }\r
+\r
+       /**\r
+        * Initialize the menu\r
+        */\r
+       private void initializeMenu() {\r
+               IMenuManager menuManager = getViewSite().getActionBars()\r
+                               .getMenuManager();\r
+       }\r
+\r
+       @Override\r
+       public void setFocus() {\r
+               // Set the focus\r
+       }       \r
+}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/SearchView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/SearchView.java
new file mode 100644 (file)
index 0000000..b5ed7f5
--- /dev/null
@@ -0,0 +1,113 @@
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the top of this package for the full license terms.\r
+ */\r
+\r
+package eu.etaxonomy.taxeditor.view;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.action.IMenuManager;\r
+import org.eclipse.jface.action.IToolBarManager;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.events.FocusEvent;\r
+import org.eclipse.swt.events.FocusListener;\r
+import org.eclipse.swt.layout.FillLayout;\r
+import org.eclipse.swt.layout.GridData;\r
+import org.eclipse.swt.layout.GridLayout;\r
+import org.eclipse.swt.widgets.Button;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Display;\r
+import org.eclipse.swt.widgets.Text;\r
+import org.eclipse.ui.part.ViewPart;\r
+\r
+import com.swtdesigner.SWTResourceManager;\r
+\r
+/**\r
+ * The left navigation pane.\r
+ * \r
+ * @author p.ciardelli\r
+ * @created 27.05.2008\r
+ * @version 1.0\r
+ */\r
+public class SearchView extends ViewPart {\r
+       private static final Logger logger = Logger.getLogger(SearchView.class);\r
+       \r
+       private Text searchText;\r
+       private Composite searchComposite = null;\r
+       public static final String ID = "eu.etaxonomy.taxeditor.view.searchview"; //$NON-NLS-1$\r
+       \r
+       /**\r
+        * Create contents of the view part\r
+        * @param parent\r
+        */\r
+       @Override\r
+       public void createPartControl(Composite parent) {\r
+               \r
+               parent.setLayout(new FillLayout());\r
+\r
+               searchComposite = new Composite(parent, SWT.NONE);\r
+               searchComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               final GridLayout gridLayout = new GridLayout();\r
+               gridLayout.numColumns = 2;\r
+               searchComposite.setLayout(gridLayout);\r
+               \r
+               searchText = new Text(searchComposite, SWT.BORDER);\r
+               searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
+               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
+               searchText.setText("Use \"*\" for wildcard searching");\r
+               final GridData gd_useForText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
+               searchText.setLayoutData(gd_useForText);\r
+               searchText.addFocusListener(new FocusListener() {\r
+\r
+                       public void focusGained(FocusEvent e) {\r
+                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
+                               searchText.setText("");\r
+                       }\r
+\r
+                       public void focusLost(FocusEvent e) {\r
+                               if (searchText.getText() == "") {\r
+                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
+                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
+                               }\r
+                               \r
+                       }\r
+                       \r
+               });\r
+\r
+               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
+               searchButton.setText("Search");\r
+\r
+               createActions();\r
+               initializeToolBar();\r
+               initializeMenu();\r
+       }\r
+       \r
+       private void createActions() {\r
+               // Create the actions\r
+       }\r
+\r
+       /**\r
+        * Initialize the toolbar\r
+        */\r
+       private void initializeToolBar() {\r
+               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
+                               .getToolBarManager();\r
+       }\r
+\r
+       /**\r
+        * Initialize the menu\r
+        */\r
+       private void initializeMenu() {\r
+               IMenuManager menuManager = getViewSite().getActionBars()\r
+                               .getMenuManager();\r
+       }\r
+\r
+       @Override\r
+       public void setFocus() {\r
+               // Set the focus\r
+       }       \r
+}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/view/TaxonomicTreeView.java
new file mode 100644 (file)
index 0000000..fbf5aed
--- /dev/null
@@ -0,0 +1,161 @@
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the top of this package for the full license terms.\r
+ */\r
+\r
+package eu.etaxonomy.taxeditor.view;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.action.IMenuManager;\r
+import org.eclipse.jface.action.IToolBarManager;\r
+import org.eclipse.jface.viewers.TreeViewer;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.layout.FillLayout;\r
+import org.eclipse.swt.layout.GridData;\r
+import org.eclipse.swt.layout.GridLayout;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Display;\r
+import org.eclipse.swt.widgets.Label;\r
+import org.eclipse.swt.widgets.Menu;\r
+import org.eclipse.swt.widgets.MenuItem;\r
+import org.eclipse.ui.part.ViewPart;\r
+\r
+import com.swtdesigner.ResourceManager;\r
+import com.swtdesigner.SWTResourceManager;\r
+\r
+import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
+import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
+\r
+/**\r
+ * The left navigation pane.\r
+ * \r
+ * @author p.ciardelli\r
+ * @created 27.05.2008\r
+ * @version 1.0\r
+ */\r
+public class TaxonomicTreeView extends ViewPart {\r
+       private static final Logger logger = Logger.getLogger(TaxonomicTreeView.class);\r
+       \r
+       private Composite dbComposite;\r
+       private Composite taxTreeComposite = null;\r
+       private Composite top = null;\r
+       public static final String ID = "eu.etaxonomy.taxeditor.view.taxonomictreeview"; //$NON-NLS-1$\r
+       \r
+       private TreeViewer treeViewer;\r
+       \r
+       /**\r
+        * Create contents of the view part\r
+        * @param parent\r
+        */\r
+       @Override\r
+       public void createPartControl(Composite parent) {\r
+               \r
+               parent.setLayout(new FillLayout());\r
+               GridLayout gridLayout = new GridLayout();\r
+               gridLayout.horizontalSpacing = 0;\r
+               gridLayout.marginWidth = 0;\r
+               gridLayout.marginHeight = 0;\r
+               gridLayout.verticalSpacing = 0; \r
+                               \r
+               top = new Composite(parent, SWT.NONE);\r
+               top.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               top.setLayout(gridLayout);\r
+\r
+               dbComposite = new Composite(top, SWT.NONE);\r
+               dbComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               final GridLayout gridLayout_1 = new GridLayout();\r
+               gridLayout_1.numColumns = 2;\r
+               dbComposite.setLayout(gridLayout_1);\r
+               final Label lblDataSourceTitle = new Label(dbComposite, SWT.NONE);\r
+               lblDataSourceTitle.setFont(SWTResourceManager.getFont("Arial", 14, SWT.BOLD));\r
+               lblDataSourceTitle.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               lblDataSourceTitle.setAlignment(SWT.CENTER);\r
+               lblDataSourceTitle.setText(" Palmweb");         \r
+               \r
+               final Label lblDbImg = new Label(dbComposite, SWT.NONE);\r
+               lblDbImg.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
+               lblDbImg.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               lblDbImg.setImage(ResourceManager.getPluginImage(TaxEditorPlugin.getDefault(), "icons/db.gif"));\r
+               lblDbImg.setImage(TaxEditorPlugin.getDefault().getImageRegistry().get(ITaxEditorConstants.DB_ICON));\r
+\r
+               final Menu menu = new Menu(lblDbImg);\r
+               lblDbImg.setMenu(menu);\r
+\r
+               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
+               checkboxMenuItem.setSelection(true);\r
+               checkboxMenuItem.setText("Euro+Med (mssql://128.14.101.12:80/europlusmed)");\r
+\r
+               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
+               checkboxMenuItem_1.setText("WP6 (mssql://128.14.101.13:80/wp6)");\r
+\r
+               final MenuItem palmWebora1922299480pwMenuItem = new MenuItem(menu, SWT.NONE);\r
+               palmWebora1922299480pwMenuItem.setText("Palm Web (ora://192.22.99.4:80/pw)");\r
+\r
+               new MenuItem(menu, SWT.SEPARATOR);\r
+\r
+               final MenuItem newDataSourceMenuItem = new MenuItem(menu, SWT.NONE);\r
+               newDataSourceMenuItem.setText("New data source ...");\r
+               \r
+               final Label lblDataSource = new Label(dbComposite, SWT.NONE);\r
+               final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1);\r
+               gd_lblDataSource.heightHint = 16;\r
+               lblDataSource.setLayoutData(gd_lblDataSource);\r
+               lblDataSource.setFont(SWTResourceManager.getFont("Arial", 8, SWT.NONE));\r
+               lblDataSource.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               lblDataSource.setAlignment(SWT.CENTER);\r
+               lblDataSource.setText("  mssql://128.14.101.12:80/palmweb");\r
+\r
+               taxTreeComposite = new Composite(top, SWT.NONE);\r
+               taxTreeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
+               taxTreeComposite.setLayout(new FillLayout());\r
+               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+               treeViewer = new TaxonomicTreeViewer(taxTreeComposite);\r
+               \r
+               // TODO move these into this class\r
+               ((TaxonomicTreeViewer) treeViewer).createDoubleClickListener();\r
+               ((TaxonomicTreeViewer) treeViewer).createRightClickListener();\r
+               ((TaxonomicTreeViewer) treeViewer).createQuickAdd();\r
+               ((TaxonomicTreeViewer) treeViewer).createDragAndDrop();\r
+               \r
+               createActions();\r
+               initializeToolBar();\r
+               initializeMenu();\r
+       }\r
+                       \r
+       private void createActions() {\r
+               // Create the actions\r
+       }\r
+\r
+       /**\r
+        * Initialize the toolbar\r
+        */\r
+       private void initializeToolBar() {\r
+               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
+                               .getToolBarManager();\r
+       }\r
+\r
+       /**\r
+        * Initialize the menu\r
+        */\r
+       private void initializeMenu() {\r
+               IMenuManager menuManager = getViewSite().getActionBars()\r
+                               .getMenuManager();\r
+       }\r
+\r
+       @Override\r
+       public void setFocus() {\r
+               // Set the focus\r
+       }\r
+\r
+       /**\r
+        * Expose TreeViewer, i.e. to manipulate tree nodes\r
+        * @return\r
+        */\r
+       public TreeViewer getTreeViewer() {\r
+               return treeViewer;\r
+       }               \r
+}\r