]> git.llucax.com Git - software/bife/bife-all.git/blob - src/BIFE/Copy.php
- Added experimental phing build file.
[software/bife/bife-all.git] / src / BIFE / Copy.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +--------------------------------------------------------------------+
4 // |                       BIFE - Buil It FastEr                        |
5 // +--------------------------------------------------------------------+
6 // | This file is part of BIFE.                                         |
7 // |                                                                    |
8 // | BIFE is free software; you can redistribute it and/or modify it    |
9 // | under the terms of the GNU General Public License as published by  |
10 // | the Free Software Foundation; either version 2 of the License, or  |
11 // | (at your option) any later version.                                |
12 // |                                                                    |
13 // | BIFE is distributed in the hope that it will be useful, but        |
14 // | WITHOUT ANY WARRANTY; without even the implied warranty of         |
15 // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   |
16 // | General Public License for more details.                           |
17 // |                                                                    |
18 // | You should have received a copy of the GNU General Public License  |
19 // | along with Hooks; if not, write to the Free Software Foundation,   |
20 // | Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA      |
21 // +--------------------------------------------------------------------+
22 // | Created: Wed May 21 15:55:29 2003                                  |
23 // | Authors: Leandro Lucarella <luca@lugmen.org.ar>                    |
24 // +--------------------------------------------------------------------+
25 //
26 // $Id$
27 //
28
29 // +X2C includes
30 require_once 'BIFE/Fallback.php';
31 // ~X2C
32
33 // +X2C Class 76 :Copy
34 /**
35  * Fallback widget that copies the XML.
36  *
37  * @access public
38  */
39 class BIFE_Copy extends BIFE_Fallback {
40     /**
41      * Widget name.
42      *
43      * @var    string $name
44      * @access protected
45      */
46     var $name;
47
48     /**
49      * Attributes.
50      *
51      * @var    array $attrs
52      * @access protected
53      */
54     var $attrs;
55
56     // ~X2C
57
58     // +X2C Operation 79
59     /**
60      * Constructor.
61      *
62      * @param  string $name Widget name.
63      * @param  array $attrs Attributes.
64      *
65      * @return void
66      * @access public
67      */
68     function BIFE_Copy($name, $attrs) // ~X2C
69     {
70         $this->__construct($name, $attrs);
71     }
72     // -X2C
73
74     // +X2C Operation 80
75     /**
76      * Constructor.
77      *
78      * @param  string $name Widget name.
79      * @param  array $attrs Attributes.
80      *
81      * @return void
82      * @access public
83      */
84     function __construct($name, $attrs) // ~X2C
85     {
86         $this->name  = $name;
87         $this->attrs = $attrs;
88     }
89     // -X2C
90
91     // +X2C Operation 82
92     /**
93      * Renders the widget returning a string with the results.
94      *
95      * @param  HTML_Template_Sigma &$template Template to use to render the widget.
96      *
97      * @return void
98      * @access public
99      */
100     function render(&$template) // ~X2C
101     {
102         $name = $this->name;
103         $ret = "<$name";
104         foreach ($this->attrs as $attr => $val) {
105             $ret .= sprintf(' %s="%s"', $attr, $val);
106         }
107         $contents = parent::render($template);
108         if ($contents) {
109             $ret .= ">$contents</$name>";
110         } else {
111             $ret .= "/>";
112         }
113         return $ret;
114     }
115     // -X2C
116
117 } // -X2C Class :Copy
118
119 ?>