JavaScript DHTML/SmartClient/Toolbar
Содержание
Add tool bar to a form
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY>
<SCRIPT>
var abcdArray = ["a", "b", "c", "d"],
abcdList = {a:"option a", b:"option b", c:"option c", d:"option d"},
formItems = [
{name:"item1", type:"header", defaultValue:"header value"},
{name:"item2", type:"blurb", defaultValue:"blurb value"},
{type:"rowSpacer"},
{name:"item3", title:"staticText", type:"staticText", defaultValue:"staticText value"},
//----- data items -----\\
{name:"item4", title:"text", type:"text", defaultValue:"text value"},
//----- button items -----\\
{title:"button", type:"button"},
{title:"submit", type:"submit"},
{title:"reset", type:"reset"},
{type:"toolbar", buttons:[
{title:"toolbar 1", click:"alert(1)"},
{title:"toolbar 2", click:"alert(2)"},
{title:"toolbar 3", click:"alert(3)"}
]}
];
DynamicForm.create({
ID:"itemsForm",
left:20,
top:40,
width:400,
items:formItems,
canSubmit:true // Required for the submit button to be operative
});
</SCRIPT>
</BODY>
</HTML>
Enable or disable the Toolbar
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY>
<SCRIPT>
// this skin uses the thumb down state
Scrollbar.setProperties({
allowThumbDownState:true
});
Canvas.create({
ID:"scrolledWidget",
left:150,
top:225,
width:100,
height:100,
contents:Canvas.imgHTML("http://www.wbex.ru/style/logo.png", 200, 200),
overflow:"hidden"
});
var scrollbarWidth = 32;
Scrollbar.create({
ID:"hscrollbar",
left:16,
top:41,
width:400,
vertical:false,
btnSize:scrollbarWidth,
showCorner:true,
imageType:"stretch",
scrollTarget:scrolledWidget,
autoEnable:false
});
Scrollbar.create({
ID:"vscrollbar",
left:hscrollbar.left + hscrollbar.width - scrollbarWidth,
top:hscrollbar.top + scrollbarWidth - 2,
height:400,
btnSize:scrollbarWidth,
imageType:"stretch",
scrollTarget:scrolledWidget,
autoEnable:false
});
Button.create({
left:60,
top:395,
width:130,
click:"hscrollbar.enable();vscrollbar.enable()",
title:"Enable scrollbars"
});
Button.create({
left:200,
top:395,
width:130,
click:"hscrollbar.disable();vscrollbar.disable()",
title:"Disable scrollbars"
});
Button.create({
left:60,
top:435,
width:130,
click:"scrolledWidget.scrollTo(50)",
title:"Scroll horizontal to 50"
});
Button.create({
left:200,
top:435,
width:130,
click:"scrolledWidget.scrollTo(null,50)",
title:"Scroll vertical to 50"
});
</SCRIPT>
</BODY>
</HTML>
Toolbar button and action event listener
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY>
<SCRIPT>
Img.create({
ID:"widget",
left:250,
top:180,
width:100,
height:100,
src:"http://www.wbex.ru/style/logo.png"
});
Toolbar.create({
ID:"widgetToolbar",
left:50,
top:50,
width:600,
membersMargin:2,
buttons:[
// Note: both "click" and "doubleClick" events are defined here - double clicking will execute the click event
// handler once, and the doubleClick event handler once.
// The state of the checkbox button (checked vs unchecked) will be changed twice - once on each mouseUp event.
{title:"Visible", actionType:"checkbox", selected:true,
click:"widget.isVisible() ? widget.hide() : widget.show()",
doubleClick:"widget.isVisible() ? widget.hide() : widget.show()",
extraSpace:10},
{title:"Small", actionType:"radio", click:"widget.setWidth(50);widget.setHeight(50)"},
{title:"Medium", actionType:"radio", selected:true, click:"widget.setWidth(100);widget.setHeight(100)"},
{title:"Large", actionType:"radio", click:"widget.setWidth(200);widget.setHeight(200)",
extraSpace:10},
{title:"Up", click:"widget.moveBy(0,-20)"},
{title:"Right", click:"widget.moveBy(20,0)"},
{title:"Down", click:"widget.moveBy(0,20)"},
{title:"Left", click:"widget.moveBy(-20,0)",
extraSpace:10},
{title:"Reset", click:"widget.setRect(250,180,100,100); widget.show(); this.parentElement.selectButton(0); this.parentElement.selectButton(2)", width:100}
]
});
</SCRIPT>
</BODY>
</HTML>
Toolbar demo
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Calendar.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/standard/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="silver">
<SCRIPT>
isc.ImgButton.create({
ID: "alignLeft",
size: 24,
src: "icons/24/text_align_left.png",
showRollOver: false,
showFocused: false,
actionType: "radio",
radioGroup: "textAlign"
});
isc.ImgButton.create({
ID: "alignRight",
size: 24,
src: "icons/24/text_align_right.png",
showRollOver: false,
showFocused: false,
actionType: "radio",
radioGroup: "textAlign"
});
isc.ImgButton.create({
ID: "alignCenter",
size: 24,
src: "icons/24/text_align_center.png",
showRollOver: false,
showFocused: false,
actionType: "radio",
radioGroup: "textAlign"
});
isc.ImgButton.create({
ID: "bold",
size: 24,
src: "icons/24/text_bold.png",
showRollOver: false,
showFocused: false,
actionType: "checkbox"
});
isc.ImgButton.create({
ID: "italics",
size: 24,
src: "icons/24/text_italics.png",
showRollOver: false,
showFocused: false,
actionType: "checkbox"
});
isc.ImgButton.create({
ID: "underlined",
size: 24,
src: "icons/24/text_underlined.png",
showRollOver: false,
showFocused: false,
actionType: "checkbox"
});
isc.DynamicForm.create({
ID: "fontSelector",
showResizeBar:true,
width:"*", minWidth:50,
numCols:1,
fields: [
{name: "selectFont", showTitle: false, width:"*",
valueMap: {
"courier": "<span style="font-family:courier">Courier</span>",
"verdana": "<span style="font-family:verdana">Verdana</span>",
"times": "<span style="font-family:times">Times</span>"
}, defaultValue:"courier" }
]
});
isc.DynamicForm.create({
ID: "zoomSelector",
width:"*", minWidth:50,
numCols:1,
fields: [
{name: "selectZoom", showTitle: false, width:"*",
valueMap: ["50%", "75%", "100%", "150%", "200%", "Fit"],
defaultValue:"100%" }
]
});
isc.ToolStrip.create({
width: 450, height:24,
members: [bold, italics, underlined,
"separator",
alignLeft, alignRight, alignCenter,
"separator",
fontSelector, "resizer", zoomSelector]
});
</SCRIPT>
</BODY>
</HTML>