+++ /dev/null
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.viewers.ArrayContentProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.IStructuredSelection;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.ListViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.graphics.Point;\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.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.List;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.database.CdmDataSource;\r
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-public class CdmDataSourceDialog_ extends Dialog {\r
- private List list;\r
- private List list_1;\r
- private Text text_6;\r
- private Text text_5;\r
- private Text text_4;\r
- private Text text_2;\r
- private Text text_3;\r
- private Text text;\r
- private static final Logger logger = Logger\r
- .getLogger(CdmDataSourceDialog_.class);\r
- private CCombo datasourceTypesCombo;\r
- private Composite composite;\r
- private Composite container;\r
-\r
- /**\r
- * Create the dialog\r
- * @param parentShell\r
- */\r
- public CdmDataSourceDialog_(Shell parentShell) {\r
- super(parentShell);\r
- }\r
-\r
- /**\r
- * Create contents of the dialog\r
- * @param parent\r
- */\r
- @Override\r
- protected Control createDialogArea(Composite parent) {\r
- container = (Composite) super.createDialogArea(parent);\r
- final GridLayout gridLayout = new GridLayout();\r
- gridLayout.numColumns = 2;\r
- container.setLayout(gridLayout);\r
-\r
- final ListViewer listViewer = new ListViewer(container, SWT.BORDER);\r
- list = listViewer.getList();\r
- final GridData gd_list = new GridData(SWT.LEFT, SWT.FILL, false, true);\r
- gd_list.widthHint = 162;\r
- list.setLayoutData(gd_list);\r
- \r
- listViewer.setContentProvider(new ArrayContentProvider());\r
- listViewer.setLabelProvider(new LabelProvider() {\r
- /* (non-Javadoc)\r
- * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object)\r
- */\r
- public String getText(Object element) {\r
- if (element instanceof ICdmDataSource) {\r
- return ((ICdmDataSource) element).getName();\r
- } \r
- return super.getText(element);\r
- }\r
- });\r
-// list.addListener(SWT. .PaintItem, new Listener() {\r
-// @Override\r
-// public void handleEvent(Event event) {\r
-// Object data = event.item.getData();\r
-// if (!(data instanceof ICdmDataSource)) {\r
-// Font italics = TaxEditorPlugin.getDefault().getFont\r
-// (ITaxEditorConstants.MENU_ITEM_ITALICS_FONT);\r
-// ((Control) event.item).setFont(italics);\r
-// }\r
-// }\r
-// });\r
- \r
- java.util.List<ICdmDataSource> dataSources = \r
- TaxEditorPlugin.getDefault().getDataSources();\r
- \r
- listViewer.setInput(dataSources);\r
- listViewer.add("<< Add data source >>");\r
- \r
- listViewer.addDoubleClickListener(new IDoubleClickListener() {\r
- public void doubleClick(DoubleClickEvent event) {\r
- Object selection = \r
- ((IStructuredSelection) event.getSelection()).\r
- getFirstElement();\r
- if (selection instanceof ICdmDataSource) {\r
- createExistingDatasource((ICdmDataSource) selection);\r
- } else {\r
-// newDataSource(CdmDataSource.);\r
- }\r
- }\r
- });\r
-\r
-\r
- //\r
- return container;\r
- }\r
-\r
- private void populateComboBoxItems() {\r
- // TODO: replace w cdmApp.getDatabaseService().getDatabaseEnum();\r
- for (DatabaseTypeEnum type : DatabaseTypeEnum.getAllTypes()) {\r
- datasourceTypesCombo.add(type.getName());\r
- }\r
- }\r
-\r
- /**\r
- * Create contents of the button bar\r
- * @param parent\r
- */\r
- @Override\r
- protected void createButtonsForButtonBar(Composite parent) {\r
- createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
- true);\r
- createButton(parent, IDialogConstants.CANCEL_ID,\r
- IDialogConstants.CANCEL_LABEL, false);\r
- }\r
-\r
- /**\r
- * Return the initial size of the dialog\r
- */\r
- @Override\r
- protected Point getInitialSize() {\r
- return new Point(500, 375);\r
- }\r
- \r
- private void createExistingDatasource(ICdmDataSource dataSource) {\r
- composite = new Composite(container, SWT.NONE);\r
- final GridData gd_composite = new GridData(SWT.FILL, SWT.TOP, true, true);\r
- composite.setLayoutData(gd_composite);\r
- final GridLayout gridLayout_1 = new GridLayout();\r
- gridLayout_1.numColumns = 2;\r
- composite.setLayout(gridLayout_1);\r
- \r
- final Label datasourceNameLabel = new Label(composite, SWT.NONE);\r
- datasourceNameLabel.setText("Datasource Name:");\r
-\r
- text = new Text(composite, SWT.BORDER);\r
- text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label databaseTypeLabel = new Label(composite, SWT.NONE);\r
- databaseTypeLabel.setText("Database Type:");\r
-\r
- datasourceTypesCombo = new CCombo(composite, SWT.BORDER);\r
- final GridData gd_list_1 = new GridData(SWT.FILL, SWT.CENTER, false, false);\r
- datasourceTypesCombo.setLayoutData(gd_list_1);\r
- populateComboBoxItems();\r
- \r
-// BeanDefinition bean = dataSource.getDatasourceBean();\r
- \r
- // Redraw dialog container\r
- container.layout();\r
- }\r
- \r
- private void createMySqlForm(ICdmDataSource dataSource) {\r
- final Group authenticationGroup = new Group(composite, SWT.NONE);\r
- authenticationGroup.setText("Authentication");\r
- authenticationGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 2, 1));\r
- final GridLayout gridLayout_2 = new GridLayout();\r
- gridLayout_2.numColumns = 2;\r
- authenticationGroup.setLayout(gridLayout_2);\r
-\r
- final Label loginNameLabel = new Label(authenticationGroup, SWT.NONE);\r
- loginNameLabel.setText("Login Name:");\r
-\r
- text_3 = new Text(authenticationGroup, SWT.BORDER);\r
- text_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label passwordLabel = new Label(authenticationGroup, SWT.NONE);\r
- passwordLabel.setText("Password:");\r
-\r
- text_2 = new Text(authenticationGroup, SWT.BORDER);\r
- text_2.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label savePasswordLabel = new Label(authenticationGroup, SWT.NONE);\r
- savePasswordLabel.setText("Save password:");\r
-\r
- final Button button = new Button(authenticationGroup, SWT.CHECK);\r
-\r
- final Group locationGroup = new Group(composite, SWT.NONE);\r
- locationGroup.setText("Location");\r
- final GridData gd_locationGroup = new GridData(SWT.FILL, SWT.CENTER, false, false, 2, 1);\r
- locationGroup.setLayoutData(gd_locationGroup);\r
- final GridLayout gridLayout_3 = new GridLayout();\r
- gridLayout_3.numColumns = 2;\r
- locationGroup.setLayout(gridLayout_3);\r
-\r
- final Label hostLabel = new Label(locationGroup, SWT.NONE);\r
- hostLabel.setText("Host:");\r
-\r
- text_4 = new Text(locationGroup, SWT.BORDER);\r
- text_4.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label portLabel = new Label(locationGroup, SWT.NONE);\r
- portLabel.setText("Port <3306>:");\r
-\r
- text_5 = new Text(locationGroup, SWT.BORDER);\r
- text_5.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
- final Label databaseLabel = new Label(locationGroup, SWT.NONE);\r
- databaseLabel.setText("Database:");\r
-\r
- text_6 = new Text(locationGroup, SWT.BORDER);\r
- text_6.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
- new Label(composite, SWT.NONE);\r
-\r
- final Button saveButton = new Button(composite, SWT.NONE);\r
- final GridData gd_saveButton = new GridData(SWT.RIGHT, SWT.CENTER, false, false);\r
- gd_saveButton.widthHint = 76;\r
- saveButton.setLayoutData(gd_saveButton);\r
- saveButton.setText("Save");\r
- }\r
-}\r