From 89c919f912820e7ecb8fd40546c75c0bbb82a92e Mon Sep 17 00:00:00 2001 From: Shireesh Anjal Date: Tue, 19 Apr 2011 18:31:14 +0530 Subject: Bug 2808 - Volume options- clicking on add button by default focus is on search --- .../management/gui/views/details/OptionKeyEditingSupport.java | 8 +++++++- .../storage/management/gui/views/details/VolumeOptionsPage.java | 6 +++++- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/OptionKeyEditingSupport.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/OptionKeyEditingSupport.java index 936cf450..9e0a18ca 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/OptionKeyEditingSupport.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/OptionKeyEditingSupport.java @@ -13,6 +13,7 @@ import org.eclipse.jface.viewers.CellEditor; import org.eclipse.jface.viewers.ColumnViewer; import org.eclipse.jface.viewers.ComboBoxCellEditor; import org.eclipse.jface.viewers.EditingSupport; +import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import com.gluster.storage.management.client.GlusterDataModelManager; @@ -77,13 +78,18 @@ public class OptionKeyEditingSupport extends EditingSupport { return cellEditor.getValue(); } + if(entryBeingAdded.getKey().isEmpty()) { + // editing just about to start. set first element as default. + return 0; + } + return getIndexOfEntry(entryBeingAdded); } @Override protected CellEditor getCellEditor(Object element) { allowedKeys = getAllowedKeys(); - cellEditor = new ComboBoxCellEditor((Composite) viewer.getControl(), allowedKeys); + cellEditor = new ComboBoxCellEditor((Composite) viewer.getControl(), allowedKeys, SWT.READ_ONLY); return cellEditor; } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java index 7ab5b9b8..5139014e 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java @@ -36,6 +36,8 @@ import org.eclipse.swt.events.PaintEvent; import org.eclipse.swt.events.PaintListener; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; +import org.eclipse.swt.graphics.Point; +import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; @@ -71,6 +73,7 @@ public class VolumeOptionsPage extends Composite { private static final String[] OPTIONS_TABLE_COLUMN_NAMES = new String[] { "Option Key", "Option Value" }; private Button addButton; + private TableViewerColumn keyColumn; public VolumeOptionsPage(final Composite parent, int style, Volume volume) { super(parent, style); @@ -101,6 +104,7 @@ public class VolumeOptionsPage extends Composite { tableViewer.refresh(); tableViewer.setSelection(new StructuredSelection(getEntry(""))); + keyColumn.getViewer().editElement(getEntry(""), 0); // edit newly created entry // disable the add button till user fills up the new option addButton.setEnabled(false); @@ -216,7 +220,7 @@ public class VolumeOptionsPage extends Composite { } private TableColumn createKeyColumn() { - TableViewerColumn keyColumn = new TableViewerColumn(tableViewer, SWT.NONE); + keyColumn = new TableViewerColumn(tableViewer, SWT.NONE); keyColumn.getColumn().setText(OPTIONS_TABLE_COLUMN_NAMES[OPTIONS_TABLE_COLUMN_INDICES.OPTION_KEY.ordinal()]); keyColumn.setLabelProvider(new ColumnLabelProvider() { @SuppressWarnings("unchecked") -- cgit