Copyright: Copyright © 2000-2007 Developer Express Inc.


dxLayoutCommon Unit Overview
dxLayoutCommon Unit

Routines

GetHotTrackColor

GetPlainString


GetHotTrackColor
GetHotTrackColor Function

Returns a highlight color.

Unit

dxLayoutCommon

function GetHotTrackColor: TColor;

Description

The GetHotTrack function returns the color used to highlight text when the mouse is placed over it.  The color returned by this function depends on the version of Windows being used.  If Windows® 98 or Windows® 2000 is used, the GetHotTrack function returns the color that is equal to the system color specified by the COLOR_HOTLIGHT parameter. Otherwise, the color specified by the COLOR_HIGHLIGHT parameter is returned.


GetPlainString
GetPlainString Function

Unit

dxLayoutCommon

function GetPlainString(const S: string): string;

Description

Removes the carriage return and carriage linefeed symbols from the string specified by the S parameter.  Use this function to convert a string expression to plain text without line breaks.


dxLayoutControl Unit Overview
dxLayoutControl Unit

Classes

TdxCustomLayoutControl

TdxCustomLayoutHitTest

TdxCustomLayoutItem

TdxCustomLayoutItemCaptionOptions

TdxCustomLayoutItemHitTest

TdxCustomLayoutItemOptions

TdxLayoutAlignmentConstraint

TdxLayoutClientAreaHitTest

TdxLayoutControl

TdxLayoutCustomizeFormHitTest

TdxLayoutGroup

TdxLayoutGroupHitTest

TdxLayoutItem

TdxLayoutItemCaptionOptions

TdxLayoutItemControlOptions

TdxLayoutItemHitTest

TdxLayoutNoneHitTest

TdxLayoutOffsets

Global Constants

htClientArea

htCustomizeForm

htError

htGroup

htItem

htNone


TdxCustomLayoutControl
TdxCustomLayoutControl Object

Hierarchy          Properties          Methods          Events          See Also

The TdxCustomLayoutControl object is the base class for the ExpressLayout Control.

Unit

dxLayoutControl

TdxCustomLayoutControl = class(TcxControl, IdxLayoutComponent, IdxLayoutLookAndFeelUser)

Description

Use the TdxCustomLayoutControl object as a base class when defining a control that represents the ExpressLayoutControl component.  Do not directly create instances of the TdxCustomLayoutControl object.  To place the ExpressLayoutControl onto a form, use TdxCustomLayoutControl descendants, such as TdxLayoutControl.

The TdxCustomLayoutControl object fully implements Layout Control functionality and contains properties and methods published in its direct descendant - TdxLayoutControl.


Properties for TdxCustomLayoutControl
TdxCustomLayoutControl Properties

TdxCustomLayoutControl          Legend

In TdxCustomLayoutControl

AbsoluteItemCount

AbsoluteItems

AlignmentConstraintCount

AlignmentConstraints

AutoContentSizes

AutoControlAlignment

AutoControlTabOrders

AvailableItemCount

AvailableItems

Customization

CustomizeForm

CustomizeFormBounds

CustomizeFormClass

Items

LayoutDirection

LeftPos

LookAndFeel

IniFileName

RegistryPath

ShowHiddenGroupsBounds

StoreInIniFile

StoreInRegistry

TopPos

Derived from TcxControl

Bounds

ClientBounds

IsFocused


Methods for TdxCustomLayoutControl
TdxCustomLayoutControl Methods

TdxCustomLayoutControl          Legend

In TdxCustomLayoutControl

 BeginUpdate

 Create

 CreateAlignmentConstraint

 CreateGroup

 CreateItem

 CreateItemForControl

 Destroy

 EndUpdate

 FindItem

 GetHitTest

 LoadFromIniFile

 LoadFromRegistry

 LoadFromStream

 SaveToIniFile

 SaveToRegistry

 SaveToStream

Derived from TcxControl

 InvalidateRect


Events for TdxCustomLayoutControl
TdxCustomLayoutControl Events

TdxCustomLayoutControl          Legend

In TdxCustomLayoutControl

OnCustomization


TdxCustomLayoutControl.AbsoluteItemCount

TdxCustomLayoutControl          See Also

Returns the total number of layout items.

property AbsoluteItemCount: Integer;

Description

Use the AbsoluteItemCount property to access the total number of layout items.  Every "absolute" item is represented by a TdxCustomLayoutItem object.  This property returns the total number of all items of the ExpressLayout Control including groups, hidden groups and ordinary items.

ReadOnly Property


TdxCustomLayoutControl.AbsoluteItems

TdxCustomLayoutControl          See Also

Returns a specified item of the ExpressLayout Control.

property AbsoluteItems[Index: Integer]: TdxCustomLayoutItem;

Description

Use this property to access a specific item of a ExpressLayoutControl. The Index parameter specifies its absolute index.  Every absolute item is represented by a TdxCustomLayoutItem object.  So every item of the ExpressLayout Control (including groups, hidden groups and ordinary items) is considered an absolute item.  You can use the AbsoluteItemCount property to obtain the total number of all ExpressLayout Control absolute items.

ReadOnly Property


TdxCustomLayoutControl.AlignmentConstraintCount

TdxCustomLayoutControl          See Also

Returns the number of alignment constraints of the ExpressLayout Control.

property AlignmentConstraintCount: Integer;

Description

Use the AlignmentConstraintCount property to access the number of existing alignment constraints.

ReadOnly Property


TdxCustomLayoutControl.AlignmentConstraints

TdxCustomLayoutControl          See Also

Specifies alignment constraints for the ExpressLayout Control.

property AlignmentConstraints[Index: Integer]: TdxLayoutAlignmentConstraint;

Description

Use the AlignmentConstraints property to access specific alignment constraints within the ExpressLayout Control. The Index parameter specifies the index of an alignment constraint.  Each alignment constraint is represented by a TdxLayoutAlignmentConstraint object.  In order to obtain the total number of alignment constraints, use the AlignmentConstraintCount property.  An alignment constraint is designed to align several items in the same manner.  To create a new alignment constraint at design time, you should select several items within the Designer, press the "Align By…" button and select the appropriate alignment constraint from the dropdown list.

You can use the CreateAlignmentConstraint method to create an alignment constraint at runtime.

ReadOnly Property


TdxCustomLayoutControl.AutoContentSizes

TdxCustomLayoutControl

Specifies whether to increase the size for the contents of the ExpressLayout Control to occupy the entire control area.

type

  TdxLayoutAutoContentSize = (acsWidth, acsHeight);

  TdxLayoutAutoContentSizes = set of TdxLayoutAutoContentSize;

property AutoContentSizes: TdxLayoutAutoContentSizes;

Description

Use the AutoContentSizes property to specify whether to increase content size horizontally or vertically to occupy the entire ExpressLayout Control client area.

The following values are available for the AutoContentSizes property.

Value	Description
acsWidth	Content width is increased.
acsHeight	Content height is increased.

The default value of this property is [ ].


TdxCustomLayoutControl.AutoControlAlignment

TdxCustomLayoutControl

Specifies the manner in which alignment is controlled within groups.

property AutoControlAlignment: Boolean;

Description

Use the AutoControlAlignment property to enable/disable automatic alignment within all ExpressLayout Control groups.  If the AutoControlAlignment property is set to True, the borders of all controls - whose items have the same left/right/top/bottom positions - are aligned by the same boundary.

If the AutoControlAlignment property is set to False, controls are not aligned automatically.

The default value of this property is True.


TdxCustomLayoutControl.AutoControlTabOrders

TdxCustomLayoutControl

Specifies whether to automatically manage the tab order of controls within the ExpressLayout Control.

property AutoControlTabOrders: Boolean;

Description

Tab order is the order in which child windows are navigated when pressing the Tab key.  A control, whose TabOrder value equals 0, represents a control that has focus when a form is initially created. Initially, the tab order is set in the order the controls were added to the form. The first item added to the form has a TabOrder value equal to 0, the second 1, the third 2, etc. (these items must be connected with windowed controls).  Use the AutoControlTabOrders property to automatically change the ExpressLayout Control’s item tab order regardless of the order in which items were placed within the ExpressLayout Control.  The new tab order takes into account item position within a group and group position within its parent.

The default value of this property is True.


TdxCustomLayoutControl.AvailableItemCount

TdxCustomLayoutControl          See Also

Returns the number of "available" items.

property AvailableItemCount: Integer;

Description

Use the AvailableItemCount property to access the number of "available" items within the ExpressLayout Control.  "Available" item means that the item was created within the ExpressLayout Control Designer, but was not placed within the control itself (it does not have a parent). After item creation every group or item represents an "available" item.  You may use the CreateItem or CreateGroup methods to create an "available" item at runtime.

ReadOnly Property


TdxCustomLayoutControl.AvailableItems

TdxCustomLayoutControl          See Also

Returns a specified "available" item of the ExpressLayout Control.

property AvailableItems[Index: Integer]: TdxCustomLayoutItem;

Description

Use this property to access a specific "available" item of the ExpressLayout Control.  This item index is specified by the Index parameter.  "Available" item means that this item was created within the ExpressLayout Control Designer, but was not placed within the control itself (it does not have a parent).  After item creation every group or item represents an "available" item.

In order to create an "available" item at runtime use the CreateItem or CreateGroup methods of the TdxLayoutControl object. You can use the AvailableItemCount property to obtain the total number of all  ExpressLayout Control "available" items.

ReadOnly Property


TdxCustomLayoutControl.Customization

TdxCustomLayoutControl          See Also

Specifies whether the ExpressLayout Control is currently in customization mode.

property Customization: Boolean;

Description

Use the Customization property to specify whether the ExpressLayout Control is in customization mode.  This property returns True if the ExpressLayout Control is in customization mode.  Otherwise, False is returned.

An item or group is highlighted in customization mode when the mouse pointer is over it and the left mouse button is clicked.  This mode allows an end-user to rearrange existing groups and items using drag & drop operations, and to remove them from the ExpressLayout Control to the Customization Form (this will make them "available").

The Customization Form is a special window that contains both an Items and Groups tabs.  These tabs include a list of items and groups invisible at present moment.  Drag a group or an item onto the Customization Form or outside the ExpressLayout Control to make it invisible.  The group or item name will be added to the corresponding tab.  Drag the group or item header back onto the ExpressLayout Control to make it visible again.  The Customization Form allows an end-user to create a new group as well.  Once created, this group can be placed within the ExpressLayout Control and populated with existing items.

Customization mode is available both at runtime and design time.


TdxCustomLayoutControl.CustomizeForm

TdxCustomLayoutControl          See Also

Provides access to the form which represents the Customization Form.

property CustomizeForm: TCustomForm;

Description

Use the CustomizeForm property to access the form which is used as the Customization Form in customization mode.  Use the Customization property to determine whether the ExpressLayout Control is in customization mode.

The Customization Form contains both Items and Groups tabs.  These tabs include a list of items and groups invisible at the present moment.  Drag a group or an item onto the Customization Form or outside the Layout Control to make it invisible.  The group or item name will be added to the corresponding tab.  Drag the group or item header back onto the ExpressLayout Control to make it visible again.  The Customization Form allows an end-user to create a new group as well.  Once created, this group can be placed within the ExpressLayout Control and populated with existing items.

ReadOnly Property


TdxCustomLayoutControl.CustomizeFormBounds

TdxCustomLayoutControl          See Also

Specifies the bound rectangle of the Customization Form in pixels.

property CustomizeFormBounds: TRect;

Description

Use the CustomizeFormBounds property to access the TRect that specifies the rectangle region occupied by the Customization Form.  If you want to assign a value to this property, you should do so when the Customization property is False.


TdxCustomLayoutControl.CustomizeFormClass

TdxCustomLayoutControl          See Also

Specifies the class of the form which is used as the Customization Form.

property CustomizeFormClass: TFormClass;

Description

Use the CustomizeFormClass property to specify the class of the form which will be used as a customization window, similar to the standard Customization Form.  This window is displayed when the ExpressLayout Control is in customization mode.  Use the CustomizeForm property to access the form which represents the Customization Form.

Note:	The class passed to the CustomizeFormClass property should be a TLayoutCustomizeForm descendant.


TdxCustomLayoutControl.IniFileName

TdxCustomLayoutControl          See Also

Specifies the name of an INI file in which group/item settings of the ExpressLayout Control are stored.

property IniFileName: string;

Description

If the StoreInIniFile property is True, group/item settings are stored in an INI file.  The IniFileName property determines the file name. Please note that the 'ini' extension is not automatically added to the file name.


TdxCustomLayoutControl.Items

TdxCustomLayoutControl          See Also

Specifies the root group of the ExpressLayout Control.

property Items: TdxLayoutGroup;

Description

The Items property allows an end-user to access all items of the root group, their properties and methods.  The Items property of the TdxCustomLayoutControl object can be considered as an indexed array of groups/items that describes an individual top group/item within the ExpressLayout Control.

Instead of writing:

  FirstRootGroupOrItem := TdxCustomLayoutControl.Items.Items[0];

use

  FirstRootGroupOrItem := TdxCustomLayoutControl.Items[0];

ReadOnly Property


TdxCustomLayoutControl.LayoutDirection

TdxCustomLayoutControl

Specifies the direction in which the ExpressLayout Control root group items are placed.

type

  TdxLayoutDirection = (ldHorizontal, ldVertical);

property LayoutDirection: TdxLayoutDirection;

Description

Use the LayoutDirection property to specify the appropriate direction of the ExpressLayout Control root group’s item arrangement.  Available values for the LayoutDirection property include:

Value	Description
ldHorizontal	Root group items are arranged horizontally.
ldVertical	Root group items are arranged vertically.


TdxCustomLayoutControl.LeftPos

TdxCustomLayoutControl

Determines the horizontal offset of the currently visible left border relative to the real left border of the TdxCustomLayoutControl object.

property LeftPos: Integer;

Description

When the client area size of the TdxCustomLayoutControl object is less than its content’s size, scrollbars are displayed.  If the ExpressLayout Control is horizontally scrolled, you may use the LeftPos property to obtain the difference between the actual left border of the ExpressLayout Control and its currently visible left border.  You can specify a new value for this property to scroll to a specific horizontal position of the ExpressLayout Control.

If the client area of the TdxCustomLayoutControl object displays its entire contents and scrolling is not required, the LeftPos property is set to 0.  Modification to the LeftPos property are thus unavailable.


TdxCustomLayoutControl.LookAndFeel

TdxCustomLayoutControl

Specifies the drawing style of the ExpressLayout Control.

property LookAndFeel: TdxCustomLayoutLookAndFeel;

Description

There are three main predefined look & feel styles: "Standard", "Office" and "Web", which can be created with the help of the TdxLayoutLookAndFeelList component.  Every look & feel style is represented by the previously tuned class derived from the TdxCustomLayoutLookAndFeel class.

Use the LookAndFeel property to select the appropriate drawing style.  You can customize the selected look & feel style as your needs dictate.


TdxCustomLayoutControl.OnCustomization

TdxCustomLayoutControl

Occurs when activating/deactivating customization mode.

property OnCustomization: TNotifyEvent;

Description

Write your OnCustomization event handler to perform specific actions when activating or deactivating customization mode such as synchronizing the customize button down state.


TdxCustomLayoutControl.RegistryPath

TdxCustomLayoutControl          See Also

Specifies the Registry path to store group/item settings of the ExpressLayout Control.

property RegistryPath: string;

Description

The Registry key - specified by the RegistryPath property - is used to store the ExpressLayout Control group and item configurations when the StoreInRegistry property is set to True.


TdxCustomLayoutControl.StoreInIniFile

TdxCustomLayoutControl          See Also

Specifies whether to store ExpressLayout Control settings in an INI file.

property StoreInIniFile: Boolean;

Description

If the StoreInIniFile property is True, the TdxLayoutControl object stores its group and item settings in the INI file specified by the IniFileName property.  The ExpressLayout Control stores settings, which include the name, parent name, index for every group and item (the Hidden property value is additionally stored for groups).

The default value of this property is False.


TdxCustomLayoutControl.StoreInRegistry

TdxCustomLayoutControl          See Also

Determines whether ExpressLayout Control settings are stored in the Registry.

property StoreInRegistry: Boolean;

Description

If the StoreInRegistry property is set to True, group and item settings are stored in the Registry specified by the RegistryPath property.  The ExpressLayout Control stores settings, which include the name, parent name, index for every group and item (the Hidden property value is additionally stored for groups).

The default value of this property is False.


TdxCustomLayoutControl.ShowHiddenGroupsBounds

TdxCustomLayoutControl

Specifies whether to display a border around hidden groups.

property ShowHiddenGroupsBounds: Boolean;

Description

Use the ShowHiddenGroupsBounds property to display or hide hidden group bounds within the ExpressLayout Control.  If this property is set to True, hidden group bounds are displayed.  Bounds of every hidden group are displayed as a rectangle drawn with a dash-and-dot line.  If the ShowHiddenGroupsBounds property is set to False, no border is displayed around hidden groups.


TdxCustomLayoutControl.TopPos

TdxCustomLayoutControl

Determines the vertical offset of the currently visible top border relative to the actual top border of the TdxCustomLayoutControl object.

property TopPos: Integer;

Description

When the client area size of the TdxCustomLayoutControl object is less than its content size, scrollbars are displayed.  If the ExpressLayout Control is vertically scrolled, you may use the TopPos property to obtain the difference between the actual top border of the ExpressLayout Control and its currently visible top border.  You can specify a new value for this property to scroll to a specific vertical position of the ExpressLayout Control.

If the client area of the TdxCustomLayoutControl object displays its entire contents and scrolling is not required, the TopPos property is set to 0.  Modifications to the TopPos property value is thus unavailable.


TdxCustomLayoutControl.BeginUpdate

TdxCustomLayoutControl          See Also

Disables ExpressLayout Control refresh operations.

procedure BeginUpdate;

Description

Calling the BeginUpdate method disables ExpressLayout Control repainting.  If the BeginUpdate procedure has been called, any changes to groups (or items) are not refreshed until calling the EndUpdate method.  The BeginUpdate and EndUpdate methods work together to prevent numerous updates of the ExpressLayout Control when adding groups, items or regrouping.

Remember to call the EndUpdate method after calling BeginUpdate.  Every call of the BeginUpdate method increases the internal counter by one.  Every call of the EndUpdate method decreases this counter by one.  The ExpressLayout Control can refresh itself only when the internal counter is 0.  Assume you need to add several items programmatically.  If you do not use the BeginUpdate and EndUpdate methods, the ExpressLayout Control redraws itself as many times as the number of added items.  Instead of prolonged delays, you can use the BeginUpdate method before adding the first item and the EndUpdate method after adding the last item; thus, the control redraws itself only once.


TdxCustomLayoutControl.Create

TdxCustomLayoutControl          See Also

Creates an instance of the TdxCustomLayoutControl object.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create a new instance of the TdxCustomLayoutControl object and initialize its properties.  After calling the inherited constructor, the Create method sets ExpressLayout Control properties to their default values.


TdxCustomLayoutControl.CreateAlignmentConstraint

TdxCustomLayoutControl

Creates an instance of the TdxLayoutAlignmentConstraint object.

function CreateAlignmentConstraint: TdxLayoutAlignmentConstraint;

Description

The Create method is used to create a new instance of the TdxLayoutAlignmentConstraint object.  Upon its creation, you can use methods of the TdxLayoutAlignmentConstraint object to add items to this constraint.


TdxCustomLayoutControl.CreateGroup

TdxCustomLayoutControl          See Also

Creates a new group within the ExpressLayout Control and returns it.

function CreateGroup(AGroupClass: TdxLayoutGroupClass = nil; AParent: TdxLayoutGroup = nil): TdxLayoutGroup;

Description

Use the CreateGroup method to create a new group within the ExpressLayout Control.

The AGroupClass paramenter specifies the class of a group to create.  By default, it is nil and therefore the default group class is used (TdxLayoutGroup).   The AParent parameter specifies the parent group of the newly created group.  By default, the AParent parameter is nil and the created group is invisible and presented within the list of available items of the Layout Control.  To make it visible, you must assign its Parent property to any visible group.  After this, the newly created group is removed from the available item list.


TdxCustomLayoutControl.CreateItem

TdxCustomLayoutControl          See Also

Creates a new item within the ExpressLayout Control and returns it.

function CreateItem(AItemClass: TdxCustomLayoutItemClass = nil; AParent: TdxLayoutGroup = nil): TdxCustomLayoutItem;

Description

Use the CreateItem method to create a new item within the ExpressLayout Control.

The AItemClass paramenter specifies the class of an item to create.  By default, it is nil and therefore the default item class is used (TdxLayoutItem). The AParent parameter specifies the parent group of the newly created item.  By default, the AParent parameter is nil and the created item is invisible and presented within the list of available items of the Layout Control.  To make it visible, you must assign its Parent property to any visible group.  After this, the newly created item is removed from the available item list.


TdxCustomLayoutControl.CreateItemForControl

TdxCustomLayoutControl

Creates a new item for an existing control, places it within a specific group and returns the newly created item.

function CreateItemForControl(AControl: TControl; AParent: TdxLayoutGroup = nil): TdxLayoutItem;

Description

Use the CreateItemForControl method to create a new item for an existing control and place it into the group specified by the AParent parameter.  The AControl parameter specifies the control, which will be contained within the created item.

The AParent parameter specifies the parent group of the newly created item.  By default, the AParent parameter is nil and the created item is invisible and presented in the list of available items of the Layout Control.  To make it visible, you must assign its Parent property to any visible group.  After this, the newly created item is removed from the available item list.

Assume, there is a text edit control somewhere on your form and you want to place it into a specific group of the ExpressLayout Control.  In this instance, you can call the CreateItemForControl method and pass the text edit control name via the AControl parameter and the name of the parent group via the AParent parameter.  The parent group will contain this newly created item.


TdxCustomLayoutControl.Destroy

TdxCustomLayoutControl          See Also

Destroys an instance of the TdxCustomLayoutControl object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxCustomLayoutControl object and to release any allocated memory.


TdxCustomLayoutControl.EndUpdate

TdxCustomLayoutControl          See Also

Enables refresh operations of the TdxCustomLayoutControl control.

procedure EndUpdate;

Description

The BeginUpdate and EndUpdate methods work together to prevent numerous updates of the ExpressLayout Control when adding groups or items.  Make certain to call the EndUpdate method after calling BeginUpdate.  Every call of the BeginUpdate method increases the internal counter by one.  Every call of the EndUpdate method decreases the internal counter by one.  The ExpressLayout Control refreshes itself only when the internal counter is 0.


TdxCustomLayoutControl.FindItem

TdxCustomLayoutControl

Finds an item by its name or by a specific control associated with the item.

function FindItem(AControl: TControl): TdxLayoutItem; overload;

or

function FindItem(const AName: string): TdxCustomLayoutItem; overload;

Description

Use the FindItem method to return a specific ExpressLayout Control item/group. You can use the FindItem method to find an item, associated with a specific control.  Each item is designed to be a container for any control derived from the TControl object.  Therefore every ExpressLayout Control item has a Control property that contains the associated control name.  You can find the appropriate ExpressLayout Control item if you know with which control this item is connected.  The AControl parameter specifies the name of the associated control.

You can use the FindItem method to find the appropriate ExpressLayout Control item/group if you know its name.  The AName parameter specifies the name of the desired item/group.


TdxCustomLayoutControl.GetHitTest

TdxCustomLayoutControl

Returns the object that specifies a Layout Control element at specified coordinates.

function GetHitTest(const P: TPoint): TdxCustomLayoutHitTest; overload;

or

function GetHitTest(X, Y: Integer): TdxCustomLayoutHitTest; overload;

Description

Call the GetHitTest method to access the object that specifies a Layout Control element at specified coordinates.  The P parameter (or the X and Y parameters) determines the current mouse cursor’s position.  It is a position of the mouse cursor in the coordinate system where (0, 0) is the upper-left corner of the ExpressLayout Control client area.  The GetHitTest method returns the appropriate object (this object is a TdxCustomLayoutHitTest descendant) that corresponds to the element of the Layout Control situated under the point specified by the P (or X and Y) parameter.  To determine which element is located at a specified position, use the HitTestCode method of the obtained object.


TdxCustomLayoutControl.LoadFromStream

TdxCustomLayoutControl          See Also

Loads ExpressLayout Control settings from a stream.

procedure LoadFromStream(AStream: TStream);

Description

Use the LoadFromStream method to load previously saved ExpressLayout Control settings.  This method allows an end-user to load information from a stream object.

The AStream parameter specifies the stream object from which to load settings.


TdxCustomLayoutControl.LoadFromRegistry

TdxCustomLayoutControl          See Also

Loads ExpressLayout Control settings from the Registry.

procedure LoadFromRegistry(const ARegistryPath: string);

Description

Use the LoadFromRegistry method to load previously saved ExpressLayout Control settings.  This method allows an end-user to load information from the Registry.

The ARegistryPath parameter specifies the Registry path from which to load settings.


TdxCustomLayoutControl.LoadFromIniFile

TdxCustomLayoutControl          See Also

Loads ExpressLayout Control settings from a specified INI file.

procedure LoadFromIniFile(const AFileName: string);

Description

Use the LoadFromIniFile method to load previously saved ExpressLayout Control settings.  This method allows an end-user to load information from an INI file.

The AFileName parameter specifies the name of the INI file from which to load settings; the ‘ini’ extension is not automatically added to the file name.


TdxCustomLayoutControl.SaveToStream

TdxCustomLayoutControl          See Also

Saves ExpressLayout Control group/item settings to a Stream.

procedure SaveToStream(AStream: TStream);

Description

Use the SaveToStream method to save ExpressLayout Control group and item settings.  This method allows you to save information to a stream.

The AStream parameter specifies the stream object wherein to store settings.


TdxCustomLayoutControl.SaveToRegistry

TdxCustomLayoutControl          See Also

Saves ExpressLayout Control group/item settings to the Registry.

procedure SaveToRegistry(const ARegistryPath: string);

Description

Use the SaveToRegistry method to save ExpressLayout Control group and item settings.  This method allows you to save information to the Registry.

The ARegistryPath parameter specifies the Registry path wherein to store settings.  To store settings in the Registry, the StoreInRegistry property must be set to True.


TdxCustomLayoutControl.SaveToIniFile

TdxCustomLayoutControl          See Also

Saves ExpressLayout Control group/item settings to an INI file.

procedure SaveToIniFile(const AFileName: string);

Description

Use the SaveToIniFile method to save ExpressLayout Control group and item settings.  This method allows you to save information to an INI file.

The AFileName parameter specifies the name of the INI file wherein to store settings; the ‘ini’ extension is not automatically added to the file name.  To store settings in an INI file, the StoreInIniFile property must be set to True.


TdxCustomLayoutItem
TdxCustomLayoutItem Object

Hierarchy          Properties          Methods          Events           See Also

The TdxCustomLayoutItem object is the base class for objects that represent items and groups within the ExpressLayout Control.

Unit

dxLayoutControl

TdxCustomLayoutItem = class(TComponent, IdxLayoutLookAndFeelUser)

Description

Use the TdxCustomLayoutItem object as a base class when defining an object, which represents an item or a group within the ExpressLayout Control.  Do not directly create instances of the TdxCustomLayoutItem object.  To place an item or a group onto a form, use TdxCustomLayoutItem descendants, such as TdxLayoutItem or TdxLayoutGroup.  New items and groups may be created with the help of the Designer window at design time or with the help of the CreateItem and CreateGroup methods and then they can be placed into the ExpressLayout Control.

The TdxCustomLayoutItem object fully implements ExpressLayout Control group and item functionality.  It contains properties and methods published in its direct descendants - TdxLayoutGroup and TdxLayoutItem.


Properties for TdxCustomLayoutItem
TdxCustomLayoutItem Properties

TdxCustomLayoutItem          Legend

In TdxCustomLayoutItem

ActuallyVisible

AlignHorz

AlignmentConstraint

AlignVert

AutoAligns

Caption

CaptionOptions

Container

Enabled

Index

IsRoot

LookAndFeel

Offsets

Parent

ShowCaption

Visible

VisibleIndex


Methods for TdxCustomLayoutItem
TdxCustomLayoutItem Methods

TdxCustomLayoutItem          Legend

In TdxCustomLayoutItem

 CanMoveTo

 Changed

 Create

 Destroy

 MakeVisible

 Move

 MoveTo

 PutIntoHiddenGroup


Events for TdxCustomLayoutItem
TdxCustomLayoutItem Events

TdxCustomLayoutItem          Legend

In TdxCustomLayoutItem

OnCaptionClick


TdxCustomLayoutItem.ActuallyVisible

TdxCustomLayoutItem

Specifies whether an item/group is currently visible.

property ActuallyVisible: Boolean;

Description

Use the ActuallyVisible property to determine whether an item/group is visible within the ExpressLayout Control.  The visibility of an individual item/group is specified via its Visible property.  Individual items/groups may be invisible even if their Visible property is set to True (when a parent is invisible).  Actual item/group visibility depends upon the visibility of its parent’s group.  The ActuallyVisible property returns a value that reflects the visibility of an item/group based upon its parent’s visibility.

ReadOnly Property


TdxCustomLayoutItem.AlignHorz

TdxCustomLayoutItem          See Also

Specifies the horizontal alignment of an item/group within its parent group.

type

  TdxLayoutAlignHorz = (ahLeft, ahCenter, ahRight, ahClient);

property AlignHorz: TdxLayoutAlignHorz;

Description

Use the AlignHorz property to customize the horizontal placement of an item/group within its parent group.  An item/group can occupy as much of its parent group client width as it can, or it can be aligned either to the right, left, or centered.  Setting the AlignHorz property to any value that is not equal to ahClient when the layout direction is vertical (or is not equal to ahLeft when the layout direction is horizontal) excludes the aaHorizontal parameter from the AutoAligns property set.

The following values are available for the AlignHorz property:

Value	Description	Example
ahLeft	An item/group is aligned to the left of its parent group.
ahCenter	An item/group is centered within its parent group.
ahRight	An item/group is aligned to the right of its parent group.
ahClient	An item/group occupies as much of its parent group client width as it can.
Note: You can place several items, whose AlignHorz property is set to ahClient, onto the Layout Control.  These items will use as much space as they can, but all of them will be displayed.


TdxCustomLayoutItem.AlignmentConstraint

TdxCustomLayoutItem

Specifies alignment constraints for an item/group.

property AlignmentConstraint: TdxLayoutAlignmentConstraint;

Description

Use the AlignmentConstraint property to specify alignment constraints for the ExpressLayout Control item/group.

An alignment constraint is designed to align several items/groups in the same manner.  In order to create a new alignment constraint at design time, you should select several items/groups within the Designer, press the "Align By…" button, and select the appropriate alignment constraint from the dropdown list.  You may use the CreateAlignmentConstraint method to create an alignment constraint at runtime.

Every alignment constraint is represented by a TdxLayoutAlignmentConstraint object instance and you can select a specific alignment constraint via the Index parameter.


TdxCustomLayoutItem.AlignVert

TdxCustomLayoutItem          See Also

Specifies the vertical alignment of an item/group within its parent group.

type

  TdxLayoutAlignVert = (avTop, avCenter, avBottom, avClient);

property AlignVert: TdxLayoutAlignVert;

Description

Use the AlignVert property to customize the vertical placement of an item/group within its parent group.  An item/group can occupy as much of a parent group’s client height as it can, or it can be aligned either to the top, bottom, or centered.  Setting the AlignVert property to a value not equal to avTop excludes the aaVertical parameter from the AutoAligns property set.

The following values are available for the AlignVert property:

Value	Description	Example
avTopt	An item/group is aligned to the top of its parent group.
avCenter	An item/group is centered within its parent group.
avBottom	An item/group is aligned to the bottom of its parent group.
avClient	An item/group occupies as much of its parent group client height as it can.
Note: You can place several items, whose AlignVert property is set to avClient, onto the Layout Control.  These items will use as much space as they can, but all of them will be displayed.


TdxCustomLayoutItem.AutoAligns

TdxCustomLayoutItem          See Also

Specifies whether horizontal or/and vertical alignment is set automatically.

type

  TdxLayoutAutoAlign = (aaHorizontal, aaVertical);

  TdxLayoutAutoAligns = set of TdxLayoutAutoAlign;

property AutoAligns: TdxLayoutAutoAligns;

Description

The AutoAlign property contains a set of two values, which specify whether horizontal or/and vertical alignment is set automatically for a given item/group.

Available values for the AutoAlign property are the following:

Value	Description
aaHorizontal	Horizontal alignment is set automatically.
aaVertical	Vertical alignment is set automatically.

If the aaHorizontal value is included in the AutoAlign property set, horizontal item/group alignment is performed automatically.  In this instance, if the LayoutDirection property of the parent group is set to ldHorizontal (or no parent group exists), the AlignHorz property value of a given item/group is automatically set to ahLeft.  If the LayoutDirection property of the parent group is set to ldVertical, the AlignHorz property value of a given item/group is automatically set to ahClient.

If the aaVertical value is included in the AutoAlign property set, vertical item/group alignment is performed automatically.  In this instance, the AlignVert property value of a given item/group is automatically set to avTop value.

The default value of the AutoAlign property is [aaHorizontal, aaVertical].


TdxCustomLayoutItem.Caption

TdxCustomLayoutItem          See Also

Specifies the caption of an item/group.

property Caption: string;

Description

Use the Caption property to associate an item/group with text, which describes the element.  To create an accelerator in the Caption property, include an ampersand (&) before any character.


TdxCustomLayoutItem.CaptionOptions

TdxCustomLayoutItem

Contains a set of options for item/group caption customization.

property CaptionOptions: TdxCustomLayoutItemCaptionOptions;

Description

The CaptionOptions property is used to access the TdxCustomLayoutItemCaptionOptions class and its properties and methods.


TdxCustomLayoutItem.Container

TdxCustomLayoutItem

Specifies the ExpressLayout Control that contains an item/group.

property Container: TdxCustomLayoutControl;

Description

Use the Container property to specify the ExpressLayout Control on which an item/group is placed.  This property contains the TdxCustomLayoutControl object, which is designed to be a container for groups and items.


TdxCustomLayoutItem.Enabled

TdxCustomLayoutItem

Controls whether an item/group responds to mouse and keyboard events.

property Enabled: Boolean;

Description

Use the Enabled property to change the availability of an item/group (and its associated control) for end-users.  To disable an item, set this property to False.  An item control that corresponds to a given item is also disabled - that is the item (and its associated controls) ignores mouse and keyboard events.


TdxCustomLayoutItem.Index

TdxCustomLayoutItem

Specifies item index within the Items list of its parent group.

property Index: Integer;

Description

The Index property specifies the index of a given item in the list provided by the Items property of the TdxLayoutGroup object.  If a given item belongs to the root group, the Index property specifies the item index in the list represented by the Items property of the TdxCustomLayoutControl object.  The first item index is 0.


TdxCustomLayoutItem.IsRoot

TdxCustomLayoutItem

Specifies whether the current element represents the root group.

property IsRoot: Boolean;

Description

The IsRoot property is used to indicate whether a given element is the root group of the ExpressLayout Control.  If the IsRoot property is set to True, a given element is the root group and the Items property of the Layout Control corresponds to this element; otherwise, it represents a standard group within the ExpressLayout Control.

ReadOnly Property


TdxCustomLayoutItem.LookAndFeel

TdxCustomLayoutItem

Specifies ExpressLayout Control drawing style for the current item.

property LookAndFeel: TdxCustomLayoutLookAndFeel;

Description

There are three main predefined look & feel styles: "Standard", "Office" and "Web", which can be created with the help of the TdxLayoutLookAndFeelList component.  Every look & feel style is represented by the previously tuned class derived from the TdxCustomLayoutLookAndFeel class.

Use the LookAndFeel property to select the appropriate drawing style.  You can customize the selected look & feel style as your needs dictate.


TdxCustomLayoutItem.Offsets

TdxCustomLayoutItem

Specifies the horizontal and vertical offsets of an item/group.

property Offsets: TdxLayoutOffsets;

Description

Use the Offsets property to access the TdxLayoutOffsets class that specifies the offsets of a given item/group.  There are four offsets, which represent item/group displacements within its default location: Left, Right, Top, and Bottom.


TdxCustomLayoutItem.OnCaptionClick

TdxCustomLayoutItem          See Also

Occurs when clicking the caption region of an item/group.

property OnCaptionClick: TNotifyEvent;

Description

Write your custom event handler for the OnCaptionClick event to perform specific actions when clicking the caption region of a specific item/group.


TdxCustomLayoutItem.Parent

TdxCustomLayoutItem

Specifies the parent group of an item/group.

property Parent: TdxLayoutGroup;

Description

Use the Parent property to specify the parent group for a given item/group.


TdxCustomLayoutItem.ShowCaption

TdxCustomLayoutItem          See Also

Specifies whether to display the caption region of an item/group.

property ShowCaption: Boolean;

Description

Use the ShowCaption property if you want caption text to be displayed within a given item (or within a given group).  If ShowCaption is True, the caption of a specific item/group is displayed within the ExpressLayout Control.  Otherwise, it is not.

The default value of this property is True.


TdxCustomLayoutItem.Visible

TdxCustomLayoutItem

Determines whether an item/group appears on screen.

property Visible: Boolean;

Description

Use the Visible property to access or set the visibility of an item/group.  If the Visible property is False, this item/group is hidden within the ExpressLayout Control.  Set the Visible property to True to display it.

The default value of this property is True.


TdxCustomLayoutItem.VisibleIndex

TdxCustomLayoutItem

Specifies item index in the VisibleItems list of its parent group.

property VisibleIndex: Integer;

Description

The VisibleIndex property specifies the index of a specific visible item in the list represented by the VisibleItems property of the TdxLayoutGroup object.  The first visible item index is 0.


TdxCustomLayoutItem.CanMoveTo

TdxCustomLayoutItem

Returns the value indicating whether it is possible to move a given item/group to another group.

function CanMoveTo(AParent: TdxCustomLayoutItem): Boolean; virtual;

Description

Use the CanMoveTo method to discover whether a given item/group can be moved to the group specified by the AParent parameter.  If an item/group can be moved to a specific group, this method returns True; otherwise, False.


TdxCustomLayoutItem.Changed

TdxCustomLayoutItem

Forces the item/group container to be redrawn.

procedure Changed(AHardRefresh: Boolean = True; ARefreshControls: Boolean = False);

Description

The Changed method is used when the item/group properties that define its appearance are changed and this item/group container needs to be redrawn.

The AHardRefresh parameter specifies whether to completely redraw the ExpressLayout Control or redraw only the region that contains the changed item/group. The ARefreshControls parameter specifies whether to redraw a control (if any) associated with the modified item.


TdxCustomLayoutItem.Create

TdxCustomLayoutItem          See Also

Creates an instance of the TdxCustomLayoutItem object.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create a new instance of the TdxCustomLayoutItem object and initialize its properties.  After calling the inherited constructor, the Create method sets the created item/group properties to their default values.


TdxCustomLayoutItem.Destroy

TdxCustomLayoutItem          See Also

Destroys an instance of the TdxCustomLayoutItem object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxCustomLayoutItem object and release any allocated memory.


TdxCustomLayoutItem.MakeVisible

TdxCustomLayoutItem          See Also

Makes a given item/group visible within the ExpressLayout Control.

procedure MakeVisible;

Description

Call the MakeVisible method to display an item/group that is currently invisible when the client area size of the ExpressLayout Control is less than its content’s size.  In this instance, an item/group may be invisible within the ExpressLayout Control at present moment and you need to scroll horizontally and/or vertically to view this item/group.

The MakeVisible method verifies whether an item/group is actually visible (the ActuallyVisible property is set to True) and then changes the LeftPos and/or TopPos property values of the ExpressLayout Control to scroll horizontally and/or vertically to display this item/group.


TdxCustomLayoutItem.Move

TdxCustomLayoutItem          See Also

Moves an item/group to another group.

function Move(AParent: TdxLayoutGroup; AIndex: Integer; APack: Boolean = False): Boolean;

Description

Use the Move function to move a given item/group to another group within the ExpressLayout Control.  The new parent group is specified by the AParent parameter.  Set this parameter to nil to remove the item/group from its parent group.

The AIndex parameter determines the new Index property of the moved item/group.  First, the Move function verifies the value returned by the CanMoveTo method.  Then (if the returned value is True) this function moves the item/group.

The Move function returns True when the movement was successful.


TdxCustomLayoutItem.MoveTo

TdxCustomLayoutItem

Moves an item/group to another group at the specified visible position.

function MoveTo(AParent: TdxLayoutGroup; AVisibleIndex: Integer; APack: Boolean = False): Boolean;

Description

This method internally calls the Move function and passes the index of the item/group that corresponds to the AVisibleInde position as its AIndex parameter.  Refer to the description of the Move function for details on its parameters.


TdxCustomLayoutItem.PutIntoHiddenGroup

TdxCustomLayoutItem

Creates a hidden group and moves an item/group to it.

type

  TdxLayoutDirection = (ldHorizontal, ldVertical);

function PutIntoHiddenGroup(ALayoutDirection: TdxLayoutDirection): TdxLayoutGroup;

Description

Call the PutIntoHiddenGroup method when you need to change the position of an item/group within its parent group, but this new item/group position does not match the layout direction within the group.  The PutIntoHiddenGroup method creates a new hidden group within the parent group of a specific item/group and then moves this item/group to this group.  The ALayoutDirection parameter specifies item layout direction within the newly created hidden group.

Available values for the ALayoutDirection parameter include:

Value	Description
ldHorizontal	Items are arranged horizontally within the newly created hidden group.
ldVertical	Items are arranged vertically within the newly created hidden group.


TdxCustomLayoutItemCaptionOptions
TdxCustomLayoutItemCaptionOptions Object

Hierarchy          Properties          Methods

The TdxCustomLayoutItemCaptionOptions object is the base class for objects that represent caption options for items and groups within the ExpressLayout Control.

Unit

dxLayoutControl

TdxCustomLayoutItemCaptionOptions = class(TdxCustomLayoutItemOptions)

Description

The TdxCustomLayoutItemCaptionOptions object is used to represent caption options for a group/item.  This object is a direct descendant of the TdxCustomLayoutItemOptions class and inherits its Create method.  The TdxCustomLayoutItemCaptionOptions object implements its own AlignHorz property to specify the horizontal alignment of group/item caption.

Use the TdxCustomLayoutItemCaptionOptions object as a base class when defining the object, which represents caption options for items within the ExpressLayout Control.


Properties for TdxCustomLayoutItemCaptionOptions
TdxCustomLayoutItemCaptionOptions Properties

TdxCustomLayoutItemCaptionOptions          Legend

In TdxCustomLayoutItemCaptionOptions

AlignHorz


Methods for TdxCustomLayoutItemCaptionOptions
TdxCustomLayoutItemCaptionOptions Methods

TdxCustomLayoutItemCaptionOptions          Legend

Derived from TdxCustomLayoutItemOptions

 Create


TdxCustomLayoutItemCaptionOptions.AlignHorz

TdxCustomLayoutItemCaptionOptions

Specifies horizontal caption text alignment.

property AlignHorz: TAlignment;

Description

Use the AlignHorz property to read or set the horizontal alignment of caption text within the caption region.  The following values are available for the AlignHorz property:

Value	Description	Example
taLeftJustify	Text is left justified: Lines begin at the left edge of the item/group caption region.
taCenter	Text is centered in the caption region.
taRightJustify	Text is right justified: Lines end at the right edge of the item/group caption region.

The default value of the AlignHorz property is taLeftJustify.


TdxCustomLayoutItemOptions
TdxCustomLayoutItemOptions Object

Hierarchy          Methods

The TdxCustomLayoutItemOptions object is the base class for all objects that represent caption or control options for items and groups within the ExpressLayout Control.

Unit

dxLayoutControl

TdxCustomLayoutItemOptions = class(TPersistent)

Description

Use the TdxCustomLayoutItemOptions object as a base class when defining an object that represents caption options for items and groups, control options for controls contained within items or offsets used to separate groups and items within groups.  Do not directly create instances of the TdxCustomLayoutItemOptions object.


Methods for TdxCustomLayoutItemOptions
TdxCustomLayoutItemOptions Methods

TdxCustomLayoutItemOptions          Legend

In TdxCustomLayoutItemOptions

 Create


TdxCustomLayoutItemOptions.Create

TdxCustomLayoutItemOptions

Creates an instance of the TdxCustomLayoutItemOptions object.

procedure Create(AItem: TdxCustomLayoutItem);

Description

The Create method is used to create a new instance of the TdxCustomLayoutItemOptions object.  The AItem parameter specifies the item to which the newly created TdxCustomLayoutItemOptions object belongs.


TdxLayoutAlignmentConstraint
TdxLayoutAlignmentConstraint Object

Hierarchy          Properties          Methods

Represents an alignment constraint for ExpressLayout Control elements.

Unit

dxLayoutControl

TdxLayoutAlignmentConstraint = class(TComponent)

Description

The TdxLayoutAlignmentConstraint object is used to provide a specific alignment rule for ExpressLayout Control elements and a list of elements to which this alignment rule is applied.  The TdxLayoutAlignmentConstraint object implements its own properties used to maintain the associated items list, the alignment rule for these items, and the number of all associated items.


Properties for TdxLayoutAlignmentConstraint
TdxLayoutAlignmentConstraint Properties

TdxLayoutAlignmentConstraint          Legend

In TdxLayoutAlignmentConstraint

Count

Items

Kind


Methods for TdxLayoutAlignmentConstraint
TdxLayoutAlignmentConstraint Methods

TdxLayoutAlignmentConstraint          Legend

In TdxLayoutAlignmentConstraint

 AddItem

 Create

 Destroy

 RemoveItem


TdxLayoutAlignmentConstraint.Count

TdxLayoutAlignmentConstraint          See Also

Returns the number of items/groups associated with an alignment constraint.

property Count: Integer;

Description

The TdxLayoutAlignmentConstraint object contains a list of elements (items and/or groups) to which the rule specified in the Kind property is applied.  Every member of this list can be accessed via the Items property of the TdxLayoutAlignmentConstraint object.  Use the Count property to access the number of all elements (items and/or groups) contained within the list.

ReadOnly Property


TdxLayoutAlignmentConstraint.Items

TdxLayoutAlignmentConstraint          See Also

Returns a specific element (item or group) to which the alignment constraint rule is applied.

property Items[Index: Integer]: TdxCustomLayoutItem;

Description

The TdxLayoutAlignmentConstraint object contains a list of elements (items/groups) to which the rule specified in the Kind property is applied.  Use the Items property to access a specific element (item or group) within the list.  You may use the Count property to get the number of all elements (items/groups) contained in the list.

ReadOnly Property


TdxLayoutAlignmentConstraint.Kind

TdxLayoutAlignmentConstraint

Specifies the alignment rule for all associated elements (items/groups).

type

  TdxLayoutAlignmentConstraintKind = (ackLeft, ackTop, ackRight, ackBottom);

property Kind: TdxLayoutAlignmentConstraintKind;

Description

Use the Kind property to align all elements (items/groups) associated with the TdxLayoutAlignmentConstraint object in a specific manner.

The following values are available for the Kind property:

Value	Description
ackLeft	Elements are aligned to the left.
ackTop	Elements are aligned to the top.
ackRight	Elements are aligned to the right.
ackBottom	Elements are aligned to the bottom.

The default value of the Kind property is ackLeft.


TdxLayoutAlignmentConstraint.AddItem

TdxLayoutAlignmentConstraint          See Also

Adds a new element (item or group) to the Items list of the TdxLayoutAlignmentConstraint object.

procedure AddItem(AItem: TdxCustomLayoutItem);

Description

Call the AddItem method to add an element (item or group) to the items list of an alignment constraint.  The AItem parameter determines a specific item/group to associate with the TdxLayoutAlignmentConstraint object.  After adding the item the AlignmentConstraint property of AItem will correspond to a given alignment constraint and the alignment constraint rule specified in the Kind property is applied to the element.


TdxLayoutAlignmentConstraint.Create

TdxLayoutAlignmentConstraint          See Also

Creates an instance of the TdxLayoutAlignmentConstraint object.

procedure Create(AOwner: TComponent);

Description

The Create method creates and initializes a new instance of the alignment constraint represented by the TdxLayoutAlignmentConstraint object.


TdxLayoutAlignmentConstraint.Destroy

TdxLayoutAlignmentConstraint          See Also

Destroys an instance of the TdxLayoutAlignmentConstraint object.

procedure Destroy;

Description

Use the Destroy method to free any memory or resources allocated for the TdxLayoutAlignmentConstraint object in the Create method.


TdxLayoutAlignmentConstraint.RemoveItem

TdxLayoutAlignmentConstraint          See Also

Deletes an item/group from the list of associated elements.

procedure RemoveItem(AItem: TdxCustomLayoutItem);

Description

Call the RemoveItem method to delete an item/group from the alignment constraint Items list.  The AItem parameter specifies the item/group to be removed from the list of associated elements.  When an alignment constraint contains less than 2 items, it destroys itself.


TdxLayoutControl
TdxLayoutControl Object

Hierarchy          Properties          Methods          Events

Represents the ExpressLayout Control control.

Unit

dxLayoutControl

TdxLayoutControl = class(TdxCustomLayoutControl)

Description

The TdxLayoutControl object represents the ExpressLayout Control component.

The TdxLayoutControl object is derived directly from the TdxCustomLayoutControl class.  The TdxLayoutControl object does not introduce any new properties or methods.  This is a ‘published’ variant of the TdxCustomLayoutControl object, which fully implements ExpressLayout Control functionality.


Properties for TdxLayoutControl
TdxLayoutControl Properties

TdxLayoutControl          Legend

Derived from TdxCustomLayoutControl

AbsoluteItemCount

AbsoluteItems

AlignmentConstraintCount

AlignmentConstraints

AutoContentSizes

AutoControlAlignment

AutoControlTabOrders

AvailableItemCount

AvailableItems

Customization

CustomizeForm

CustomizeFormBounds

CustomizeFormClass

IniFileName

Items

LayoutDirection

LeftPos

LookAndFeel

RegistryPath

ShowHiddenGroupsBounds

StoreInIniFile

StoreInRegistry

TopPos

Derived from TcxControl

Bounds

ClientBounds

IsFocused


Methods for TdxLayoutControl
TdxLayoutControl Methods

TdxLayoutControl          Legend

Derived from TdxCustomLayoutControl

 BeginUpdate

 Create

 CreateAlignmentConstraint

 CreateGroup

 CreateItem

 CreateItemForControl

 Destroy

 EndUpdate

 FindItem

 GetHitTest

 LoadFromIniFile

 LoadFromRegistry

 LoadFromStream

 SaveToIniFile

 SaveToRegistry

 SaveToStream

Derived from TcxControl

 InvalidateRect

 GetHitTest


Events for TdxLayoutControl
TdxLayoutControl Events

TdxLayoutControl          Legend

Derived from TdxCustomLayoutControl

OnCustomization


TdxLayoutGroup
TdxLayoutGroup Object

Hierarchy          Properties          Methods          Events          See Also

Represents a group within the ExpressLayout Control.

Unit

dxLayoutControl

TdxLayoutGroup = class(TdxCustomLayoutItem);

Description

The TdxLayoutGroup object represents a group within the ExpressLayout Control.  This class is a descendant of the TdxCustomLayoutItem object and inherits all TdxCustomLayoutItem object properties and methods.  Additionally the TdxLayoutGroup object implements its own properties and methods that concern group maintenance.

To create a group at design time, invoke the Designer window and click the "Add Group…" button - Then set up the desired group properties and place this group into the ExpressLayout Contol using drag & drop operations.

To create a group at runtime, you should use the CreateGroup method of another group (or the CreateGroup method of the Layout Control) and then assign the Parent property of the newly created group (the Parent property will be assigned automatically if the group’s CreateGroup method was used).


Properties for TdxLayoutGroup
TdxLayoutGroup Properties

dxLayoutGroup          Legend

In TdxLayoutGroup

Count

Hidden

IsUserDefined

Items

LayoutDirection

Locked

LookAndFeelException

ShowBorder

UseIndent

VisibleCount

VisibleItems

Derived from TdxCustomLayoutItem

ActuallyVisible

AlignHorz

AlignmentConstraint

AlignVert

AutoAligns

Caption

CaptionOptions

Container

Enabled

Index

IsRoot

LookAndFeel

Offsets

Parent

ShowCaption

Visible

VisibleIndex


Methods for TdxLayoutGroup
TdxLayoutGroup Methods

TdxLayoutGroup          Legend

In TdxLayoutGroup

 Create

 CreateGroup

 CreateItem

 CreateItemForControl

 Destroy

 MoveChildrenToParent

 PutChildrenIntoHiddenGroup

Derived from TdxCustomLayoutItem

 CanMoveTo

 Changed

 MakeVisible

 Move

 MoveTo

 PutIntoHiddenGroup


Events for TdxLayoutGroup
TdxLayoutGroup Events

TdxLayoutGroup          Legend

Derived from TdxCustomLayoutItem

OnCaptionClick


TdxLayoutGroup.Count

TdxLayoutGroup          See Also

Returns the number of group items.

property Count: Integer;

Description

Use the Count property to access the number of items for which a specific group is a parent.  This property returns the number of all elements of the TdxLayoutGroup object including groups, hidden groups and ordinary items.


TdxLayoutGroup.Hidden

TdxLayoutGroup

Specifies whether the current group represents a hidden group.

property Hidden: Boolean;

Description

Use the Hidden property to turn a group into an auxiliary hidden group.  Generally, a hidden group is an automatically created auxiliary group.  The ExpressLayout Control can create a new hidden group on the fly when required.  The need for this type of group is caused by modifications to an element’s layout direction, within a user-defined (or root) group.

For instance, assume there is a user-defined group (Group1) with three items (Item1, Item2, and Item3).  These items are arranged horizontally within the group (the LayoutDirection property of the group is set to ldHorizontal).

Then an end-user wants to rearrange the group.  Assume an end-user moves one of the items (Item3) under a specific item (Item1).

In order to keep the horizontal layout direction within the group (Group1), the ExpressLayout Control automatically creates a new hidden group for Item1 and Item3.

Thus, this hidden group contains two items (Item1 and Item3) and the layout direction within the hidden group is vertical.  Now Group1 contains only two elements: the hidden group and Item2.  And the Group1 layout direction is not changed (ldHorizontal).

In comparison with a user-defined group, a hidden group has the following limitations.  A hidden group cannot have borders and captions - its ShowBorder and ShowCaption properties are set to False.  Also a hidden group can be destroyed automatically by the Pack method of TdxCustomLayoutItem if it is not needed to maintain current layout.


TdxLayoutGroup.IsUserDefined

TdxLayoutGroup

Specifies whether a group is a user-defined group.

property IsUserDefined: Boolean;

Description

Use the IsUserDefined property to determine whether a group was created by an end-user.  If this property value is True, the group is a user-defined group; otherwise, it represents a group created by the programmer at design time and loaded with the application.


TdxLayoutGroup.Items

TdxLayoutGroup          See Also

Contains a list of grouped elements.

property Items[Index: Integer]: TdxCustomLayoutItem;

Description

The Items property returns the grouped element specified by the Index parameter.  The first item index is 0.  The number of elements arranged within a group is contained in the Count property.

ReadOnly Property


TdxLayoutGroup.LayoutDirection

TdxLayoutGroup

Specifies the direction in which the items of a given group are placed.

type

  TdxLayoutDirection = (ldHorizontal, ldVertical);

property LayoutDirection: TdxLayoutDirection;

Description

Use the LayoutDirection property to specify appropriate arrangement direction of items within a given group.  Available values for LayoutDirection include:

Value	Description
ldHorizontal	Group items are arranged horizontally within a group.
ldVertical	Group items are arranged vertically within a group.

The default value of the LayoutDirection property is ldVertical.


TdxLayoutGroup.Locked

TdxLayoutGroup

Specifies whether a group and its contents are considered as a single element during customization.

property Locked: Boolean;

Description

Use the Locked property to disable group element customization (change internal group layout).  If this property is set to True, an end-user cannot change internal group layout (add a new element or remove any element) when the ExpressLayout Control is in customization mode.  But an end-user can change external group layout, move it to another group, hide/show.  If the Locked property is set to False, every group element is available for modification.

The default value of the Locked property is False.


TdxLayoutGroup.LookAndFeelException

TdxLayoutGroup

Specifies whether child elements of a specific group use its look & feel.

property LookAndFeelException: Boolean;

Description

As a rule, all children of a group use its look & feel (even if their LookAndFeel property is nil).  If their LookAndFeel property is nil and you want child elements to have their own look & feel, you should set the LookAndFeelException property of this group to True.  In this instance, group parents determine the items look & feel (if their LookAndFeelException properties are False).

The default value of the LookAndFeelException property is False.


TdxLayoutGroup.ShowBorder

TdxLayoutGroup

Specifies whether a border is drawn around a group.

property ShowBorder: Boolean;

Description

Set the ShowBorder property to specify whether a border should be drawn around a group.  The thickness and look & feel of the group border depend upon the look & feel style (if any) specified for this group.

The default value of the ShowBorder property is True.


TdxLayoutGroup.UseIndent

TdxLayoutGroup

Specifies whether margins are used to separate group element edges from one another.

property UseIndent: Boolean;

Description

Set the UseIndent property to True to separate the edges of group elements from one another within a group.  If the LayoutDirection property is set to ldHorizontal, the UseIndent property affects the margin that separates the left edge of a group element from the right edge of the previous element.  If the LayoutDirection property is set to ldVertical, the UseIndent property setting affects the margin that separates the top edge of a group element from the bottom edge of the previous element.  If the UseIndent property is set to False, all group elements are closely placed within the group.

The default value of the UseIndent property is True.


TdxLayoutGroup.VisibleCount

TdxLayoutGroup          See Also

Determines the number of visible elements within a group.

property VisibleCount: Integer;

Description

Use the VisibleCount property to access the total number of visible group elements.  The count includes only the elements whose Visible property is set to True.  The VisibleCount property is often used in conjunction with the VisibleItems property to iterate through the list of visible group elements.  Since the VisibleItems property index is zero based, the index of the last visible element is one less than the number returned by the VisibleCount property.


TdxLayoutGroup.VisibleItems

TdxLayoutGroup          See Also

Specifies the list of visible elements within a group.

property VisibleItems[Index: Integer]: TdxCustomLayoutItem;

Description

The VisibleItems property includes the elements whose Visible property is set to True.   The index of the VisibleItems property is zero based and is often used in conjunction with the VisibleCount property to iterate through the list of visible elements.


TdxLayoutGroup.Create

TdxLayoutGroup          See Also

Creates an instance of the TdxLayoutGroup object.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create a new instance of the TdxLayoutGroup object and initialize its properties.  After calling the inherited constructor, the Create method sets the created group properties to their default values.


TdxLayoutGroup.CreateGroup

TdxLayoutGroup          See Also

Creates a new group within a given group and returns the newly created group.

function CreateGroup(AGroupClass: TdxLayoutGroupClass = nil): TdxLayoutGroup;

Description

Use the CreateGroup method to create a new group within a group.  A group represents a parent group for the newly created group.  The AGroupClass parameter specifies the class of the created group.  By default, it is nil and therefore the default group class is used (TdxLayoutGroup).


TdxLayoutGroup.CreateItem

TdxLayoutGroup          See Also

Creates a new item within a given group and returns the newly created item.

function CreateItem(AItemClass: TdxCustomLayoutItemClass = nil): TdxCustomLayoutItem;

Description

Use the CreateItem method to create a new item within a group.  A group represents a parent group for the newly created item.  The AItemClass parameter specifies the class of the created item.  By default, it is nil and therefore the default item class is used (TdxLayoutItem).


TdxLayoutGroup.CreateItemForControl

TdxLayoutGroup          See Also

Creates a new item for an existing control, places it within a specific group and returns the newly created item.

function CreateItemForControl(AControl: TControl): TdxLayoutItem;

Description

Use the CreateItemForControl method to create a new item within a specific group and connect this item with an existing control.  The AControl parameter specifies the associated control that is contained within the created item.  A new item is created as a group member.

Assume, there is a text edit control somewhere on your form and you want to place it into a specific group of the ExpressLayout Control.  In this instance, you can call the CreateItemForControl method of this group and pass the text edit control name via the AControl parameter.


TdxLayoutGroup.Destroy

TdxLayoutGroup          See Also

Destroys an instance of the TdxLayoutGroup object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxLayoutGroup object and release any allocated memory.


TdxLayoutGroup.MoveChildrenToParent

TdxLayoutGroup

Moves child elements for a specific group to the group parent object.

procedure MoveChildrenToParent;

Description

Use the MoveChildrenToParent method to transfer all child elements of a specific group to the parent object of this group. Child elements are displayed within their new parent group in the same order as they were displayed before transferring.


TdxLayoutGroup.PutChildrenIntoHiddenGroup

TdxLayoutGroup

Moves all child elements to the newly created hidden group and returns it.

function PutChildrenIntoHiddenGroup: TdxLayoutGroup;

Description

Call the PutChildrenIntoHiddenGroup method to create a new hidden group within a specific group and to move all child elements of the current group to it.  It may be necessary to create such a hidden group when a new element is created or an existing element is placed in a different layout direction within a group.  The newly created hidden group has the same LayoutDirection property value as the group whose child elements were moved.

Finally, the PutChildrenIntoHiddenGroup method returns the newly created hidden group.


TdxLayoutItem
TdxLayoutItem Object

Hierarchy          Properties          Methods          See Also

Represents an item within the ExpressLayout Control.

Unit

dxLayoutControl

TdxLayoutItem = class(TdxCustomLayoutItem)

Description

The TdxLayoutItem object represents an item within the ExpressLayout Control.  This class is a descendant of the TdxCustomLayoutItem object and inherits all TdxCustomLayoutItem object properties and methods.  Additionally, the TdxLayoutItem object implements its own properties and methods that relate to  item maintenance.

In order to add an item at design time, invoke the Designer window and click the "Add Item…" button.  Next, set up the desired item properties and place this item into the ExpressLayout Contol using drag & drop operations.

To create an item at runtime, you should use the CreateItem or CreateItemForControl methods of a group (or the CreateItem or CreateItemForControl methods of the Layout Control).


Properties for TdxLayoutItem
TdxLayoutItem Properties

TdxLayoutItem          Legend

In TdxLayoutItem

CaptionOptions

Control

ControlOptions

OriginalControlSize

Derived from TdxCustomLayoutItem

ActuallyVisible

AlignHorz

AlignmentConstraint

AlignVert

AutoAligns

Caption

Container

Enabled

Index

IsRoot

LookAndFeel

Offsets

Parent

ShowCaption

Visible

VisibleIndex


Methods for TdxLayoutItem
TdxLayoutItem Methods

TdxLayoutItem          Legend

In TdxLayoutItem

 Create

 Destroy

Derived from TdxCustomLayoutItem

 CanMoveTo

 Changed

 MakeVisible

 Move

 MoveTo

 PutIntoHiddenGroup


Events for TdxLayoutItem
TdxLayoutItem Events

TdxLayoutItem          Events          Legend

Derived from TdxCustomLayoutItem

OnCaptionClick


TdxLayoutItem.CaptionOptions

TdxLayoutItem

Contains a set of options for item caption customization.

property CaptionOptions: TdxLayoutItemCaptionOptions;

Description

The CaptionOptions property is used to access TdxLayoutItemCaptionOptions class properties.  These properties specify item caption layout and its alignment according to the control embedded within the item.  You can also have multilane item captions.


TdxLayoutItem.Control

TdxLayoutItem          See Also

Determines the external control to display within an item.

property Control: TControl;

Description

Use the Control property to specify a visual control to display within a given item.  Place the desired control onto a form and assign it to the appropriate TdxLayoutItem object (select this control via the Control property of the item). The desired control "jumps" into the item and they are displayed as an ExpressLayout Control element.  The Layout Control will become its parent.  Generally, you don’t need to assign the Control property. Simply drop a control from the component palette onto the Layout Control area and everything will be managed automatically.


TdxLayoutItem.ControlOptions

TdxLayoutItem          See Also

Contains a set of options for associated control customization.

property ControlOptions: TdxLayoutItemControlOptions;

Description

The ControlOptions property is used to access TdxLayoutItemControlOptions class properties and methods.  The class properties specify the external control look & feel within the ExpressLayout Control.


TdxLayoutItem.OriginalControlSize

TdxLayoutItem          See Also

Defines the original size of a control before it was associated with an item.

property OriginalControlSize: TPoint;

Description

Use the OriginalControlSize property to obtain the original size of the control specified by the Control property.  The horizontal coordinate (X) equals the original Width property value of the control; the vertical coordinate (Y) equals the original Height property value of the control.

ReadOnly Property


TdxLayoutItem.Create

TdxLayoutItem          See Also

Creates a new instance of an item.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create a new instance of an item, to create the corresponding TdxLayoutItemControlOptions class and initialize its properties.


TdxLayoutItem.Destroy

TdxLayoutItem          See Also

Destroys an instance of the TdxLayoutItem object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxLayoutItem object and release any allocated memory.


TdxLayoutItemCaptionOptions
TdxLayoutItemCaptionOptions Object

Hierarchy          Properties          Methods

Represents caption options for items within the ExpressLayout Control.

Unit

dxLayoutControl

TdxLayoutItemCaptionOptions = class(TdxCustomLayoutItemCaptionOptions)

Description

The TdxLayoutItemCaptionOptions object is used to represent caption options for items.  This object is a direct descendant of the TdxCustomLayoutItemCaptionOptions class and inherits its AlignHorz property.  The TdxLayoutItemCaptionOptions object implements its own AlignVert, Layout and Width properties to specify item caption placement.  The TdxLayoutItemCaptionOptions object overrides the Create method to initialize its properties.


Properties for TdxLayoutItemCaptionOptions
TdxLayoutItemCaptionOptions Properties

TdxLayoutItemCaptionOptions          Legend

In TdxLayoutItemCaptionOptions

AlignVert

Layout

Width

Derived from TdxCustomLayoutItemCaptionOptions

AlignHorz


Methods for TdxLayoutItemCaptionOptions
TdxLayoutItemCaptionOptions Methods

TdxLayoutItemCaptionOptions          Legend

In TdxLayoutItemCaptionOptions

 Create


TdxLayoutItemCaptionOptions.AlignVert

TdxLayoutItemCaptionOptions

Specifies the vertical placement of caption text within the caption region of an item.

type

  TdxAlignmentVert = (tavTop, tavCenter, tavBottom);

property AlignVert: TdxAlignmentVert;

Description

Use the AlignVert property to specify the manner in which caption text is placed within the caption region of an item.  The AlignVert property setting is available only when the Layout property is set to clLeft or clRight.  The AlignVert property is a vertical analog to the AlignHorz property.

The following values are available for the AlignVert property:

Value	Description	Example
tavTop	Caption text is aligned to the top of an item.
tavCenter	Caption text is vertically centered within an item.
tavBottom	Caption text is aligned to the bottom of an item.

The default value of the AlignVert property is tavCenter.


TdxLayoutItemCaptionOptions.Layout

TdxLayoutItemCaptionOptions

Determines where caption text appears within an item.

type

  TdxCaptionLayout = (clLeft, clTop, clRight, clBottom);

property Layout: TdxCaptionLayout;

Description

Set the Layout property to determine caption region position.  Caption region position is determined based upon the control contained within an item.  Available values for the Layout property include:

Value	Description	Example
clLeft	Caption text appears near the left side of the control contained within an item.
clTop	Caption text appears near the top of the control contained within an item.
clRight	Caption text appears near the right side of the control contained within an item.
clBottom	Caption text appears near the bottom side of the control contained within an item.

The default value of the Layout property is clRight.


TdxLayoutItemCaptionOptions.Width

TdxLayoutItemCaptionOptions

Specifies the horizontal size of the caption region.

property Width: Integer;

Description

Use the Width property to specify the width of item caption text.  If the Width property is set to 0, caption width is set automatically in order to display the entire text specified by the Caption property.  Set the Width property to greater than 0 to specify the precise width of the caption region.  In this instance, caption text will be divided into several lines if its length is greater than the Width property value.  So you can use the Width property to display the item’s caption across multiple lines.

The default value of the Width property is 0.


TdxLayoutItemCaptionOptions.Create

TdxLayoutItemCaptionOptions

Creates a TdxLayoutItemCaptionOptions object instance.

procedure Create(AItem: TdxCustomLayoutItem);

Description

Use the Create method to create a new instance of the TdxLayoutItemCaptionOptions object and initialize its AlignVert property.


TdxLayoutItemControlOptions
TdxLayoutItemControlOptions Object

Hierarchy          Properties          Methods

Represents options for a control associated with (and contained within) an item.

Unit

dxLayoutControl

TdxLayoutItemControlOptions = class(TdxCustomLayoutItemOptions)

Description

The TdxLayoutItemControlOptions object is used to represent control options for an item.  This object is a direct descendant of the TdxCustomLayoutItemOptions class and inherits its Create method.  The TdxLayoutItemControlOptions object implements a set of its own properties to specify the placement and look & feel of the control contained within an item.  The TdxLayoutItemControlOptions object overrides the Create method to initialize its properties.


Properties for TdxLayoutItemControlOptions
TdxLayoutItemControlOptions Properties

TdxLayoutItemControlOptions          Legend

In TdxLayoutItemControlOptions

AutoAlignment

AutoColor

FixedSize

MinHeight

MinWidth

Opaque

ShowBorder


Methods for TdxLayoutItemControlOptions
TdxLayoutItemControlOptions Methods

TdxLayoutItemControlOptions          Legend

In TdxLayoutItemControlOptions

 Create


TdxLayoutItemControlOptions.AutoAlignment

TdxLayoutItemControlOptions

Specifies whether control alignment within its parent group is set automatically.

property AutoAlignment: Boolean;

Description

Use the AutoAlignment property to specify whether to automatically modify control alignment when the automatic alignment within all ExpressLayout Control groups is activated (the AutoControlAlignment property of the ExpressLayout Control is set to True).  AutoAlignment property is available only when the AutoControlAlignment property is set to True.

The default value of this property is True.


TdxLayoutItemControlOptions.AutoColor

TdxLayoutItemControlOptions

Specifies whether a control inherits item color within an item.

property AutoColor: Boolean;

Description

If the AutoColor property is set to True, the color of a control (TControl.Color property) is the same as the color of the item which wraps it.  Usually controls like TEdit, TMemo are not auto colored (their color is clWindow).  An example of an auto colored control is – TCheckBox.

When creating an item, the AutoColor property value is automatically set and depends upon the control's ParentColor property value and Color property value (if the Color property is supported).

The default value of this property is False.


TdxLayoutItemControlOptions.FixedSize

TdxLayoutItemControlOptions

Specifies whether a control is automatically sized.

property FixedSize: Boolean;

Description

Use the FixedSize property to specify whether a control has a user-defined fixed size or it is sized automatically.  If this property is set to True, the control’s size can be specified by an end-user via the Width and Height properties of the control (or by dragging the control borders at design time).  If the FixedSize property is set to False, control size is calculated automatically and depends upon the property settings that concern alignment within the ExpressLayout Control.

The default value of this property is False.


TdxLayoutItemControlOptions.MinHeight

TdxLayoutItemControlOptions          See Also

Specifies the minimum height of a control.

property MinHeight: Integer;

Description

Use the MinHeight property to specify the minimum height of a control.  If control height is calculated automatically, its value will not be less than the MinHeight value.

The default value of MinHeight is 20.


TdxLayoutItemControlOptions.MinWidth

TdxLayoutItemControlOptions          See Also

Specifies the minimum width of a control.

property MinWidth: Integer;

Description

Use the MinWidth property to specify the minimum width of a control.  If the width is calculated automatically, its value will not be less than the MinWidth value.

The default value of MinWidth is 20.


TdxLayoutItemControlOptions.Opaque

TdxLayoutItemControlOptions

Specifies whether a control fully populates the occupied space.

property Opaque: Boolean;

Description

If the Opaque property is True, a control fully populates all occupied space, so the Layout Control does not need to draw a background behind this control.  It is true for most controls such as edits, buttons, etc, but some graphic controls can be transparent - for instance TBevel, Timage.  In these instances, the Layout Control has to draw background behind these controls.

By default, the Opaque property is False - it is safer since there are no problems with painting (empty space behind the controls).


TdxLayoutItemControlOptions.ShowBorder

TdxLayoutItemControlOptions

Specifies whether a control’s border is displayed.

property ShowBorder: Boolean;

Description

Use the ShowBorder property to display or hide the border around a control.  If the ShowBorder property is set to True, a border is displayed.

The thickness and look & feel of the border depends upon the look & feel style (if any) specified for the item that contains the control.

The default value of the ShowBorder property is True.


TdxLayoutItemControlOptions.Create

TdxLayoutItemControlOptions

Creates an instance of the TdxLayoutItemControlOptions object.

procedure Create(AItem: TdxCustomLayoutItem);

Description

The Create method is used to create a new instance of the TdxLayoutItemControlOptions object and initialize its properties.


TdxLayoutOffsets
TdxLayoutOffsets Object

Hierarchy          Properties          Methods

Represents a class that contains offset values for items and groups.

Unit

dxLayoutControl

TdxLayoutOffsets = class(TdxCustomLayoutItemOptions)

Description

The TdxLayoutOffsets object is a direct descendant of the TdxCustomLayoutItemOptions class an inherits the Create method from this class.  The TdxLayoutOffsets object implements four properties, which represent indents used to offset an item/group within its default location.


Properties for TdxLayoutOffsets
TdxLayoutOffsets Properties

TdxLayoutOffsets          Legend

In TdxLayoutOffsets

Bottom

Left

Right

Top


Methods for TdxLayoutOffsets
TdxLayoutOffsets Methods

TdxLayoutOffsets          Legend

Derived from TdxCustomLayoutItemOptions

 Create


TdxLayoutOffsets.Bottom

TdxLayoutOffsets          See Also

Specifies the bottom offset of an element (item or group).

property Bottom: Integer;

Description

Use the Bottom property to set the bottom offset of an ExpressLayout Control element (item or group (including the root group)) within its default location.

The default value of this property is 0.


TdxLayoutOffsets.Left

TdxLayoutOffsets          See Also

Specifies the left offset of an element (item or group).

property Left: Integer;

Description

Use the Left property to set the left offset of an ExpressLayout Control element (item or group (including the root group)) within its default location.

The default value of this property is 0.


TdxLayoutOffsets.Right

TdxLayoutOffsets          See Also

Specifies the right offset of an element (item or group).

property Right: Integer;

Use the Right property to set the right offset of an ExpressLayout Control element (item or group (including the root group)) within its default location.

The default value of this property is 0.


TdxLayoutOffsets.Top

TdxLayoutOffsets          See Also

Specifies the top offset of an element (item or group).

property Top: Integer;

Description

Use the Top property to set the top offset of an ExpressLayout Control element (item or group (including the root group)) within its default location.

The default value of this property is 0.


htClientArea constant
htClientArea global constant

Unit

dxLayoutControl

htClientArea = 30;

Description

The htClientArea constant contains an integer value that represents the client area of the Layout Control.  This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


htCustomizeForm constant
htCustomizeForm global constant

Unit

dxLayoutControl

htCustomizeForm = 1;

Description

The htCustomizeForm constant contains an integer value that represents the Customization Form area.  This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


htError constant
htError global constant

Unit

dxLayoutControl

htError = -1;

Description

The htError constant contains an integer value that represents an area outside the Layout Control.  This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


htGroup constant
htGroup global constant

Unit

dxLayoutControl

htGroup = 20;

Description

The htGroup constant contains an integer value that represents a group within the Layout Control.  This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


htItem constant
htItem global constant

Unit

dxLayoutControl

htItem = 10;

Description

The htItem constant contains an integer value that represents an item within the Layout Control.  This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


htNone constant
htNone global constant

Unit

dxLayoutControl

htNone = 0;

Description

This constant is used when it is necessary to determine which element of the Layout Control is under the mouse cursor.


dxLayoutLookAndFeels Unit Overview
dxLayoutLookAndFeels Unit

Classes

TdxCustomLayoutLookAndFeel

TdxCustomLayoutLookAndFeelOptions

TdxLayoutLookAndFeelCaptionOptions

TdxLayoutLookAndFeelDefs

TdxLayoutLookAndFeelGroupOptions

TdxLayoutLookAndFeelItemOptions

TdxLayoutLookAndFeelList

TdxLayoutLookAndFeelOffsets

TdxLayoutOfficeLookAndFeel

TdxLayoutStandardLookAndFeel

TdxLayoutStandardLookAndFeelGroupCaptionOptions

TdxLayoutStandardLookAndFeelGroupOptions

TdxLayoutStandardLookAndFeelItemCaptionOptions

TdxLayoutStandardLookAndFeelItemOptions

TdxLayoutWebLookAndFeel

TdxLayoutWebLookAndFeelGroupCaptionOptions

TdxLayoutWebLookAndFeelGroupOptions

TdxLayoutWebLookAndFeelItemCaptionOptions

TdxLayoutWebLookAndFeelItemOptions


TdxCustomLayoutLookAndFeel
TdxCustomLayoutLookAndFeel Object

Hierarchy          Properties          Methods          See Also

The TdxCustomLayoutLookAndFeel class is the base class for the objects that represent look & feel styles for the Layout Control within the LayoutLookAndFeelList component.

Unit

dxLayoutLookAndFeels

TdxCustomLayoutLookAndFeel = class(TComponent)

Description

Use the TdxCustomLayoutLookAndFeel object as a base class when defining an object that represents a look & feel style for the Layout Control within the LayoutLookAndFeelList component.  Do not create instances of the TdxCustomLayoutLookAndFeel object.

The TdxCustomLayoutLookAndFeel object implements the base functionality for all look & feel types (Standard, Office, Web).  It contains many properties and methods that are published in its direct descendants: TdxLayoutStandardLookAndFeel, TdxLayoutOfficeLookAndFeel and TdxLayoutWebLookAndFeel.


Properties for TdxCustomLayoutLookAndFeel
TdxCustomLayoutLookAndFeel Properties

TdxCustomLayoutLookAndFeel          Legend

In TdxCustomLayoutLookAndFeel

GroupOptions

ItemOptions

List

Offsets


Methods for TdxCustomLayoutLookAndFeel
TdxCustomLayoutLookAndFeel Methods

TdxCustomLayoutLookAndFeel          Legend

In TdxCustomLayoutLookAndFeel

 Create

 Description

 Destroy


TdxCustomLayoutLookAndFeel.GroupOptions

TdxCustomLayoutLookAndFeel          See Also

Specifies options for groups.

property GroupOptions: TdxLayoutLookAndFeelGroupOptions;

Description

Use the GroupOptions property to access the TdxLayoutLookAndFeelGroupOptions object that specifies particular group options.  Use the TdxLayoutLookAndFeelGroupOptions object’s properties to set the background color and caption options for groups.  Settings these group options will affect every group associated with a specific look & feel style.


TdxCustomLayoutLookAndFeel.ItemOptions

TdxCustomLayoutLookAndFeel          See Also

Specifies options for items.

property ItemOptions: TdxLayoutLookAndFeelItemOptions;

Description

Use the ItemOptions property to access the TdxLayoutLookAndFeelItemOptions object that specifies particular item options.  Use the TdxLayoutLookAndFeelItemOptions object’s properties to set caption options for items and specify the border style and color for the controls associated with these items.  Settings these item options will affect every item associated with a specific look & feel style.


TdxCustomLayoutLookAndFeel.List

TdxCustomLayoutLookAndFeel          See Also

Specifies the TdxLayoutLookAndFeelList component that contains the current look & feel style.

property List: TdxLayoutLookAndFeelList;

Description

Use the List property to obtain the TdxLayoutLookAndFeelList object.  This object represents the component used to contain the current look & feel style.  You can have several TdxLayoutLookAndFeelList components on your form.

ReadOnly Property


TdxCustomLayoutLookAndFeel.Offsets

TdxCustomLayoutLookAndFeel          See Also

Specifies offsets for ExpressLayout Control elements associated with a specific look & feel.

property Offsets: TdxLayoutLookAndFeelOffsets;

Description

Use the Offsets property to access the TdxLayoutLookAndFeelOffsets object that specifies particular offsets for ExpressLayout Control elements (captions, controls, items, groups).  Use the properties of the TdxLayoutLookAndFeelOffsets object to set the appropriate vertical and horizontal offsets for ExpressLayout Control elements to which a specific look & feel style is applied.  Setting these offsets affects every element associated with this look & feel style.


TdxCustomLayoutLookAndFeel.Create

TdxCustomLayoutLookAndFeel          See Also

Creates a new instance of the TdxCustomLayoutLookAndFeel object.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create a new instance of the TdxCustomLayoutLookAndFeel object and to initialize its unique properties by creating their corresponding objects.

Do not call the Create method of the TdxCustomLayoutLookAndFeel object directly in an application - use the CreateItem method of the TdxLayoutLookAndFeelList object instead.


TdxCustomLayoutLookAndFeel.Description

TdxCustomLayoutLookAndFeel

Returns the textual description of the look & feel type.

function Description: string;

Description

The Description method of the TdxCustomLayoutLookAndFeel object is an abstract method.  All descendants of the TdxCustomLayoutLookAndFeel object should override the Description method to return the textual description of the look & feel type used within an application (Standard, Office or Web).


TdxCustomLayoutLookAndFeel.Destroy

TdxCustomLayoutLookAndFeel          See Also

Destroys an instance of the TdxCustomLayoutLookAndFeel object.

procedure Destroy;

Description

Do not call the Destroy method of the TdxCustomLayoutLookAndFeel object directly in your application.  The Destroy method is used to destroy an instance of the TdxCustomLayoutLookAndFeel object and release any allocated memory.


TdxCustomLayoutLookAndFeelOptions
TdxCustomLayoutLookAndFeelOptions Object

Hierarchy          Properties          Methods

The TdxCustomLayoutLookAndFeelOptions object is the base class for the objects that represent options for items or groups for different look & feel types.

Unit

dxLayoutLookAndFeels

TdxCustomLayoutLookAndFeelOptions = class(TdxCustomLayoutLookAndFeelPart)

Description

Use the TdxCustomLayoutLookAndFeelOptions object as a base class when defining an object that represents item or group options used in all look & feel types (Standard, Office and Web).  Do not create instances of the TdxCustomLayoutLookAndFeel object.

The TdxCustomLayoutLookAndFeel object implements the minimum common functionality for item and group option objects used in all look & feel types (Standard, Office, Web).  It only contains the CaptionOptions property, which is common for all its descendants.


Properties for TdxCustomLayoutLookAndFeelOptions
TdxCustomLayoutLookAndFeelOptions Properties

TdxCustomLayoutLookAndFeelOptions          Legend

In TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxCustomLayoutLookAndFeelOptions
TdxCustomLayoutLookAndFeelOptions Methods

TdxCustomLayoutLookAndFeelOptions          Legend

In TdxCustomLayoutLookAndFeelOptions

 Create

 Destroy


TdxCustomLayoutLookAndFeelOptions.CaptionOptions

TdxCustomLayoutLookAndFeelOptions          See Also

Specifies caption options.

property CaptionOptions: TdxLayoutLookAndFeelCaptionOptions;

Description

Use the CaptionOptions property to access the TdxLayoutLookAndFeelCaptionOptions object, which specifies caption options for an ExpressLayout Control element (group, item or root group).


TdxCustomLayoutLookAndFeelOptions.Create

TdxCustomLayoutLookAndFeelOptions          See Also

Creates an instance of the TdxCustomLayoutLookAndFeelOptions object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create an instance of the TdxCustomLayoutLookAndFeelOptions object and initialize the CaptionOptions property by creating its corresponding object.


TdxCustomLayoutLookAndFeelOptions.Destroy

TdxCustomLayoutLookAndFeelOptions          See Also

Destroys an instance of the TdxCustomLayoutLookAndFeelOptions object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxCustomLayoutLookAndFeelOptions object and release any allocated memory.


TdxLayoutLookAndFeelCaptionOptions
TdxLayoutLookAndFeelCaptionOptions Object

Hierarchy          Properties          Methods

The TdxLayoutLookAndFeelCaptionOptions object is the base class for the objects that represent caption options for items and groups used in different look & feel types.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelCaptionOptions = class(TPersistent)

Description

The TdxLayoutLookAndFeelCaptionOptions object is used as a base class for group caption objects or item caption objects of all look & feel types (Standard, Office and Web).  The TdxCustomLayoutItemCaptionOptions object implements the base functionality for all caption option objects.  It contains many methods and properties that are inherited by its direct descendants: TdxLayoutStandardLookAndFeelItemCaptionOptions, TdxLayoutStandardLookAndFeelGroupCaptionOptions, TdxLayoutWebLookAndFeelItemCaptionOptions, and TdxLayoutWebLookAndFeelGroupCaptionOptions.


Properties for TdxLayoutLookAndFeelCaptionOptions
TdxLayoutLookAndFeelCaptionOptions Properties

TdxLayoutLookAndFeelCaptionOptions          Legend

In TdxLayoutLookAndFeelCaptionOptions

Font

HotTrack

HotTrackStyles

TextColor

TextHotColor

UseDefaultFont


Methods for TdxLayoutLookAndFeelCaptionOptions
TdxLayoutLookAndFeelCaptionOptions Methods

TdxLayoutLookAndFeelCaptionOptions          Legend

In TdxLayoutLookAndFeelCaptionOptions

 Create

 Destroy


TdxLayoutLookAndFeelCaptionOptions.Font

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies caption font.

property Font: TFont;

Descritpion

The Font property points to a TFont object that determines typographic attributes of the text displayed in a caption.


TdxLayoutLookAndFeelCaptionOptions.HotTrack

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies whether a caption is highlighted when the mouse passes over it.

property HotTrack: Boolean;

Descritpion

Use the HotTrack property to specify the manner in which a caption responds to mouse movements over it.  Set the HotTrack property to True in order to provide visual feedback as to which caption is under the mouse.  When the HotTrack property is False, there is no visual feedback when the mouse passes over captions.  To specify hot tracking styles, use the HotTrackStyles property.

The default value of the HotTrack property is False.


TdxLayoutLookAndFeelCaptionOptions.HotTrackStyles

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies hot tracking styles.

type

  TdxLayoutHotTrackStyle = (htsHandPoint, htsUnderlineCold, htsUnderlineHot);

  TdxLayoutHotTrackStyles = set of TdxLayoutHotTrackStyle;

property HotTrackStyles: TdxLayoutHotTrackStyles;

Descritpion

Use the HotTrackStyles property to specify hot track styles.  This style indicates the manner in which a caption reacts to mouse movements over it.

The following values are available for the HotTrackStyles property:

Value	Description
htsHandPoint	The mouse cursor changes to an image of a hand.
htsUnderlineCold	An underline is displayed under all untracked items.
htsUnderlineHot	An underline is displayed under the tracked item.

To activate hot tracking, set the HotTrack property to True.

The default value of the HotTrackStyles property is [htsHandPoint, htsUnderlineHot].


TdxLayoutLookAndFeelCaptionOptions.TextColor

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies caption text color.

property TextColor: TColor;

Descritpion

The TextColor property points to a TColor object that is used to determine the color of the text displayed in a caption.

The default value of the TextColor property is clDefault.


TdxLayoutLookAndFeelCaptionOptions.TextHotColor

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies the text color of the hot track caption.

property TextHotColor: TColor;

Descritpion

Use the TextHotColor property to specify caption text color when hot tracking is active and the caption is beneath the mouse.  To activate hot tracking, set the HotTrack property to True.

The default value of the TextHotColor property is clDefault.


TdxLayoutLookAndFeelCaptionOptions.UseDefaultFont

TdxLayoutLookAndFeelCaptionOptions          See Also

Specifies whether to use the default settings for caption font.

property UseDefaultFont: Boolean;

Descritpion

If the UseDefaultFont property is True, caption font settings use default settings, regardless of the current Font property value.  If the UseDefaultFont property is set to False, you can modify caption font as your application needs dictate.  Changing caption font sets the UseDefaultFont property to False.

The default value of the UseDefaultFont property is True.


TdxLayoutLookAndFeelCaptionOptions.Create

TdxLayoutLookAndFeelCaptionOptions          See Also

Creates a new instance of the TdxLayoutLookAndFeelCaptionOptions object.

procedure Create(AOptions: TdxCustomLayoutLookAndFeelOptions);

Descritpion

The Create method is used to create a new instance of the TdxLayoutLookAndFeelCaptionOptions object and initialize its unique properties.


TdxLayoutLookAndFeelCaptionOptions.Destroy

TdxLayoutLookAndFeelCaptionOptions          See Also

Destroys an instance of the TdxLayoutLookAndFeelCaptionOptions object.

procedure Destroy;

Descritpion

The Destroy method is used to destroy an instance of the TdxLayoutLookAndFeelCaptionOptions object and release any allocated memory.


TdxLayoutLookAndFeelDefs
TdxLayoutLookAndFeelDefs Object

Hierarchy          Properties          Methods

Contains a list of registered look & feel classes.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelDefs = class(TObject)

Descritpion

The TdxLayoutLookAndFeelDefs object contains the list of registered look & feel classes (TdxCustomLayoutLookAndFeel classes).  The TdxLayoutLookAndFeelDefs object implements its own Items and Count properties to provide the list and the number of registered classes.  Additionally, the TdxLayoutLookAndFeelDefs object allows you to use its GetItemByDescription method to return a look & feel class by its textual description.  The Register and Unregister methods implemented by the TdxLayoutLookAndFeelDefs object register and un-register the look & feel classes within the TdxLayoutLookAndFeelList component.


Properties for TdxLayoutLookAndFeelDefs
TdxLayoutLookAndFeelDefs Properties

TdxLayoutLookAndFeelDefs          Legend

In TdxLayoutLookAndFeelDefs

Count

Items


Methods for TdxLayoutLookAndFeelDefs
TdxLayoutLookAndFeelDefs Methods

TdxLayoutLookAndFeelDefs          Legend

In TdxLayoutLookAndFeelDefs

 Create

 Destroy

 GetItemByDescription

 Register

 Unregister


TdxLayoutLookAndFeelDefs.Count

TdxLayoutLookAndFeelDefs          See Also

Returns the count of the registered look & feel classes.

property Count: Integer;

Descritpion

Use the Count property to access the number of look & feel classes in the Items property list.

ReadOnly Property


TdxLayoutLookAndFeelDefs.Items

TdxLayoutLookAndFeelDefs          See Also

Specifies the registered look & feel classes.

property Items[Index: Integer] : TdxCustomLayoutLookAndFeelClass;

Descritpion

The Items property is an array of classes that represent look & feel types.  You can access a given look & feel type via its index in the Items array.  The number of existing look & feel types in the Items array is specified by the Count property.

ReadOnly Property


TdxLayoutLookAndFeelDefs.Create

TdxLayoutLookAndFeelDefs          See Also

Creates an instance of the TdxLayoutLookAndFeelDefs object.

procedure Create;

Descritpion

The Create method is used to create an instance of the TdxLayoutLookAndFeelDefs object and initialize its Items property.


TdxLayoutLookAndFeelDefs.Destroy

TdxLayoutLookAndFeelDefs          See Also

Destroys an instance of the TdxLayoutLookAndFeelDefs object.

procedure Destroy;

Descritpion

The Destroy method is used to destroy an instance of the TdxLayoutLookAndFeelDefs object and release any allocated memory.


TdxLayoutLookAndFeelDefs.GetItemByDescription

TdxLayoutLookAndFeelDefs          See Also

Returns a look & feel class by its description.

function GetItemByDescription(const Value: string): TdxCustomLayoutLookAndFeelClass;

Descritpion

Use the GetItemByDescription method to access the class represented by a specific look & feel type.  This method returns the class whose Description property is equal to the Value parameter passed to it.


TdxLayoutLookAndFeelDefs.Register

TdxLayoutLookAndFeelDefs          See Also

Registers a new look & feel class.

procedure Register(AClass: TdxCustomLayoutLookAndFeelClass);

Descritpion

Call the Register method to register a new look & feel class using the TdxLayoutLookAndFeelList component.


TdxLayoutLookAndFeelDefs.Unregister

TdxLayoutLookAndFeelDefs          See Also

Unregisters the registered look & feel class.

procedure Unregister(AClass: TdxCustomLayoutLookAndFeelClass);

Descritpion

Call the Unregister method to unregister the registered look & feel class.


TdxLayoutLookAndFeelGroupOptions
TdxLayoutLookAndFeelGroupOptions Object

Hierarchy          Properties          Methods          See Also

The TdxLayoutLookAndFeelGroupOptions object is the base class for the objects that represent group options for different look & feel types.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelGroupOptions = class(TdxCustomLayoutLookAndFeelOptions)

Descritpion

The TdxLayoutLookAndFeelGroupOptions object is used to represent the base class for group option objects.  The TdxLayoutLookAndFeelGroupOptions object is a direct descendant of the TdxCustomLayoutLookAndFeelOptions class and inherits its CaptionOptions property.  The TdxLayoutLookAndFeelGroupOptions object implements its own Color property to specify the background color of a group.  The Color property is inherited by direct descendants of this object: TdxLayoutStandardLookAndFeelGroupOptions and TdxLayoutWebLookAndFeelGroupOptions.


Properties for TdxLayoutLookAndFeelGroupOptions
TdxLayoutLookAndFeelGroupOptions Properties

TdxLayoutLookAndFeelGroupOptions          Legend

In TdxLayoutLookAndFeelGroupOptions

Color

Derived from TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxLayoutLookAndFeelGroupOptions
TdxLayoutLookAndFeelGroupOptions Methods

TdxLayoutLookAndFeelGroupOptions          Legend

In TdxLayoutLookAndFeelGroupOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutLookAndFeelGroupOptions.Color

TdxLayoutLookAndFeelGroupOptions

Specifies the background color for groups.

property Color: TColor;

Description

The Color property specifies the background color for the groups associated with a specific look & feel style.  The Color property includes a TColor type, which is used to specify a group’s background color.


TdxLayoutLookAndFeelGroupOptions.Create

TdxLayoutLookAndFeelGroupOptions

Creates a new instance of the TdxLayoutLookAndFeelGroupOptions object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create a new instance of the TdxLayoutLookAndFeelGroupOptions object and initialize its Color property.

The ALookAndFeel parameter specifies the object that represents a valid look & feel style.


TdxLayoutLookAndFeelItemOptions
TdxLayoutLookAndFeelItemOptions Object

Hierarchy          Properties          Methods          See Also

The TdxLayoutLookAndFeelItemOptions object is the base class for the objects that represent item options for different look & feel types.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelItemOptions = class(TdxCustomLayoutLookAndFeelOptions)

Description

The TdxLayoutLookAndFeelItemOptions object is used to represent the base class for item option objects.  The TdxLayoutLookAndFeelItemOptions object is a direct descendant of the TdxCustomLayoutLookAndFeelOptions class and inherits its CaptionOptions property.  The TdxLayoutLookAndFeelItemOptions object implements its own ControlBorderColor and ControlBorderStyle properties to specify a control’s look & feel within an item.  These properties are inherited by the direct descendants of this object: (TdxLayoutStandardLookAndFeelItemOptions and TdxLayoutWebLookAndFeelItemOptions).


Properties for TdxLayoutLookAndFeelItemOptions
TdxLayoutLookAndFeelItemOptions Properties

TdxLayoutLookAndFeelItemOptions          Legend

In TdxLayoutLookAndFeelItemOptions

ControlBorderColor

ControlBorderStyle

Derived from TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxLayoutLookAndFeelItemOptions
TdxLayoutLookAndFeelItemOptions Methods

TdxLayoutLookAndFeelItemOptions          Legend

In TdxLayoutLookAndFeelItemOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutLookAndFeelItemOptions.ControlBorderColor

TdxLayoutLookAndFeelItemOptions          See Also

Specifies the border frame color of a control.

property ControlBorderColor: TColor;

Description

Use the ControlBorderColor property to read or set the border color of the control that is contained within the item associated with a specific look & feel style.  The ControlBorderColor property includes a TColor type that is used to specify the control’s border color.

The default value of the ControlBorderColor property is clDefault.


TdxLayoutLookAndFeelItemOptions.ControlBorderStyle

TdxLayoutLookAndFeelItemOptions          See Also

Determines the look & feel style of a control’s border.

type

  TdxLayoutBorderStyle = (lbsNone, lbsSingle, lbsFlat, lbsStandard);

property ControlBorderStyle : TdxLayoutBorderStyle;

Description

The ControlBorderStyle property is used to specify the border style of the control that is contained within the item associated with a specific look & feel style.

Available values for the ControlBorderStyle property include:

Value	Description	Example
lbsNone	No visible border.
lbsSingle	Single-line border.  Its color is specified by the ControlBorderColor property
lbsFlat	Flat border with a light 3D effect.
lbsStandard	Standard border with a 3D effect.

The default value of the ControlBorderStyle property is lbsStandard.


TdxLayoutLookAndFeelItemOptions.Create

TdxLayoutLookAndFeelItemOptions

Creates a new instance of the TdxLayoutLookAndFeelItemOptions object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create a new instance of the TdxLayoutLookAndFeelItemOptions object and initialize its unique ControlBorderColor and ControlBorderStyle properties.

The ALookAndFeel parameter specifies the object that represents a valid look & feel style.


TdxLayoutLookAndFeelList
 TdxLayoutLookAndFeelList Object

Hierarchy          Properties          Methods

Represents the component containing the look & feel styles that control the display style of ExpressLayout Control items and groups.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelList = class(TComponent)

Description

The TdxLayoutLookAndFeelList object is a non-visual component.  Use this component to create, select, and apply identical styles for ExpressLayout Control elements.  There are three pre-defined look & feel styles you are able to create and use within the TdxLayoutLookAndFeelList component.  They are Standard, Office and Web.

Additionally, you can create your custom style (based upon one of these three styles or the TdxCustomLayoutLookAndFeel object) and modify its properties as your application needs dictate.

Every look & feel style contained within the TdxLayoutLookAndFeelList component can be accessed via the Items property.  The total number of all existing styles is obtained via the Count property.


Properties for TdxLayoutLookAndFeelList
TdxLayoutLookAndFeelList Properties

TdxLayoutLookAndFeelList          Legend

In TdxLayoutLookAndFeelList

Count

Items


Methods for TdxLayoutLookAndFeelList
TdxLayoutLookAndFeelList Methods

TdxLayoutLookAndFeelList          Legend

In TdxLayoutLookAndFeelList

 Create

 CreateItem

 Destroy


TdxLayoutLookAndFeelList.Count

TdxLayoutLookAndFeelList          See Also

Returns the number of TdxCustomLayoutLookAndFeel objects in a TdxLayoutLookAndFeelList component.

property Count: Integer;

Description

The Count property contains the number of TdxCustomLayoutLookAndFeel objects in the Items array of the TdxLayoutLookAndFeelList object.  Since the Items array is indexed beginning with 0, the Count value is always one greater than the index of the last member in the array.

ReadOnly Property


TdxLayoutLookAndFeelList.Items

TdxLayoutLookAndFeelList          See Also

Specifies a look & feel style.

property Items[Index: Integer] : TdxCustomLayoutLookAndFeel;

Description

The TdxLayoutLookAndFeelList component is a container for several styles represented by TdxCustomLayoutLookAndFeel objects.  The Items property is an array that contains a reference to these TdxCustomLayoutLookAndFeel objects.  Use the integer Index to access a specific look & feel style.  The number of styles in the Items array is specified by the Count property.

ReadOnly Property


TdxLayoutLookAndFeelList.Create

TdxLayoutLookAndFeelList          See Also

Creates an instance of the TdxLayoutLookAndFeelList object.

procedure Create(AOwner: TComponent);

Description

The Create method is used to create an instance of the TdxLayoutLookAndFeelList object and initialize its Items property.


TdxLayoutLookAndFeelList.CreateItem

TdxLayoutLookAndFeelList          See Also

Creates a new style within a given TdxLayoutLookAndFeelList component and returns the newly created object.

function CreateItem(AClass: TdxCustomLayoutLookAndFeelClass): TdxCustomLayoutLookAndFeel;

Description

Use the CreateItem method to create a new style within a given TdxLayoutLookAndFeelList component.   The AClass parameter specifies the class of the created style.  The CreateItem method adds the newly created style to the Items array of the TdxLayoutLookAndFeelList object.  Additionally, the CreateItem method assigns a valid name to the Name property of the newly created style object.


TdxLayoutLookAndFeelList.Destroy

TdxLayoutLookAndFeelList          See Also

Destroys an instance of the TdxLayoutLookAndFeelList object.

procedure Destroy;

Description

The Destroy method is used to destroy an instance of the TdxLayoutLookAndFeelList object and release any allocated memory.


TdxLayoutLookAndFeelOffsets
TdxLayoutLookAndFeelOffsets Object

Hierarchy          Properties          Methods

Represents an object that is used to specify different offsets for ExpressLayout Control elements.

Unit

dxLayoutLookAndFeels

TdxLayoutLookAndFeelOffsets = class(TdxCustomLayoutLookAndFeelPart)

Description

The TdxLayoutLookAndFeelOffsets object specifies offsets for ExpressLayout Control elements.  Use the properties of the TdxLayoutLookAndFeelOffsets object to set the appropriate vertical and horizontal offsets for ExpressLayout Control elements (controls, captions, items, groups), which are connected with a specific look & feel style.  Setting these offsets affects every item/group associated with this look & feel style.  Default offset values are similar to those recommended by Microsoft in its UI guidelines.  Offset values are calculated in DLU - dialog units.  The pixel value of DLU depends on the current font used in a control.


Properties for TdxLayoutLookAndFeelOffsets
TdxLayoutLookAndFeelOffsets Properties

TdxLayoutLookAndFeelOffsets          Legend

In TdxLayoutLookAndFeelOffsets

ControlOffsetHorz

ControlOffsetVert

ItemOffset

ItemsAreaOffsetHorz

ItemsAreaOffsetVert

RootItemsAreaOffsetHorz

RootItemsAreaOffsetVert


Methods for TdxLayoutLookAndFeelOffsets
TdxLayoutLookAndFeelOffsets Methods

TdxLayoutLookAndFeelOffsets          Legend

In TdxLayoutLookAndFeelOffsets

 Create


TdxLayoutLookAndFeelOffsets.ControlOffsetHorz

TdxLayoutLookAndFeelOffsets          See Also

Specifies the horizontal indentation between an item caption and the control’s edge.

property ControlOffsetHorz: Integer;

Description

Every ExpressLayout Control item can have a caption and an associated control contained within an item.  Use the ControlOffsetHorz property to specify the horizontal indentation between the item caption and the control’s edge.

If the ControlOffsetHorz property is 0, there is no horizontal indentation between the item caption and the control’s edges.  The ControlOffsetHorz property value is a positive number that cannot be less than 0.


TdxLayoutLookAndFeelOffsets.ControlOffsetVert

TdxLayoutLookAndFeelOffsets          See Also

Specifies the vertical indentation between an item caption and the control’s edge.

property ControlOffsetVert: Integer;

Description

Every ExpressLayout Control item can have a caption and an associated control contained within an item.  Use the ControlOffsetVert property to specify the vertical indent between the item caption and the control’s edge.

If the ControlOffsetVert property is 0, there is no vertical indentation between the item caption and the control’s edges.  The ControlOffsetVert property value is a positive number that cannot be less than 0.


TdxLayoutLookAndFeelOffsets.ItemOffset

TdxLayoutLookAndFeelOffsets          See Also

Specifies the horizontal and vertical indentation between items/groups.

property ItemOffset: Integer;

Description

Use the ItemOffset property to specify the horizontal and vertical indentation between items/groups within the ExpressLayout Control.

If the ItemOffset property is 0, there is no horizontal or vertical indentation between the edges of items/groups.  The ItemOffset property value is a positive number that cannot be less than 0.


TdxLayoutLookAndFeelOffsets.ItemsAreaOffsetHorz

TdxLayoutLookAndFeelOffsets          See Also

Specifies the horizontal indentation between items and its parent group’s vertical borders.

property ItemsAreaOffsetHorz: Integer;

Description

Use the ItemsAreaOffsetHorz property to control the horizontal offsets of the client area (items area) of a group.  Said differently, the left and right parent group margins have the same value specified by the ItemsAreaOffsetHorz property.  The ItemsAreaOffsetHorz property value specifies the horizontal indentation of items from its parent group’s borders.

If the ItemsAreaOffsetHorz property is 0 and the OffsetItems property is False, there is no horizontal indentation between items and parent group’s edges.  The ItemsAreaOffsetHorz property value is a positive number that cannot be less than 0.

The ItemsAreaOffsetHorz property setting is inactive if the parent group ShowBorder property is set to False.


TdxLayoutLookAndFeelOffsets.ItemsAreaOffsetVert

TdxLayoutLookAndFeelOffsets          See Also

Specifies the vertical indentation between items and its parent group’s horizontal borders.

property ItemsAreaOffsetVert: Integer;

Description

Use the ItemsAreaOffsetVert property to control the vertical offsets of the client area (items area) of a group.  Said differently, the top and bottom parent group margins have the same value specified by the ItemsAreaOffsetVert property.  The ItemsAreaOffsetVert property value specifies the vertical indentation of items from its parent group’ borders.

If the ItemsAreaOffsetVert property is 0, there is no vertical indentation between items and parent group edges.  The ItemsAreaOffsetVert property value is a positive number that cannot be less than 0.

The ItemsAreaOffsetVert property setting is inactive if the parent group’s ShowBorder property is set to False.


TdxLayoutLookAndFeelOffsets.RootItemsAreaOffsetHorz

TdxLayoutLookAndFeelOffsets          See Also

Determines the horizontal indentation between the root group’s edge (the ExpressLayout Control client area edge) and the edge of the items/groups contained within the root group.

property RootItemsAreaOffsetHorz: Integer;

Description

Use the RootItemsAreaOffsetHorz property to control the horizontal margins of the root group.  Said differently, the left and right root group margins have the same value specified by the RootItemsAreaOffsetHorz property.  The RootItemsAreaOffsetHorz property value specifies the horizontal indentation of items/groups from the root group’s edges.

If the RootItemsAreaOffsetHorz property is 0, there is no horizontal indentation between root elements and root group edges.  The RootItemsAreaOffsetHorz property value is a positive number that cannot be less than 0.


TdxLayoutLookAndFeelOffsets.RootItemsAreaOffsetVert

TdxLayoutLookAndFeelOffsets          See Also

Determines the vertical indentation between the edge of the root group (the ExpressLayout Control client area edge) and the edge of the items/groups contained within the root group.

property RootItemsAreaOffsetVert: Integer;

Description

Use the RootItemsAreaOffsetVert property to control the vertical margins of the root group.  Said differently, the top and bottom root group margins have the same value specified by the RootItemsAreaOffsetVert property.  The RootItemsAreaOffsetVert property value specifies the vertical indentation of items/groups from the root group’s edges.

If the RootItemsAreaOffsetVert property is 0, there is no vertical indentation between root elements and root group edges.  The RootItemsAreaOffsetVert property value is a positive number that cannot be less than 0.


TdxLayoutLookAndFeelOffsets.Create

TdxLayoutLookAndFeelOffsets          See Also

Creates an instance of the TdxLayoutLookAndFeelOffsets object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create an instance of the TdxLayoutLookAndFeelOffsets object and initialize its unique properties.


TdxLayoutOfficeLookAndFeel
TdxLayoutOfficeLookAndFeel Object

Hierarchy          Properties          Methods          See Also

Represents the MS Office Look and Feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutOfficeLookAndFeel = class(TdxLayoutStandardLookAndFeel)

Description

The TdxLayoutOfficeLookAndFeel object is used to represent the MS Office® look & feel within the TdxLayoutLookAndFeelList component.  The TdxLayoutOfficeLookAndFeel object is derived from the TdxLayoutStandardLookAndFeel class and implements its own properties designed to draw ExpressLayout Control elements (associated with this style) in a manner similar to that found in Office 2000.

You can create your own custom look & feel based on this style and then customize it as your application needs dictate.


Properties for TdxLayoutOfficeLookAndFeel
TdxLayoutOfficeLookAndFeel Properties

TdxLayoutOfficeLookAndFeel          Legend

Derived from TdxCustomLayoutLookAndFeel

GroupOptions

ItemOptions

List

Offsets


Methods for TdxLayoutOfficeLookAndFeel
TdxLayoutOfficeLookAndFeel Methods

TdxLayoutOfficeLookAndFeel          Legend

In TdxLayoutOfficeLookAndFeel

 Description

Derived from TdxCustomLayoutLookAndFeel

 Create

 Destroy


TdxLayoutOfficeLookAndFeel.Description

TdxLayoutOfficeLookAndFeel          See Also

Returns the textual description of a look & feel style.

function Description: string;

Description

Use the Description method to obtain the string that represents the description of the look & feel style being used.  The Description method returns ‘Office’ for the TdxLayoutOfficeLookAndFeel object.


TdxLayoutStandardLookAndFeel
TdxLayoutStandardLookAndFeel Object

Hierarchy          Properties          Methods          See Also

Represents a Standard look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutStandardLookAndFeel = class(TdxCustomLayoutLookAndFeel)

Description

The TdxLayoutStandardLookAndFeel object is used to represent the Standard look & feel style for the Layout Control within the TdxLayoutLookAndFeelList component.  The TdxLayoutStandardLookAndFeel object is derived from the TdxCustomLayoutLookAndFeel class and implements its own properties designed to draw ExpressLayout Control elements (associated with this style) in a manner similar to that found in Microsoft® Windows.

You can create your own custom look & feel based on this style and then customize it as your application needs dictate.


Properties for TdxLayoutStandardLookAndFeel
TdxLayoutStandardLookAndFeel Properties

TdxLayoutStandardLookAndFeel          Legend

Derived from TdxCustomLayoutLookAndFeel

GroupOptions

ItemOptions

List

Offsets


Methods for TdxLayoutStandardLookAndFeel
TdxLayoutStandardLookAndFeel Methods

TdxLayoutStandardLookAndFeel          Legend

In TdxLayoutStandardLookAndFeel

 Description

Derived from TdxCustomLayoutLookAndFeel

 Create

 Destroy


TdxLayoutStandardLookAndFeel.Description

TdxLayoutStandardLookAndFeel          See Also

Returns the textual description of a look & feel style.

function Description: string;

Description

Use the Description method to obtain the string that represents the description of the look & feel style being used.  The Description method returns ‘Standard’ for the TdxLayoutStandardLookAndFeel object.


TdxLayoutStandardLookAndFeelGroupCaptionOptions
TdxLayoutStandardLookAndFeelGroupCaptionOptions Object

Hierarchy          Properties          Methods          See Also

Represents group caption options for the Standard look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutStandardLookAndFeelGroupCaptionOptions = class(TdxLayoutLookAndFeelCaptionOptions)

Description

The TdxLayoutStandardLookAndFeelGroupCaptionOptions object is used to represent group caption options for the Standard look & feel style.  The TdxLayoutStandardLookAndFeelGroupCaptionOptions object is derived from the TdxLayoutLookAndFeelCaptionOptions object and inherits its properties and methods.  The TdxLayoutStandardLookAndFeelGroupCaptionOptions object does not have any new functionality.


Properties for TdxLayoutStandardLookAndFeelGroupCaptionOptions
TdxLayoutStandardLookAndFeelGroupCaptionOptions Properties

TdxLayoutStandardLookAndFeelGroupCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

Font

HotTrack

HotTrackStyles

TextColor

TextHotColor

UseDefaultFont


Methods for TdxLayoutStandardLookAndFeelGroupCaptionOptions
TdxLayoutStandardLookAndFeelGroupCaptionOptions Methods

TdxLayoutStandardLookAndFeelGroupCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

 Create

 Destroy


TdxLayoutStandardLookAndFeelGroupOptions
TdxLayoutStandardLookAndFeelGroupOptions Object

Hierarchy          Properties          Methods          See Also

Represents group options for the Standard look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutStandardLookAndFeelGroupOptions = class(TdxLayoutLookAndFeelGroupOptions)

Description

The TdxLayoutStandardLookAndFeelGroupOptions object is used to represent group options for the Standard look & feel style.  The TdxLayoutStandardLookAndFeelGroupOptions object is derived from the TdxLayoutLookAndFeelGroupOptions object and inherits its properties and methods.  The TdxLayoutStandardLookAndFeelGroupOptions object does not have any new functionality.


Properties for TdxLayoutStandardLookAndFeelGroupOptions
TdxLayoutStandardLookAndFeelGroupOptions Properties

TdxLayoutStandardLookAndFeelGroupOptions          Legend

Derived from TdxLayoutLookAndFeelGroupOptions

Color

Derived from TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxLayoutStandardLookAndFeelGroupOptions
TdxLayoutStandardLookAndFeelGroupOptions Methods

TdxLayoutStandardLookAndFeelGroupOptions          Legend

Derived from TdxLayoutLookAndFeelGroupOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutStandardLookAndFeelItemCaptionOptions
TdxLayoutStandardLookAndFeelItemCaptionOptions Object

Hierarchy          Properties          Methods          See Also

Represents item caption options for the Standard look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutStandardLookAndFeelItemCaptionOptions = class(TdxLayoutLookAndFeelCaptionOptions)

Description

The TdxLayoutStandardLookAndFeelItemCaptionOptions object is used to represent item caption options for the Standard look & feel style.  The TdxLayoutStandardLookAndFeelItemCaptionOptions object is derived from the TdxLayoutLookAndFeelCaptionOptions object and inherits its properties and methods.  The TdxLayoutStandardLookAndFeelItemCaptionOptions object does not have any new functionality.


Properties for TdxLayoutStandardLookAndFeelItemCaptionOptions
TdxLayoutStandardLookAndFeelItemCaptionOptions Properties

TdxLayoutStandardLookAndFeelItemCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

Font

HotTrack

HotTrackStyles

TextColor

TextHotColor

UseDefaultFont


Methods for TdxLayoutStandardLookAndFeelItemCaptionOptions
TdxLayoutStandardLookAndFeelItemCaptionOptions Methods

TdxLayoutStandardLookAndFeelItemCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

 Create

 Destroy


TdxLayoutStandardLookAndFeelItemOptions
TdxLayoutStandardLookAndFeelItemOptions Object

Hierarchy          Properties          Methods          See Also

Represents item options for the Standard look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutStandardLookAndFeelItemOptions = class(TdxLayoutLookAndFeelItemOptions)

Description

The TdxLayoutStandardLookAndFeelItemOptions object is used to represent item options for the Standard look & feel style.  The TdxLayoutStandardLookAndFeelItemOptions object is derived from the TdxLayoutLookAndFeelItemOptions object and inherits its properties and methods.  The TdxLayoutStandardLookAndFeelItemOptions object does not have any new functionality.


Properties for TdxLayoutStandardLookAndFeelItemOptions
TdxLayoutStandardLookAndFeelItemOptions Properties

TdxLayoutStandardLookAndFeelItemOptions          Legend

Derived from TdxLayoutLookAndFeelItemOptions

ControlBorderColor

ControlBorderStyle

Derived from TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxLayoutStandardLookAndFeelItemOptions
TdxLayoutStandardLookAndFeelItemOptions Methods

TdxLayoutStandardLookAndFeelItemOptions          Legend

Derived from TdxLayoutLookAndFeelItemOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutWebLookAndFeel
TdxLayoutWebLookAndFeel Object

Hierarchy          Properties          Methods          See Also

Represents the Web look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutWebLookAndFeel = class(TdxCustomLayoutLookAndFeel)

Description

The TdxLayoutWebLookAndFeel object is used to represent the Web look & feel style for the Layout Control within the TdxLayoutLookAndFeelList component.  The TdxLayoutWebLookAndFeel object is derived from the TdxCustomLayoutLookAndFeel class and implements its own properties designed to draw ExpressLayout Control elements (associated with this style) in a manner similar to those found in web pages.

You can create your own custom look & feel based on this style and then customize it as your application needs dictate.


Properties for TdxLayoutWebLookAndFeel
TdxLayoutWebLookAndFeel Properties

TdxLayoutWebLookAndFeel          Legend

In TdxLayoutWebLookAndFeel

GroupOptions

Derived from TdxCustomLayoutLookAndFeel

ItemOptions

List

Offsets


Methods for TdxLayoutWebLookAndFeel
TdxLayoutWebLookAndFeel Methods

TdxLayoutWebLookAndFeel          Legend

In TdxLayoutWebLookAndFeel

 Description

Derived from TdxCustomLayoutLookAndFeel

 Create

 Destroy


TdxLayoutWebLookAndFeel.GroupOptions

TdxLayoutWebLookAndFeel          See Also

Specifies options for groups.

property GroupOptions : TdxLayoutWebLookAndFeelGroupOptions;

Description

Use the GroupOptions property to access the TdxLayoutWebLookAndFeelGroupOptions object, which specifies individual group options.  Use the TdxLayoutWebLookAndFeelGroupOptions object’s properties to set caption options and additional group options used in the Web look & feel for the group.  Setting these group options affects every group associated with a specific Web look & feel style.


TdxLayoutWebLookAndFeel.Description

TdxLayoutWebLookAndFeel          See Also

Returns the textual description of a look & feel style.

function Description: string;

Description

Use the Description method to obtain the string that represents the description of the look & feel style being used.  The Description method returns ‘Web’ for the TdxLayoutWebLookAndFeel object.


TdxLayoutWebLookAndFeelGroupCaptionOptions
TdxLayoutWebLookAndFeelGroupCaptionOptions Object

Hierarchy          Properties          Methods          See Also

Represents group caption options for the Web look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutWebLookAndFeelGroupCaptionOptions = class(TdxLayoutLookAndFeelCaptionOptions)

Description

The TdxLayoutWebLookAndFeelGroupCaptionOptions object is used to represent group caption options for the Web look & feel style.  The TdxLayoutWebLookAndFeelGroupCaptionOptions object is derived from the TdxLayoutLookAndFeelCaptionOptions object and inherits its properties and methods.  Additionally, the TdxLayoutWebLookAndFeelGroupCaptionOptions object implements its own Color and SeparatorWidth properties to represent group captions as a web page.


Properties for TdxLayoutWebLookAndFeelGroupCaptionOptions
TdxLayoutWebLookAndFeelGroupCaptionOptions Properties

TdxLayoutWebLookAndFeelGroupCaptionOptions          Legend

In TdxLayoutWebLookAndFeelGroupCaptionOptions

Color

SeparatorWidth

Derived from TdxLayoutLookAndFeelCaptionOptions

Font

HotTrack

HotTrackStyles

TextColor

TextHotColor

UseDefaultFont


Methods for TdxLayoutWebLookAndFeelGroupCaptionOptions
TdxLayoutWebLookAndFeelGroupCaptionOptions Methods

TdxLayoutWebLookAndFeelGroupCaptionOptions          Legend

In TdxLayoutWebLookAndFeelGroupCaptionOptions

 Create

Derived from TdxLayoutLookAndFeelCaptionOptions

 Destroy


TdxLayoutWebLookAndFeelGroupCaptionOptions.Color

TdxLayoutWebLookAndFeelGroupCaptionOptions

Specifies the color for the group caption region.

property Color: TColor;

Description

Use the Color property to specify the background color for the group caption region.  The group caption region is a rectangular area that contains caption text.  The width of the group caption region is equal to the client width of the group (it occupies the position from the left group frame border to the right group frame border).  The height of the group caption region is calculated automatically based upon caption text size.

The default value of the Color property is clDefault. It will be equal to the color of its group.


TdxLayoutWebLookAndFeelGroupCaptionOptions.SeparatorWidth

TdxLayoutWebLookAndFeelGroupCaptionOptions

Determines the width of the rectangular region positioned between the group caption and group items.

property SeparatorWidth: Integer;

Description

The SeparatorWidth property specifies the integer value that represents the distance between group caption and group items.  Set the SeparatorWidth property to separate the group caption region from group items.  "Separator" is a rectangular area that is positioned between the group caption and group items.  The separator background color is the same as the color specified by the FrameColor property.

The default value of the SeparatorWidth property is 0.


TdxLayoutWebLookAndFeelGroupCaptionOptions.Create

TdxLayoutWebLookAndFeelGroupCaptionOptions

Creates a new instance of the TdxLayoutWebLookAndFeelGroupCaptionOptions object.

procedure Create(AOptions: TdxCustomLayoutLookAndFeelOptions);

Description

The Create method is used to create a new instance of the TdxLayoutWebLookAndFeelGroupCaptionOptions object and initialize its Color property.


TdxLayoutWebLookAndFeelGroupOptions
TdxLayoutWebLookAndFeelGroupOptions Object

Hierarchy          Properties          Methods          See Also

Represents group options for the Web look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutWebLookAndFeelGroupOptions = class(TdxLayoutLookAndFeelGroupOptions)

Description

The TdxLayoutWebLookAndFeelGroupOptions class is used to represent group options for the Web look & feel style.  The TdxLayoutWebLookAndFeelGroupOptions object is derived from the TdxLayoutLookAndFeelGroupOptions object and inherits its Color property.  Additionally, the TdxLayoutWebLookAndFeelGroupOptions object implements several of its own properties to represent the groups associated with the Web style.


Properties for TdxLayoutWebLookAndFeelGroupOptions
TdxLayoutWebLookAndFeelGroupOptions Properties

TdxLayoutWebLookAndFeelGroupOptions          Legend

In TdxLayoutWebLookAndFeelGroupOptions

CaptionOptions

FrameColor

FrameWidth

OffsetCaption

OffsetItems

Derived from TdxLayoutLookAndFeelGroupOptions

Color


Methods for TdxLayoutWebLookAndFeelGroupOptions
TdxLayoutWebLookAndFeelGroupOptions Methods

TdxLayoutWebLookAndFeelGroupOptions          Legend

In TdxLayoutWebLookAndFeelGroupOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutWebLookAndFeelGroupOptions.CaptionOptions

TdxLayoutWebLookAndFeelGroupOptions          See Also

Specifies options for a group caption.

property CaptionOptions: TdxLayoutWebLookAndFeelGroupCaptionOptions;

Description

Use the CaptionOptions property to access the TdxLayoutWebLookAndFeelGroupCaptionOptions object, whose properties specify the color and separator widths for the group captions associated with a specific Web look & feel style.


TdxLayoutWebLookAndFeelGroupOptions.FrameColor

TdxLayoutWebLookAndFeelGroupOptions          See Also

Specifies the color for the frame displayed around a group.

property FrameColor: TColor;

Description

Use the FrameColor property to specify the frame color for a group.  The group frame is a border drawn around the group and includes its caption region.  The group frame color is the same as the group caption separator color.  Group frame width is determined by the FrameWidth property.

The default value of the FrameColor property is clDefault.


TdxLayoutWebLookAndFeelGroupOptions.FrameWidth

TdxLayoutWebLookAndFeelGroupOptions          See Also

Determines group frame width.

property FrameWidth: Integer;

Description

Use the FrameWidth property to read or set the width for the group frame.  The group frame is a border drawn around the group including its caption region.  You may specify group frame color using the FrameColor property.  If the FrameWidth property is set to 0, there is no visible border around the group.

The default value of the FrameWidth property is 1.


TdxLayoutWebLookAndFeelGroupOptions.OffsetCaption

TdxLayoutWebLookAndFeelGroupOptions          See Also

Specifies whether caption text is indented from the group frame border.

property OffsetCaption: Boolean;

Description

Use the OffsetCaption property to specify whether caption text is indented from the group frame border or is positioned near the border.  If the OffsetCaption property is set to True, caption text is displayed with the indent from the group frame border; otherwise, caption text is displayed near the border.

The default value of the OffsetCaption property is True.


TdxLayoutWebLookAndFeelGroupOptions.OffsetItems

TdxLayoutWebLookAndFeelGroupOptions          See Also

Specifies whether group items borders are indented from the group frame border.

property OffsetItems: Boolean;

Description

Use the OffsetItems property to specify whether the items (which contain associated controls) are indented from the group frame border.  If the OffsetItems property is set to True, group items are displayed with an indent from the group frame border; otherwise they are displayed without any indent.

The default value of the OffsetItems property is True.


TdxLayoutWebLookAndFeelGroupOptions.Create

TdxLayoutWebLookAndFeelGroupOptions          See Also

Creates a new instance of the TdxLayoutWebLookAndFeelGroupOptions object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create a new instance of the TdxLayoutWebLookAndFeelGroupOptions object and initializes its unique properties.


TdxLayoutWebLookAndFeelItemCaptionOptions
TdxLayoutWebLookAndFeelItemCaptionOptions Object

Hierarchy          Properties          Methods          See Also

Represents item caption options for the Web look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutWebLookAndFeelItemCaptionOptions = class(TdxLayoutLookAndFeelCaptionOptions)

Description

The TdxLayoutWebLookAndFeelItemCaptionOptions object is used to represent item caption options for the Web look & feel style.  The TdxLayoutWebLookAndFeelItemCaptionOptions object is derived from the TdxLayoutLookAndFeelCaptionOptions object and inherits its properties and methods.  The TdxLayoutWebLookAndFeelItemCaptionOptions object does not have any new functionality.


Properties for TdxLayoutWebLookAndFeelItemCaptionOptions
TdxLayoutWebLookAndFeelItemCaptionOptions Properties

TdxLayoutWebLookAndFeelItemCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

Font

HotTrack

HotTrackStyles

TextColor

TextHotColor

UseDefaultFont


Methods for TdxLayoutWebLookAndFeelItemCaptionOptions
TdxLayoutWebLookAndFeelItemCaptionOptions Methods

TdxLayoutWebLookAndFeelItemCaptionOptions          Legend

Derived from TdxLayoutLookAndFeelCaptionOptions

 Create

 Destroy


TdxLayoutWebLookAndFeelItemOptions
TdxLayoutWebLookAndFeelItemOptions Object

Hierarchy          Properties          Methods          See Also

Represents item options for the Web look & feel style.

Unit

dxLayoutLookAndFeels

TdxLayoutWebLookAndFeelItemOptions = class(TdxLayoutLookAndFeelItemOptions)

Description

The TdxLayoutWebLookAndFeelItemOptions object is used to represent item options for the Web look & feel style.  The TdxLayoutWebLookAndFeelItemOptions object is derived from the TdxLayoutLookAndFeelItemOptions object and inherits its properties and methods.


Properties for TdxLayoutWebLookAndFeelItemOptions
TdxLayoutWebLookAndFeelItemOptions Properties

TdxLayoutWebLookAndFeelItemOptions          Legend

In TdxLayoutWebLookAndFeelItemOptions

ControlBorderStyle

Derived from TdxLayoutLookAndFeelItemOptions

ControlBorderColor

Derived from TdxCustomLayoutLookAndFeelOptions

CaptionOptions


Methods for TdxLayoutWebLookAndFeelItemOptions
TdxLayoutWebLookAndFeelItemOptions Methods

TdxLayoutWebLookAndFeelItemOptions          Legend

In TdxLayoutWebLookAndFeelItemOptions

 Create

Derived from TdxCustomLayoutLookAndFeelOptions

 Destroy


TdxLayoutWebLookAndFeelItemOptions.ControlBorderStyle

TdxLayoutWebLookAndFeelItemOptions

Determines the look & feel style of a control’s border.

type

  TdxLayoutBorderStyle = (lbsNone, lbsSingle, lbsFlat, lbsStandard);

property ControlBorderStyle;

Description

The ControlBorderStyle property is used to specify the border style of the control contained within the item associated with a Web look & feel style.

Available values for the ControlBorderStyle property include:

Value	Description	Example
lbsNone	No visible border.
lbsSingle	Single-line border.
lbsFlat	Flat border with a light 3D effect.
lbsStandard	Standard border with a 3D effect.

The default value of the ControlBorderStyle property is lbsSingle.


TdxLayoutWebLookAndFeelItemOptions.Create

TdxLayoutWebLookAndFeelItemOptions

Creates a new instance of the TdxLayoutWebLookAndFeelItemOptions object.

procedure Create(ALookAndFeel: TdxCustomLayoutLookAndFeel);

Description

The Create method is used to create a new instance of the TdxLayoutWebLookAndFeelItemOptions object and initialize its ControlBorderStyle property.


TdxCustomLayoutLookAndFeelClass
TdxCustomLayoutLookAndFeelClass Object

Represents a class-reference type.

Unit

dxLayoutLookAndFeels

TdxCustomLayoutLookAndFeelClass = class of TdxCustomLayoutLookAndFeel;

Description

The TdxCustomLayoutLookAndFeelClass type is a reference to the TdxCustomLayoutLookAndFeel class.


TdxCustomLayoutHitTest
TdxCustomLayoutHitTest Object

Hierarchy          Methods          See Also

Represents the base class for all objects that determine the ExpressLayout Control elements whose area contains a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxCustomLayoutHitTest = class(TObject)

Description

The TdxCustomLayoutHitTest object is used as a base class for all TdxLayout(…)HitTest objects which specify ExpressLayout Control elements (the client area, groups, items, the Customization Form) under the mouse cursor.

The TdxCustomLayoutHitTest object includes a HitTestCode method that returns the value of the constant specified by the underlying element of the ExpressLayout Control.


Methods for TdxCustomLayoutHitTest
TdxCustomLayoutHitTest Methods

TdxCustomLayoutHitTest          Legend

In TdxCustomLayoutHitTest

 HitTestCode


TdxCustomLayoutHitTest.HitTestCode

TdxCustomLayoutHitTest

Returns the value of the htError constant.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that fully defines the ExpressLayout Control elements positioned under the mouse pointer.  The HitTestCode method of the TdxCustomLayoutHitTest object returns a htError constant value.


TdxCustomLayoutItemHitTest
TdxCustomLayoutItemHitTest Object

Hierarchy          Properties          Methods          See Also

Represents the base class for the objects that determine ExpressLayout Control item or group areas that contain a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxCustomLayoutItemHitTest = class(TdxCustomLayoutHitTest)

Description

The TdxCustomLayoutItemHitTest object is used as a base class for the TdxLayoutItemHitTest and TdxLayoutGroupHitTest objects which fully define ExpressLayout Control elements (items or groups) positioned under the mouse cursor.

The TdxCustomLayoutItemHitTest object inherits the HitTestCode method, which returns a constant value specified by the underlying elements of the ExpressLayout Control.  Additionally, the TdxCustomLayoutItemHitTest object implements its own Item property, which represents a specific item or group placed beneath the mouse cursor.


Properties for TdxCustomLayoutItemHitTest
TdxCustomLayoutItemHitTest Properties

TdxCustomLayoutItemHitTest          Legend

In TdxCustomLayoutItemHitTest

Item


Methods for TdxCustomLayoutItemHitTest
TdxCustomLayoutItemHitTest Methods

TdxCustomLayoutItemHitTest          Legend

Derived from TdxCustomLayoutHitTest

 HitTestCode


TdxCustomLayoutItemHitTest.Item

TdxCustomLayoutItemHitTest

Specifies the item/group under the mouse pointer.

property Item: TdxCustomLayoutItem;

Description

Use the Item property to specify an item/group whose area contains a specified point.  This point represents the current mouse cursor position and is passed via the P (or X and Y) parameter of the GetHitTest method.


TdxLayoutClientAreaHitTest
TdxLayoutClientAreaHitTest Object

Hierarchy          Properties          Methods          See Also

Represents the class that determines the ExpressLayout Control’s client area, which contains a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxLayoutClientAreaHitTest = class(TdxCustomLayoutHitTest)

Description

The TdxLayoutClientAreaHitTest object specifies the ExpressLayout Control client area if it is placed beneath the mouse cursor.  The TdxLayoutClientAreaHitTest object implements the HitTestCode method, which returns a htClientArea constant value specified by the underlying client area of the ExpressLayout Control.  Additionally, the TdxCustomLayoutItemHitTest object implements its own Control property that represents a specific Layout Control whose client area is positioned under the mouse cursor.


Properties for TdxLayoutClientAreaHitTest
TdxLayoutClientAreaHitTest Properties

TdxLayoutClientAreaHitTest          Legend

In TdxLayoutClientAreaHitTest

Control


Methods for TdxLayoutClientAreaHitTest
TdxLayoutClientAreaHitTest Methods

TdxLayoutClientAreaHitTest          Legend

In TdxLayoutClientAreaHitTest

 HitTestCode


TdxLayoutClientAreaHitTest.Control

TdxLayoutClientAreaHitTest

Specifies the ExpressLayout Control under the mouse cursor.

property Control: TdxCustomLayoutControl;

Description

Use the Control property to specify the Layout Control whose client area contains a specified point.  This point represents the current mouse cursor position and is passed via the P (or X and Y) parameter of the GetHitTest method.


TdxLayoutClientAreaHitTest.HitTestCode

TdxLayoutClientAreaHitTest

Returns the htClientArea constant value.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that fully defines the ExpressLayout Control client area positioned under the mouse pointer.  The HitTestCode method of the TdxLayoutClientAreaHitTest object returns a htClientArea constant value.


TdxLayoutCustomizeFormHitTest
TdxLayoutCustomizeFormHitTest Object

Hierarchy          Methods           See Also

Represents the class that determines the Customization Form whose area contains a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxLayoutCustomizeFormHitTest = class(TdxCustomLayoutHitTest)

Description

The TdxLayoutCustomizeFormHitTest object specifies the Customization Form whose area is positioned under the mouse cursor.  The TdxLayoutCustomizeFormHitTest object implements the HitTestCode method, which returns a htCustomizeForm constant value specified by the Customization Form of the ExpressLayout Control.


Methods for TdxLayoutCustomizeFormHitTest
TdxLayoutCustomizeFormHitTest Methods

TdxLayoutCustomizeFormHitTest          Legend

In TdxLayoutCustomizeFormHitTest

 HitTestCode


TdxLayoutCustomizeFormHitTest.HitTestCode

TdxLayoutCustomizeFormHitTest

Returns the htCustomizeForm constant value.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that specifies the Customization Form positioned under the mouse cursor.  The HitTestCode method of the TdxLayoutCustomizeFormHitTest object returns a htCustomizeForm constant value.


TdxLayoutGroupHitTest
TdxLayoutGroupHitTest Object

Hierarchy          Properties          Methods          See Also

Represents the class that determines the ExpressLayout Control group whose area contains a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxLayoutGroupHitTest = class(TdxCustomLayoutItemHitTest)

Description

The TdxLayoutGroupHitTest object is used to specify the ExpressLayout Control group positioned under the mouse cursor.  The TdxLayoutGroupHitTest object implements the HitTestCode method, which returns a htGroup constant value specified by the ExpressLayout Control group placed beneath the mouse cursor.  Additionally, the TdxCustomLayoutItemHitTest object implements its own Item property, which represents a specific group placed under the mouse cursor.


Properties for TdxLayoutGroupHitTest
TdxLayoutGroupHitTest Properties

TdxLayoutGroupHitTest          Legend

In TdxLayoutGroupHitTest

Item


Methods for TdxLayoutGroupHitTest
TdxLayoutGroupHitTest Methods

TdxLayoutGroupHitTest          Legend

In TdxLayoutGroupHitTest

 HitTestCode


TdxLayoutGroupHitTest.Item

TdxLayoutGroupHitTest

Specifies a group placed under the mouse pointer.

property Item: TdxLayoutGroup;

Description

Use the Item property to specify the group whose area contains a specified point.  This point represents the current mouse cursor position and is passed via the P (or X and Y) parameter of the GetHitTest method.


TdxLayoutGroupHitTest.HitTestCode

TdxLayoutGroupHitTest

Returns the htGroup constant value.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that specifies whether a group is positioned under the mouse cursor.  The HitTestCode method of the TdxLayoutGroupHitTest object returns a htGroup constant value.


TdxLayoutItemHitTest
TdxLayoutItemHitTest Object

Hierarchy          Properties          Methods          See Also

Represents the class that determines the ExpressLayout Control item whose area contains a specified point (mouse cursor position).

Unit

dxLayoutControl

TdxLayoutItemHitTest = class(TdxCustomLayoutItemHitTest)

Description

The TdxLayoutItemHitTest object is used to specify the ExpressLayout Control item positioned under the mouse cursor.  The TdxLayoutItemHitTest object implements the HitTestCode method.  The HitTestCode method returns a htItem constant value specified by the ExpressLayout Control item, placed beneath the mouse cursor.  Additionally, the TdxLayoutItemHitTest object implements its own Item property, which represents a specific group placed under the mouse cursor.


Properties for TdxLayoutItemHitTest
TdxLayoutItemHitTest Properties

TdxLayoutItemHitTest          Legend

In TdxLayoutItemHitTest

Item


Methods for TdxLayoutItemHitTest
TdxLayoutItemHitTest Methods

TdxLayoutItemHitTest          Legend

In TdxLayoutItemHitTest

 HitTestCode


TdxLayoutItemHitTest.Item

TdxLayoutItemHitTest

Specifies the item placed under the mouse pointer.

property Item: TdxLayoutItem;

Description

Use the Item property to specify the item whose area contains a specified point.  This point represents the current mouse cursor position and is passed via the P (or X and Y) parameter of the GetHitTest method.


TdxLayoutItemHitTest.HitTestCode

TdxLayoutItemHitTest

Returns the htItem constant value.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that specifies the item placed beneath the mouse pointer.  The HitTestCode method of the TdxLayoutItemHitTest object returns the htItem constant value.


TdxLayoutNoneHitTest
TdxLayoutNoneHitTest Object

Hierarchy          Methods          See Also

Represents the class that determines a specified point (mouse cursor position) outside the ExpressLayout Control.

Unit

dxLayoutControl

TdxLayoutNoneHitTest = class(TdxCustomLayoutHitTest)

Description

The TdxLayoutNoneHitTest object is used to determine whether the mouse cursor is positioned outside the ExpressLayout Control.  The TdxLayoutNoneHitTest object implements the HitTestCode method, which returns a htNone constant value, specified by the ExpressLayout Control positioned under the mouse cursor.


Methods for TdxLayoutNoneHitTest
TdxLayoutNoneHitTest Methods

TdxLayoutNoneHitTest          Legend

In TdxLayoutNoneHitTest

 HitTestCode


TdxLayoutNoneHitTest.HitTestCode

TdxLayoutNoneHitTest

Returns the htNone constant value.

function HitTestCode: Integer;

Description

Use the HitTestCode method to access the value that specifies that neither ExpressLayout Control nor its elements, are positioned beneath the mouse pointer.  The HitTestCode method of the TdxLayoutNoneHitTest object returns a htNone constant value.


TcxControl Hierarchy
Hierarchy

TCustomControl


TdxCustomLayoutControl Hierarchy
Hierarchy

TCustomControl

     |

TcxControl


TdxCustomLayoutHitTest Hierarchy
Hierarchy

TObject


TdxCustomLayoutItem Hierarchy
Hierarchy

TComponent


TdxCustomLayoutItemCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxCustomLayoutItemOptions


TdxCustomLayoutItemHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest


TdxCustomLayoutItemOptions Hierarchy
Hierarchy

TPersistent


TdxLayoutAlignmentConstraint Hierarchy
Hierarchy

TComponent


TdxLayoutClientAreaHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest


TdxLayoutControl Hierarchy
Hierarchy

TCustomControl

     |

TcxControl

     |

TdxCustomLayoutControl


TdxLayoutCustomizeFormHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest


TdxLayoutGroup Hierarchy
Hierarchy

TComponent

     |

TdxCustomLayoutItem


TdxLayoutGroupHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest

     |

TdxCustomLayoutItemHitTest


TdxLayoutItem Hierarchy
Hierarchy

TComponent

     |

TdxCustomLayoutItem


TdxLayoutItemCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxCustomLayoutItemOptions

     |

TdxCustomLayoutItemCaptionOptions


TdxLayoutItemControlOptions Hierarchy
Hierarchy

TPersistent

     |

TdxCustomLayoutItemOptions


TdxLayoutItemHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest

     |

TdxCustomLayoutItemHitTest


TdxLayoutNoneHitTest Hierarchy
Hierarchy

TObject

     |

TdxCustomLayoutHitTest


TdxLayoutOffsets Hierarchy
Hierarchy

TPersistent

     |

TdxCustomLayoutItemOptions


TdxCustomLayoutLookAndFeel Hierarchy
Hierarchy

TComponent


TdxCustomLayoutLookAndFeelOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart


TdxLayoutLookAndFeelCaptionOptions Hierarchy
Hierarchy

TPersistent


TdxLayoutLookAndFeelDefs Hierarchy
Hierarchy

TObject


TdxLayoutLookAndFeelGroupOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions


TdxLayoutLookAndFeelItemOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions


TdxLayoutLookAndFeelList Hierarchy
Hierarchy

TComponent


TdxLayoutLookAndFeelOffsets Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart


TdxLayoutOfficeLookAndFeel Hierarchy
Hierarchy

TComponent

     |

TdxCustomLayoutLookAndFeel

     |

TdxLayoutStandardLookAndFeel


TdxLayoutStandardLookAndFeel Hierarchy
Hierarchy

TComponent

     |

TdxCustomLayoutLookAndFeel


TdxLayoutStandardLookAndFeelGroupCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxLayoutLookAndFeelCaptionOptions


TdxLayoutStandardLookAndFeelGroupOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions

     |

TdxLayoutLookAndFeelGroupOptions


TdxLayoutStandardLookAndFeelItemCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxLayoutLookAndFeelCaptionOptions


TdxLayoutStandardLookAndFeelItemOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions

     |

TdxLayoutLookAndFeelItemOptions


TdxLayoutWebLookAndFeel Hierarchy
Hierarchy

TComponent

     |

TdxCustomLayoutLookAndFeel


TdxLayoutWebLookAndFeelGroupCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxLayoutLookAndFeelCaptionOptions


TdxLayoutWebLookAndFeelGroupOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions

     |

TdxLayoutLookAndFeelGroupOptions


TdxLayoutWebLookAndFeelItemCaptionOptions Hierarchy
Hierarchy

TPersistent

     |

TdxLayoutLookAndFeelCaptionOptions


TdxLayoutWebLookAndFeelItemOptions Hierarchy
Hierarchy

TdxCustomLayoutLookAndFeelPart

     |

TdxCustomLayoutLookAndFeelOptions

     |

TdxLayoutLookAndFeelItemOptions


Legend

 Protected

 Published

 ReadOnly


ExpressLayout Control Groups

The base elements of the ExpressLayout Control are groups and items.  Any group can contain other groups or items.  If a group contains a group, it becomes the parent of both the group stored within it and the items of that group (the Parent property of the groups and items points to the parent group).

Every group is represented via the TdxLayoutGroup class within the ExpressLayout Control.

The container (the ExpressLayout Control) maintains the root (base) group automatically.  The root group is not displayed within the Designer.  It can be accessed via the Items property of the TdxLayoutControl object.

A new group may be created by pressing the "Add Group..." button within the ExpressLayout Control’s Designer (or by using the CreateGroup method of a group or a Layout Control).

After creation, every group (or item) represents an "available" group.  The term "available" means that this group was created within the ExpressLayout Control but has not been placed and arranged within the control itself (it does not have a parent).  "Available" groups are grayed within the Designer.  An "available" group (or item) may be accessed via the AvailableItems property of the ExpressLayout Control.

"Available" groups and groups which are already arranged within the ExpressLayout Control are displayed within the Designer in the following manner.

Elements inside every group are arranged in a single direction: vertically or horizontally.  This direction is specified by the LayoutDirection property of a group (the layout direction of the root group may be specified by the LayoutDirection property of the ExpressLayout Control).

A group may have both a caption and a border.  Use the ShowCaption or ShowBorder properties of a group to display its caption or border.  Layout, caption and border types depend on the container’s style.

Use the LookAndFeel property to set the appropriate style for a group.  There are three main predefined look & feel styles: "Standard", "Office", and "Web" which can be created with the help of the TdxLayoutLookAndFeelList component.  Use the LookAndFeel property to select the appropriate drawing style for a group.  You can customize the group’s look & feel style as your needs dictate.

A developer can change offsets inside a group.  Use the Offsets property to set the appropriate horizontal or vertical offsets within a specific group.

You can force a group and its contents to be considered as a single element during customization.  Use the Locked property to forbid the customization of group elements (change internal group layout).  If this property is set to True, a user cannot change internal group layout (add a new element or remove any element) when the ExpressLayout Control is in customization mode.  But a user can change the external layout of any group, move it to another group - hide/display it.

A developer can force a group to be considered as an auxiliary hidden group using the Hidden property.  Generally, a hidden group is an automatically created auxiliary group.  The ExpressLayout Control may create a new auxiliary hidden group on the fly when required.  The need to create such a group is generated by modifications to element layout direction within a user-defined (or root) group.  In comparison to a user-defined group, a hidden group has the following limitations: It does not have a border and caption.  So its ShowBorder and ShowCaption properties are set to False.

Here is an example of a complex group (black lines are group borders, gray lines are item borders):

Item width/height may be fixed or calculated automatically within a group, based on the group’s and other item’s widths/heights.  The root group can be aligned by width (and/or) height or scrolled.


ExpressLayout Control Items

The base elements of the ExpressLayout Control are groups and items.  Items are stored within a group (root group or ordinary group).  Every item is represented via the TdxLayoutItem class within the ExpressLayout Control.

A new item may be created by pressing the "Add Item…" button within the Designer of the ExpressLayout Control (or by using the CreateItem or CreateItemForControl methods of a group or a Layout Control).

After creation, every item (or group) represents an "available" item.  The term "available" means that this item was created within the ExpressLayout Control but has not been placed and arranged within the control itself (it does not have a parent).  "Available" items are grayed within the Designer.  A specific "available" item (or group) may be accessed via the AvailableItems property of the ExpressLayout Control.

 "Available" items and items which are already arranged within the ExpressLayout Control are displayed within the Designer in the following manner.

An item may have a caption, a border and a control.

Use the ShowCaption property of an item to display its caption.  Item caption may be painted to the left/right/top/bottom.  If a developer specifies a fixed caption width, then caption height will be calculated automatically.  A user can draw text across several lines.  Use the CaptionOptions property to specify item caption layout and its alignment based upon the control embedded within the item.

An item is considered as a container for any TControl descendant.  Use the Control property of the item to specify a visual control to display within the item.  Place the desired control onto a form and assign it to the appropriate item (select this control via the Control property of the item).  The desired control will "jump" into this item and it will be displayed as an ExpressLayout Control element.  As a rule, you don’t need to assign the Control property - simply drop a control from the component palette onto the Layout Control and an item will automatically be created for it and the control will be associated with the newly created item (the Control property will be assigned to it).  Use the ControlOptions property to specify the external control’s appearance within the ExpressLayout Control.

An item’s control container draws the control’s borders.  Border style depends upon item style.  Borders may be invisible.

An item style can be set via the LookAndFeel property.  There are three main predefined look & feel styles: "Standard", "Office" and "Web" which can be created with the help of the TdxLayoutLookAndFeelList component.  Use the LookAndFeel property to select the appropriate drawing style for an item.  You are able to customize the selected group look & feel style as your needs dictate.

A developer can change offsets inside an item.  Use the Offsets property of an item to set appropriate horizontal or vertical offsets within the item.

Item’s width/height may be fixed or calculated automatically within a group, based on the group’s and other item’s widths/heights.


Changing Layouts

ExpressLayout Control elements (groups and items) can be hidden/displayed, moved to another group or rearranged inside the same group. At design-time you can perform this by using the ExpressLayout Control Designer or via drag & drop operations.

At runtime, drag & drop is available if customization mode is active (the Customization property is set to True).  When the ExpressLayout Control is in customization mode, the Customization Form is displayed.  The Customization Form contains both Items and Groups tabs.  These tabs include a list of items and groups currently invisible ("available").  Drag a group or an item to the Customization Form or outside the Layout Control to make it invisible.

The group or item name will be added to the corresponding tab.

Drag the group or item header back to the ExpressLayout Control to make it visible again.

The Customization Form allows the end user to create a new group as well.

Once a new group is created, it can be inserted into the ExpressLayout Control and populated with appropriate items.

A developer may forbid customization of any group (change internal group layout).

Here we have a check box (Reminder:), a combo box (15 minutes), a button, and an image.  It is one group and a user cannot change internal group layout (add a new element or remove any element), but he/she can change the external layout.  A user can move it to another group, and hide/display it.

When a programmer selects one item from a locked group, the whole locked group is selected.  He can also lock/unlock the entire group (a group will be added/removed).


Layout Alignment Constraint

Alignment of controls within the bounds of their items is managed automatically.  ExpressLayout Control looks for items that have the same left/top/bottom/right boundaries and changes the offsets of the controls inside the items so that they (controls) are aligned in the same way as their items.

Automatic control alignment provides enough control in most instances.  But in certain situations, additional assistance is required - something that will allow you to align items (not only controls), when auto alignment doesn't work.  Alignment constraints are designed for this very task.

A developer can use these constraints via the "Align by..." button located in the Layout Control Designer. This button is enabled only if more than one item or group is selected.  Alignment constraints are self-destructive - when a constraint has less than 2 items in its list - it destroys itself.  So a user does not need to worry about the destruction of unused constraints - he/she simply needs to select the items he/she wants to align and choose the appropriate alignment type.

The following image describes alignment constraints:

Here is the constraint for left caption indents.

Here is the constraint for left item indents.

An element can be included in only one constraint (for each type).  Constraints can be created, deleted or changed if a user wants to add/remove an element to/from a constraint.  When a user selects an element that is affected by a constraint, all elements included in it are displayed differently.


LookAndFeelOffsets

The ExpressLayout Control allows you to specify different offsets for its elements.  Use the TdxLayoutLookAndFeelOffsets object’s properties to set appropriate vertical and horizontal offsets for ExpressLayout Control groups/items, connected with a specific Look & Feel style.

This object allows you to change the default values of different offsets, which calculate the distances between different elements (controls, captions, items, groups) within the ExpressLayout Control.  Default values of offsets are similar to those recommended by Microsoft in its UI guidelines.  These values are calculated not in pixels but in DLU - dialog units.  The pixel value of DLU depends upon the current font used in the control.  The following image describes the use of offsets.


Look and Feel Styles

Every ExpressLayoutControl group or item can be connected with a specific look & feel style which affects its drawing style.  There are three main predefined look & feel styles: "Standard", "Office" and "Web" which can be created with the help of the TdxLayoutLookAndFeelList component.

The TdxLayoutLookAndFeelList object is a non-visual component.  This component is used to create, select, and apply identical styles for ExpressLayout Control elements.  Every look & feel style contained within the TdxLayoutLookAndFeelList component can be accessed via the Items property.  The total number of all existing styles is obtained via the Count property.

Every look & feel style is represented by a previously tuned class derived from the TdxCustomLayoutLookAndFeel class.  You can create your own custom style (based upon one of the three predefined styles or the TdxCustomLayoutLookAndFeel object) and modify its properties as your application needs dictate.

The base properties of every look & feel style specify group and item options, as well as their offsets.

Use the GroupOptions property to access the TdxLayoutLookAndFeelGroupOptions object, which specifies specific group options.  Use these class properties to set the background color and caption options for groups.

Use the ItemOptions property to access the TdxLayoutLookAndFeelItemOptions object, which specifies specific item options.  Use these class properties to set caption options for items and specify the border style and color for the controls associated with these items.

Use the Offsets property to access the TdxLayoutLookAndFeelOffsets object, which specifies specific offsets for ExpressLayout Control elements (captions, controls, items, groups).  Use these class properties to set appropriate vertical and horizontal offsets for ExpressLayout Control elements, which are connected with a specific Look & Feel style.  Settings these group and item options, and their offsets will affect every item associated with a specific look & feel style.

Use the Standard style to draw ExpressLayout Control elements in a manner similar to that found in MS Windows®.

The Office style is used to draw the ExpressLayout Control elements in a manner similar to that found in MS Office® 2000.

Use the Web style to draw ExpressLayout Control elements in a manner similar to a web page.

The following image demonstrates an example of a custom look & feel style.  ExpressLayout Control elements are drawn using an MS® Money UI.


How To Get Support

The goal of our support team is to answer and alleviate any problems you might encounter when using our components.  Feel free to contact us should any tech support issues arise.

E-mail:

support@devexpress.com

You can send your suggestions, comments, complaints or good thoughts to:

suggest@devexpress.com

ExpressSupport Forum:

Visit the ExpressSupportForum at http://www.devexpress.com/dxforum to ask questions from our support team, find knowledge base articles on our components, tips and tricks, and a myriad of working samples with full source code.

Newsgroups:

news.devexpress.com

Please note that these newsgroups are peer-to-peer in nature. Developer Express does not offer any formal support in any of its newsgroups. Support is available using the ExpressSupport Forum and by writing to our support team at: support@devexpress.com. Of course, Developer Express team members will be monitoring these newsgroups and assisting our users where applicable.