Overview

Packages

  • Actions
  • Codegen
  • Controls
    • Base
  • DatabaseAdapters
  • Events
  • None
  • Sessions
  • Tests

Classes

  • BasicForm
  • CalculatorWidget
  • DataRepeaterExample
  • ExampleCheckColumn1
  • ExampleCheckColumn2
  • ExampleSingleForm
  • NestedTabForm
  • PaginatorForm
  • ParamsForm
  • PersistentExampleForm
  • PersonEditPanel
  • PluginEditForm
  • PluginManagerForm
  • ProjectEditPanel
  • ProjectListForm
  • ProjectViewPanel
  • QAccordion
  • QActionControl
  • QAutocomplete
  • QBlockControl
  • QButton
  • QButtonBase
  • QCalendar
  • QCheckBox
  • QCheckBoxLegacyColumn
  • QCheckBoxList
  • QControl
  • QControlBase
  • QControlGrouping
  • QControlLabel
  • QCsvTextBox
  • QDataGrid
  • QDataGrid_CheckBoxColumn
  • QDataGrid_SortEvent
  • QDataGridBase
  • QDataGridLegacy
  • QDataGridLegacyBase
  • QDataGridLegacyColumn
  • QDataGridLegacyRow
  • QDataGridLegacyRowStyle
  • QDataRepeater
  • QDatepicker
  • QDatepickerBox
  • QDateTimePicker
  • QDateTimeTextBox
  • QDialog
  • QDialogBox
  • QDraggable
  • QDroppable
  • QDropZoneGrouping
  • QEmailTextBox
  • QFileAsset
  • QFileAssetBase
  • QFileAssetDialog
  • QFileControl
  • QFilterType
  • QFloatTextBox
  • QFontFamily
  • QForm
  • QFormBase
  • QHListItem
  • QHtmlAttributeManager
  • QHtmlAttributeManagerBase
  • QHtmlTable
  • QHtmlTableBase
  • QImageBase
  • QImageBrowser
  • QImageBrowserBase
  • QImageBrowserNav
  • QImageBrowserThumbnails
  • QImageButton
  • QImageControl
  • QImageControlBase
  • QImageFileAsset
  • QImageLabel
  • QImageLabelBase
  • QImageRollover
  • QIntegerTextBox
  • QJqButton
  • QJqCheckBox
  • QJqRadioButton
  • QJsTimer
  • QJsTimerBase
  • QLabel
  • QLinkButton
  • QListBox
  • QListBoxBase
  • QListControl
  • QListItem
  • QListItemBase
  • QListItemStyle
  • QNumericTextBox
  • QPaginatedControl
  • QPaginator
  • QPaginatorBase
  • QPanel
  • QProgressbar
  • QRadioButton
  • QRadioButtonList
  • QResizable
  • QSampleControl
  • QSelectable
  • QSlider
  • QSortable
  • QTabs
  • QTagStyler
  • QTestControl
  • QTextBox
  • QTimerExpiredEvent
  • QTreeNav
  • QTreeNavItem
  • QUrlTextBox
  • QWaitIcon
  • QWriteBox
  • RecordsSummary
  • RefreshForm
  • SampleForm
  • SelectableLabel
  • SpeedForm
  • TestImageBrowser
  • UrlForm

Traits

  • QListItemManager

Exceptions

  • QCrossScriptingException

Functions

  • __QForm_EvaluateTemplate_ObHandler
  • DataGridEvalHandleError
  • Overview
  • Package
  • Class

Class QControlBase

QControlBase is the base class of all QControls and shares their common properties.

Not every control will utilize every single one of these properties.

All Controls must implement the following abstract functions:

  • QControlBase::GetControlHtml()
  • QControlBase::ParsePostData()
  • QControlBase::Validate()

A QControl conceptually is an object in an html form that manages data or that can be controlled via PHP. In the early days of the internet, this was simply an html input or select tag that was submitted via a POST. As the internet has evolved, so has QControl, but its basic idea is the same. Its an object on the screen that you would like to either control from PHP, or receive information from. The parts of a QControl that are sent to the browser are: - The base tag and its contents, as returned by GetControlHtml(). This would be an Input tag, or a Button, or even just a div. Many Javascript widget libraries will take a div and add to it to create a control. The tag will include an id in all cases. If you do not assign one, a unique id will be created automatically. - An optional Name, often sent to the browser in a Label tag. - Optional instructions - Optional validation error text - Optional Javascript attached to the control as part of its inherint functionality, or to control settable options that are handled by a jQuery wrapper function of some kind. - Optional Javascript attached to the control through the AddActions mechanism.

You control how these parts are rendered by implementing Render* methods in your own QControl class. Some basic ones are included in this class for you to start with.

Depending on the control, and the implementation, the control might need or want to be rendered with a wrapper tag, which is controlled by the blnUseWrapper member. For example, if you want to have a form object with a name, instructions and error text, a wrapper might be needed to make sure all these parts redraw when something changes in the control. Bootstrap's formObjectGroup is an example of a control that would have all these parts. Also, if you know that a javascript widget library is going to wrap your html in additional html, you should include a wrapper here so the additional html is included inside your wrapper, and thus the entire control will get redrawn on a refresh (jQueryUI's Dialog is an example of this kind of widget.)

QControls are part of a tree type hierarchy, whose parent can either be a QForm, or another QControl.

The QControl system is designed to manage the process of redrawing a control automatically when something about the control changes. You can force a redraw by using the Refresh command from outside of a control, or by setting the blnModified member variable from a subclass. You can also use the QWatcher mechanism to automatically redraw when something in the database changes.

QControls are the base objects for actions to be attached to events. When attaching actions to multiple objects of the same type, considering attaching the event to a parent object and using event delegation for your action, as it can be more efficient in certain cases.

QControls can trigger validation and are part of the validation system. QControls that are not Enabled or not Visible will not go through the form's Validation routine.

Controls can be made visible using either the Visible or Display PHP parameters. Both are booleans. - Setting Visible to false completely removes the control from the DOM, leaving either just its wrapper or a an invisible span stub in its place. When the control is made visible again, it is entirely redrawn. - Setting Display to false leaves the control in the DOM, but simply sets its display property to 'none' in CSS. Show and hide are much faster.

QBaseClass
Extended by QHtmlAttributeManagerBase
Extended by QHtmlAttributeManager
Extended by QControlBase

Direct known subclasses

QControl

Indirect known subclasses

CalculatorWidget, MyControl, QActionControl, QResizable, QResizableBase, QResizableGen, QSampleControl, QSelectable, QSelectableBase, QSelectableGen, QSelectMenu, QSelectMenuBase, QSelectMenuGen, QAutocomplete, QSlider, QSliderBase, QSliderGen, QSortable, QSortableBase, QSortableGen, QSpinner, QSpinnerBase, QSpinnerGen, QTabs, QAutocompleteBase, QTabsBase, QTabsGen, QTestControl, QTextBox, QTextBoxBase, QTreeNav, QUrlTextBox, QWaitIcon, QWriteBox, RecordsSummary, QAutocompleteGen, SampleComposite, SelectableLabel, QBlockControl, QButton, QButtonBase, QCalendar, QCheckBox, QCheckBoxList, NavPanel, QControlLabel, QControlProxy, QCsvTextBox, QDataGrid, QDataGridBase, QDataGridLegacy, QDataGridLegacyBase, QDataGridLegacyRow, QDataRepeater, QDatepicker, PersonEditPanel, QDatepickerBase, QDatepickerBox, QDatepickerBoxBase, QDatepickerBoxGen, QDatepickerGen, QDateTimePicker, QDateTimeTextBox, QDialog, QDialogBase, QDialogBox, ProjectEditPanel, QDialogGen, QDraggable, QDraggableBase, QDraggableGen, QDroppable, QDroppableBase, QDroppableGen, QEmailTextBox, QFieldset, QFileAsset, ProjectPickerListBox, QFileAssetBase, QFileAssetDialog, QFileControl, QFloatTextBox, QHListControl, QHtmlTable, QHtmlTableBase, QImageBase, QImageBrowser, QImageBrowserBase, ProjectViewPanel, QImageBrowserNav, QImageBrowserThumbnails, QImageButton, QImageControl, QImageControlBase, QImageFileAsset, QImageLabel, QImageLabelBase, QImageRollover, QIntegerTextBox, QAccordion, QJqButton, QJqButtonBase, QJqButtonGen, QJqCheckBox, QJqCheckBoxBase, QJqCheckBoxGen, QJqRadioButton, QJqRadioButtonBase, QJqRadioButtonGen, QJsTimer, QAccordionBase, QJsTimerBase, QLabel, QLinkButton, QListBox, QListBoxBase, QListControl, QMenu, QMenuBase, QMenuGen, QModelConnectorEditDlg, QAccordionGen, QNumericTextBox, QPaginatedControl, QPaginator, QPaginatorBase, QPanel, QProgressbar, QProgressbarBase, QProgressbarGen, QRadioButton, QRadioButtonList
Abstract
Package: Controls
Located at includes/base_controls/QControlBase.class.php
Methods summary
public
# __construct( QControl|QForm|QControlBase $objParentObject, string $strControlId = null )

Creates a QControlBase object This constructor will generally not be used to create a QControlBase object. Instead it is used by the classes which extend the class. Only the parent object parameter is required. If the option strControlId parameter is not used, QCubed will generate the id.

Creates a QControlBase object This constructor will generally not be used to create a QControlBase object. Instead it is used by the classes which extend the class. Only the parent object parameter is required. If the option strControlId parameter is not used, QCubed will generate the id.

Parameters

$objParentObject
$strControlId

optional id of this Control. In html, this will be set as the value of the id attribute. The id can only contain alphanumeric characters. If this parameter is not passed, QCubed will generate the id.

Throws

Exception|QCallerException
abstract public
# ParsePostData( )

ParsePostData parses the value of this control from FormState

ParsePostData parses the value of this control from FormState

This abstract method must be implemented by all controls.

When utilizing formgen, the programmer should never access form variables directly (e.g. via the $_FORM array). It can be assumed that at *ANY* given time, a control's values/properties will be "up to date" with whatever the webuser has entered in.

When a Form is Created via Form::Create(string), the form will go through to check and see if it is a first-run of a form, or if it is a post-back. If it is a postback, it will go through its own private array of controls and call ParsePostData on EVERY control it has. Each control is responsible for "knowing" how to parse the $_POST data to update its own values/properties based on what was returned to via the postback.

abstract public boolean
# Validate( )

Checks if this controls contains a valid value.

Checks if this controls contains a valid value.

This abstract method defines how a control should validate itself based on the value/ properties it has. It should also include the handling of ensuring the "Required" requirements are obeyed if this control's "Required" flag is set to true.

For Controls that can't realistically be "validated" (e.g. labels, datagrids, etc.), those controls should simply have Validate() return true.

Returns

boolean
public
# _WriteState( )

Save the state of the control to restore it later, so that if the user comes back to this page, the control will be in the showing the same thing. Subclasses should put minimally important information into the state that is needed to restore the state later.

Save the state of the control to restore it later, so that if the user comes back to this page, the control will be in the showing the same thing. Subclasses should put minimally important information into the state that is needed to restore the state later.

This implementation puts the state into the session. Override to provide a different method if so desired.

Should normally be called only by FormBase code. See GetState and PutState for the control side implementation.

public
# _ReadState( )

Restore the state of the control.

Restore the state of the control.

protected mixed
# GetState( )

Control subclasses should return their state data that they will use to restore later.

Control subclasses should return their state data that they will use to restore later.

Returns

mixed
protected
# PutState( mixed $state )

Restore the state of the control. The control will have already been created and initialized. Subclasses should verify that the restored state is still valid for the data available.

Restore the state of the control. The control will have already been created and initialized. Subclasses should verify that the restored state is still valid for the data available.

Parameters

$state
public
# ForgetState( )

Completely forget the saved state for this control.

Completely forget the saved state for this control.

public
# GetTemplatePath( $strTemplate )

A utility function to convert a template file name into a full path.

A utility function to convert a template file name into a full path.

Parameters

$strTemplate
public string
# EvaluateTemplate( string $strTemplate )

This function evaluates a template and is used by a variety of controls. It is similar to the function found in the QForm, but recreated here so that the "$this" in the template will be the control, instead of the form, and the protected members of the control are available to draw directly.

This function evaluates a template and is used by a variety of controls. It is similar to the function found in the QForm, but recreated here so that the "$this" in the template will be the control, instead of the form, and the protected members of the control are available to draw directly.

Parameters

$strTemplate
Path to the HTML template file

Returns

string
The evaluated HTML string
public static mixed
# _ProcessActionParams( QControl $objSourceControl, QAction $objAction, $mixParameter )

This function passes control of action parameter processing to the control that caused the action, so that the control can further process the action parameters. It also saves additional information in the returned parameter array. This is useful for widgets that need to pass more information to the action than just a simple string, and allows actions to get more information as well. This also allows widgets to modify the action parameter, while preserving the original action parameter so that the action can see both.

This function passes control of action parameter processing to the control that caused the action, so that the control can further process the action parameters. It also saves additional information in the returned parameter array. This is useful for widgets that need to pass more information to the action than just a simple string, and allows actions to get more information as well. This also allows widgets to modify the action parameter, while preserving the original action parameter so that the action can see both.

Parameters

$objSourceControl
$objAction
$mixParameter

Returns

mixed
protected mixed
# ProcessActionParameters( QAction $objAction, $mixParameter )

Breaks down the action parameter if needed to more useful information. Subclasses should override, call the parent, and then modify the "param" item in the returned array if needed. This also provides additional information to the action about the triggering control.

Breaks down the action parameter if needed to more useful information. Subclasses should override, call the parent, and then modify the "param" item in the returned array if needed. This also provides additional information to the action about the triggering control.

Parameters

$objAction
$mixParameter

Returns

mixed
public static
# _CallActionMethod( QControl $objDestControl, string $strMethodName, $strFormId, mixed $params )

Used by the QForm engine to call the method in the control, allowing the method to be a protected method.

Used by the QForm engine to call the method in the control, allowing the method to be a protected method.

Parameters

$objDestControl
$strMethodName
$strFormId
$params
$mixParameter Parameters coming from javascript
public
# Sleep( )

Prepare the control for serialization. All pointers to forms and form objects should be converted to something that can be restored using Wakeup().

Prepare the control for serialization. All pointers to forms and form objects should be converted to something that can be restored using Wakeup().

The main problem we are resolving is that the PHP serialization process will convert an internal reference to the object being serialized into a copy of the object. After deserialization, you would have the form, and then somewhere inside the form, a separate copy of the form. This is a long-standing bug in PHP.

public
# Wakeup( QForm $objForm )

The object has just been unserialized, so fix up pointers to embedded forms.

The object has just been unserialized, so fix up pointers to embedded forms.

Parameters

$objForm
public static mixed
# SleepHelper( QForm|QControl|array|Callable $obj )

A helper function to fix up a 'callable', a formObj, or any other object that we would like to represent in the serialized stream differently than the default. If a QControl, make sure this isn't the only instance of the control in the stream, or have some other way to serialize the control.

A helper function to fix up a 'callable', a formObj, or any other object that we would like to represent in the serialized stream differently than the default. If a QControl, make sure this isn't the only instance of the control in the stream, or have some other way to serialize the control.

Parameters

$obj

Returns

mixed
public static mixed
# WakeupHelper( QForm|QFormBase $objForm, array|string $obj )

A helper function to restore something possibly serialized with SleepHelper.

A helper function to restore something possibly serialized with SleepHelper.

Parameters

$objForm
$obj

Returns

mixed
public
# AddChildControl( QControl $objControl )

Adds a control as a child of this control.

Adds a control as a child of this control.

Parameters

$objControl
the control to add
public QControl[]
# GetChildControls( boolean $blnUseNumericIndexes = true )

Returns all child controls as an array

Returns all child controls as an array

Parameters

$blnUseNumericIndexes

Returns

QControl[]
public QControl
# GetChildControl( string $strControlId )

Returns the child control with the given id

Returns the child control with the given id

Parameters

$strControlId

Returns

QControl
public
# RemoveChildControls( boolean $blnRemoveFromForm )

Removes all child controls

Removes all child controls

Parameters

$blnRemoveFromForm
public
# RemoveChildControl( string $strControlId, boolean $blnRemoveFromForm )

Removes the child control with the given id

Removes the child control with the given id

Parameters

$strControlId
$blnRemoveFromForm
should the control be removed from the form, too?
public
# AddAction( QEvent $objEvent, QAction $objAction )

Adds an action to the control

Adds an action to the control

Parameters

$objEvent
$objAction

Throws

QCallerException
public
# AddActionArray( QEvent $objEvent, array $objActionArray )

Adds an array of actions to the control

Adds an array of actions to the control

Parameters

$objEvent
$objActionArray

Throws

QCallerException
public
# RemoveAllActions( string $strEventName = null )

Removes all events for a given event name.

Removes all events for a given event name.

Be sure and use a QFooEvent::EventName constant here (QClickEvent::EventName, for example).

Parameters

$strEventName
public QAction[]
# GetAllActions( string $strEventType, string $strActionType = null )

Returns all actions that are connected with specific events

Returns all actions that are connected with specific events

Parameters

$strEventType

the type of the event. Be sure and use a QFooEvent::EventName here. (QClickEvent::EventName, for example)

$strActionType

if given only actions of this type will be returned

Returns

QAction[]
public
# SetCustomAttribute( string $strName, string $strValue )

Sets one custom attribute

Sets one custom attribute

Custom Attributes refers to the html name-value pairs that can be rendered within the control that are not covered by an explicit method. For example, on a textbox, you can render any number of additional name-value pairs, to assign additional javascript actions, additional formatting, etc.

<?php
$txtTextbox = new Textbox("txtTextbox");
$txtTextbox->SetCustomAttribute("onfocus", "alert('You are about to edit this field');");
$txtTextbox->SetCustomAttribute("nowrap", "nowrap");
$txtTextbox->SetCustomAttribute("blah", "foo");
?>

Will render:

<input type="text" ...... onfocus="alert('You are about to edit this field');" nowrap="nowrap" blah="foo" />

Deprecated

Use SetHtmlAttribute instead

Parameters

$strName
$strValue
public string
# GetCustomAttribute( string $strName )

Returns the value of a custom attribute

Returns the value of a custom attribute

Parameters

$strName

Returns

string

Throws

QCallerException

Deprected

Use GetHtmlAttribute instead
public
# RemoveCustomAttribute( string $strName )

Removes the given custom attribute

Removes the given custom attribute

Deprecated

Use RemoveHtmlAttribute instead

Parameters

$strName

Throws

QCallerException
public
# SetCustomStyle( string $strName, string $strValue )

Adds a custom style property/value to the html style attribute

Adds a custom style property/value to the html style attribute

Sets a custom css property. For example:

<?php
$txtTextbox = new Textbox("txtTextbox");
$txtTextbox->SetCustomStyle("white-space", "nowrap");
$txtTextbox->SetCustomStyle("margin", "10px");
?>

Will render:

<input type="text" ...... style="white-space:nowrap;margin:10px" />

Deprecated

Use SetCssStyle instead

Parameters

$strName
$strValue
public string
# GetCustomStyle( string $strName )

Returns the value of the given custom style

Returns the value of the given custom style

Parameters

$strName

Returns

string

Throws

QCallerException
public
# RemoveCustomStyle( string $strName )

Deletes the given custom style

Deletes the given custom style

Deprecated

use RemoveCssStyle instead

Parameters

$strName

Throws

QCallerException
public
# AddJavascriptFile( string $strJsFileName )

Add javascript file to be included in the form. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to DOCROOT . VIRTUAL_DIRECTORY - If the file name begins with anything else, the url will be relative to JS_ASSETS

Add javascript file to be included in the form. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to DOCROOT . VIRTUAL_DIRECTORY - If the file name begins with anything else, the url will be relative to JS_ASSETS

Parameters

$strJsFileName
url, path, or file name to include
public
# AddPluginJavascriptFile( string $strPluginName, string $strJsFileName )

Add javascript file to be included from a plugin. Plugins should use this function instead of AddJavascriptFile. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the DOCROOT . VIRTUAL_DIRECTORY directory. - If the file name begins with anything else, the url will be relative to PLUGIN_ASSETS/pluginName/js/

Add javascript file to be included from a plugin. Plugins should use this function instead of AddJavascriptFile. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the DOCROOT . VIRTUAL_DIRECTORY directory. - If the file name begins with anything else, the url will be relative to PLUGIN_ASSETS/pluginName/js/

Parameters

$strPluginName
name of plugin
$strJsFileName
url, path, or file name to include
public
# AddCssFile( string $strCssFileName )

Add style sheet file to be included in the form. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the _DOCROOT . VIRTUAL_DIRECTORY - If the file name begins with anything else, the url will be relative to CSS_ASSETS

Add style sheet file to be included in the form. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the _DOCROOT . VIRTUAL_DIRECTORY - If the file name begins with anything else, the url will be relative to CSS_ASSETS

Parameters

$strCssFileName
url, path, or file name to include
public
# AddPluginCssFile( string $strPluginName, string $strCssFileName )

Add style sheet file to be included from a plugin. Plugins should use this function instead of AddCssFile. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the PLUGIN_ASSETS directory. - If the file name begins with anything else, the url will be relative to PLUGIN_ASSETS/pluginName/css/

Add style sheet file to be included from a plugin. Plugins should use this function instead of AddCssFile. The include mechanism will take care of duplicates, and also change the given URL in the following ways: - If the file name begins with 'http', it will use it directly as a URL - If the file name begins with '/', the url will be relative to the PLUGIN_ASSETS directory. - If the file name begins with anything else, the url will be relative to PLUGIN_ASSETS/pluginName/css/

Parameters

$strPluginName
name of plugin
$strCssFileName
url, path, or file name to include
public string
# GetAttributes( )

Returns all attributes in the correct HTML format

Returns all attributes in the correct HTML format

This is utilized by Render methods to display various name-value HTML attributes for the control.

ControlBase's implementation contains the very-basic set of HTML attributes... it is expected that most subclasses will extend this method's functionality to add Control-specific HTML attributes (e.g. textbox will likely add the maxlength html attribute, etc.)

Deprecated

Use renderHtmlAttributes instead

Returns

string
public string
# GetCustomAttributes( )

Returns the custom attributes HTML formatted

Returns the custom attributes HTML formatted

All attributes will be returned as concatened the string of the form key1="value1" key2="value2" Note: if the the value is === false, then the key will be randered as is, without any value

Deprecated

Unused

Returns

string
public string
# RenderHtmlAttributes( null|string $attributeOverrides = null, null|string $styleOverrides = null )

Returns the html for the attributes for the base control of the QControl. Allows the given arrays to override the attributes and styles before rendering. This inserts the control id into the rendering of the tag.

Returns the html for the attributes for the base control of the QControl. Allows the given arrays to override the attributes and styles before rendering. This inserts the control id into the rendering of the tag.

Parameters

$attributeOverrides
$styleOverrides

Returns

string

Overrides

QHtmlAttributeManagerBase::RenderHtmlAttributes()
public string
# RenderActionScripts( )

Returns all action attributes for this QControl

Returns all action attributes for this QControl

Returns

string
public null|string
# GetJavaScriptForEvent( string $strEventName )

Get the JavaScript for a given Element

Get the JavaScript for a given Element

Parameters

$strEventName

Returns

null|string
public string
# GetStyleAttributes( )

Returns all style-attributes

Returns all style-attributes

Similar to GetAttributes, but specifically for CSS name/value pairs that will render within a control's HTML "style" attribute

SetCustomStyle("white-space", "nowrap"); $txtTextbox->SetCustomStyle("margin", "10px"); $txtTextBox->Height = 20; $txtTextBox->GetStyleAttributes(); ?> will return: white-space:nowrap;margin:10px;height:20px;

Returns

string

Deprected

Use
public null|QTagStyler
# GetWrapperStyler( )

Returns the styler for the wrapper tag.

Returns the styler for the wrapper tag.

Returns

null|QTagStyler
public
# AddWrapperCssClass( $strClass )

Adds the given class to the wrapper tag.

Adds the given class to the wrapper tag.

Parameters

$strClass
public
# RemoveWrapperCssClass( $strClass )

Removes the given class from the wrapper tag.

Removes the given class from the wrapper tag.

Parameters

$strClass
protected string
# GetWrapperStyleAttributes( boolean $blnIsBlockElement = false )

Returns all wrapper-style-attributes Similar to GetStyleAttributes, but specifically for CSS name/value pairs that will render within a "wrapper's" HTML "style" attribute

Returns all wrapper-style-attributes Similar to GetStyleAttributes, but specifically for CSS name/value pairs that will render within a "wrapper's" HTML "style" attribute

Deprecated

Parameters

$blnIsBlockElement

Returns

string
public string
# RenderCssStyles( null $styleOverrides = null )

Overrides the default CSS renderer in order to deal with a special situation: Since there is the possibility of a wrapper, we have to delegate certain CSS properties to the wrapper so that the whole control gets those properties. Those are mostly positioning properties. In this override, we detect when we do NOT have a wrapper, and therefore have to copy the positioning properties from the wrapper styler down to the control itself.

Overrides the default CSS renderer in order to deal with a special situation: Since there is the possibility of a wrapper, we have to delegate certain CSS properties to the wrapper so that the whole control gets those properties. Those are mostly positioning properties. In this override, we detect when we do NOT have a wrapper, and therefore have to copy the positioning properties from the wrapper styler down to the control itself.

Parameters

$styleOverrides

Returns

string

Overrides

QHtmlAttributeManagerBase::RenderCssStyles()
protected string
# GetWrapperAttributes( array $attributeOverrides = null )

Returns an array of the wrapper attributes to be used for drawing, including CSS styles. Makes sure the control is hidden if display is off.

Returns an array of the wrapper attributes to be used for drawing, including CSS styles. Makes sure the control is hidden if display is off.

Parameters

$attributeOverrides

Returns

string
protected string
# RenderWrappedOutput( $strOutput, $blnForceAsBlockElement = false )

Renders the given output with the current wrapper.

Renders the given output with the current wrapper.

Parameters

$strOutput
$blnForceAsBlockElement

Returns

string
protected
# RenderHelper( mixed $mixParameterArray, string $strRenderMethod )

RenderHelper should be called from all "Render" functions FIRST in order to check for and perform attribute overrides (if any). All render methods should take in an optional first boolean parameter blnDisplayOutput (default to true), and then any number of attribute overrides. Any "Render" method (e.g. Render, RenderWithName, RenderWithError) should call the RenderHelper FIRST in order to:

  • Check for and perform attribute overrides
  • Check to see if this control is "Visible". If it is Visible=false, then the renderhelper will cause the method to immediately return

Proper usage within the first line of any Render() method is:

$this->RenderHelper(func_get_args(), __FUNCTION__);

See QControl::RenderWithName() as example.

RenderHelper should be called from all "Render" functions FIRST in order to check for and perform attribute overrides (if any). All render methods should take in an optional first boolean parameter blnDisplayOutput (default to true), and then any number of attribute overrides. Any "Render" method (e.g. Render, RenderWithName, RenderWithError) should call the RenderHelper FIRST in order to:

  • Check for and perform attribute overrides
  • Check to see if this control is "Visible". If it is Visible=false, then the renderhelper will cause the method to immediately return

Proper usage within the first line of any Render() method is:

$this->RenderHelper(func_get_args(), __FUNCTION__);

See QControl::RenderWithName() as example.

Parameters

$mixParameterArray
the parameters given to the render call
$strRenderMethod

the method which has been used to render the control. This is important for ajax rerendering

Throws

QCallerException
Exception|QCallerException

See

QControlBase::RenderOutput()
protected
# GetNonWrappedHtml( )

The current use of this function is unknown at the moment.

The current use of this function is unknown at the moment.

public
# Focus( )

Sets focus to this control TODO: Turn this into a specific command to avoid the javascript eval that happens on the other end.

Sets focus to this control TODO: Turn this into a specific command to avoid the javascript eval that happens on the other end.

public
# SetFocus( )

Same as "Focus": Sets focus to this control

Same as "Focus": Sets focus to this control

public
# Blink( string $strFromColor = '#ffff66', string $strToColor = '#ffffff' )

Let this control blink

Let this control blink

Parameters

$strFromColor
start color
$strToColor

blink color TODO: Turn this into a specific command to avoid the javascript eval that happens on the other end.

public string
# GetEndScript( )

Returns and fires the JavaScript that is associated with this control. The html for the control will have already been rendered, so refer to the html object with "\$j(#{$this->ControlId})". You should do the following: - Return any script that attaches a JavaScript widget to the the html control. - Use functions like ExecuteControlCommand to fire commands to execute AFTER all controls have been attached.

Returns and fires the JavaScript that is associated with this control. The html for the control will have already been rendered, so refer to the html object with "\$j(#{$this->ControlId})". You should do the following: - Return any script that attaches a JavaScript widget to the the html control. - Use functions like ExecuteControlCommand to fire commands to execute AFTER all controls have been attached.

Returns

string
public
# RenderAttributeScripts( )

Return one-time scripts associated with the control. Called by the form during an ajax draw only if the entire control was not rendered.

Return one-time scripts associated with the control. Called by the form during an ajax draw only if the entire control was not rendered.

Instead of actually rendering, we add them to the application event queue.

public
# AddAttributeScript( string $strMethod, string $args )

Executes a java script associated with the control. These scripts are specifically for the purpose of changing some attribute of the control that would also be taken care of during a refresh of the entire control. The script will only be executed in ajax if the entire control is not redrawn.

Executes a java script associated with the control. These scripts are specifically for the purpose of changing some attribute of the control that would also be taken care of during a refresh of the entire control. The script will only be executed in ajax if the entire control is not redrawn.

Note that these will execute after most of the other commands execute, so do not count on the order in which they will execute relative to other commands.

Parameters

$strMethod
The name of the javascript function to call on this control.
$args
One or more arguments to send to the method that will cause the control to change
public
# GetEndHtml( )

For any HTML code that needs to be rendered at the END of the QForm when this control is INITIALLY rendered.

For any HTML code that needs to be rendered at the END of the QForm when this control is INITIALLY rendered.

public
# Refresh( )

Refreshes the control

Refreshes the control

If not yet rendered during this ajax event, will set the Modified variable to true. This will have the effect of forcing a refresh of this control when it is supposed to be rendered. Otherwise, this will do nothing

protected string
# RenderOutput( string $strOutput, boolean $blnDisplayOutput, $blnForceAsBlockElement = false )

RenderOutput should be the last call in your custom RenderMethod. It is responsible for the following: - Creating the wrapper if you are using a wrapper, or - Possibly creating a dummy control if not using a wrapper and the control is hidden. - Generating the control's output in one of 3 ways: - Generate straight html if drawing the control as part of a complete page refresh - Generate straight html if in an ajax call, but a parent is getting redrawn, which requires this whole control to get drawn - If in an ajax call and we are the top level control getting drawn, then generate special code that out javascript will read and put into the control's spot on the page. Requires coordination with the code in qcubed.js.

RenderOutput should be the last call in your custom RenderMethod. It is responsible for the following: - Creating the wrapper if you are using a wrapper, or - Possibly creating a dummy control if not using a wrapper and the control is hidden. - Generating the control's output in one of 3 ways: - Generate straight html if drawing the control as part of a complete page refresh - Generate straight html if in an ajax call, but a parent is getting redrawn, which requires this whole control to get drawn - If in an ajax call and we are the top level control getting drawn, then generate special code that out javascript will read and put into the control's spot on the page. Requires coordination with the code in qcubed.js.

Parameters

$strOutput
Your html-code which should be printed out
$blnDisplayOutput
should it be printed, or just be returned?
$blnForceAsBlockElement

Returns

string
abstract protected string
# GetControlHtml( )

This method will render the control, itself, and will return the rendered HTML as a string

This method will render the control, itself, and will return the rendered HTML as a string

As an abstract method, any class extending QControlBase must implement it. This ensures that each control has its own specific html.

When outputting html, you should call GetHtmlAttributes to get the attributes for the main control.

If you are outputting a complex control, and need to include ids in subcontrols, your ids should be of the form: $parentControl->ControlId . '_' . $strSubcontrolId. The underscore indicates that actions and post data should be routed first to the parent control, and the parent control will handle the rest.

Returns

string
public string
# Render( boolean $blnDisplayOutput = true /* ... */ )

This render method is the most basic render-method available. It will perform attribute overiding (if any) and will either display the rendered HTML (if blnDisplayOutput is true, which it is by default), or it will return the rendered HTML as a string.

This render method is the most basic render-method available. It will perform attribute overiding (if any) and will either display the rendered HTML (if blnDisplayOutput is true, which it is by default), or it will return the rendered HTML as a string.

Parameters

$blnDisplayOutput
render the control or return as string

Returns

string

Throws

Exception|QCallerException
public array[]
# RenderAjax( )

RenderAjax will be called during an Ajax rendering of the controls. Every control gets called. Each control is responsible for rendering itself. Some objects automatically render their child objects, and some don't, so we detect whether the parent is being rendered, and assume the parent is taking care of rendering for us if so.

RenderAjax will be called during an Ajax rendering of the controls. Every control gets called. Each control is responsible for rendering itself. Some objects automatically render their child objects, and some don't, so we detect whether the parent is being rendered, and assume the parent is taking care of rendering for us if so.

Override if you want more control over ajax drawing, like it you detect parts of your control that have changed and then want to draw only those parts. This will get called on every control on every ajax draw request. It is up to you to test the blnRendered flag of the control to know whether the control was already rendered by a parent control before drawing here.

Returns

array[]
array of control arrays to be interpreted by the response function in qcubed.js
public boolean
# IsModified( )

Returns true if the control should be redrawn.

Returns true if the control should be redrawn.

Returns

boolean
protected string
# RenderChildren( boolean $blnDisplayOutput = true )

Renders all Children

Renders all Children

Parameters

$blnDisplayOutput
display output (echo out) or just return as string

Returns

string
public string
# RenderWithError( boolean $blnDisplayOutput = true )

This render method will render the control with additional output of any validation errors, that might occur

This render method will render the control with additional output of any validation errors, that might occur

Parameters

$blnDisplayOutput
display output (echo out) or just return as string

Returns

string

Throws

Exception|QCallerException
public string
# RenderWithName( boolean $blnDisplayOutput = true )

Renders the control with an attached name

Renders the control with an attached name

This will call QControlBase::GetControlHtml() for the bulk of the work, but will add layout html as well. It will include the rendering of the Controls' name label, any errors or warnings, instructions, and html before/after (if specified). As this is the parent class of all controls, this method defines how ALL controls will render when rendered with a name. If you need certain controls to display differently, override this function in that control's class.

Parameters

$blnDisplayOutput
true to send to display buffer, false to just return then html

Returns

string
HTML of rendered Control

Throws

QCallerException
public string
# RenderComment( string $strType )

Format a comment block if we are not in MINIMIZE mode.

Format a comment block if we are not in MINIMIZE mode.

Parameters

$strType
Either QControl::CommentStart or QControl::CommentEnd

Returns

string
public mixed
# RenderExtensionRenderer( $classname, $methodname, array $args = array() )

Helper method to render the control using some other class/method.

Helper method to render the control using some other class/method.

Useful for plugins that want to override the render behavior for the controls without modifying the control code.

Parameters

$classname
$methodname
$args

Returns

mixed
public boolean
# ValidateControlAndChildren( )

Validate self + child controls. Controls must mark themselves modified, or somehow redraw themselves if by failing the validation, they change their visual look in some way (like by adding warning text, turning red, etc.)

Validate self + child controls. Controls must mark themselves modified, or somehow redraw themselves if by failing the validation, they change their visual look in some way (like by adding warning text, turning red, etc.)

Returns

boolean
public
# ResetFlags( )

Reset the control flags to default

Reset the control flags to default

public
# ResetOnPageStatus( )

Reset the On-Page status to default (false)

Reset the On-Page status to default (false)

public
# MarkAsModified( )

Marks this control as modified

Marks this control as modified

Overrides

QHtmlAttributeManagerBase::MarkAsModified()
public
# MarkAsWrapperModified( )

Marks the wrapper of this control as modified

Marks the wrapper of this control as modified

public
# MarkAsRendered( )

Marks this control as Rendered

Marks this control as Rendered

public
# SetForm( QForm|QFormBase $objForm )

Sets the Form of this QControl

Sets the Form of this QControl

Parameters

$objForm
public
# SetParentControl( QControl|QControlBase $objControl )

Sets the parent control for this control

Sets the parent control for this control

Parameters

$objControl
The control which has to be set as this control's parent
public
# ValidationReset( )

Resets the validation state to default

Resets the validation state to default

public mixed
# VarExport( boolean $blnReturn = true )

Runs var_export on this QControl

Runs var_export on this QControl

Parameters

$blnReturn
Does the result of var_export have to be returned?

Returns

mixed
public string
# GetJqControlId( )

Used by jQuery UI wrapper controls to find the element on which to apply the jQuery function

Used by jQuery UI wrapper controls to find the element on which to apply the jQuery function

NOTE: Some controls that use jQuery will get wrapped with extra divs by the jQuery library. If such a control then gets replaced by Ajax, the jQuery effects will be deleted. To solve this, the corresponding QCubed control should set UseWrapper to true, attach the jQuery effect to the wrapper, and override this function to return the id of the wrapper. See QDialogBase.class.php for an example.

Returns

string
the DOM element id on which to apply the jQuery UI function
public
# Watch( QQNode $objNode )

Watch a particular node in the database. Call this to trigger a redraw of the control whenever the database table that this node points to is changed.

Watch a particular node in the database. Call this to trigger a redraw of the control whenever the database table that this node points to is changed.

Parameters

$objNode
public
# MakeCurrent( )

Make this control current as of the latest changes so that it will not refresh on the next draw.

Make this control current as of the latest changes so that it will not refresh on the next draw.

public boolean
# IsDescendantOf( $objControl )

Returns true if the given control is anywhere in the parent hierarchy of this control.

Returns true if the given control is anywhere in the parent hierarchy of this control.

Parameters

$objControl

Returns

boolean
public null|QControl
# GetControlFromHierarchyByMethodName( string $strMethodName, boolean $blnIncludeCurrentControl = true )

Searches the control and it's hierarchy to see if a method by given name exists. This method searches only in the current control and its parents and so on. It will not search for the method in any siblings at any stage in the process.

Searches the control and it's hierarchy to see if a method by given name exists. This method searches only in the current control and its parents and so on. It will not search for the method in any siblings at any stage in the process.

Parameters

$strMethodName
Name of the method
$blnIncludeCurrentControl
Include this control as well?

Returns

null|QControl

The control found in the hierarchy to have the method Or null if no control was found in the hierarchy with the given name

public QForm
# GetForm( )

Returns the form associated with the control. Used by the QDataBinder trait.

Returns the form associated with the control. Used by the QDataBinder trait.

Returns

QForm
public mixed
# __get( string $strName )

PHP __get magic method implementation

PHP __get magic method implementation

Parameters

$strName
Property Name

Returns

mixed

Throws

Exception|QCallerException

Overrides

QHtmlAttributeManagerBase::__get()
public mixed|
# __set( string $strName, string $mixValue )

PHP __set magic method implementation

PHP __set magic method implementation

Parameters

$strName
Property Name
$mixValue
Property Value

Returns

mixed|

Throws

QCallerException
Exception|QCallerException
Exception|QInvalidCastException

Overrides

QHtmlAttributeManagerBase::__set()
public static QModelConnectorParam[]
# GetModelConnectorParams( )

Returns a description of the options available to modify by the designer for the code generator.

Returns a description of the options available to modify by the designer for the code generator.

Returns

QModelConnectorParam[]
Methods inherited from QHtmlAttributeManagerBase
AddCssClass(), GetCssStyle(), GetDataAttribute(), GetHtmlAttribute(), GetHtmlAttributes(), HasCssClass(), HasCssStyle(), HasHtmlAttribute(), Override(), RemoveCssClass(), RemoveCssClassesByPrefix(), RemoveCssStyle(), RemoveDataAttribute(), RemoveHtmlAttribute(), RenderTag(), SetCssBoxValue(), SetCssClass(), SetCssStyle(), SetDataAttribute(), SetHtmlAttribute()
Methods inherited from QBaseClass
OverrideAttributes(), __call()
Constants summary
string CommentStart
# 'Begin'
string CommentEnd
# 'End'
Properties summary
protected $objWrapperStyler
# null
protected mixed $mixCausesValidation

Controls how this control will effect the validation system

Controls how this control will effect the validation system

# false
protected boolean $blnRequired

Is it mandatory for the control to receive data on a POST back for the control to be called valid?

Is it mandatory for the control to receive data on a POST back for the control to be called valid?

# false
protected integer $strValidationError

Tab-index

Tab-index

# null
protected boolean $blnVisible

Should the control be visible or not (it normally effects whether Render method will be called or not)

Should the control be visible or not (it normally effects whether Render method will be called or not)

# true
protected boolean $blnDisplay

should the control be displayed?

should the control be displayed?

# true
protected string $strPreferredRenderMethod

Preferred method to be used for rendering e.g. Render, RenderWithName, RenderWithError

Preferred method to be used for rendering e.g. Render, RenderWithName, RenderWithError

# 'Render'
protected string $strHtmlBefore

HTML to rendered before the actual control

HTML to rendered before the actual control

# null
protected string $strHtmlAfter

HTML to rendered after the actual control

HTML to rendered after the actual control

# null
protected string $strInstructions

the Instructions for the control (useful for controls used in data entry)

the Instructions for the control (useful for controls used in data entry)

# null
protected string $strWarning

Same as validation error message but is supposed to contain custom messages

Same as validation error message but is supposed to contain custom messages

# null
protected QDraggable|null $objDraggable

When initialized, it implements the jQuery UI Draggable capabilities on to this control.

When initialized, it implements the jQuery UI Draggable capabilities on to this control.

# null
protected QResizable|null $objResizable

When initialized, it implements the jQuery UI Resizable capabilities on to this control.

When initialized, it implements the jQuery UI Resizable capabilities on to this control.

# null
protected QDroppable|null $objDroppable

When initialized, it implements the jQuery UI Droppable capabilities on to this control.

When initialized, it implements the jQuery UI Droppable capabilities on to this control.

# null
protected null|string $strControlId

The control ID of this control. Used to represent the control internally and used for the HTML 'id' attribute on the control.

The control ID of this control. Used to represent the control internally and used for the HTML 'id' attribute on the control.

#
protected QForm $objForm

Redundant copy of the global $_FORM variable.

Redundant copy of the global $_FORM variable.

# null
protected QControl $objParentControl

Immediate parent of this control

Immediate parent of this control

# null
protected QControl[] $objChildControlArray

Controls which have this control as their parent

Controls which have this control as their parent

# array()
protected string|null $strName

Name of the control - used as a lable for the control when RenderWithName is used to render

Name of the control - used as a lable for the control when RenderWithName is used to render

# null
protected boolean $blnRendered

Has the control already been rendered?

Has the control already been rendered?

# false
protected boolean $blnRendering

Is the control mid-way the process of rendering?

Is the control mid-way the process of rendering?

# false
protected boolean $blnOnPage

Is the control available on page? Useful when 're-rendering' a control that has children

Is the control available on page? Useful when 're-rendering' a control that has children

# false
protected boolean $blnModified

Has the control been modified? Used mostly in Ajax or Server callbacks

Has the control been modified? Used mostly in Ajax or Server callbacks

# false
protected boolean $blnWrapperModified

Has the control's wrapper been modified? Used in Ajax or Server callbacks

Has the control's wrapper been modified? Used in Ajax or Server callbacks

# false
protected string $strRenderMethod

Render method to be used

Render method to be used

#
protected string|null $strCustomAttributeArray

Custom HTML attributes for the control

Custom HTML attributes for the control

# null
protected string|null $strCustomStyleArray

Custom CSS style attributes for the control

Custom CSS style attributes for the control

# null
protected array $objActionArray

Array containing the list of actions set on the control (for different events)

Array containing the list of actions set on the control (for different events)

# array()
protected string|QJsClosure|null $mixActionParameter

The action parameter (typically small amount of data) for the Ajax or Server Callback

The action parameter (typically small amount of data) for the Ajax or Server Callback

# null
protected boolean $blnUseWrapper

Should the wrapper be used when rendering?

Should the wrapper be used when rendering?

# true
protected string $strAttributeScripts

One time scripts associated with the control.

One time scripts associated with the control.

# null
protected string $strCssClass

The INITIAL class for the object. Only subclasses should set this before calling the parent constructor.

The INITIAL class for the object. Only subclasses should set this before calling the parent constructor.

# null
protected boolean $blnMinimize

Force this control, and all subcontrols to draw minimized. This is important when using inline-block styles, as not doing so will cause spaces between the objects.

Force this control, and all subcontrols to draw minimized. This is important when using inline-block styles, as not doing so will cause spaces between the objects.

# false
protected string $strJavaScripts

List of JavaScript files to be attached with the control when rendering

List of JavaScript files to be attached with the control when rendering

# null
protected string $strStyleSheets

List of CSS files to be attaches with the control when rendering

List of CSS files to be attaches with the control when rendering

# null
protected string $strFormAttributes

Form attributes for the control

Form attributes for the control

# null
protected boolean $blnActionsMustTerminate

Should the default action be stopped from the being triggerred when an even occurrs?

e.g.:

  1. When a link is clicked which has an action associated with it - the browser will try to navigate to the link.
  2. When someone presses enter on a textbox - the form will try to submit.

This variable stops the default behavior (navigation to link / form submission) when set to true. Modification of this variable is to be done by using 'ActionMustTerminate' property exposed as a property

Should the default action be stopped from the being triggerred when an even occurrs?

e.g.:

  1. When a link is clicked which has an action associated with it - the browser will try to navigate to the link.
  2. When someone presses enter on a textbox - the form will try to submit.

This variable stops the default behavior (navigation to link / form submission) when set to true. Modification of this variable is to be done by using 'ActionMustTerminate' property exposed as a property

# false
protected boolean $blnScriptsOnly

True if this control only generates javascripts and not html.

True if this control only generates javascripts and not html.

# false
protected boolean $blnIsBlockElement

Is this control a block type element? This determines whether the control will be wrapped in a div or a span if blnUseWrapper is true. For example, if

Is this control a block type element? This determines whether the control will be wrapped in a div or a span if blnUseWrapper is true. For example, if

# false
protected QWatcher $objWatcher

Stores information about watched tables.

Stores information about watched tables.

# null
protected QQNode $objLinkedNode

Used by designer to associate a db node with this control

Used by designer to associate a db node with this control

#
protected boolean $blnWrapLabel

| null For controls that also produce built-in labels (QCheckBox, QCheckBoxList, etc.) True to wrap the checkbox with the label (the Bootstrap way). False to put the label next to the checkbox (the jQueryUI way).

| null For controls that also produce built-in labels (QCheckBox, QCheckBoxList, etc.) True to wrap the checkbox with the label (the Bootstrap way). False to put the label next to the checkbox (the jQueryUI way).

# false
protected boolean $blnSaveState

true to remember the state of this control to restore if the user comes back to it.

true to remember the state of this control to restore if the user comes back to it.

# false
protected boolean $blnAutoRender

true to have the control be automatically rendered without an explicit "Render..." call. This is used by QDialogs, and other similar controls that are controlled via javascript, and generally start out hidden on the page. These controls are appended to the form after all other controls.

true to have the control be automatically rendered without an explicit "Render..." call. This is used by QDialogs, and other similar controls that are controlled via javascript, and generally start out hidden on the page. These controls are appended to the form after all other controls.

# false
Properties inherited from QHtmlAttributeManagerBase
$attributes, $styles
Magic properties summary
public mixed $ActionParameter

This property allows you to pass your own parameters to the handlers for actions applied to this control. this can be a string or an object of type QJsClosure. If you pass in a QJsClosure it is possible to return javascript objects/arrays when using an ajax or server action.

public mixed $CausesValidation

flag says whether or not the form should run through its validation routine if this control has an action defined and is acted upon

public string $HtmlAfter

HTML that is shown after the control QControl::RenderWithName

public string $HtmlBefore

HTML that is shown before the control QControl::RenderWithName

public string $Instructions

instructions that is shown next to the control's name label QControl::RenderWithName

public boolean $Moveable
public boolean $Resizable
public string $Name

sets the Name of the Control (see QControl::RenderWithName)

public string $PreferredRenderMethod

carries the name of the function, which were initially used for rendering

public boolean $Required

specifies whether or not this is required (will cause a validation error if the form is trying to be validated and this control is left blank)

public string $ValidationError

is the string that contains the validation error (if applicable) or will be blank if (1) the form did not undergo its validation routine or (2) this control had no error

public boolean $Visible

specifies whether or not the control should be rendered in the page. This is in contrast to Display, which will just hide the control via CSS styling.

public string $Warning

is warning text that will be shown next to the control's name label QControl::RenderWithName

public boolean $UseWrapper

defaults to true

public QQNode $LinkedNode

A database node that this control is directly editing

public string $WrapperCssClass
public boolean $WrapLabel

For checkboxes, radio buttons, and similar controls, whether to wrap the label around the control, or place the label next to the control. Two legal styles of label creation that different css and JS frameworks expect.

public boolean $Minimize

True to force the entire control and child controls to draw minimized. This is helpful when drawing inline-block items to prevent spaces from appearing between them.

public boolean $AutoRender

true to have the control be automatically rendered without an explicit "Render..." call. This is used by QDialogs, and other similar controls that are controlled via javascript, and generally start out hidden on the page. These controls are appended to the form after all other controls.

public read-only boolean $ActionsMustTerminate

Prevent the default action from happenning upon an event trigger. See documentation for "protected $blnActionsMustTerminate" below.

public read-only boolean $ScriptsOnly

Whether the control only generates javascripts and not html.

public read-only string $ControlId

returns the id of this control

public read-only QForm $Form

returns the parent form object

public read-only array $FormAttributes
public read-only string $JavaScripts
public read-only boolean $Modified

indicates if the control has been changed. Used to tell Qcubed to rerender the control or not (Ajax calls).

public read-only boolean $OnPage

is true if the control is connected to the form

public read-only QForm|QControl $ParentControl

returns the parent control

public read-only boolean $Rendered
public read-only boolean $Rendering
public read-only string $RenderMethod

carries the name of the function, which were initially used for rendering

public read-only string $StyleSheets
public read-only boolean $WrapperModified
public write-only boolean $SaveState

set to true to have the control remember its state between visits to the form that the control is on.

Magic properties inherited from QHtmlAttributeManagerBase
$AccessKey, $AltText, $BackColor, $BorderCollapse, $BorderColor, $BorderStyle, $BorderWidth, $CssClass, $Cursor, $Data, $Display, $DisplayStyle, $Enabled, $FontBold, $FontItalic, $FontNames, $FontOverline, $FontSize, $FontStrikeout, $FontUnderline, $ForeColor, $Height, $HorizontalAlign, $Left, $Margin, $NoWrap, $Opacity, $OrderedListType, $Overflow, $Padding, $Position, $ReadOnly, $TabIndex, $ToolTip, $Top, $UnorderedListStyle, $VerticalAlign, $Width
API documentation generated by ApiGen