Index: typo3/wizard_forms.php
===================================================================
--- typo3/wizard_forms.php	(revision 3915)
+++ typo3/wizard_forms.php	(working copy)
@@ -206,8 +206,6 @@
 	 * @return	void
 	 */
 	function init()	{
-		global $BACK_PATH;
-
 			// GPvars:
 		$this->P = t3lib_div::_GP('P');
 		$this->special = t3lib_div::_GP('special');
@@ -217,9 +215,10 @@
 		$this->xmlStorage = $this->P['params']['xmlOutput'];
 
 			// Document template object:
-		$this->doc = t3lib_div::makeInstance('mediumDoc');
+		$this->doc = t3lib_div::makeInstance('template');
 		$this->doc->docType = 'xhtml_trans';
-		$this->doc->backPath = $BACK_PATH;
+		$this->doc->backPath = $GLOBALS['BACK_PATH'];
+		$this->doc->setModuleTemplate('templates/wizard_forms.html');
 		$this->doc->JScode=$this->doc->wrapScriptTags('
 			function jumpToUrl(URL,formEl)	{	//
 				window.location.href = URL;
@@ -230,9 +229,6 @@
 		list($rUri) = explode('#',t3lib_div::getIndpEnv('REQUEST_URI'));
 		$this->doc->form ='<form action="'.htmlspecialchars($rUri).'" method="post" name="wizardForm">';
 
-			// Start page:
-		$this->content=$this->doc->startPage('Form Wizard');
-
 			// If save command found, include tcemain:
 		if ($_POST['savedok_x'] || $_POST['saveandclosedok_x'])	{
 			$this->include_once[]=PATH_t3lib.'class.t3lib_tcemain.php';
@@ -245,13 +241,22 @@
 	 * @return	void
 	 */
 	function main()	{
-		global $LANG;
-
 		if ($this->P['table'] && $this->P['field'] && $this->P['uid'])	{
-			$this->content.=$this->doc->section($LANG->getLL('forms_title'),$this->formsWizard(),0,1);
+			$this->content.=$this->doc->section($GLOBALS['LANG']->getLL('forms_title'),$this->formsWizard(),0,1);
 		} else {
-			$this->content.=$this->doc->section($LANG->getLL('forms_title'),'<span class="typo3-red">'.$LANG->getLL('table_noData',1).'</span>',0,1);
+			$this->content.=$this->doc->section($GLOBALS['LANG']->getLL('forms_title'),'<span class="typo3-red">'.$GLOBALS['LANG']->getLL('table_noData',1).'</span>',0,1);
 		}
+
+		// Setting up the buttons and markers for docheader
+		$docHeaderButtons = $this->getButtons();
+		$markers['CSH'] = $docHeaderButtons['csh'];	
+		$markers['CONTENT'] = $this->content;
+
+		// Build the <body> for the module
+		$this->content = $this->doc->startPage('Form Wizard');
+		$this->content.= $this->doc->moduleBody($this->pageinfo, $docHeaderButtons, $markers);
+		$this->content.= $this->doc->endPage();
+		$this->content = $this->doc->insertStylesAndJS($this->content);
 	}
 
 	/**
@@ -260,12 +265,50 @@
 	 * @return	void
 	 */
 	function printContent()	{
-		$this->content.= $this->doc->endPage();
-		$this->content = $this->doc->insertStylesAndJS($this->content);
 		echo $this->content;
 	}
 
 	/**
+	 * Create the panel of buttons for submitting the form or otherwise perform operations.
+	 *
+	 * @return array all available buttons as an assoc. array
+	 */
+	protected function getButtons() {
+		$buttons = array(
+			'csh' => '',
+			'csh_buttons' => '',
+			'close' => '',
+			'save' => '',
+			'save_close' => '',
+			'reload' => '',
+		);
+
+		if ($this->P['table'] && $this->P['field'] && $this->P['uid']) {
+			// CSH
+			$buttons['csh'] = t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'wizard_forms_wiz', $GLOBALS['BACK_PATH'], '');
+
+			// CSH Buttons
+			$buttons['csh_buttons'] = t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'wizard_forms_wiz_buttons', $GLOBALS['BACK_PATH'], '');
+
+			// Close
+			$buttons['close'] = '<a href="#" onclick="' . htmlspecialchars('jumpToUrl(unescape(\'' . rawurlencode($this->P['returnUrl']) . '\')); return false;') . '">' .
+				'<img' . t3lib_iconWorks::skinImg($this->doc->backPath, 'gfx/closedok.gif') . ' class="c-inputButton" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:rm.closeDoc', 1) . '" alt="" />' .
+				'</a>';
+
+			// Save
+			$buttons['save'] = '<input type="image" class="c-inputButton" name="savedok"' . t3lib_iconWorks::skinImg($this->doc->backPath, 'gfx/savedok.gif') . ' title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:rm.saveDoc', 1) . '" />';
+
+			// Save & Close
+			$buttons['save_close'] = '<input type="image" class="c-inputButton" name="saveandclosedok"' . t3lib_iconWorks::skinImg($this->doc->backPath, 'gfx/saveandclosedok.gif') . ' title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:rm.saveCloseDoc', 1) . '" />';
+
+			// Reload
+			$buttons['reload'] = '<input type="image" class="c-inputButton" name="_refresh"' . t3lib_iconWorks::skinImg('', 'gfx/refresh_n.gif') . ' title="' . $GLOBALS['LANG']->getLL('forms_refresh', 1) . '" />';
+		}
+
+		return $buttons;
+	}
+
+	/**
 	 * Draws the form wizard content
 	 *
 	 * @return	string		HTML content for the form.
@@ -619,9 +662,6 @@
 
 		$content = '';
 
-			// Add CSH:
-		$content.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'wizard_forms_wiz', $GLOBALS['BACK_PATH'],'');
-
 			// Implode all table rows into a string, wrapped in table tags.
 		$content.= '
 
@@ -632,25 +672,6 @@
 				'.implode('',$tRows).'
 			</table>';
 
-			// Add saving buttons in the bottom:
-		$content.= '
-
-			<!--
-				Save buttons:
-			-->
-			<div id="c-saveButtonPanel">';
-		$content.= '<input type="image" class="c-inputButton" name="savedok"'.t3lib_iconWorks::skinImg($this->doc->backPath,'gfx/savedok.gif','').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:rm.saveDoc',1).'" />';
-		$content.= '<input type="image" class="c-inputButton" name="saveandclosedok"'.t3lib_iconWorks::skinImg($this->doc->backPath,'gfx/saveandclosedok.gif','').' title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:rm.saveCloseDoc',1).'" />';
-		$content.= '<a href="#" onclick="'.htmlspecialchars('jumpToUrl(unescape(\''.rawurlencode($this->P['returnUrl']).'\')); return false;').'">'.
-					'<img'.t3lib_iconWorks::skinImg($this->doc->backPath,'gfx/closedok.gif','width="21" height="16"').' class="c-inputButton" title="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:rm.closeDoc',1).'" alt="" />'.
-					'</a>';
-		$content.= '<input type="image" class="c-inputButton" name="_refresh"'.t3lib_iconWorks::skinImg('','gfx/refresh_n.gif','').' title="'.$LANG->getLL('forms_refresh',1).'" />';
-			// Add CSH:
-		$content.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'wizard_forms_wiz_buttons', $GLOBALS['BACK_PATH'],'');
-		$content.= '
-			</div>
-		';
-
 			// Add hidden fields:
 		$content.= implode('',$hiddenFields);
 
Index: typo3/stylesheet.css
===================================================================
--- typo3/stylesheet.css	(revision 3915)
+++ typo3/stylesheet.css	(working copy)
@@ -199,6 +199,7 @@
 body#typo3-db-new-php,
 body#typo3-move-el-php,
 body#typo3-show-rechis-php,
+body#typo3-wizard-forms-php,
 body#ext-cms-layout-db-layout-php,
 body#ext-tstemplate-ts-index-php,
 body#ext-version-cm1-index-php,
Index: typo3/templates/wizard_forms.html
===================================================================
--- typo3/templates/wizard_forms.html	(revision 0)
+++ typo3/templates/wizard_forms.html	(revision 0)
@@ -0,0 +1,36 @@
+<!-- ###FULLDOC### begin -->
+<div class="typo3-fullDoc">
+	<!-- Page header with buttons, path details and csh -->
+	<div id="typo3-docheader">
+		<div id="typo3-docheader-row1">
+			<div class="buttonsleft">###BUTTONLIST_LEFT###</div>
+			<div class="buttonsright">###BUTTONLIST_RIGHT###</div>
+		</div>
+		<div id="typo3-docheader-row2">
+			<div class="docheader-row2-left"><div class="docheader-csh">###CSH###</div></div>
+			<div class="docheader-row2-right"></div>
+		</div>
+	</div>
+	<!-- Content of module, for instance listing, info or editing -->
+	<div id="typo3-docbody">
+		<div id="typo3-inner-docbody">
+			###CONTENT###
+		</div>
+	</div>
+</div>
+<!-- ###FULLDOC### end -->
+
+<!-- Grouping the icons on top -->
+
+<!-- ###BUTTON_GROUP_WRAP### -->
+	<div class="buttongroup">###BUTTONS###</div>
+<!-- ###BUTTON_GROUP_WRAP### -->
+
+<!-- ###BUTTON_GROUPS_LEFT### -->
+<!-- ###BUTTON_GROUP1### -->###CLOSE###<!-- ###BUTTON_GROUP1### -->
+<!-- ###BUTTON_GROUP2### -->###SAVE######SAVE_CLOSE###<!-- ###BUTTON_GROUP2### -->
+<!-- ###BUTTON_GROUPS_LEFT### -->
+
+<!-- ###BUTTON_GROUPS_RIGHT### -->
+<!-- ###BUTTON_GROUP1### -->###RELOAD###<!-- ###BUTTON_GROUP1### -->
+<!-- ###BUTTON_GROUPS_RIGHT### -->
