Inheritance diagram for ilPCTableData:
Collaboration diagram for ilPCTableData:Public Member Functions | |
| ilPCTableData (&$a_dom) | |
| Constructor public. | |
| newRowAfter () | |
| insert new row after cell | |
| newRowBefore () | |
| insert new row after cell | |
| deleteRowContent (&$a_row_node) | |
| delete content of cells of a row (not the cells itself) | |
| deleteTDContent (&$a_td_node) | |
| delete content of a cell (not the cell itself) | |
| deleteRow () | |
| delete row of cell | |
| newColAfter () | |
| insert new column after cell | |
| newColBefore () | |
| insert new column before cell | |
| deleteCol () | |
| delete column of cell | |
| moveRowDown () | |
| move row down | |
| moveRowUp () | |
| move row up | |
| moveColRight () | |
| move column right | |
| moveColLeft () | |
| move column left | |
Data Fields | |
| $dom | |
Definition at line 36 of file class.ilPCTableData.php.
| ilPCTableData::deleteCol | ( | ) |
delete column of cell
Definition at line 211 of file class.ilPCTableData.php.
References ilPageContent::$hier_id, ilPageContent::getHierId(), and ilPageContent::getNode().
{
$td =& $this->getNode();
// determine current column nr
$hier_id = $this->getHierId();
$parts = explode("_", $hier_id);
$col_nr = array_pop($parts);
$col_nr--;
$parent_tr =& $td->parent_node();
$parent_table =& $parent_tr->parent_node();
// iterate all table rows
$rows =& $parent_table->child_nodes();
for($i=0; $i<count($rows); $i++)
{
if($rows[$i]->node_name() == "TableRow")
{
// unlink td at $col_nr
$tds =& $rows[$i]->child_nodes();
$tds[$col_nr]->unlink($tds[$col_nr]);
}
}
}
Here is the call graph for this function:| ilPCTableData::deleteRow | ( | ) |
delete row of cell
Definition at line 127 of file class.ilPCTableData.php.
References ilPageContent::getNode().
{
$td =& $this->getNode();
$parent_tr =& $td->parent_node();
$parent_tr->unlink($parent_tr);
}
Here is the call graph for this function:| ilPCTableData::deleteRowContent | ( | &$ | a_row_node | ) |
delete content of cells of a row (not the cells itself)
private
Definition at line 95 of file class.ilPCTableData.php.
Referenced by newRowAfter(), and newRowBefore().
{
// remove td content of row
$tds =& $a_row_node->child_nodes();
for($i=0; $i<count($tds); $i++)
{
$td_childs =& $tds[$i]->child_nodes();
for($j=0; $j<count($td_childs); $j++)
{
$tds[$i]->remove_child($td_childs[$j]);
}
}
}
Here is the caller graph for this function:| ilPCTableData::deleteTDContent | ( | &$ | a_td_node | ) |
delete content of a cell (not the cell itself)
private
Definition at line 114 of file class.ilPCTableData.php.
Referenced by newColAfter(), and newColBefore().
{
$td_childs =& $a_td_node->child_nodes();
for($j=0; $j<count($td_childs); $j++)
{
$a_td_node->remove_child($td_childs[$j]);
}
}
Here is the caller graph for this function:| ilPCTableData::ilPCTableData | ( | &$ | a_dom | ) |
Constructor public.
Definition at line 44 of file class.ilPCTableData.php.
References ilPageContent::ilPageContent(), and ilPageContent::setType().
{
parent::ilPageContent();
$this->setType("td");
$this->dom =& $a_dom;
}
Here is the call graph for this function:| ilPCTableData::moveColLeft | ( | ) |
move column left
Definition at line 299 of file class.ilPCTableData.php.
References ilPageContent::$hier_id, ilPageContent::getHierId(), and ilPageContent::getNode().
{
$td =& $this->getNode();
// determine current column nr
$hier_id = $this->getHierId();
$parts = explode("_", $hier_id);
$col_nr = array_pop($parts);
$col_nr--;
$parent_tr =& $td->parent_node();
$parent_table =& $parent_tr->parent_node();
// iterate all table rows
$rows =& $parent_table->child_nodes();
for($i=0; $i<count($rows); $i++)
{
if($rows[$i]->node_name() == "TableRow")
{
$tds =& $rows[$i]->child_nodes();
$td =& $tds[$col_nr];
$prev =& $td->previous_sibling();
$td_copy = $td->clone_node(true);
$td_copy =& $prev->insert_before($td_copy, $prev);
$td->unlink($td);
}
}
}
Here is the call graph for this function:| ilPCTableData::moveColRight | ( | ) |
move column right
Definition at line 266 of file class.ilPCTableData.php.
References ilPageContent::$hier_id, ilPageContent::getHierId(), and ilPageContent::getNode().
{
$td =& $this->getNode();
// determine current column nr
$hier_id = $this->getHierId();
$parts = explode("_", $hier_id);
$col_nr = array_pop($parts);
$col_nr--;
$parent_tr =& $td->parent_node();
$parent_table =& $parent_tr->parent_node();
// iterate all table rows
$rows =& $parent_table->child_nodes();
for($i=0; $i<count($rows); $i++)
{
if($rows[$i]->node_name() == "TableRow")
{
$tds =& $rows[$i]->child_nodes();
$td =& $tds[$col_nr];
//$td =& $this->getNode();
$next =& $td->next_sibling();
$next_copy = $next->clone_node(true);
$next_copy =& $td->insert_before($next_copy, $td);
$next->unlink($next);
}
}
}
Here is the call graph for this function:| ilPCTableData::moveRowDown | ( | ) |
move row down
Definition at line 240 of file class.ilPCTableData.php.
References ilPageContent::getNode().
{
$td =& $this->getNode();
$tr =& $td->parent_node();
$next =& $tr->next_sibling();
$next_copy = $next->clone_node(true);
$next_copy =& $tr->insert_before($next_copy, $tr);
$next->unlink($next);
}
Here is the call graph for this function:| ilPCTableData::moveRowUp | ( | ) |
move row up
Definition at line 253 of file class.ilPCTableData.php.
References ilPageContent::getNode().
{
$td =& $this->getNode();
$tr =& $td->parent_node();
$prev =& $tr->previous_sibling();
$tr_copy = $tr->clone_node(true);
$tr_copy =& $prev->insert_before($tr_copy, $prev);
$tr->unlink($tr);
}
Here is the call graph for this function:| ilPCTableData::newColAfter | ( | ) |
insert new column after cell
Definition at line 138 of file class.ilPCTableData.php.
References ilPageContent::$hier_id, deleteTDContent(), ilPageContent::getHierId(), and ilPageContent::getNode().
{
$td =& $this->getNode();
// determine current column nr
$hier_id = $this->getHierId();
$parts = explode("_", $hier_id);
$col_nr = array_pop($parts);
$col_nr--;
$parent_tr =& $td->parent_node();
$parent_table =& $parent_tr->parent_node();
// iterate all table rows
$rows =& $parent_table->child_nodes();
for($i=0; $i<count($rows); $i++)
{
if($rows[$i]->node_name() == "TableRow")
{
// clone td at $col_nr
$tds =& $rows[$i]->child_nodes();
$new_td =& $tds[$col_nr]->clone_node(true);
// insert clone after $col_nr
if ($next_td =& $tds[$col_nr]->next_sibling())
{
$new_td =& $next_td->insert_before($new_td, $next_td);
}
else
{
$new_td =& $rows[$i]->append_child($new_td);
}
$this->deleteTDContent($new_td);
}
}
}
Here is the call graph for this function:| ilPCTableData::newColBefore | ( | ) |
insert new column before cell
Definition at line 178 of file class.ilPCTableData.php.
References ilPageContent::$hier_id, deleteTDContent(), ilPageContent::getHierId(), and ilPageContent::getNode().
{
$td =& $this->getNode();
// determine current column nr
$hier_id = $this->getHierId();
$parts = explode("_", $hier_id);
$col_nr = array_pop($parts);
$col_nr--;
$parent_tr =& $td->parent_node();
$parent_table =& $parent_tr->parent_node();
// iterate all table rows
$rows =& $parent_table->child_nodes();
for($i=0; $i<count($rows); $i++)
{
if($rows[$i]->node_name() == "TableRow")
{
// clone td at $col_nr
$tds =& $rows[$i]->child_nodes();
$new_td =& $tds[$col_nr]->clone_node(true);
// insert clone before $col_nr
$new_td =& $tds[$col_nr]->insert_before($new_td, $tds[$col_nr]);
$this->deleteTDContent($new_td);
}
}
}
Here is the call graph for this function:| ilPCTableData::newRowAfter | ( | ) |
insert new row after cell
Definition at line 55 of file class.ilPCTableData.php.
References deleteRowContent(), and ilPageContent::getNode().
{
$td =& $this->getNode();
$parent_tr =& $td->parent_node();
$new_tr = $parent_tr->clone_node(true);
if ($next_tr =& $parent_tr->next_sibling())
{
$new_tr =& $next_tr->insert_before($new_tr, $next_tr);
}
else
{
$parent_table =& $parent_tr->parent_node();
$new_tr =& $parent_table->append_child($new_tr);
}
// remove td content of new row
$this->deleteRowContent($new_tr);
}
Here is the call graph for this function:| ilPCTableData::newRowBefore | ( | ) |
insert new row after cell
Definition at line 78 of file class.ilPCTableData.php.
References deleteRowContent(), and ilPageContent::getNode().
{
$td =& $this->getNode();
$parent_tr =& $td->parent_node();
$new_tr = $parent_tr->clone_node(true);
$new_tr =& $parent_tr->insert_before($new_tr, $parent_tr);
// remove td content of new row
$this->deleteRowContent($new_tr);
}
Here is the call graph for this function:| ilPCTableData::$dom |
Definition at line 38 of file class.ilPCTableData.php.
1.7.1