Revision: 3639
http://vexi.svn.sourceforge.net/vexi/?rev=3639&view=rev
Author: clrg
Date: 2009-09-02 17:44:48 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
Fix scrollpane demo
Modified Paths:
--------------
trunk/widgets/org.vexi.demo/src/org/vexi/demo/feature/scrollpane.t
Added Paths:
-----------
trunk/widgets/org.vexi.demo/src/org/vexi/demo/inner/scrollspin.t
Modified: trunk/widgets/org.vexi.demo/src/org/vexi/demo/feature/scrollpane.t
===================================================================
--- trunk/widgets/org.vexi.demo/src/org/vexi/demo/feature/scrollpane.t
2009-09-02 17:44:38 UTC (rev 3638)
+++ trunk/widgets/org.vexi.demo/src/org/vexi/demo/feature/scrollpane.t
2009-09-02 17:44:48 UTC (rev 3639)
@@ -1,7 +1,7 @@
<!-- Copyright 2007 - see COPYING for details [LGPL] -->
<vexi xmlns:ui="vexi://ui" xmlns:meta="vexi://meta" xmlns="vexi.widget"
- xmlns:demo="org.vexi.demo" xmlns:lay="vexi.layout">
+ xmlns:demo="org.vexi.demo.inner" xmlns:lay="vexi.layout">
static.name = "Scrollpane";
static.category = "Widgets";
@@ -20,69 +20,42 @@
</bevel>
</ui:box>
- <separator margin="3 8" hshrink="true" />
+ <ui:box width="20" />
- <ui:box orient="vertical" shrink="true">
+ <ui:box orient="vertical" hshrink="true">
<ui:box height="3" />
<ui:box text="Scrollbar Properties" shrink="true" />
<ui:box height="5" />
- <ui:box align="left" orient="vertical" shrink="true">
- <check id="scrollhorizontal" margin="3 10"
text="scrollhorizontal" selected="true" />
- <check id="scrollvertical" margin="3 10" text="scrollvertical"
selected="true" />
- <check id="autohidehorizontal" margin="3 10"
text="autohidehorizontal" />
- <check id="autohidevertical" margin="3 10"
text="autohidevertical" />
+ <ui:box shrink="true">
+ <ui:box align="left" orient="vertical" shrink="true">
+ <check id="scrollhorizontal" margin="3 10"
text="scrollhorizontal" selected="true" />
+ <check id="scrollvertical" margin="3 10"
text="scrollvertical" selected="true" />
+ </ui:box>
+ <ui:box align="left" orient="vertical" shrink="true">
+ <check id="autohidehorizontal" margin="3 10"
text="autohidehorizontal" />
+ <check id="autohidevertical" margin="3 10"
text="autohidevertical" />
+ </ui:box>
</ui:box>
- <ui:box />
- <separator margin="8 3 11 0" />
+ <ui:box height="20" />
- <ui:box text="Scrollbar Spacing Properties" />
+ <ui:box text="Scrollpane Spacing Properties" shrink="true" />
<ui:box height="5" />
- <ui:box>
+ <ui:box shrink="true">
<ui:box orient="vertical">
- <ui:box>
- <ui:box align="right" text="margin" />
- <spin id="margin" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="left" />
- <spin id="marginLeft" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="right" />
- <spin id="marginRight" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="top" />
- <spin id="marginTop" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="bottom" />
- <spin id="marginBottom" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
+ <demo:scrollspin id="margin" prop="margin" />
+ <demo:scrollspin id="marginLeft" prop="marginleft" />
+ <demo:scrollspin id="marginRight" prop="marginright" />
+ <demo:scrollspin id="marginTop" prop="margintop" />
+ <demo:scrollspin id="marginBottom" prop="marginbottom" />
</ui:box>
<ui:box orient="vertical">
- <ui:box>
- <ui:box align="right" text="padding" />
- <spin id="padding" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="left" />
- <spin id="paddingLeft" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="right" />
- <spin id="paddingRight" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="top" />
- <spin id="paddingTop" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
- <ui:box>
- <ui:box align="right" text="bottom" />
- <spin id="paddingBottom" margin="3 5" minvalue="0"
maxvalue="100" interval="1" minwidth="45" />
- </ui:box>
+ <demo:scrollspin id="padding" prop="padding" />
+ <demo:scrollspin id="paddingLeft" prop="paddingleft" />
+ <demo:scrollspin id="paddingRight" prop="paddingright" />
+ <demo:scrollspin id="paddingTop" prop="paddingtop" />
+ <demo:scrollspin id="paddingBottom" prop="paddingbottom" />
</ui:box>
</ui:box>
@@ -94,80 +67,51 @@
$autohidehorizontal.selected ++= function(v) {
$pane.autohidehorizontal = v; cascade = v; }
$autohidevertical.selected ++= function(v) { $pane.autohidevertical =
v; cascade = v; }
- var casading = false;
- var setMarginSpinners = function() {
- casading = true;
- $margin.value = $pane.margin;
+ var setOnPane = function(v) {
+ cascade = v;
+ if (updating) return;
+ $pane[trapee.prop] = v;
+ }
+
+ $margin.value ++= setOnPane;
+ $marginLeft.value ++= setOnPane;
+ $marginRight.value ++= setOnPane;
+ $marginTop.value ++= setOnPane;
+ $marginBottom.value ++= setOnPane;
+
+ $padding.value ++= setOnPane;
+ $paddingLeft.value ++= setOnPane;
+ $paddingRight.value ++= setOnPane;
+ $paddingTop.value ++= setOnPane;
+ $paddingBottom.value ++= setOnPane;
+
+ $margin.value = $pane.margin;
+ $padding.value = $pane.padding;
+
+ var updating = false;
+
+ $margin.value ++= function(v) {
+ cascade = v;
+ updating = true;
$marginLeft.value = $pane.marginleft;
$marginRight.value = $pane.marginright;
$marginTop.value = $pane.margintop;
$marginBottom.value = $pane.marginbottom;
- casading = false;
+ updating = false;
}
- setMarginSpinners();
-
- $margin.value ++= function(v) {
- if (casading) return;
- $pane.margin = v;
- setMarginSpinners();
- }
- $marginLeft.value ++= function(v) {
- if (casading) return;
- $pane.marginleft = v;
- setMarginSpinners();
- }
- $marginRight.value ++= function(v) {
- if (casading) return;
- $pane.marginright = v;
- setMarginSpinners();
- }
- $marginTop.value ++= function(v) {
- if (casading) return;
- $pane.margintop = v;
- setMarginSpinners();
- }
- $marginBottom.value ++= function(v) {
- if (casading) return;
- $pane.marginbottom = v;
- setMarginSpinners();
- }
-
- var setPaddingSpinners = function() {
- casading = true;
- $padding.value = $pane.padding;
+ $padding.value ++= function(v) {
+ cascade = v;
+ updating = true;
$paddingLeft.value = $pane.paddingleft;
$paddingRight.value = $pane.paddingright;
$paddingTop.value = $pane.paddingtop;
$paddingBottom.value = $pane.paddingbottom;
- casading = false;
+ updating = false;
}
- setPaddingSpinners();
- $padding.value ++= function(v) {
- if (casading) return;
- $pane.padding = v;
- setPaddingSpinners();
- }
- $paddingLeft.value ++= function(v) {
- if (casading) return;
- $pane.paddingleft = v;
- setPaddingSpinners();
- }
- $paddingRight.value ++= function(v) {
- if (casading) return;
- $pane.paddingright = v;
- setPaddingSpinners();
- }
- $paddingTop.value ++= function(v) {
- if (casading) return;
- $pane.paddingtop = v;
- setPaddingSpinners();
- }
- $paddingBottom.value ++= function(v) {
- if (casading) return;
- $pane.paddingbottom = v;
- setPaddingSpinners();
- }
+ // initialize
+ $margin.value = $pane.margin;
+ $padding.value = $pane.padding;
</lay:pad>
</vexi>
Added: trunk/widgets/org.vexi.demo/src/org/vexi/demo/inner/scrollspin.t
===================================================================
--- trunk/widgets/org.vexi.demo/src/org/vexi/demo/inner/scrollspin.t
(rev 0)
+++ trunk/widgets/org.vexi.demo/src/org/vexi/demo/inner/scrollspin.t
2009-09-02 17:44:48 UTC (rev 3639)
@@ -0,0 +1,13 @@
+<!-- Copyright 2007 - see COPYING for details [LGPL] -->
+
+<vexi xmlns:ui="vexi://ui" xmlns:rdt="vexi.util.redirect" xmlns="vexi.widget">
+ <ui:box>
+ <ui:box id="label" align="right" text="bottom" />
+ <spin id="val" margin="3 5" minvalue="0" maxvalue="100" interval="1"
minwidth="45" shrink="true" />
+
+ prop ++= function(v) { $label.text = v; cascade = v; }
+
+ rdt..addRedirect(thisbox, $val, "value");
+
+ </ui:box>
+</vexi>
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Vexi-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/vexi-svn