diff options
| author | Shireesh Anjal <shireesh@gluster.com> | 2011-04-26 18:49:38 +0530 |
|---|---|---|
| committer | Shireesh Anjal <shireesh@gluster.com> | 2011-04-26 18:49:38 +0530 |
| commit | f6ae65e4a97c9c55852bd413e26a8e61fc7761c4 (patch) | |
| tree | 5ba8e7b956315f0958bd55f9586e34146070d8ca | |
| parent | c11192c4cf06f14ad90d72819ebeee2ad527f16d (diff) | |
Bug 2822 - "Add" button gets disabled when search string is entered
| -rw-r--r-- | src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeOptionsPage.java | 15 |
1 files changed, 12 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 179f0a1e..c0a69693 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 @@ -39,8 +39,6 @@ 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; @@ -193,7 +191,7 @@ 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])) { + if (isNewOption(volume, eventEntry.getKey())) { // option has been set successfully by the user. re-enable the add button and search filter textbox addButton.setEnabled(true); filterText.setEnabled(true); @@ -208,6 +206,17 @@ public class VolumeOptionsPage extends Composite { } } } + + private boolean isNewOption(Volume volume, String optionKey) { + if(filterText.getText().length() > 0) { + // user has been filtering the contents. adding new option is allowed only when contents are NOT + // filtered. Thus it's impossible that this is a newly added option + return false; + } + + // if this is the last option in the volume options, it must be the new option + return optionKey.equals(volume.getOptions().keySet().toArray()[volume.getOptions().size()-1]); + } }; GlusterDataModelManager.getInstance().addClusterListener(clusterListener); } |
