<?php
/*
* ============================================================================
*
* @name ExcelXMLRow.php
*
* @author Andrew A. Aculana
* @version 2.0
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @date 2006-05-22
*
* ============================================================================
*
* License: GNU Lesser General Public License (LGPL)
*
* Copyright (c) 2004 LINK2SUPPORT INC. All rights reserved.
*
* This file is part of the L2S Online Application Framework
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library 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.
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* ============================================================================
*/
/**
* @package ExcelXMLParser
* @subpackage ExcelXMLParser
*/
include_once 'ExcelXMLCell.php';
class ExcelXMLRow{
/**
* Excel XML Row Attributes
* @var Associative Array $Cells
* @var Iterator $Iterator
*/
var $Cells;
var $Iterator;
var $Encoding;
#-----------------------------------------------------------------------------#
/**
* class constructor - initialize attributes
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return null
*/
function ExcelXMLRow(&$Data,&$Encoding){
if(!isset($Data['children']['Cell'])){
$Data['children']['Cell'] = array();
}
$this->Cells =& $Data['children']['Cell'];
$this->Iterator = new ExcelXMLArrayIterator($this->Cells);
$this->Encoding =& $Encoding;
}
#-----------------------------------------------------------------------------#
/**
* get the cell count
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return int
*/
function getCellCount(){
return $this->Iterator->length();
}
#-----------------------------------------------------------------------------#
/**
* get the active cell
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return long - pointer to an object
*/
function &getActiveCell(){
$active =& $this->Iterator->current();
if($active){
$Cell = new ExcelXMLCell($active,$this->Encoding);
return $Cell;
}else{
return NULL;
}
}
#-----------------------------------------------------------------------------#
/**
* get the next cell
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return long - pointer to an object
*/
function &getNextCell(){
$next =& $this->Iterator->next();
if($next){
$Cell = new ExcelXMLCell($next,$this->Encoding);
return $Cell;
}else{
return NULL;
}
}
#-----------------------------------------------------------------------------#
/**
* get the first cell
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return long - pointer to an object
*/
function &getFirstCell(){
$top =& $this->Iterator->top();
if($top){
$Cell = new ExcelXMLCell($top,$this->Encoding);
return $Cell;
}else{
return NULL;
}
}
#-----------------------------------------------------------------------------#
/**
* get the last cell
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @return long - pointer to an object
*/
function &getLastCell(){
$bottom =& $this->Iterator->bottom();
if($bottom){
$Cell = new ExcelXMLCell($bottom,$this->Encoding);
return $Cell;
}else{
return NULL;
}
}
#-----------------------------------------------------------------------------#
/**
* get the cell by cell index
*
* @author Andrew A. Aculana
* @access Public
* @version 2.0
* @copyright 2006-05-22
* @param int $ColumnIndex
* @return long - pointer to an object
*/
function &getCell($ColumnIndex = 0){
$current =& $this->Iterator->current();
if($current){
$Cell = new ExcelXMLCell($current,$this->Encoding);
return $Cell;
}else{
return NULL;
}
}
#-----------------------------------------------------------------------------#
}
?>
|