Position the widgets : SmartClient Controls « SmartClient « JavaScript DHTML






Position the widgets

 
<!--
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.com) 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.com/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>
Canvas.create({
    ID:"widget",
    left:200,
    top:225,
    width:100,
    height:100,
    overflow:"hidden",
    backgroundImage:"http://www.java2s.com/style/logo.png"
});


// --------------------------------------------------
// top move/grow/shrink buttons
// --------------------------------------------------

Button.create({    left:150,    top:75,    width:50,    height:50,    title:"Move",
    //mouseStillDown:function(){widget.setTop(widget.getTop()-20)}
    mouseStillDown:function(){widget.moveBy(0,-20)}
});

Button.create({    left:225,    top:75,    width:50,    height:50,    title:"Grow",
    //mouseStillDown:function(){widget.setRect(null, widget.getTop()-20, null, widget.getHeight()+20)}
    mouseStillDown:function(){widget.moveBy(0,-20); widget.resizeBy(0,20);}
});

Button.create({    left:300,    top:75,    width:50,    height:50,    title:"Shrink",
    //mouseStillDown:function(){widget.setRect(null, widget.getHeight() > 0 ? widget.getTop()+20 : null, null, Math.max(widget.getHeight()-20,0))}
    mouseStillDown:function(){widget.moveBy(0, widget.getHeight() > 0 ? 20 : 0); widget.setHeight(Math.max(widget.getHeight()-20,0));}
});


// --------------------------------------------------
// bottom move/grow/shrink buttons
// --------------------------------------------------

Button.create({    left:150,    top:425,    width:50,    height:50,    title:"Move",
    //mouseStillDown:function(){widget.setTop(widget.getTop()+20)}
    mouseStillDown:function(){widget.moveBy(0,20)}
});

Button.create({    left:225,    top:425,    width:50,    height:50,    title:"Grow",
    //mouseStillDown:function(){widget.setBottom(widget.getBottom()+20);}
    mouseStillDown:function(){widget.resizeBy(0,20)}
});

Button.create({    left:300,    top:425,    width:50,    height:50,    title:"Shrink",
    //mouseStillDown:function(){widget.setBottom(Math.max(widget.getBottom()-20,widget.getTop()));}
    mouseStillDown:function(){widget.setHeight(Math.max(widget.getHeight()-20,0))}
});


// --------------------------------------------------
// left move/grow/shrink buttons
// --------------------------------------------------

Button.create({    left:50,    top:175,    width:50,    height:50,    title:"Move",
    //mouseStillDown:function(){widget.setLeft(widget.getLeft()-20)}
    mouseStillDown:function(){widget.moveBy(-20,0)}
});

Button.create({    left:50,    top:250,    width:50,    height:50,    title:"Grow",
    //mouseStillDown:function(){widget.setRect(widget.getLeft()-20, null, widget.getWidth()+20, null)}
    mouseStillDown:function(){widget.moveBy(-20,0); widget.resizeBy(20,0);}
});

Button.create({    left:50,    top:325,    width:50,    height:50,    title:"Shrink",
    //mouseStillDown:function(){widget.setRect(widget.getWidth() > 0 ? widget.getLeft()+20 : null, null, Math.max(widget.getWidth()-20,0), null)}
    mouseStillDown:function(){widget.moveBy(widget.getWidth() > 0 ? 20 : 0, 0); widget.setWidth(Math.max(widget.getWidth()-20,0));}
});


// --------------------------------------------------
// right move/grow/shrink buttons
// --------------------------------------------------

Button.create({    left:400,    top:175,    width:50,    height:50,    title:"Move",
    //mouseStillDown:function(){widget.setLeft(widget.getLeft()+20)}
    mouseStillDown:function(){widget.moveBy(20,0)}
});

Button.create({    left:400,    top:250,    width:50,    height:50,    title:"Grow",
    //mouseStillDown:function(){widget.setRight(widget.getRight()+20);}
    mouseStillDown:function(){widget.resizeBy(20,0)}
});

Button.create({    left:400,    top:325,    width:50,    height:50,    title:"Shrink",
    //mouseStillDown:function(){widget.setRight(Math.max(widget.getRight()-20,widget.getLeft()));}
    mouseStillDown:function(){widget.setWidth(Math.max(widget.getWidth()-20,0))}
});


</SCRIPT>
</BODY>
</HTML>

   
  








Related examples in the same category

1.Three level controls hierarchy and event propagation
2.Refernece object by ID
3.Show/hide a control
4.Widget attachment
5.Component reuse
6.Move to front/back to a layer
7.Move object by offset
8.Use isc namespace to eliminate the possibility of JS name collisions