]> git.llucax.com Git - mecon/meconlib.git/blobdiff - HTML/php/Tabla.php
(no commit message)
[mecon/meconlib.git] / HTML / php / Tabla.php
index b38345a3ee6275e0db649a4731da227e91b2a5f9..5be0bd8d8aa336ebbf98b3e17ff9f154908971ba 100644 (file)
@@ -44,6 +44,13 @@ class Tabla extends HTML_Table {
     * @var Object HTML_Table
     */
     var $_tabla;
+
+    /**
+     * Atributos de las tablas.
+     *
+     * @var array
+     */
+    var $_atribTabla;
     
     /**
     * Constructor. 
@@ -61,15 +68,27 @@ class Tabla extends HTML_Table {
     {
         $this->_conf = include 'Tabla/conf_Tabla.php'; // Obtengo los valores particulares de configuracion
         // Seteo los atributos para la tabla
-        if (!strcmp($atributos,'')) {
-            $atributos = $this->_conf['atributos']['tabla_comun'];
-        }        
+        $this->_atribTabla = $this->_parseAttributes($this->_conf['atributos']['tabla_comun']);
         //Genero el objeto HTML_Table
-        $this->HTML_Table($atributos);
+        if ($atributos != '') {
+            $tmp = $this->_parseAttributes($atributos);
+            if (isset($tmp['width'])) {
+                $this->_atribTabla['width'] = $tmp['width'];
+            }
+            if (isset($tmp['bgcolor'])) {
+                $this->_atribTabla['bgcolor'] = $tmp['bgcolor'];
+            }
+            if (isset($tmp['cellspacing'])) {
+                $this->_atribTabla['cellspacing']  = $tmp['cellspacing'];
+            }            
+            if (isset($tmp['cellpadding'])) {
+                $this->_atribTabla['cellpadding']  = $tmp['cellpadding'];
+            }            
+        }        
+        $this->HTML_Table($this->_atribTabla);
         //Modifico los atributos de todas las tablas
         //Hay que encontrar o hacer una funcion que setee los atributos para las futuras
         //inserciones.
-    //    $this->setAllAttributes($this->_conf['atributos']['celda_comun']);
     }    
     
     /**                 
@@ -170,10 +189,22 @@ class Tabla extends HTML_Table {
     }
 
     /**                 
+    * Setea una columna como del tipo titulo
+    *
+    * @param int $columna
+    * 
+    * @access public
+    */
+    function setColTitulo ($columna)
+    {
+        return $this->updateColAttributes($columna,$this->_conf['atributos']['celda_titulo']);
+    }
+ /**                 
     * Alinea una columna entera  
     *
     * @param int $columna
-    * @param strin $valor
+    * @param string $valor
     * 
     * @access public
     */
@@ -182,12 +213,25 @@ class Tabla extends HTML_Table {
         return $this->updateColAttributes($columna,'align="'.$valor.'"');
     }
 
+    /**                 
+    * Cambia el tamanio de una columna entera  
+    *
+    * @param int $columna
+    * @param string $valor
+    * 
+    * @access public
+    */
+    function setColWidth ($columna, $valor)
+    {
+        return $this->updateColAttributes($columna,'width="'.$valor.'"');
+    }
+
     /**                 
     * Cambia el color de fondo de una celda  
     *
     * @param int $fila
     * @param int $columna
-    * @param strin $valor
+    * @param string $valor
     * 
     * @access public
     */
@@ -214,7 +258,9 @@ class Tabla extends HTML_Table {
     {
         // Agregar la tabla de fondo.
         if ($doble == 0 ) {
-            $tabla_externa =  new HTML_Table($this->_conf['atributos']['tabla_contenedora']);
+            $tmp = $this->_parseAttributes($this->_conf['atributos']['tabla_contenedora']);
+            $tmp['width'] = $this->_atribTabla['width'];
+            $tabla_externa =  new HTML_Table($tmp);
             $tabla_externa->setCellContents(0,0,parent::toHtml(),$this->_conf['atributos']['celda_comun']);
             $result = $tabla_externa->toHtml();    
         }