Mouse move event
<!--
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/system/modules/ISC_Calendar.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/standard/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR='silver'>
<div id="gridDiv">
<SCRIPT>
isc.Label.create({
ID: "mouser",
contents: "<b>Mouse Me</b>",
align: "center",
overflow: "hidden",
showEdges: "true",
backgroundColor: "lightblue",
styleName:"blackText",
width: 200,
height: 200,
top: 40,
minSize: 40,
maxSize: 400,
zoomMultiplier: 15,
mouseWheel : function () {
var wheelDelta = isc.EventHandler.getWheelDelta();
// stay within min/maxSize bounds
var newSize = this.getWidth() + wheelDelta * this.zoomMultiplier;
if (newSize < this.minSize) newSize = this.minSize;
else if (newSize > this.maxSize) newSize = this.maxSize;
this.setWidth(newSize);
this.setHeight(newSize);
eventTracker.setLastEvent("mouseWheel");
},
mouseStillDown : function () {
var opacity = this.opacity == null ? 100 : this.opacity;
this.setOpacity(Math.max(0, opacity - 5));
eventTracker.setLastEvent("mouseStillDown");
},
mouseUp : function () {
this.setOpacity(100);
eventTracker.setLastEvent("mouseUp");
},
mouseMove : function () {
// scale to 1
var xScale = this.getOffsetX()/this.getWidth();
var yScale = this.getOffsetY()/this.getHeight();
// increasing red intensity on the x axis, green on the y axis. Blue stays at zero.
this.setBackgroundColor("rgb(0,"+Math.round(255*xScale)+","+Math.round(255*yScale)+")");
eventTracker.setLastEvent("mouseMove");
},
mouseOut : function () {
// restore settings
this.setBackgroundColor("lightblue");
this.setOpacity(100);
eventTracker.setLastEvent("mouseOut");
}
});
isc.Label.create({
ID: "eventTracker",
contents: "<nobr>Last event: (mouse over the canvas below...)</nobr>",
height: 20,
setLastEvent : function (event) {
var localX = mouser.getOffsetX(),
localY = mouser.getOffsetY();
this.setContents("<nobr>Last event: <b>"+event+"</b> ("+localX+", "+localY+")</nobr>");
}
});
</SCRIPT>
</div>
</BODY>
</HTML>
Related examples in the same category