Alien-GvaScript
view release on metacpan or search on metacpan
doc/html/Event.html view on Meta::CPAN
<head>
<script src="../../lib/Alien/GvaScript/lib/prototype.js"></script>
<script src="../../lib/Alien/GvaScript/lib/GvaScript.js"></script>
<link href="GvaScript_doc.css" rel="stylesheet" type="text/css">
<script>
document.observe('dom:loaded', function() { new GvaScript.TreeNavigator('TN_tree'); });
function jumpto_href(event) {
var label = event.controller.label(event.target);
if (label && label.tagName == "A") {
label.focus();
return Event.stopNone;
}
}
</script>
</head>
<body>
<div id='TN_tree'>
<div class="TN_node">
<h1 class="TN_label">Alien::GvaScript::Event</h1>
<div class="TN_content">
<p><em>application-specific events
</em></p>
<div class="TN_node" onPing="jumpto_href">
<h3 class="TN_label">Table of contents</h3>
<div class="TN_content">
<div class="TN_leaf">
<a class="TN_label" href="#NAME">NAME</a>
<div class="TN_content"></div>
</div>
<div class="TN_leaf">
<a class="TN_label" href="#SYNOPSIS">SYNOPSIS</a>
<div class="TN_content"></div>
</div>
<div class="TN_leaf">
<a class="TN_label" href="#DESCRIPTION">DESCRIPTION</a>
<div class="TN_content"></div>
</div>
<div class="TN_node">
<a class="TN_label" href="#METHODS">METHODS</a>
<div class="TN_content"><div class="TN_leaf">
<a class="TN_label" href="#fireEvent_first_syntax_">fireEvent (first syntax)</a>
<div class="TN_content"></div>
</div>
<div class="TN_leaf">
<a class="TN_label" href="#fireEvent_second_syntax_">fireEvent (second syntax)</a>
<div class="TN_content"></div>
</div>
</div>
</div>
<div class="TN_node">
<a class="TN_label" href="#REGISTERING_AN_EVENT_HANDLER">REGISTERING AN EVENT HANDLER</a>
<div class="TN_content"><div class="TN_leaf">
<a class="TN_label" href="#Event_structure">Event structure</a>
<div class="TN_content"></div>
</div>
</div>
</div>
</div>
</div>
<hr/>
</div>
</div>
<div class="TN_node" id="NAME">
<h2 class="TN_label">NAME</h2>
<div class="TN_content">
<p>Alien::GvaScript::Event - application-specific events</p>
</div>
</div>
<div class="TN_node" id="SYNOPSIS">
<h2 class="TN_label">SYNOPSIS</h2>
<div class="TN_content">
<pre> MyConstructor = function (...) {...};
MyContructor.prototype = {
fireEvent = GvaScript.fireEvent, // copy into the target object
someMethod: function(...) {
...
this.fireEvent(eventName, target1, target2, ...);
// OR ...
this.fireEvent({type: eventName,
prop1: value1,
... }, target1, target2, ...);
}
};</pre>
</div>
</div>
<div class="TN_node" id="DESCRIPTION">
<h2 class="TN_label">DESCRIPTION</h2>
<div class="TN_content">
<p>Extension of the HTML event model with specific events.
Various <code>GvaScript</code> controllers use this to manage interactions
between the DOM elements and the controller. Client code
can register a an event handler either within the
HTML code, or through Javascript.</p>
<p>Events have names specific to the controller
(for example <code>choiceList</code> uses events <code>Highlight</code> and <code>Ping</code>;
<code>treeNavigator</code> uses events <code>Close</code>, <code>Open</code>, <code>BeforeLoadContent</code>, etc.).</p>
</div>
</div>
<div class="TN_node" id="METHODS">
<h2 class="TN_label">METHODS</h2>
<div class="TN_content">
<div class="TN_node" id="fireEvent_first_syntax_">
<h3 class="TN_label">fireEvent (first syntax)</h3>
<div class="TN_content">
<p>If a class needs to fire specific events, it must
<i>copy</i> the <code>GvaScript.fireEvent</code> method into its own
methods (so that "this" is properly bound to an instance
of that class).</p>
<p>The first argument to <code>fireEvent</code> is usually an event name. This
can be any string, without the <code>on</code> prefix :</p>
<pre> this.fireEvent("Ping", this.htmlElement, otherElement1, ...);</pre>
<p>The method will inspect all HTML elements supplied in
( run in 1.851 second using v1.01-cache-2.11-cpan-df04353d9ac )