From d4d44c73f6e7dd72a98f4bbbde95264e82b1d8bb Mon Sep 17 00:00:00 2001
From: "ctrlaltca@gmail.com" <>
Date: Sat, 3 Dec 2011 15:25:12 +0000
Subject: Added documentation for TWebControlDecorator (fixes #259); Added
missing bits to have TWebControlDecorator actually works.
---
framework/Web/UI/TControl.php | 9 ++++++++
.../Web/UI/WebControls/TWebControlDecorator.php | 25 +++++++++-------------
2 files changed, 19 insertions(+), 15 deletions(-)
(limited to 'framework/Web/UI')
diff --git a/framework/Web/UI/TControl.php b/framework/Web/UI/TControl.php
index 374c2aee..00f5f511 100644
--- a/framework/Web/UI/TControl.php
+++ b/framework/Web/UI/TControl.php
@@ -444,6 +444,15 @@ class TControl extends TApplicationComponent implements IRenderable, IBindable
$this->_rf[self::RF_SKIN_ID]=$value;
}
+ /**
+ * @param string the skin ID of this control
+ * @throws TInvalidOperationException if the SkinID is set in a stage later than PreInit, or if the skin is applied already.
+ */
+ public function getIsSkinApplied()
+ {
+ return ($this->_flags & self::IS_SKIN_APPLIED);
+ }
+
/**
* @return boolean whether theming is enabled for this control.
* The theming is enabled if the control and all its parents have it enabled.
diff --git a/framework/Web/UI/WebControls/TWebControlDecorator.php b/framework/Web/UI/WebControls/TWebControlDecorator.php
index ef831701..865d0ac7 100644
--- a/framework/Web/UI/WebControls/TWebControlDecorator.php
+++ b/framework/Web/UI/WebControls/TWebControlDecorator.php
@@ -14,24 +14,26 @@
/**
* TWebControlDecorator class
*
- * This places theme related html and templates before and after both the open and close
+ * A TWebControlDecorator can be applied to a {@link TWebControl} to customize its rendering.
+ * TWebControlDecorator can add custom html code before and after both the open and close
* tag of a {@link TWebControl}.
+ * The html code can be an user-defined text or an external template file that will be
+ * instantiated and rendered in place.
*
* This is an easy way to have your look and feel depend upon the theme instead of writing
- * specific html in your templates to achieve your website desires. This makes updating the
- * look and feel of your website much more simple. Here is an example of how to code your theme
- * skin:
+ * specific html in your templates to achieve your website desires.
+ * Here is an example of how to code your theme skin:
*
- *
+ *
*
- *
+ *
*
*
- *
+ *
*
*
* The order of the inclusion of the decoration into the page goes like this:
@@ -47,11 +49,6 @@
* * PostTagText
* * PostTagTemplate
*
- * (more documentation forthcoming as internal class R&D continues)
- *
- * To move controls around please see the {@link TMigrate} control. You may use {@link TMigrate}
- * in your Decorator templates to move controls in your MasterTemplate around using your theme
- * elements around on your page.
*
* @author Brad Anderson
* @version $Id: TWebControlDecorator.php 2541 2008-10-21 15:05:13Z qiang.xue $
@@ -131,8 +128,6 @@ class TWebControlDecorator extends TComponent {
* @param boolean whether decoration is just around the inner content
*/
public function __construct($control, $onlyinternal = false) {
- parent::__construct();
-
$this->_control = $control;
$this->_internalonly = $onlyinternal;
}
--
cgit v1.2.3