X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/556d7550dd118fcf4d4ad9944c506b1d73d51d03..8266508aec785b49328716a9a95ac22a8735a3cc:/lib/MECON/Marco/ImagenAnimada.php?ds=sidebyside diff --git a/lib/MECON/Marco/ImagenAnimada.php b/lib/MECON/Marco/ImagenAnimada.php index 4c78a04..792167e 100644 --- a/lib/MECON/Marco/ImagenAnimada.php +++ b/lib/MECON/Marco/ImagenAnimada.php @@ -1,45 +1,48 @@ - -// +----------------------------------------------------------------------+ -// -// $Id$ -// $Author$ -// $URL$ -// $Date$ -// $Rev$ -// + +------------------------------------------------------------------------------- +$Id$ +-----------------------------------------------------------------------------*/ + +require_once 'MECON/HTML/Image.php'; define('MECON_MARCO_IMAGENANIMADA_DIR_GENERAL', '/MECON/images'); -// +X2C Class 17 :ImagenAnimada +// +X2C Class 17 :MECON_Marco_ImagenAnimada /** * Clase para el manejo de la animacion de las imagenes. Utilizada principalmente en la barra de secciones * + * @package MECON_Marco * @access public */ -class ImagenAnimada { +class MECON_Marco_ImagenAnimada { /** * Nombre del archivo imagen. * * @var string $imgComun * @access private */ - var $_imgComun; + var $_imgComun = ''; /** * Nombre del archivo imagen. @@ -47,7 +50,7 @@ class ImagenAnimada { * @var string $imgMouseOn * @access private */ - var $_imgMouseOn; + var $_imgMouseOn = ''; /** * Nombre del archivo imagen. @@ -55,10 +58,139 @@ class ImagenAnimada { * @var string $imgSelect * @access private */ - var $_imgSelect; + var $_imgSelect = ''; + + /** + * Indica si la imagen esta seleccionada. + * + * @var bool $seleccionada + * @access protected + */ + var $_seleccionada = false; + + /** + * Indica si está habilitado el link. + * + * @var bool $habilitada + * @access protected + */ + var $_habilitada = true; + + /** + * Link a donde apunta la imagen. + * + * @var string $link + * @access protected + */ + var $_link = ''; + + /** + * Nombre de la imagen + * + * @var string $nombre + * @access protected + */ + var $_nombre = ''; + + /** + * Gets Seleccionada. + * + * @return bool + * @access public + */ + function getSeleccionada() + { + return $this->_seleccionada; + } + /** + * Sets Seleccionada. + * + * @param bool $seleccionada Seleccionada. + * + * @return void + * @access public + */ + function setSeleccionada($seleccionada) + { + $this->_seleccionada = $seleccionada; + } + + /** + * Gets Habilitada. + * + * @return bool + * @access public + */ + function getHabilitada() + { + return $this->_habilitada; + } + /** + * Sets Habilitada. + * + * @param bool $habilitada Habilitada. + * + * @return void + * @access public + */ + function setHabilitada($habilitada) + { + $this->_habilitada = $habilitada; + } + + /** + * Gets Link. + * + * @return string + * @access public + */ + function getLink() + { + return $this->_link; + } + /** + * Sets Link. + * + * @param string $link Link. + * + * @return void + * @access public + */ + function setLink($link) + { + $this->_link = $link; + } + + /** + * Gets Nombre. + * + * @return string + * @access public + */ + function getNombre() + { + return $this->_nombre; + } + /** + * Sets Nombre. + * + * @param string $nombre Nombre. + * + * @return void + * @access public + */ + function setNombre($nombre) + { + $this->_nombre = $nombre; + } // ~X2C + /** + * Texto alternativo. + */ + var $_alt = ''; + // +X2C Operation 70 /** * Constructor. Recibe como parametro el nombre del archivo que contiene la imagen. @@ -67,11 +199,14 @@ class ImagenAnimada { * @param string $imagenMouseOn Imagen alterna con el mouse por arriba * @param string $imagenSelect Imagen alterna cuando esta seleccionada la seccion * @param string $directorio Directorio en donde se encuentran las imagenes + * @param string $nombre Nombre de la imagen animada. + * @param string $link Link. + * @param string $alt Texto alternativo para la imagen. * * @return void * @access public */ - function ImagenAnimada($imagenComun, $imagenMouseOn = '', $imagenSelect = '', $directorio = '')// ~X2C + function MECON_Marco_ImagenAnimada($imagenComun, $imagenMouseOn = '', $imagenSelect = '', $directorio = '', $nombre = '', $link = '', $alt = '') // ~X2C { if ($imagenComun !== '') { $this->_imgComun = $this->_calcularImagen($imagenComun, $directorio); @@ -79,15 +214,18 @@ class ImagenAnimada { $this->_imgMouseOn = $this->_calcularImagen($imagenMouseOn, $directorio); } else { - $this->_imgMouseOn = $this->_calcularImagen($imagenMouseOn, $directorio, '_f2'); + $this->_imgMouseOn = $this->_calcularImagen($imagenComun, $directorio, '_f2'); } if ($imagenSelect !== '') { $this->_imgSelect = $this->_calcularImagen($imagenSelect, $directorio); } else { - $this->_imgSelect = $this->_calcularImagen($imagenSelect, $directorio, '_f3'); + $this->_imgSelect = $this->_calcularImagen($imagenComun, $directorio, '_f3'); } } + $this->_nombre = $nombre; + $this->_link = $link; + $this->_alt = $alt ? $alt : $nombre; } // -X2C @@ -98,9 +236,24 @@ class ImagenAnimada { * @return string * @access public */ - function toHtml()// ~X2C + function toHtml() // ~X2C { - trigger_error('Poner javascript, crear imagen y detectar si esta seleccionada o no (o pasarlo por el constructor)', E_USER_WARNING); + $src = $this->getSeleccionada() ? $this->_imgSelect : $this->_imgComun; + $img = new MECON_HTML_Image($src, $this->_alt, array('name' => $this->_nombre, 'border' => 0)); + $html = $img->toHtml(); + if ($this->getHabilitada()) { + if ($this->getSeleccionada()) { + $prepend = ''; + } else { + $prepend = '_nombre.'\',\'\',\''.$this->_imgMouseOn.'\',1)>'; + } + $html = $prepend . $html . ''; + } + return $html; } // -X2C @@ -113,7 +266,7 @@ class ImagenAnimada { * @return string * @access protected */ - function _calcularImagen($imagen, $directorio, $modificador = '')// ~X2C + function _calcularImagen($imagen, $directorio, $modificador = '') // ~X2C { if ($modificador !== '') { $pos = strrpos($imagen, '.'); @@ -130,6 +283,6 @@ class ImagenAnimada { } // -X2C -} // -X2C Class :ImagenAnimada +} // -X2C Class :MECON_Marco_ImagenAnimada -?> +?> \ No newline at end of file