summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java
diff options
context:
space:
mode:
authorGrant Gayed <ggayed>2002-11-26 20:18:09 +0000
committerGrant Gayed <ggayed>2002-11-26 20:18:09 +0000
commit591b7001b3861c96aafea1e425b846c861c38e36 (patch)
tree73e79a7746c413104bbd0a07822ed32816f2e00c /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java
parent4996efa3006e3fe97c737c320e011664d3729fe7 (diff)
downloadeclipse.platform.swt-591b7001b3861c96aafea1e425b846c861c38e36.tar.gz
eclipse.platform.swt-591b7001b3861c96aafea1e425b846c861c38e36.tar.xz
eclipse.platform.swt-591b7001b3861c96aafea1e425b846c861c38e36.zip
match win32
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java
index 13c111406d..1be7c12136 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Scale.java
@@ -312,7 +312,7 @@ public void setIncrement (int value) {
*/
public void setMaximum (int value) {
checkWidget ();
- if (value < 0) return;
+ if (value < 0 || value <= getMinimum()) return;
int hAdjustment = OS.gtk_range_get_adjustment (handle);
GtkAdjustment adjustment = new GtkAdjustment ();
OS.memmove (adjustment, hAdjustment);
@@ -321,6 +321,7 @@ public void setMaximum (int value) {
OS.g_signal_handlers_block_matched (hAdjustment, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, VALUE_CHANGED);
OS.gtk_adjustment_changed (hAdjustment);
OS.g_signal_handlers_unblock_matched (hAdjustment, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, VALUE_CHANGED);
+ if (value < getSelection()) setSelection(value);
}
/**
@@ -337,7 +338,7 @@ public void setMaximum (int value) {
*/
public void setMinimum (int value) {
checkWidget ();
- if (value < 0) return;
+ if (value < 0 || value >= getMaximum()) return;
int hAdjustment = OS.gtk_range_get_adjustment (handle);
GtkAdjustment adjustment = new GtkAdjustment ();
OS.memmove (adjustment, hAdjustment);
@@ -346,6 +347,7 @@ public void setMinimum (int value) {
OS.g_signal_handlers_block_matched (hAdjustment, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, VALUE_CHANGED);
OS.gtk_adjustment_changed (hAdjustment);
OS.g_signal_handlers_unblock_matched (hAdjustment, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, VALUE_CHANGED);
+ if (value > getSelection()) setSelection(value);
}
/**