]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MLIB/PDF/Tabla.php
Se agrega a la clase MLIB_PDF_Tabla la posibilidad de agregar estilos nuevos para
[mecon/meconlib.git] / lib / MLIB / PDF / Tabla.php
index ace8132d471330d7bb95d297a80bbd8ca4ad8074..10f83856f7a31bc51e1de7bd4fbbf7f50e83b8e2 100644 (file)
@@ -145,26 +145,42 @@ class MLIB_PDF_Tabla extends MLIB_PDF_Contenido {
      */
     function _obtenerEstiloCelda($row, $col) {
         $clase = $this->_tabla->getCellAttributes($row, $col);
-        if (@$clase['cabecera']) {
-            $estilo = $this->_config['celda_cabecera'];
-        }
-        elseif (@$clase['titulo']) {
-            $estilo = $this->_config['celda_titulo'];
-        }
-        elseif (@$clase['oscura']) {
-            $tmp = $this->_config['celda_comun'];
-            $tmp['fillcolor'] = $this->_config['celda_cabecera']['fillcolor'];
-            $tmp['fill'] = $this->_config['celda_cabecera']['fill'];
-            $estilo = $tmp;
-        }
-        elseif (@$clase['clara']) {
-            $tmp = $this->_config['celda_comun'];
-            $tmp['fillcolor'] = $this->_config['celda_titulo']['fillcolor'];
-            $tmp['fill'] = $this->_config['celda_titulo']['fill'];
-            $estilo = $tmp;
-        }
-        else {
-            $estilo = $this->_config['celda_comun'];
+
+        switch (@$clase['mlib_style'])
+        {
+            case 'cabecera':
+                $estilo = $this->_config['celda_cabecera'];
+                break;
+            case 'titulo':
+                $estilo = $this->_config['celda_titulo'];
+                break;
+            case 'oscura':
+                $tmp = $this->_config['celda_comun'];
+                $tmp['fillcolor'] = $this->_config['celda_cabecera']['fillcolor'];
+                $tmp['fill'] = $this->_config['celda_cabecera']['fill'];
+                $estilo = $tmp;
+                break;
+            case 'clara':
+                $tmp = $this->_config['celda_comun'];
+                $tmp['fillcolor'] = $this->_config['celda_titulo']['fillcolor'];
+                $tmp['fill'] = $this->_config['celda_titulo']['fill'];
+                $estilo = $tmp;
+                break;
+            case 'comun':
+                $estilo = $this->_config['celda_comun'];
+                break;
+            default:
+                //Si no encuentro el estilo seteado a mano, le asigno el estilo
+                //seteado por defecto.
+                if (@$this->_config[$clase['mlib_style']])
+                {
+                    $estilo = $this->_config[$clase['mlib_style']];
+                }
+                else
+                {
+                    $estilo = $this->_config['celda_comun'];
+                }
+                break;
         }
         if (@$clase['colspan']) {
             $estilo['colspan'] = $clase['colspan'];
@@ -361,5 +377,17 @@ class MLIB_PDF_Tabla extends MLIB_PDF_Contenido {
         }
         $this->_marco->espacioDisponible = $alto;
     }
+
+    /**
+     * Funcion que agrega un estilo a los definidos 
+     *
+     * @param &Object $ESTILO MLIB_HTML_Tabla_Estilo
+     *
+     * @return void
+     * @access public
+     */
+    function setStyle($ESTILO) {
+        $this->_config[$ESTILO->name] = $ESTILO->__toArray();
+    }
 }
 ?>
\ No newline at end of file