From 4600a76a1d7956954264060f8c3163bc6eab6544 Mon Sep 17 00:00:00 2001 From: jurgen Date: Sat, 22 Nov 2014 14:34:37 +0000 Subject: [PATCH] Metadata search UI fix --- docs/todo.txt | 20 +++++++++---------- .../search/metadata/SearchMetadataPage.java | 14 ++++++++----- 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/docs/todo.txt b/docs/todo.txt index 7ffb8661b4..d62c42c0a3 100644 --- a/docs/todo.txt +++ b/docs/todo.txt @@ -2,21 +2,14 @@ FEATURE: Full DB text search BUG: open object (F4) with FQ name (schema) BUG: insert explicit values for auto-increment columns in data transfer (configurable) -NoSQL: in record mode show only existing attrs for dynamic metadata -NoSQL: hide dynamic columns which presents in less than 50% of records. Show them as arrays?? SQL folding MySQL and Cassandra + SSL. -Expand/collapse All in Grid -Edit collections -Edit Mongo data - Plain-text results representation Move main toolbar edit control in tab Save As+rename. Use external files in workspace Paste into multiple cells Transaction state in status bar -Comment/uncomment: extra space after -- Process scripts with external native tool (SQLPlus + mysql) Process SQL blocks (begin/end/final delimiter) @@ -24,13 +17,18 @@ Driver popularity score for drivers ordering (MySQL, Oracle, DB2 on the top) SSL Secure-storage for passwords + +NOSQL: +Expand/collapse All in Grid +Edit collections +Edit Mongo data +In record mode show only existing attrs for dynamic metadata +Hide dynamic columns which presents in less than 50% of records. Show them as arrays?? + + 4. Query manager fixes. + keep only primitive props + persistence 5. Connection per editor support. Host ExecutionContext in editors instead of DataSource. 7. Check on MacOS -8. HTTP tunnel? - -Aster Teradata -BerkeleyDB Connection "dirty" flag handle Office formats support (xls, doc) for export/import. Possibly office extension. diff --git a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/search/metadata/SearchMetadataPage.java b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/search/metadata/SearchMetadataPage.java index 057145e7e0..86c4841d09 100644 --- a/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/search/metadata/SearchMetadataPage.java +++ b/plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/search/metadata/SearchMetadataPage.java @@ -25,10 +25,7 @@ import org.eclipse.jface.dialogs.DialogPage; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.viewers.*; import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.events.*; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.*; @@ -250,7 +247,7 @@ public class SearchMetadataPage extends DialogPage implements IObjectSearchPage gd = new GridData(GridData.FILL_BOTH); gd.heightHint = 300; typesGroup.setLayoutData(gd); - typesTable = new Table(typesGroup, SWT.CHECK | SWT.H_SCROLL | SWT.V_SCROLL); + typesTable = new Table(typesGroup, SWT.CHECK | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION); typesTable.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) @@ -267,6 +264,13 @@ public class SearchMetadataPage extends DialogPage implements IObjectSearchPage updateEnablement(); } }); + typesTable.addMouseListener(new MouseAdapter() { + @Override + public void mouseDoubleClick(MouseEvent e) { + TableItem tableItem = typesTable.getSelection()[0]; + tableItem.setChecked(!tableItem.getChecked()); + } + }); typesTable.setLayoutData(new GridData(GridData.FILL_BOTH)); UIUtils.createTableColumn(typesTable, SWT.LEFT, CoreMessages.dialog_search_objects_column_type); -- GitLab