* @copyright 2003-2007 KUBO Atsuhiro * @license http://www.php.net/license/3_0.txt PHP License 3.0 * @version CVS: $Id$ * @since File available since Release 0.1 */ // {{{ Net_UserAgent_Mobile_Display /** * Display information for Net_UserAgent_Mobile * * Net_UserAgent_Mobile_Display is a class for display information on * {@link Net_UserAgent_Mobile}. Handy for image resizing or dispatching. * * SYNOPSIS: * * require_once 'Net/UserAgent/Mobile.php'; * * $agent = &Net_UserAgent_Mobile::factory(); * $display = $agent->getDisplay(); * * $width = $display->getWidth(); * $height = $display->getHeight(); * list($width, $height) = $display->getSize(); * * if ($display->isColor()) { * $depth = $display->getDepth(); * } * * // only available in DoCoMo 505i * $width_bytes = $display->getWidthBytes(); * $height_bytes = $display->getHeightBytes(); * * * USING EXTERNAL MAP FILE: * If the environment variable DOCOMO_MAP exists, the specified XML data will * be used for DoCoMo display information. * * ex) Please add the following code. * $_SERVER['DOCOMO_MAP'] = '/path/to/DoCoMoMap.xml'; * * @category Networking * @package Net_UserAgent_Mobile * @author KUBO Atsuhiro * @copyright 2003-2007 KUBO Atsuhiro * @license http://www.php.net/license/3_0.txt PHP License 3.0 * @version Release: 0.31.0 * @since Class available since Release 0.1 */ class Net_UserAgent_Mobile_Display { // {{{ properties /**#@+ * @access public */ /**#@-*/ /**#@+ * @access private */ /** * width of the display * @var integer */ var $_width; /** * height of the display * @var integer */ var $_height; /** * depth of the display * @var integer */ var $_depth; /** * color capability of the display * @var boolean */ var $_color; /** * width (bytes) of the display * @var integer */ var $_widthBytes; /** * height (bytes) of the display * @var integer */ var $_heightBytes; /**#@-*/ /**#@+ * @access public */ // }}} // {{{ constructor /** * constructor * * @param array $data display infomation */ function Net_UserAgent_Mobile_Display($data) { $this->_width = (integer)@$data['width']; $this->_height = (integer)@$data['height']; $this->_depth = (integer)@$data['depth']; $this->_color = (boolean)@$data['color']; $this->_widthBytes = (integer)@$data['width_bytes']; $this->_heightBytes = (integer)@$data['height_bytes']; } // }}} // {{{ calcSize() /** * returns width * height of the display * * @return integer */ function calcSize() { return $this->_width * $this->_height; } // }}} // {{{ getSize() /** * returns width with height of the display * * @return array */ function getSize() { return array($this->_width, $this->_height); } // }}} // {{{ getWidth() /** * returns width of the display * * @return integer */ function getWidth() { return $this->_width; } // }}} // {{{ getHeight() /** * returns height of the display * * @return integer */ function getHeight() { return $this->_height; } // }}} // {{{ getDepth() /** * returns depth of the display * * @return integer */ function getDepth() { return $this->_depth; } // }}} // {{{ isColor() /** * returns true if the display has color capability * * @return boolean */ function isColor() { return $this->_color; } // }}} // {{{ getWidthBytes() /** * returns width (bytes) of the display * * @return integer */ function getWidthBytes() { return $this->_widthBytes; } // }}} // {{{ getHeightBytes() /** * returns height (bytes) of the display * * @return integer */ function getHeightBytes() { return $this->_heightBytes; } /**#@-*/ /**#@+ * @access private */ /**#@-*/ // }}} } // }}} /* * Local Variables: * mode: php * coding: iso-8859-1 * tab-width: 4 * c-basic-offset: 4 * c-hanging-comment-ender-p: nil * indent-tabs-mode: nil * End: */