Hi, A quick idea ...
var w = new Window('dialog',"Resize Table Columns",undefined);
buildWindow ();
w.show ();
function buildWindow () {
var cbGrp, btnGrp, btn, i,cbNbr,cbValue;
// Properties for cbGrp
cbGrp = w.add ('group',undefined);
cbGrp.alignChildren = ['fill',' '];
cbGrp.orientation = "row";
cbNbr = 15;
cbValue=[];
for (i = 1; i <= cbNbr; i += 1) {
cbGrp["grp" + i] = cbGrp.add ("group", undefined, {name: "grp" + i});
cbGrp["grp" + i].orientation = "column";
cbGrp["grp" + i].spacing = 4;
cbGrp["grp" + i].addEventListener ("click", toggleCb, true);
cbGrp["grp" + i]["cb" + i] = cbGrp["grp" + i].add ("checkbox", undefined, undefined);
cbGrp["grp" + i]["lb" + i] = cbGrp["grp" + i].add ("statictext", undefined, i);
}
// Add the OK/Cancel buttons.
btnGrp = w.add ('group', undefined);
btn = btnGrp.add ("button",undefined,'OK',{name:"ok"});
btn.onClick = validate;
btn = btnGrp.add ("button",undefined,'Cance',{name:"cancel"});
function validate () {
// array with cb value
for (i= 1; i < cbNbr; i+= 1) {
cbValue.push(cbGrp["grp" + i]["cb" + i].value);
}
alert(cbValue)
}
function toggleCb (e) {
var cb;
if (e.target.type === "group") {
cb = e.target.children[0];
cb.value = !cb.value;
}
else if (e.target.type === "statictext") {
cb = e.target.parent.children[0];
cb.value = !cb.value;
}
else {
alert (e.target.name);
}
}
}
... View more