summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorxue <>2006-01-02 17:10:25 +0000
committerxue <>2006-01-02 17:10:25 +0000
commit2df9a40f504933e28ddb9974b97ae4b2bb893f86 (patch)
tree16bf90aff95dd4f8f4c26978c439ac48dd209a27 /framework
parent2d0739422a41237f48d2ff7c079043fa7f0b2944 (diff)
Added TTable sample.
Diffstat (limited to 'framework')
-rw-r--r--framework/Web/UI/WebControls/TStyle.php2
-rw-r--r--framework/Web/UI/WebControls/TTable.php131
2 files changed, 114 insertions, 19 deletions
diff --git a/framework/Web/UI/WebControls/TStyle.php b/framework/Web/UI/WebControls/TStyle.php
index 5624b09e..4585cca3 100644
--- a/framework/Web/UI/WebControls/TStyle.php
+++ b/framework/Web/UI/WebControls/TStyle.php
@@ -397,7 +397,7 @@ class TTableStyle extends TStyle
if($this->_cellSpacing>=0)
{
- $writer->addAttribute('cellspacing',"$this->_cellPadding");
+ $writer->addAttribute('cellspacing',"$this->_cellSpacing");
if($this->_cellSpacing===0)
$this->setStyleField('border-collapse','collapse');
}
diff --git a/framework/Web/UI/WebControls/TTable.php b/framework/Web/UI/WebControls/TTable.php
index 4a5e84b1..4f93f8f1 100644
--- a/framework/Web/UI/WebControls/TTable.php
+++ b/framework/Web/UI/WebControls/TTable.php
@@ -163,6 +163,7 @@ class TTable extends TWebControl
{
if($this->_rows)
{
+ $writer->writeLine();
foreach($this->_rows as $row)
{
$row->renderControl($writer);
@@ -193,23 +194,6 @@ class TTableRow extends TWebControl
return new TTableItemStyle;
}
- protected function addAttributesToRender($writer)
- {
- parent::addAttributesToRender($writer);
- $border=0;
- if($this->getHasStyle())
- {
- if($this->getGridLines()!=='None')
- {
- if(($border=$this->getBorderWidth())==='')
- $border=1;
- else
- $border=(int)$border;
- }
- }
- $writer->addAttribute('border',"$border");
- }
-
public function getCells()
{
if(!$this->_cells)
@@ -247,6 +231,7 @@ class TTableRow extends TWebControl
{
if($this->_cells)
{
+ $writer->writeLine();
foreach($this->_cells as $cell)
{
$cell->renderControl($writer);
@@ -371,7 +356,7 @@ class TTableCell extends TWebControl
parent::addAttributesToRender($writer);
if(($colspan=$this->getColumnSpan())>0)
$writer->addAttribute('colspan',"$colspan");
- if(($rowspan=$this->getColumnSpan())>0)
+ if(($rowspan=$this->getRowSpan())>0)
$writer->addAttribute('rowspan',"$rowspan");
}
@@ -446,4 +431,114 @@ class TTableHeaderCell extends TTableCell
$this->setViewState('CategoryText',$value,'');
}
}
+
+
+class TTableRowCollection extends TList
+{
+ /**
+ * the table that owns this collection.
+ * @var TTable
+ */
+ private $_o;
+
+ /**
+ * Constructor.
+ * @param TTable the table that owns this collection.
+ */
+ public function __construct(TTable $owner)
+ {
+ parent::__construct();
+ $this->_o=$owner;
+ }
+
+ /**
+ * @return TTable the table that owns this collection.
+ */
+ protected function getOwner()
+ {
+ return $this->_o;
+ }
+
+ /**
+ * Overrides the parent implementation with customized processing of the newly added item.
+ * @param mixed the newly added item
+ */
+ protected function addedItem($item)
+ {
+ $this->_o->addedControl($item);
+ }
+
+ /**
+ * Overrides the parent implementation with customized processing of the removed item.
+ * @param mixed the removed item
+ */
+ protected function removedItem($item)
+ {
+ $this->_o->removedControl($item);
+ }
+
+ /**
+ * Only string or instance of TControl can be added into collection.
+ * @param mixed the item to be added
+ */
+ protected function canAddItem($item)
+ {
+ return ($item instanceof TTableRow);
+ }
+}
+
+
+class TTableCellCollection extends TList
+{
+ /**
+ * the table row that owns this collection.
+ * @var TTableRow
+ */
+ private $_o;
+
+ /**
+ * Constructor.
+ * @param TTableRow the table row that owns this collection.
+ */
+ public function __construct(TTableRow $owner)
+ {
+ parent::__construct();
+ $this->_o=$owner;
+ }
+
+ /**
+ * @return TTableRow the table row that owns this collection.
+ */
+ protected function getOwner()
+ {
+ return $this->_o;
+ }
+
+ /**
+ * Overrides the parent implementation with customized processing of the newly added item.
+ * @param mixed the newly added item
+ */
+ protected function addedItem($item)
+ {
+ $this->_o->addedControl($item);
+ }
+
+ /**
+ * Overrides the parent implementation with customized processing of the removed item.
+ * @param mixed the removed item
+ */
+ protected function removedItem($item)
+ {
+ $this->_o->removedControl($item);
+ }
+
+ /**
+ * Only string or instance of TControl can be added into collection.
+ * @param mixed the item to be added
+ */
+ protected function canAddItem($item)
+ {
+ return ($item instanceof TTableCell);
+ }
+}
?> \ No newline at end of file