diff options
author | ctrlaltca@gmail.com <> | 2011-12-03 15:25:12 +0000 |
---|---|---|
committer | ctrlaltca@gmail.com <> | 2011-12-03 15:25:12 +0000 |
commit | d4d44c73f6e7dd72a98f4bbbde95264e82b1d8bb (patch) | |
tree | f61c702b3089f0da5fa338480d4bb293cee3e4ac /framework/Web | |
parent | 521f87988b246d94a081ba96c9281893c8a296ca (diff) |
Added documentation for TWebControlDecorator (fixes #259);
Added missing bits to have TWebControlDecorator actually works.
Diffstat (limited to 'framework/Web')
-rw-r--r-- | framework/Web/UI/TControl.php | 9 | ||||
-rw-r--r-- | framework/Web/UI/WebControls/TWebControlDecorator.php | 25 |
2 files changed, 19 insertions, 15 deletions
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 @@ -445,6 +445,15 @@ class TControl extends TApplicationComponent implements IRenderable, IBindable }
/**
+ * @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: * <code> - * <com:THeader2 TagName="h3"> + * <com:THeader3> * <prop:Decorator.PreTagText> - * <!-- In case the them you are importing needs this for it's h3 to look right --> + * <!-- Surround the control with a div and apply a css class to it --> * <div class="imported-theme-h3-container"> * </prop:Decorator.PreTagText> * <prop:Decorator.PostTagText> - * <!-- To close things properly --> + * <!-- Properly close the tag --> * </div> * </prop:Decorator.PostTagText> - * </com:THeader2> + * </com:THeader3> * </code> * * 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 <javalizard@gmail.com> * @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; } |