import org.eclipse.ui.application.ActionBarAdvisor;
import org.eclipse.ui.application.IActionBarConfigurer;
+import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;
+
/**
* An action bar advisor is responsible for creating, adding, and disposing of
* the actions added to a workbench window. Each window will be populated with
// in the fill methods. This ensures that the actions aren't recreated
// when fillActionBars is called with FILL_PROXY.
private IWorkbenchAction exitAction;
+ private OpenNameEditorAction newNameAction;
public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
super(configurer);
exitAction = ActionFactory.QUIT.create(window);
register(exitAction);
+
+ newNameAction = new OpenNameEditorAction();
+ register(newNameAction);
}
protected void fillMenuBar(IMenuManager menuBar) {
MenuManager fileMenu = new MenuManager("&File",
IWorkbenchActionConstants.M_FILE);
menuBar.add(fileMenu);
+ fileMenu.add(newNameAction);
fileMenu.add(exitAction);
}
public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
- private static final String PERSPECTIVE_ID = "eu.etaxonomy.mvctest.perspective";
+ private static final String PERSPECTIVE_ID = "eu.etaxonomy.taxeditor.designproposal1.perspective";
public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
IWorkbenchWindowConfigurer configurer) {
import org.eclipse.ui.IFolderLayout;
import org.eclipse.ui.IPageLayout;
import org.eclipse.ui.IPerspectiveFactory;
+import org.eclipse.ui.IPlaceholderFolderLayout;
import eu.etaxonomy.taxeditor.designproposal1.view.NameListView;
public class Perspective implements IPerspectiveFactory {
- public static final String ID = "eu.etaxonomy.mvctest.perspective";
+ public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.perspective";
public void createInitialLayout(IPageLayout layout) {
String editorArea = layout.getEditorArea();
- IFolderLayout navigatorFolder = layout.createFolder("Navigator",
- IPageLayout.LEFT, 0.25f, editorArea);
- navigatorFolder.addView(NameListView.ID);
+ layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.30f, editorArea);
// navigatorFolder.addView(LastNameView.ID);
layout.getViewLayout(NameListView.ID).setCloseable(false);
// navigatorFolder.addView(LastNameView.ID);
public CreateNameAction(String genus, String spEpithet) {\r
\r
INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
- this.tn = ns.getNewTaxonName(null);\r
+ this.tn = ns.createTaxonName(null);\r
tn.setGenus(genus);\r
tn.setSpecificEpithet(spEpithet);\r
}\r
import org.eclipse.ui.IEditorInput;\r
import org.eclipse.ui.PartInitException;\r
\r
+import eu.etaxonomy.cdm.api.service.INameService;\r
import eu.etaxonomy.cdm.model.name.TaxonName;\r
import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
import eu.etaxonomy.taxeditor.designproposal1.model.NameEditorInput;\r
public class OpenNameEditorAction extends Action {\r
\r
private TaxonName taxonname;\r
+ public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.controller.opennameeditoraction"; //$NON-NLS-1$\r
\r
public OpenNameEditorAction(TaxonName taxonname) {\r
this.taxonname = taxonname;\r
}\r
+\r
+ public OpenNameEditorAction() {\r
+ INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
+ this.taxonname = ns.createTaxonName(null);\r
+ setId(ID);\r
+ setText("New name");\r
+ }\r
\r
public void run() {\r
IEditorInput input = new NameEditorInput(taxonname);\r
public class CreateNameView extends ViewPart {
private Text txtSpEpithet;
private Text txtGenus;
- public static final String ID = "eu.etaxonomy.mvctest.view";
+ public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.createnameview";
/**
* This is a callback that will allow us to create the viewer and initialize
\r
public class LastNameView extends ViewPart implements PropertyChangeListener {\r
\r
- public static final String ID = "eu.etaxonomy.mvctest.view.LastNameView"; //$NON-NLS-1$\r
+ public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.LastNameView"; //$NON-NLS-1$\r
private Label lblName;\r
/**\r
* Create contents of the view part\r
*/\r
public ICompletionProposal[] computeCompletionProposals(\r
ITextViewer viewer, int documentOffset) {\r
+ String context = "Describe formatting / parsing of this rel. type.";\r
// Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
ICompletionProposal[] result =\r
new ICompletionProposal[myProposals.length];\r
new ContextInformation(null, myProposals[i]+" Style");\r
result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
- myProposals[i], contextInfo, myContexts[i]);\r
+ myProposals[i], contextInfo, context);\r
\r
}\r
return result;\r
\r
public class NameEditorView extends EditorPart implements ICdmEventListener {\r
\r
+ private Table table_1;\r
+ private Text text_3;\r
private Text hieraciumFuscoatrumSubspText;\r
private Text hieraciumAurantiacumSubspText;\r
private Text text_1;\r
- private Text text;\r
- private Table table;\r
private StyledText styledText;\r
private TaxonName taxonname;\r
\r
// \r
// }\r
// });\r
-\r
- final FillLayout fillLayout = new FillLayout();\r
- fillLayout.type = SWT.VERTICAL;\r
- parent.setLayout(fillLayout);\r
-// Document doc = new Document(taxonname.getName());\r
-// Document doc = new Document("Hieracium chaetodermum (Pohle & Zahn) Üksip in Komarov, Fl. SSSR 30: 661. 1960");\r
+ parent.setLayout(new GridLayout());\r
Document doc = new Document("");\r
- \r
- final Composite composite = new Composite(parent, SWT.NONE);\r
- composite.setLayout(new GridLayout());\r
\r
- final Label taxonomicallyIncludedInLabel = new Label(composite, SWT.NONE);\r
+ final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
+ taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
taxonomicallyIncludedInLabel.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");\r
\r
- final ToolBar toolBar = new ToolBar(composite, SWT.NONE);\r
+ final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
// toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
\r
final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
\r
final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
- Composite container = new Composite(composite, SWT.NONE);\r
- container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+\r
+ final Composite composite = new Composite(parent, SWT.NONE);\r
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
+ composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ final GridLayout gridLayout_2 = new GridLayout();\r
+ gridLayout_2.horizontalSpacing = 3;\r
+ gridLayout_2.numColumns = 3;\r
+ composite.setLayout(gridLayout_2);\r
+\r
+ text_3 = new Text(composite, SWT.WRAP);\r
+ text_3.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");\r
+ text_3.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
+ text_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
+\r
+ table_1 = new Table(composite, SWT.BORDER);\r
+ table_1.setLinesVisible(true);\r
+ table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 5));\r
+\r
+ final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
+ newColumnTableColumn.setWidth(100);\r
+ newColumnTableColumn.setText("New column");\r
+\r
+ final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
+ newColumnTableColumn_1.setWidth(100);\r
+ newColumnTableColumn_1.setText("New column");\r
+\r
+ final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
+ newItemTableItem.setText(0, "Rank");\r
+ newItemTableItem.setText(1, "species");\r
+ newItemTableItem.setText("Rank");\r
+ \r
+ final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
+ newItemTableItem_1.setText(1, "Pilosella");\r
+ newItemTableItem_1.setText(0, "Genus");\r
+\r
+ final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
+ newItemTableItem_2.setText(1, "fuscoatra");\r
+ newItemTableItem_2.setText(0, "Species epithet");\r
+\r
+ final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
+ newItemTableItem_3.setText(1, "Nägeli & Peter");\r
+ newItemTableItem_3.setText(0, "Author team");\r
+\r
+ final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
+ newItemTableItem_4.setText("...");\r
+// newItemTableItem_3.setText("Author team");\r
+// newItemTableItem_2.setText("Species epithet");\r
+// newItemTableItem_1.setText("Genus");\r
+\r
+ final Label labelWithMenu = new Label(composite, SWT.NONE);\r
+ labelWithMenu.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ labelWithMenu.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
+ final GridData gd_labelWithMenu = new GridData(SWT.LEFT, SWT.TOP, false, false);\r
+ labelWithMenu.setLayoutData(gd_labelWithMenu);\r
+ \r
+ text_1 = new Text(composite, SWT.WRAP);\r
+ final GridData gd_text_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
+ gd_text_1.widthHint = 444;\r
+ text_1.setLayoutData(gd_text_1);\r
+ text_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
+ text_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
+ text_1.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");\r
+\r
+ final Label label_1 = new Label(composite, SWT.NONE);\r
+ label_1.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
+ label_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
+ label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+\r
+ hieraciumAurantiacumSubspText = new Text(composite, SWT.WRAP);\r
+ final GridData gd_hieraciumAurantiacumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
+ gd_hieraciumAurantiacumSubspText.widthHint = 441;\r
+ hieraciumAurantiacumSubspText.setLayoutData(gd_hieraciumAurantiacumSubspText);\r
+ hieraciumAurantiacumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
+ hieraciumAurantiacumSubspText.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");\r
+\r
+ final Label label_2 = new Label(composite, SWT.NONE);\r
+ label_2.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
+ label_2.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ label_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
+\r
+ hieraciumFuscoatrumSubspText = new Text(composite, SWT.WRAP);\r
+ final GridData gd_hieraciumFuscoatrumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
+ gd_hieraciumFuscoatrumSubspText.widthHint = 447;\r
+ hieraciumFuscoatrumSubspText.setLayoutData(gd_hieraciumFuscoatrumSubspText);\r
+ hieraciumFuscoatrumSubspText.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
+ hieraciumFuscoatrumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
+\r
+ final Label label_4 = new Label(composite, SWT.NONE);\r
+ label_4.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
+ label_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
+ label_4.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
//container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
- final GridLayout gridLayout = new GridLayout();\r
- gridLayout.numColumns = 2;\r
- container.setLayout(gridLayout);\r
-\r
- final Composite taxonComposite = new Composite(container, SWT.NONE);\r
- taxonComposite.setBackground(SWTResourceManager.getColor(255, 255, 255));\r
- final GridData gd_taxonComposite = new GridData(SWT.LEFT, SWT.TOP, false, false);\r
- gd_taxonComposite.widthHint = 414;\r
- taxonComposite.setLayoutData(gd_taxonComposite);\r
- final GridLayout gridLayout_1 = new GridLayout();\r
- gridLayout_1.numColumns = 2;\r
- taxonComposite.setLayout(gridLayout_1);\r
-\r
- text = new Text(taxonComposite, SWT.WRAP);\r
- text.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
- text.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");\r
- text.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 2, 1));\r
-\r
- final Label label = new Label(taxonComposite, SWT.NONE);\r
- label.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
- label.setLayoutData(new GridData());\r
- label.setBackground(SWTResourceManager.getColor(255, 255, 255));\r
-\r
- final Menu menu1 = new Menu(label);\r
- label.setMenu(menu1);\r
+\r
+ final Menu menu1 = new Menu(labelWithMenu);\r
+ labelWithMenu.setMenu(menu1);\r
\r
final MenuItem deletehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
deletehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
final MenuItem turnhieraciumFuscoatrumMenuItem_8 = new MenuItem(menu1, SWT.NONE);\r
turnhieraciumFuscoatrumMenuItem_8.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
turnhieraciumFuscoatrumMenuItem_8.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");\r
- \r
- text_1 = new Text(taxonComposite, SWT.WRAP);\r
- text_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
- text_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
- text_1.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");\r
- text_1.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label label_1 = new Label(taxonComposite, SWT.NONE);\r
- label_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
- label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
- hieraciumAurantiacumSubspText = new Text(taxonComposite, SWT.WRAP);\r
- hieraciumAurantiacumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
- hieraciumAurantiacumSubspText.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");\r
- final GridData gd_hieraciumAurantiacumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
- gd_hieraciumAurantiacumSubspText.widthHint = 435;\r
- hieraciumAurantiacumSubspText.setLayoutData(gd_hieraciumAurantiacumSubspText);\r
-\r
- final Label label_2 = new Label(taxonComposite, SWT.NONE);\r
- label_2.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
- label_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-\r
- hieraciumFuscoatrumSubspText = new Text(taxonComposite, SWT.WRAP);\r
- hieraciumFuscoatrumSubspText.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
- hieraciumFuscoatrumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
- final GridData gd_hieraciumFuscoatrumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
- gd_hieraciumFuscoatrumSubspText.heightHint = 39;\r
- hieraciumFuscoatrumSubspText.setLayoutData(gd_hieraciumFuscoatrumSubspText);\r
-\r
- final Label label_3 = new Label(taxonComposite, SWT.NONE);\r
- label_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
- label_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
\r
- SourceViewer sourceviewer = new SourceViewer(taxonComposite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
+ SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
sourceviewer.setAnnotationHover(null);\r
styledText = sourceviewer.getTextWidget();\r
- final GridData gd_styledText_1 = new GridData(SWT.FILL, SWT.TOP, \r
- true, true);\r
- gd_styledText_1.heightHint = 21;\r
- gd_styledText_1.widthHint = 353;\r
- styledText.setLayoutData(gd_styledText_1);\r
+ final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
+ gd_styledText.heightHint = 41;\r
+ gd_styledText.widthHint = 450;\r
+ styledText.setLayoutData(gd_styledText);\r
sourceviewer.setDocument(doc);\r
sourceviewer.configure(new MySourceViewerConfig());\r
sourceviewer.setTabsToSpacesConverter(null);\r
-\r
- table = new Table(container, SWT.MULTI | SWT.BORDER);\r
- table.setLinesVisible(true);\r
- final GridData gd_table = new GridData(SWT.RIGHT, SWT.FILL, true, true);\r
- gd_table.heightHint = 291;\r
- table.setLayoutData(gd_table);\r
-\r
- final TableColumn newColumnTableColumn = new TableColumn(table, SWT.NONE);\r
- newColumnTableColumn.setWidth(100);\r
- newColumnTableColumn.setText("New column");\r
-\r
- final TableColumn newColumnTableColumn_1 = new TableColumn(table, SWT.NONE);\r
- newColumnTableColumn_1.setWidth(100);\r
- newColumnTableColumn_1.setText("New column");\r
-\r
- final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
- newItemTableItem.setText(0, "Rank");\r
- newItemTableItem.setText(1, "species");\r
- newItemTableItem.setText("Rank");\r
- \r
- final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
- newItemTableItem_1.setText(1, "Pilosella");\r
- newItemTableItem_1.setText(0, "Genus");\r
-// newItemTableItem_1.setText("Genus");\r
-\r
- final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
- newItemTableItem_2.setText(1, "fuscoatra");\r
- newItemTableItem_2.setText(0, "Species epithet");\r
-// newItemTableItem_2.setText("Species epithet");\r
-\r
- final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
- newItemTableItem_3.setText(1, "Nägeli & Peter");\r
- newItemTableItem_3.setText(0, "Author team");\r
-// newItemTableItem_3.setText("Author team");\r
-\r
- final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
- newItemTableItem_4.setText("...");\r
\r
// final Menu menu = new Menu(toolBar);\r
// addDropDown(newItemToolItem, menu);\r
import org.eclipse.jface.viewers.LabelProvider;\r
import org.eclipse.jface.viewers.StructuredSelection;\r
import org.eclipse.jface.viewers.TableViewer;\r
+import org.eclipse.jface.viewers.TreeViewer;\r
import org.eclipse.jface.viewers.Viewer;\r
import org.eclipse.jface.viewers.ViewerLabel;\r
import org.eclipse.swt.SWT;\r
import org.eclipse.swt.custom.StackLayout;\r
+import org.eclipse.swt.events.FocusAdapter;\r
+import org.eclipse.swt.events.FocusEvent;\r
+import org.eclipse.swt.events.FocusListener;\r
+import org.eclipse.swt.events.SelectionEvent;\r
+import org.eclipse.swt.events.SelectionListener;\r
import org.eclipse.swt.graphics.Image;\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.layout.RowData;\r
+import org.eclipse.swt.widgets.Button;\r
import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Control;\r
import org.eclipse.swt.widgets.Display;\r
import org.eclipse.swt.widgets.ExpandBar;\r
import org.eclipse.swt.widgets.ExpandItem;\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.swt.widgets.Table;\r
+import org.eclipse.swt.widgets.TableItem;\r
+import org.eclipse.swt.widgets.Text;\r
+import org.eclipse.swt.widgets.Tree;\r
+import org.eclipse.swt.widgets.TreeItem;\r
import org.eclipse.ui.part.ViewPart;\r
\r
import com.swtdesigner.ResourceManager;\r
import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
\r
public class NameListView extends ViewPart implements ICdmEventListener {\r
- private Composite nameListComposite = null;\r
+ private Text searchText;\r
+ private Table table;\r
+ private Composite composite;\r
+ private Tree tree;\r
+ private Composite taxTreeComposite = null;\r
private Composite recentNamesComposite = null;\r
private Composite searchComposite = null; \r
private Composite top = null;\r
private ExpandBar expandBar = null;\r
- private TableViewer viewer;\r
- private ExpandItem nameListExpandItem;\r
+ private ExpandItem taxTreeExpandItem;\r
private ExpandItem recentNamesExpandItem;\r
private ExpandItem searchExpandItem; \r
public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.namelistview"; //$NON-NLS-1$\r
\r
- class ViewContentProvider implements IStructuredContentProvider {\r
- \r
- public Object[] getElements(Object inputElement) {\r
- INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
- return ns.getAllNames().toArray();\r
- }\r
-\r
- public void dispose() {\r
- // TODO Auto-generated method stub\r
- }\r
-\r
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
- // TODO Auto-generated method stub\r
-// Notifies this content provider that the given viewer's input\r
-// has been switched to a different element.\r
- }\r
- }\r
\r
- class ViewLabelProvider extends LabelProvider implements ITableLabelProvider {\r
-\r
- NameListView nlv;\r
- \r
- public ViewLabelProvider(NameListView view) {\r
- this.nlv = view;\r
- }\r
- \r
- public Image getColumnImage(Object element, int columnIndex) {\r
- // TODO Auto-generated method stub\r
- return null;\r
- }\r
-\r
- public String getColumnText(Object element, int columnIndex) {\r
- ((TaxonName) element).addCdmEventListener(nlv);\r
- return ((TaxonName) element).getName();\r
- } \r
-\r
- public void updateLabel(ViewerLabel label, Object element) {\r
- // TODO Auto-generated method stub\r
- \r
- }\r
- \r
- }\r
\r
/**\r
* Create contents of the view part\r
top = new Composite(parent, SWT.NONE);\r
top.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
\r
- final Composite composite = new Composite(top, SWT.NONE);\r
+ composite = new Composite(top, SWT.NONE);\r
composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
final GridLayout gridLayout_1 = new GridLayout();\r
gridLayout_1.numColumns = 2;\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(Activator.getDefault(), "icons/db.gif"));\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(composite, SWT.NONE);\r
final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1);\r
\r
createExpandBar();\r
top.setLayout(gridLayout);\r
+ top.setTabList(new Control[] {composite, expandBar});\r
}\r
\r
/**\r
}\r
\r
private void createNameListComposite() {\r
- nameListExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
- nameListExpandItem.setText("Name List");\r
- nameListExpandItem.setExpanded(true);\r
-// Image image = FileArrangerImages.getImageRegistry().get(\r
-// IFileArrangerImages.IMG_HOME);\r
-// nameListExpandItem.setImage(image);\r
- \r
- nameListComposite = new Composite(expandBar, SWT.NONE);\r
- GridLayout layout = new GridLayout();\r
- layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 10;\r
- layout.verticalSpacing = 5;\r
- nameListComposite.setLayout(layout);\r
- \r
- viewer = new TableViewer(nameListComposite, SWT.MULTI | SWT.H_SCROLL\r
- | SWT.V_SCROLL);\r
- viewer.setContentProvider(new ViewContentProvider());\r
- viewer.setLabelProvider(new ViewLabelProvider(this));\r
- viewer.setInput(getViewSite());\r
- \r
- final NameListView me = this;\r
- \r
- viewer.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
- public void doubleClick(DoubleClickEvent event) { \r
- TaxonName taxonname = null;\r
- try {\r
- taxonname = (TaxonName) ((StructuredSelection)event.getSelection()).getFirstElement();\r
- }catch (Exception e){\r
- e.printStackTrace();\r
- taxonname = null;\r
- }\r
- taxonname.addCdmEventListener(me);\r
- new OpenNameEditorAction(taxonname).run();\r
- }\r
- }); \r
\r
- nameListExpandItem.setHeight(nameListComposite.computeSize(\r
- SWT.DEFAULT, SWT.DEFAULT).y);\r
- nameListExpandItem.setControl(nameListComposite);\r
+\r
\r
}\r
\r
private void createRecentNamesComposite() {\r
+ taxTreeExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
+ taxTreeExpandItem.setExpanded(true);\r
+ taxTreeExpandItem.setHeight(200);\r
+ taxTreeExpandItem.setText("Taxonomic Tree");\r
+// IFileArrangerImages.IMG_HOME);\r
+// nameListExpandItem.setImage(image);\r
+ \r
+ taxTreeComposite = new Composite(expandBar, SWT.NONE);\r
+ taxTreeComposite.setLayout(new FillLayout());\r
+ taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ \r
+ taxTreeExpandItem.setControl(taxTreeComposite);\r
+\r
+ tree = new Tree(taxTreeComposite, SWT.FULL_SELECTION);\r
+ tree.setItemCount(1);\r
+\r
+ final TreeItem newItemTreeItem = new TreeItem(tree, SWT.NONE);\r
+ newItemTreeItem.setChecked(true);\r
+ newItemTreeItem.setText("Compositae Giseke");\r
+\r
+ final TreeItem newItemTreeItem_1 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_1.setItemCount(1);\r
+ newItemTreeItem_1.setText("Anthemideae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_2 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_2.setItemCount(1);\r
+ newItemTreeItem_2.setText("Arctotideae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_3 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_3.setItemCount(1);\r
+ newItemTreeItem_3.setText("Astereae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_4 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_4.setItemCount(1);\r
+ newItemTreeItem_4.setText("Calenduleae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_5 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_5.setItemCount(1);\r
+ newItemTreeItem_5.setText("Cardueae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_6 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_6.setText("Cichorieae Lam. & DC.");\r
+\r
+ final TreeItem newItemTreeItem_16 = new TreeItem(newItemTreeItem_6, SWT.NONE);\r
+ newItemTreeItem_16.setExpanded(true);\r
+ newItemTreeItem_16.setText("Pilosella Vaill.");\r
+\r
+ final TreeItem newItemTreeItem_17 = new TreeItem(newItemTreeItem_16, SWT.NONE);\r
+ newItemTreeItem_17.setText("Pilosella fuscoatra coll.");\r
+\r
+ final TreeItem newItemTreeItem_18 = new TreeItem(newItemTreeItem_17, SWT.NONE);\r
+ newItemTreeItem_18.setForeground(SWTResourceManager.getColor(128, 0, 0));\r
+ newItemTreeItem_18.setExpanded(true);\r
+ newItemTreeItem_18.setText("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
+\r
+ final TreeItem newItemTreeItem_7 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_7.setItemCount(1);\r
+ newItemTreeItem_7.setText("Eupatorieae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_8 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_8.setItemCount(1);\r
+ newItemTreeItem_8.setText("Gnaphalieae Lecoq & Juillet");\r
+\r
+ final TreeItem newItemTreeItem_9 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_9.setItemCount(1);\r
+ newItemTreeItem_9.setText("Helenieae Lindl.");\r
+\r
+ final TreeItem newItemTreeItem_10 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_10.setItemCount(1);\r
+ newItemTreeItem_10.setText("Heliantheae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_11 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_11.setItemCount(1);\r
+ newItemTreeItem_11.setText("Inuleae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_12 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_12.setItemCount(1);\r
+ newItemTreeItem_12.setText("Mutisieae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_13 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_13.setItemCount(1);\r
+ newItemTreeItem_13.setText("Plucheeae Anderb.");\r
+\r
+ final TreeItem newItemTreeItem_14 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_14.setItemCount(1);\r
+ newItemTreeItem_14.setText("Senecioneae Cass.");\r
+\r
+ final TreeItem newItemTreeItem_15 = new TreeItem(newItemTreeItem, SWT.NONE);\r
+ newItemTreeItem_15.setItemCount(1);\r
+ newItemTreeItem_15.setText("Vernonieae Cass.");\r
+ taxTreeComposite.setTabList(new Control[] {tree});\r
recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\r
+ recentNamesExpandItem.setHeight(130);\r
+ recentNamesExpandItem.setExpanded(true);\r
recentNamesExpandItem.setText("Recently viewed names");\r
recentNamesComposite = new Composite(expandBar, SWT.NONE);\r
- GridLayout layout = new GridLayout();\r
- layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 10;\r
- layout.verticalSpacing = 5;\r
- recentNamesComposite.setLayout(layout);\r
+ final GridLayout gridLayout = new GridLayout();\r
+ recentNamesComposite.setLayout(gridLayout);\r
\r
- recentNamesExpandItem.setHeight(recentNamesComposite.computeSize(\r
- SWT.DEFAULT, SWT.DEFAULT).y);\r
recentNamesExpandItem.setControl(recentNamesComposite);\r
\r
+ table = new Table(recentNamesComposite, SWT.NONE);\r
+ table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
+\r
+ final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem.setText("Laphangium (Hilliard & B. L. Burtt) Tzvelev");\r
+\r
+ final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_1.setText("Carduus L.");\r
+\r
+ final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_2.setText("Carduus carpetanus Boiss. & Reut.");\r
+\r
+ final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_3.setText("Carduus kerneri Simonk.");\r
+\r
+ final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_4.setText("Carduus kerneri Simonk.");\r
+\r
+ final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_5.setText("Senecio eboracensis R. J. Abbott & A. J. Lowe");\r
+\r
+ final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
+ newItemTableItem_6.setText("Senecio elegans L.");\r
+\r
// Image image = FileArrangerImages.getImageRegistry().get(\r
// IFileArrangerImages.IMG_BOOKMARK);\r
// bookmarksExpandItem.setImage(image);\r
\r
private void createSearchComposite() {\r
searchExpandItem = new ExpandItem(expandBar, SWT.NONE, 2);\r
+ searchExpandItem.setHeight(50);\r
+ searchExpandItem.setExpanded(true);\r
searchExpandItem.setText("Search");\r
searchComposite = new Composite(expandBar, SWT.NONE);\r
- GridLayout layout = new GridLayout();\r
- layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 10;\r
- layout.verticalSpacing = 5;\r
- searchComposite.setLayout(layout);\r
+ final GridLayout gridLayout = new GridLayout();\r
+ gridLayout.numColumns = 2;\r
+ searchComposite.setLayout(gridLayout);\r
\r
- searchExpandItem.setHeight(searchComposite.computeSize(SWT.DEFAULT,\r
- SWT.DEFAULT).y);\r
searchExpandItem.setControl(searchComposite);\r
\r
+ searchText = new Text(searchComposite, SWT.BORDER);\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
+// final Label carduusLLabel = new Label(searchComposite, SWT.NONE);\r
+// carduusLLabel.setLayoutData(gd_carduusLLabel);\r
+// carduusLLabel.setText("Carduus L.");\r
+//\r
+// final Label carduusCarpetanusBoissLabel = new Label(searchComposite, SWT.NONE);\r
+// carduusCarpetanusBoissLabel.setLayoutData(gd_carduusCarpetanusBoissLabel);\r
+// carduusCarpetanusBoissLabel.setText("Carduus carpetanus Boiss. & Reut.");\r
+\r
// Image image = FileArrangerImages.getImageRegistry().get(\r
// IFileArrangerImages.IMG_FTP);\r
// ftpExpandItem.setImage(image);\r
* Refreshes a taxon name in the list\r
*/\r
public void refreshElement(TaxonName taxonname) {\r
- this.viewer.refresh(taxonname);\r
}\r
\r
public void onDelete(ICdmEventListenerRegistration arg0) {\r