phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] CVS: etemplate/inc class.tab_widget.inc.php,1.2,1.3


From: Ralf Becker <address@hidden>
Subject: [Phpgroupware-cvs] CVS: etemplate/inc class.tab_widget.inc.php,1.2,1.3
Date: Sat, 15 Jun 2002 08:54:20 -0400

Update of /cvsroot/phpgroupware/etemplate/inc
In directory subversions:/tmp/cvs-serv24050

Modified Files:
        class.tab_widget.inc.php 
Log Message:
The tab widget is now completly templatized, using the templates 
'etemplate.tab_widget.*'.
There is an example / test now under 'etemplate.tab_widget.test'.

Index: class.tab_widget.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/etemplate/inc/class.tab_widget.inc.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** class.tab_widget.inc.php    10 Jun 2002 21:36:22 -0000      1.2
--- class.tab_widget.inc.php    15 Jun 2002 12:54:18 -0000      1.3
***************
*** 16,19 ****
--- 16,20 ----
        @class tab_widget
        @abstract widget that shows one row of tabs and an other row with the 
eTemplate of the selected tab
+       @note see the example in 'etemplate.tab_widget.test' (use show to view 
it)
        @note This widget is independent of the UI as it only uses 
etemplate-widgets and has therefor no render-function
        */
***************
*** 30,34 ****
                }
  
!               function pre_process(&$cell,&$value,&$parent)
                {
                        $labels = explode('|',$cell['label']);
--- 31,35 ----
                }
  
!               function pre_process(&$cell,&$value,&$templ)
                {
                        $labels = explode('|',$cell['label']);
***************
*** 36,57 ****
                        $names = explode('|',$cell['name']);
  
!                       $cell['type'] = 'template';
!                       $templ = new etemplate();
                        $tab = new etemplate('etemplate.tab_widget.tab');
                        $tab_active = new 
etemplate('etemplate.tab_widget.tab_active');
  
!                       $templ->init('*** generated 
tab_widget','','',0,'',0,0);        // make an empty template
  
!                       $tabs = array();        // generate the tabs row
                        while (list($k,$name) = each($names))
                        {
!                               $tcell = $templ->empty_cell();
! /*                            $tcell['name'] = "_tab_widget[$name]";
!                               $tcell['type'] = 'button';
!                               $tcell['label'] = $labels[$k];
!                               $tcell['help'] = $helps[$k];
! */                            if (is_array($value['_tab_widget']) && 
isset($value['_tab_widget'][$name]))
                                {
! //                                    $tcell['span'] = ',nmh';        // set 
tab as selected
                                        
$GLOBALS['phpgw_info']['etemplate']['extension_data']['tab_widget'][$cell['name']]
 = $selected_tab = $name;
                                        $tcell['name'] = $tab_active;
--- 37,53 ----
                        $names = explode('|',$cell['name']);
  
!                       $tabs = new etemplate();
                        $tab = new etemplate('etemplate.tab_widget.tab');
                        $tab_active = new 
etemplate('etemplate.tab_widget.tab_active');
  
!                       $tabs->init('*** generated tabs','','',0,'',0,0);       
// make an empty template
  
!                       $tab_row = array();     // generate the tab row
                        while (list($k,$name) = each($names))
                        {
!                               $tcell = $tabs->empty_cell();
!                               if (is_array($value['_tab_widget']) && 
isset($value['_tab_widget'][$name]))
                                {
!                                       // save selected tab in persistent 
extension_data to use it in post_process
                                        
$GLOBALS['phpgw_info']['etemplate']['extension_data']['tab_widget'][$cell['name']]
 = $selected_tab = $name;
                                        $tcell['name'] = $tab_active;
***************
*** 64,107 ****
                                $tcell['size'] = "_tab_widget[$name]";
                                $value['_tab_widget'][$name] = array(
!                                       'name'  => "_tab_widget[$name]",
                                        'label' => $labels[$k],
                                        'help'  => $helps[$k]
                                );
!                               $tabs[$templ->num2chrs($k)] = $tcell;
                        }
                        // add one empty cell to take all the space of the row
!                       $tabs[$k = $templ->num2chrs(sizeof($tabs))] = 
$templ->empty_cell();
!                       $templ->data[0][$k] = '99%'; // width
  
                        if (!isset($selected_tab))
                        {
!                               //$tabs['A']['span'] = ',nmh';
!                               $tabs['A']['name'] = $tab_active;
                                
$GLOBALS['phpgw_info']['etemplate']['extension_data']['tab_widget'][$cell['name']]
 = $selected_tab = $names[0];
                        }
!                       $templ->data[1] = $tabs;
! 
!                       $tcell = $templ->empty_cell();  // make the 
tabwidget-header
!                       $tcell['label'] = ' ';
!                       $tcell['span'] = 'all';
!                       $templ->data[2]['A'] = $tcell;
!                       $templ->data[0]['c2'] = 'nmh';
! 
!                       $tcell = $templ->empty_cell();  // make the 
tabwidget-body
!                       $tcell['type'] = 'template';
!                       $tcell['name'] = $selected_tab;
!                       $tcell['span'] = 'all';
!                       $templ->data[3]['A'] = $tcell;
! 
!                       $templ->rows = 3;
!                       $templ->cols = sizeof($tabs);
! 
!                       $templ->size = ',,,,0';
  
                        $cell['type'] = 'template';
!                       $cell['name'] = $templ;
                        $cell['label'] = $cell['help'] = '';
  
!                       return False;   // extra Label NOT ok
                }
  
--- 60,93 ----
                                $tcell['size'] = "_tab_widget[$name]";
                                $value['_tab_widget'][$name] = array(
!                                       'name'  => $name,
                                        'label' => $labels[$k],
                                        'help'  => $helps[$k]
                                );
!                               $tab_row[$tabs->num2chrs($k)] = $tcell;
                        }
                        // add one empty cell to take all the space of the row
!                       $tab_row[$k = $tabs->num2chrs(sizeof($tab_row))] = 
$tabs->empty_cell();
!                       $tabs->data[0][$k] = '99%'; // width
!                       $tabs->data[0]['c1'] = ',bottom';
  
                        if (!isset($selected_tab))
                        {
!                               $tab_row['A']['name'] = $tab_active;
                                
$GLOBALS['phpgw_info']['etemplate']['extension_data']['tab_widget'][$cell['name']]
 = $selected_tab = $names[0];
                        }
!                       $tabs->data[1] = $tab_row;
!                       $tabs->rows = 1;
!                       $tabs->cols = sizeof($tab_row);
!                       $tabs->size = ',,,,0';
! 
!                       $tab_widget = new etemplate('etemplate.tab_widget');
!                       $tab_widget->set_cell_attribute('@tabs','name',$tabs);
!                       
$tab_widget->set_cell_attribute('@body','name',$selected_tab);
  
                        $cell['type'] = 'template';
!                       $cell['name'] = $tab_widget;
                        $cell['label'] = $cell['help'] = '';
  
!                       return False;   // NO extra Label
                }
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]