1: | <?php |
2: | /** |
3: | * You may not change or alter any portion of this comment or credits |
4: | * of supporting developers from this source code or any supporting source code |
5: | * which is considered copyrighted (c) material of the original comment or credit authors. |
6: | * This program is distributed in the hope that it will be useful, |
7: | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
8: | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
9: | */ |
10: | |
11: | /** |
12: | * Define Renderer interface for forms |
13: | * |
14: | * Each form class has a corresponding renderer method, allowing exact details of the form elements |
15: | * to be modified as needed, |
16: | * |
17: | * @category XoopsForm |
18: | * @package XoopsFormRendererInterface |
19: | * @author Richard Griffith <richard@geekwright.com> |
20: | * @copyright 2017 XOOPS Project (https://xoops.org) |
21: | * @license GNU GPL 2.0 or later (https://www.gnu.org/licenses/gpl-2.0.html) |
22: | * @link https://xoops.org |
23: | */ |
24: | interface XoopsFormRendererInterface |
25: | { |
26: | /** |
27: | * Render support for XoopsFormButton |
28: | * |
29: | * @param XoopsFormButton $element form element |
30: | * |
31: | * @return string rendered form element |
32: | */ |
33: | public function renderFormButton(XoopsFormButton $element); |
34: | |
35: | /** |
36: | * Render support for XoopsFormButtonTray |
37: | * |
38: | * @param XoopsFormButtonTray $element form element |
39: | * |
40: | * @return string rendered form element |
41: | */ |
42: | public function renderFormButtonTray(XoopsFormButtonTray $element); |
43: | |
44: | /** |
45: | * Render support for XoopsFormCheckBox |
46: | * |
47: | * @param XoopsFormCheckBox $element form element |
48: | * |
49: | * @return string rendered form element |
50: | */ |
51: | public function renderFormCheckBox(XoopsFormCheckBox $element); |
52: | |
53: | /** |
54: | * Render support for XoopsFormColorPicker |
55: | * |
56: | * @param XoopsFormColorPicker $element form element |
57: | * |
58: | * @return string rendered form element |
59: | */ |
60: | public function renderFormColorPicker(XoopsFormColorPicker $element); |
61: | |
62: | /** |
63: | * Render support for XoopsFormDhtmlTextArea |
64: | * |
65: | * @param XoopsFormDhtmlTextArea $element form element |
66: | * |
67: | * @return string rendered form element |
68: | */ |
69: | public function renderFormDhtmlTextArea(XoopsFormDhtmlTextArea $element); |
70: | |
71: | /** |
72: | * Render support for XoopsFormElementTray |
73: | * |
74: | * @param XoopsFormElementTray $element form element |
75: | * |
76: | * @return string rendered form element |
77: | */ |
78: | public function renderFormElementTray(XoopsFormElementTray $element); |
79: | |
80: | /** |
81: | * Render support for XoopsFormFile |
82: | * |
83: | * @param XoopsFormFile $element form element |
84: | * |
85: | * @return string rendered form element |
86: | */ |
87: | public function renderFormFile(XoopsFormFile $element); |
88: | |
89: | /** |
90: | * Render support for XoopsFormLabel |
91: | * |
92: | * @param XoopsFormLabel $element form element |
93: | * |
94: | * @return string rendered form element |
95: | */ |
96: | public function renderFormLabel(XoopsFormLabel $element); |
97: | |
98: | /** |
99: | * Render support for XoopsFormPassword |
100: | * |
101: | * @param XoopsFormPassword $element form element |
102: | * |
103: | * @return string rendered form element |
104: | */ |
105: | public function renderFormPassword(XoopsFormPassword $element); |
106: | |
107: | /** |
108: | * Render support for XoopsFormRadio |
109: | * |
110: | * @param XoopsFormRadio $element form element |
111: | * |
112: | * @return string rendered form element |
113: | */ |
114: | public function renderFormRadio(XoopsFormRadio $element); |
115: | |
116: | /** |
117: | * Render support for XoopsFormSelect |
118: | * |
119: | * @param XoopsFormSelect $element form element |
120: | * |
121: | * @return string rendered form element |
122: | */ |
123: | public function renderFormSelect(XoopsFormSelect $element); |
124: | |
125: | /** |
126: | * Render support for XoopsFormText |
127: | * |
128: | * @param XoopsFormText $element form element |
129: | * |
130: | * @return string rendered form element |
131: | */ |
132: | public function renderFormText(XoopsFormText $element); |
133: | |
134: | /** |
135: | * Render support for XoopsFormTextArea |
136: | * |
137: | * @param XoopsFormTextArea $element form element |
138: | * |
139: | * @return string rendered form element |
140: | */ |
141: | public function renderFormTextArea(XoopsFormTextArea $element); |
142: | |
143: | /** |
144: | * Render support for XoopsFormTextDateSelect |
145: | * |
146: | * @param XoopsFormTextDateSelect $element form element |
147: | * |
148: | * @return string rendered form element |
149: | */ |
150: | public function renderFormTextDateSelect(XoopsFormTextDateSelect $element); |
151: | |
152: | /** |
153: | * Render support for XoopsThemeForm |
154: | * |
155: | * @param XoopsThemeForm $form form to render |
156: | * |
157: | * @return string rendered form |
158: | */ |
159: | public function renderThemeForm(XoopsThemeForm $form); |
160: | |
161: | /** |
162: | * Support for themed addBreak |
163: | * |
164: | * @param XoopsThemeForm $form form |
165: | * @param string $extra pre-rendered content for break row |
166: | * @param string $class class for row |
167: | * |
168: | * @return void |
169: | */ |
170: | public function addThemeFormBreak(XoopsThemeForm $form, $extra, $class); |
171: | } |
172: |