Hello,
I am attempting to setup a slider to dynamically change the DrawPane zoom value. I have tried two different methods to get either the "change" or "valueChanged" events to fire on the Slider while on a DynamicForm, but neither of these techniques seem to work. I also created a stand-alone Slider and it works fine.
Scenario One: DynamicForm Slider valueChanged (see zoomSlide field):
isc.DynamicForm.create({
ID: "gridForm",
width: 500,
values: {snapDrag: true, snapResize: true, hgap: 20, vgap: 20},
numCols: 2,
fields: [{
name: "zoomSlide", title: "Zoom DrawPane: ", type: "slider", minValue: 0.10, maxValue: 3.00, numValues: 300, roundPrecision: 2, roundValues: false, valueChanged : function (value) {
gridCanvas.zoom(value);}, canDrag: true,
}, {
name: "snapDrag", title: "Enable Snap-To-Grid Move", type: "checkbox",
changed: "gridCanvas.setProperty('childrenSnapToGrid', !gridCanvas.childrenSnapToGrid)"
}, {
name: "snapResize", title: "Enable Snap To Grid Resize", type: "checkbox",
changed: "gridCanvas.setProperty('childrenSnapResizeToGrid' , !gridCanvas.childrenSnapResizeToGrid)"
}, {
name: "hgap", title: "Horizontal snap-to gap", type: "radioGroup",
valueMap: {10: "10 pixels", 20: "20 pixels", 50: "50 pixels"},
changed: "gridCanvas.setProperty('snapHGap', Number(this.getValue()))"
}, {
name: "vgap", title: "Vertical snap-to gap", type: "radioGroup",
valueMap: {10: "10 pixels", 20: "20 pixels", 50: "50 pixels"},
changed: "gridCanvas.setProperty('snapVGap', Number(this.getValue()))"
}
],
});
Scenario Two: DynamicForm Slider "changed" event (see zoomSlide field):
isc.DynamicForm.create({
ID: "gridForm",
width: 500,
values: {snapDrag: true, snapResize: true, hgap: 20, vgap: 20},
numCols: 2,
fields: [{
name: "zoomSlide", title: "Zoom DrawPane: ", type: "slider", minValue: 0.10, maxValue: 3.00, numValues: 300, roundPrecision: 2, roundValues: false, changed:"gridCanvas.setProperty('zoom', Number(this.getValue()))", canDrag: true
}, {
name: "snapDrag", title: "Enable Snap-To-Grid Move", type: "checkbox",
changed: "gridCanvas.setProperty('childrenSnapToGrid', !gridCanvas.childrenSnapToGrid)"
}, {
name: "snapResize", title: "Enable Snap To Grid Resize", type: "checkbox",
changed: "gridCanvas.setProperty('childrenSnapResizeToGrid' , !gridCanvas.childrenSnapResizeToGrid)"
}, {
name: "hgap", title: "Horizontal snap-to gap", type: "radioGroup",
valueMap: {10: "10 pixels", 20: "20 pixels", 50: "50 pixels"},
changed: "gridCanvas.setProperty('snapHGap', Number(this.getValue()))"
}, {
name: "vgap", title: "Vertical snap-to gap", type: "radioGroup",
valueMap: {10: "10 pixels", 20: "20 pixels", 50: "50 pixels"},
changed: "gridCanvas.setProperty('snapVGap', Number(this.getValue()))"
}
],
});
Scenario Three: Stand-alone Slider --> works fine
isc.Slider.create({
ID: "zoomSlider",
minValue: 0.10,
maxValue: 3.00,
numValues: 300,
roundValues: false,
roundPrecision: 2,
width: 400,
title: "Zoom DrawPane",
vertical: false,
valueChanged : function (value) {
gridCanvas.zoom(value);
},
canDrag: true
});
Any insight is appreciated.
Thank you in advance,
SmartClient_v83p_2013-12-20_Enterprise
Safari Version 5.1.10 (6534.59.10)