Location: PHPKode > projects > WCL - Web Control Library for PHP > IControl/EventDescriptor.php
<?php
/*
 * 	(C) Copyright by Christian Möller
 * 	All Rights reserved
 *
 * 	This file is part of the WCL (Web Control Library).
 *
 *  WCL is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  Foobar 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 General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with WCL.  If not, see <http://www.gnu.org/licenses/>.
 */


 /* 
 * Diese Klasse stellt ein Event dar, welches über
 * den Event Controller verwaltet wird. Im Event wird
 * der Handler gespeichert, der beim Aufruf eines 
 * Events in einem JavaScript genutzt wird. Desweiteren
 * hat die Event Klasse die Möglichkeit, sich selbst 
 * zu rendern, d.h. es gibt den Code-Snippet zurück,
 * der für den Aufruf des Events notwendig ist.
 */


class EventDescriptor {
	
	var $client_handler,	// Call Mechanismus 0 = PHP, 1 = JavaScript
		$server_handler,
		$exports;
		
	function EventDescriptor() {}
	
	function set_client_handler($handler)	{ $this->client_handler = $handler; $this->server_handler = false; }
	function set_server_handler($handler)	{ $this->server_handler = $handler; $this->client_handler = false; }
		
	function render() {
		$render_out = "javascript:";
		
		if ($this->client_handler)
			$render_out .= $this->client_handler.";";
		else if ($this->server_handler)
			$render_out .= "async_invoke('".$this->server_handler."');";
		
		return $render_out;	
	}
}

?>
Return current item: WCL - Web Control Library for PHP