summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.gui
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-04-21 12:53:52 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-04-21 12:53:52 +0530
commit1bf13c069eff1230f768bb8611a3e643ff4334f5 (patch)
tree4577ce74d7061adffb716da6ef66a4e89299422d /src/com.gluster.storage.management.gui
parentf73a94f87bab4088d7b95ee54f98f29b2dd72876 (diff)
Bug 2822 - "Add" button gets disabled when search string is entered
Diffstat (limited to 'src/com.gluster.storage.management.gui')
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java24
1 files changed, 21 insertions, 3 deletions
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 543671d6..3dadb947 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
@@ -33,6 +33,8 @@ import org.eclipse.jface.viewers.TableViewerColumn;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
import org.eclipse.swt.events.SelectionAdapter;
@@ -65,6 +67,7 @@ public class VolumeOptionsPage extends Composite {
private GUIHelper guiHelper = GUIHelper.getInstance();
private Volume volume;
private DefaultClusterListener clusterListener;
+ private Text filterText;
public enum OPTIONS_TABLE_COLUMN_INDICES {
OPTION_KEY, OPTION_VALUE
@@ -84,7 +87,8 @@ public class VolumeOptionsPage extends Composite {
toolkit.paintBordersFor(this);
setupPageLayout();
- setupOptionsTableViewer(guiHelper.createFilterText(toolkit, this));
+ filterText = guiHelper.createFilterText(toolkit, this);
+ setupOptionsTableViewer(filterText);
createAddButton();
@@ -106,8 +110,9 @@ public class VolumeOptionsPage extends Composite {
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
+ // disable the add button AND search filter textbox till user fills up the new option
addButton.setEnabled(false);
+ filterText.setEnabled(false);
}
private Entry<String, String> getEntry(String key) {
@@ -119,6 +124,18 @@ public class VolumeOptionsPage extends Composite {
return null;
}
});
+
+ // Make sure that add button is enabled only when search filter textbox is empty
+ filterText.addModifyListener(new ModifyListener() {
+ @Override
+ public void modifyText(ModifyEvent e) {
+ if(filterText.getText().length() > 0) {
+ addButton.setEnabled(false);
+ } else {
+ addButton.setEnabled(true);
+ }
+ }
+ });
}
private void registerListeners(final Composite parent) {
@@ -175,8 +192,9 @@ public class VolumeOptionsPage extends Composite {
if(event.getEventType() == EVENT_TYPE.VOLUME_OPTION_SET) {
Entry<String, String> eventEntry = (Entry<String, String>)event.getEventData();
if (eventEntry.getKey().equals(volume.getOptions().keySet().toArray()[volume.getOptions().size()-1])) {
- // option has been set successfully by the user. re-enable the add button
+ // option has been set successfully by the user. re-enable the add button and search filter textbox
addButton.setEnabled(true);
+ filterText.setEnabled(true);
}
if(tableViewer.getTable().getItemCount() < volume.getOptions().size()) {