Mouse move event : Event « SmartClient « JavaScript DHTML






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

1.Event from parent
2.Focus event
3.Hover event
4.Add keyboard listener to Label
5.Event overlap
6.Custom event editing
7.Get cursor position from mouse clicked event
8.Show event detailed info
9.Mouse in/out event
10.Event logging example
11.Change mouse cursor
12.Extend setDisabled() to change visual state and cursor and init disabled state