Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/xwt.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <lluis@xamarin.com>2013-06-04 14:07:48 +0400
committerLluis Sanchez <lluis@xamarin.com>2013-06-04 14:07:48 +0400
commit16490685f6cd8079e0032b28b1ee141cc538c0d7 (patch)
treef5dc247ccde77424a4bc8e51888406b3bdaa09bf /Xwt.Mac
parent0219f84eca58d71f9e3673f34c4491637545b65b (diff)
Fixes in ScrollAdjustment
The adjustment bounds are now set all together using a single SetRange method.
Diffstat (limited to 'Xwt.Mac')
-rw-r--r--Xwt.Mac/Xwt.Mac/ScrollAdjustmentBackend.cs69
-rw-r--r--Xwt.Mac/Xwt.Mac/ScrollbarBackend.cs73
2 files changed, 37 insertions, 105 deletions
diff --git a/Xwt.Mac/Xwt.Mac/ScrollAdjustmentBackend.cs b/Xwt.Mac/Xwt.Mac/ScrollAdjustmentBackend.cs
index 477f16a4..6d1082d4 100644
--- a/Xwt.Mac/Xwt.Mac/ScrollAdjustmentBackend.cs
+++ b/Xwt.Mac/Xwt.Mac/ScrollAdjustmentBackend.cs
@@ -35,9 +35,6 @@ namespace Xwt.Mac
bool vertical;
NSScrollView scrollView;
IScrollAdjustmentEventSink eventSink;
- double lower;
- double upper;
- double pageSize;
public ScrollAdjustmentBackend (NSScrollView scrollView, bool vertical)
{
@@ -89,58 +86,30 @@ namespace Xwt.Mac
}
}
- public double LowerValue {
- get {
- return lower;
- }
- set {
- lower = value;
- ClipView.UpdateDocumentSize ();
- }
- }
+ public void SetRange (double lowerValue, double upperValue, double pageSize, double pageIncrement, double stepIncrement, double value)
+ {
+ LowerValue = lowerValue;
+ UpperValue = upperValue;
+ PageSize = pageSize;
+ PageIncrement = pageIncrement;
- public double UpperValue {
- get {
- return upper;
- }
- set {
- upper = value;
- ClipView.UpdateDocumentSize ();
- }
- }
+ if (vertical)
+ scrollView.VerticalLineScroll = (float)stepIncrement;
+ else
+ scrollView.HorizontalLineScroll = (float)stepIncrement;
- public double PageIncrement {
- get {
- return 10;
- }
- set {
- }
+ ClipView.UpdateDocumentSize ();
+ Value = value;
}
- public double StepIncrement {
- get {
- if (vertical)
- return scrollView.VerticalLineScroll;
- else
- return scrollView.HorizontalLineScroll;
- }
- set {
- if (vertical)
- scrollView.VerticalLineScroll = (float)value;
- else
- scrollView.HorizontalLineScroll = (float)value;
- }
- }
+ public double LowerValue { get; private set; }
+
+ public double UpperValue { get; private set; }
+
+ public double PageIncrement { get; private set; }
+
+ public double PageSize { get; private set; }
- public double PageSize {
- get {
- return pageSize;
- }
- set {
- pageSize = value;
- ClipView.UpdateDocumentSize ();
- }
- }
#endregion
}
}
diff --git a/Xwt.Mac/Xwt.Mac/ScrollbarBackend.cs b/Xwt.Mac/Xwt.Mac/ScrollbarBackend.cs
index adc7e623..a051154b 100644
--- a/Xwt.Mac/Xwt.Mac/ScrollbarBackend.cs
+++ b/Xwt.Mac/Xwt.Mac/ScrollbarBackend.cs
@@ -61,6 +61,13 @@ namespace Xwt.Mac
{
IScrollAdjustmentEventSink eventSink;
+ double value;
+ double lowerValue;
+ double upperValue;
+ double pageIncrement;
+ double stepIncrement;
+ double pageSize;
+
NSView IViewObject.View {
get {
return this;
@@ -114,7 +121,6 @@ namespace Xwt.Mac
eventSink.OnValueChanged ();
}
- double value;
public double Value {
get {
return value;
@@ -125,60 +131,17 @@ namespace Xwt.Mac
}
}
- double lowerValue;
- public double LowerValue {
- get {
- return lowerValue;
- }
- set {
- lowerValue = value;
- UpdateValue ();
- UpdateKnobProportion ();
- }
- }
-
- double upperValue;
- public double UpperValue {
- get {
- return upperValue;
- }
- set {
- upperValue = value;
- UpdateValue ();
- UpdateKnobProportion ();
- }
- }
-
- double pageIncrement;
- public double PageIncrement {
- get {
- return pageIncrement;
- }
- set {
- pageIncrement = value;
- }
- }
-
- double stepIncrement;
- public double StepIncrement {
- get {
- return stepIncrement;
- }
- set {
- stepIncrement = value;
- }
- }
-
- double pageSize;
- public double PageSize {
- get {
- return pageSize;
- }
- set {
- pageSize = value;
- UpdateValue ();
- UpdateKnobProportion ();
- }
+ public void SetRange (double lowerValue, double upperValue, double pageSize, double pageIncrement, double stepIncrement, double value)
+ {
+ this.lowerValue = lowerValue;
+ this.upperValue = upperValue;
+ this.pageSize = pageSize;
+ this.pageIncrement = pageIncrement;
+ this.stepIncrement = stepIncrement;
+ this.value = value;
+
+ UpdateValue ();
+ UpdateKnobProportion ();
}
public void InitializeBackend (object frontend, ApplicationContext context)