CustomMultiView

Qualified name: delphifmx.CustomMultiView

class CustomMultiView

Bases: StyledControl

The base class for MultiView components. If you need to create a custom MultiView component, derive it from TCustomMultiView.

Methods

AfterConstruction

ApplyStyleLookup

Gets and applies the style of a TStyledControl.

ApplyTriggerEffect

Applies the specified mouse trigger effect to all the children of this FMX object that are of type TEffect.

BeforeDestruction

Performs any necessary actions before the first destructor is called.

ClearContent

Removes all controls from the content.

FindStyleResource

Finds the linked resource object for the style specified by name.

HasMasterButton

Verifies whether the component has a master button.

HasPresentationProxy

HasPresenter

Retrieves whether the master pane of the current MultiView component has the Presenter.

HasTargetControl

Verifies whether the component has the detail pane.

HideMaster

Hides the master pane.

Inflate

Call this procedure to get and apply its style lookup.

IsShowed

Verifies whether the master pane is displayed.

LoadPresentation

NeedStyleLookup

Call this procedure to indicate that this control requires to get and apply its style lookup.

PointInObjectLocal

Checks whether the point specified by local coordinates belongs to the control area.

RecalcEnabled

Forces the current control to recalculate its enabled state.

RecalcOpacity

Forces the current control to recalculate its Opacity property.

ReloadPresentation

ShowMaster

Displays the master pane.

StartTriggerAnimation

Embarcadero Technologies does not currently have any additional information.

StartTriggerAnimationWait

Embarcadero Technologies does not currently have any additional information.

UnloadPresentation

UpdateAlignment

Embarcadero Technologies does not currently have any additional information.

Attributes

AbsoluteClipRect

Specifies the absolute rectangle of the control after all its parent controls clip it.

AbsoluteEnabled

Specifies whether the control is absolutely enabled.

AbsoluteHeight

Specifies the absolute height of the control.

AbsoluteMatrix

Specifies the absolute transformation matrix of the control.

AbsoluteOpacity

Specifies the absolute opacity of the control.

AbsoluteRect

Specifies the absolute rectangle that bounds the control.

AbsoluteScale

Specifies the absolute scale of the control.

AbsoluteWidth

Specifies the absolute width of the control.

ActionClient

Specifies whether the component object has an associated action.

AdjustSizeValue

Updates the width and height of this control according to its current style

AdjustType

Determines if and how the width and height of this control should be modified to take the fixed space dictated by the style of this control

Align

Specifies the alignment options (top, left, client, and so on) of this control.

Anchors

Specifies how the control is anchored to its parent.

ApplyingEffect

A flag that signals when a control is in the process of applying an effect.

AutoCapture

Specifies whether the control captures mouse events.

AutoTranslate

Specifies whether the control's text should be translated

AxisAlignedRect

A TRectF defined by the width and height of the control.

BorderOptions

Handles appearance options of borders for MultiView components.

BoundsRect

Specifies the bounding rectangle of the control.

CanParentFocus

Specifies whether the parent of this control should be evaluated to receive focus.

Canvas

Provides the drawing surface of the control.

Children

Stores an array of children attached to this parent component.

ChildrenCount

Read-only property that specifies the number of children in the children list.

ChildrenRect

Specifies the bigger rectangle area occupied by parent and children controls.

ClassName

Returns the TObject.ClassName

ClipChildren

Specifies if children of the control should be clipped to the control's on-screen region.

ClipParent

Specifies whether the current control has clipped its parent.

ClipRect

Specifies the bound rectangle to be clipped.

ComObject

Specifies the interface reference implemented by the component.

ComponentCount

Returns the owned component count

ComponentIndex

Indicates the position of the component in its owner's Components property array.

ComponentState

Describes the current state of the component, indicating when a component needs to avoid certain actions.

ComponentStyle

Governs the behavior of the component.

Components

Returns an iterator over the owned components

ControlType

ControlType:

Controls

Returns an iterator over contained controls

ControlsCount

Returns the count of contained controls

Cursor

Image to use to represent the mouse pointer when it passes into the region covered by the control.

CustomPresentationClass

Refers the custom class for presentations of master panes in MultiView controls.

Data

Stores a Tvalue, which is a data structure that can store different kinds of data types.

DefaultSize

Embarcadero Technologies does not currently have any additional information.

DefaultStyleLookupName

Returns a string with the name of the default style of this control

DesignInfo

Contains information used by the Form designer.

DisableDisappear

Embarcadero Technologies does not currently have any additional information.

DisableFocusEffect

Specifies whether the control has the focus effect disabled.

DragMode

Specifies how the control initiates drag-and-drop operations.

DrawerOptions

Handles appearance options of the master pane in the Drawer presentation mode.

EnableDragHighlight

Specifies whether the control is highlighted when the dragged object is over it.

Enabled

Specifies whether the control responds to mouse, keyboard, and timer events.

FixedSize

Embarcadero Technologies does not currently have any additional information.

HasAfterPaintEffect

Specifies whether the control has an effect that is applied after the control is painted.

HasClipParent

Control that is a direct child of this control and has clipped this control.

HasDisablePaintEffect

Specifies whether the control's effect is painted.

HasEffect

Specifies whether the control has an applied effect.

Height

Height specifies the vertical size of the control (in dp).

HelpContext

Contains the numeric context ID that identifies the Help topic for the control.

HelpKeyword

Contains the keyword string that identifies the Help topic for the control.

HelpType

Specifies whether the control's context-sensitive Help topic is identified by a context ID or by keyword.

Hint

Specifies the text string that appears when the user moves the mouse over a control.

HitTest

Enables the control to capture mouse events.

InPaintTo

Specifies whether the control is currently being painted.

Index

Specifies the index of the child object in the children array attached to this object.

InheritedCursor

Image used to represent the mouse pointer when it passes into the region covered by the control.

InvertAbsoluteMatrix

Specifies the inverse matrix of AbsoluteMatrix.

IsDragOver

Specifies whether a dragged object is over the area of the current control.

IsFocused

Determines whether the control has input focus.

IsInflated

Whether the current style of this control has been actually applied to the control.

IsMouseOver

Specifies whether the mouse cursor is over the control.

IsVisible

Specifies whether the control is visible.

LocalRect

Specifies the local rectangle for painting the control.

Locked

Specifies whether the control is locked at design time.

Margins

Aligns the component to the margins points of other components.

MasterButton

Allows you to hide or show the master pane.

MasterContent

Holds the content (child controls) of the MultiView.

Mode

Specifies the presentation mode of the master pane.

Model

DataModel:

Name

Specifies the name of the component as referenced in code.

NavigationPaneOptions

Handles the appearance options of the master pane in the NavigationPane presentation mode.

Observers

Indicates the TObservers object added to the TComponent.

OnGesture

Callable[[Object, GestureEventInfo, bool], None]:

Opacity

Specifies the control opacity.

Owner

Returns the Component Owner

Padding

Aligns the component to the padding points of other components.

Parent

Returns/Sets the Control Visibility

ParentClassStyleLookupName

The name of the default style of the parent class of this control.

ParentControl

Specifies the parent control of this control.

ParentedRect

Specifies the bounding rectangle of the control within its parent.

ParentedVisible

Specifies whether all the control's parents are visible.

PopoverOptions

Handles appearance options of the master pane in the Popover presentation mode.

PopupMenu

Specifies the context (pop-up) menu object.

Position

Returns an access to the position of the control inside its parent

Presentation

Object:

PresentationProxy

PresentationProxy:

PresentationState

PresentationState:

Presenter

Keeps the object providing the presentation of the master pane of the current MultiView component.

Pressed

Indicates whether the control is currently pressed.

PressedPosition

A point that indicates where exactly on the control the click occured.

Root

Specifies the root parent of this object.

Scene

Specifies the current scene in which the control is drawn.

ShadowOptions

Handles appearance options of a shadow that the master pane casts on the detail pane.

ShowHint

Specifies whether the Hint can be shown.

Size

Specifies the vertical and horizontal size (Size.Height and Size.Width) of the control (in pixels).

SplitViewOptions

Handles appearance options of the master pane in the Panel presentation mode.

Stored

Specifies whether this object is stored in the .XFM file.

StyleLookup

Specifies the name of the resource object to which the current TStyledControl is linked

StyleName

Specifies the style name for this FMX component.

StyleState

This property allows you to define the current state of style

StylesData

Value:

TabOrder

Indicates the position of the control in its parent's tab order.

TabStop

Embarcadero Technologies does not currently have any additional information.

Tag

Stores a NativeInt integral value as a part of a component.

TagFloat

Custom property that stores any floating-point value.

TagObject

Custom property that stores any object value.

TagString

Custom property that stores any string value.

TargetControl

Specifies a datail pane container (such as TPanel) showing elements described in the master pane.

Touch

Specifies the touch manager component associated with the control.

TouchTargetExpansion

Set of optional pixel values you can specify to expand the touch target of a FireMonkey styled control.

UpdateRect

Specifies the rectangle area of the control that needs to be updated.

VCLComObject

Represents information used internally by components that support COM.

Visible

Returns/Sets the Control Visibility

Width

Specifies the horizontal size of the control (in pixels).

AdjustSizeValue

Updates the width and height of this control according to its current style

AdjustType

Determines if and how the width and height of this control should be modified to take the fixed space dictated by the style of this control

AfterConstruction()
ApplyStyleLookup()

Gets and applies the style of a TStyledControl.

ApplyTriggerEffect(AInstance: FmxObject, ATrigger: str) None

Applies the specified mouse trigger effect to all the children of this FMX object that are of type TEffect. ApplyTriggerEffect iterates through all the children of this FMX object and, if one of them is of type TEffect, applies the mouse trigger given through the ATrigger parameter (which can be ‘IsMouseOver’, ‘IsMouseOver’, ‘IsDragOver’, and so on). AInstance specifies the instance of the FMX object to which the trigger effect is applied.

AutoTranslate

Specifies whether the control’s text should be translated

BeforeDestruction()

Performs any necessary actions before the first destructor is called. FMX.Controls.TStyledControl.BeforeDestruction inherits from System.Classes.TComponent.BeforeDestruction. All content below this line refers to System.Classes.TComponent.BeforeDestruction. Performs any necessary actions before the first destructor is called. BeforeDestruction is called automatically immediately before the component’s first destructor executes. Do not call it explicitly in your applications. As implemented in TComponent, BeforeDestruction checks whether the Destroying method has been called, and if not, calls it. Descendants that override this method to perform other actions before a component is destroyed should call the inherited method first to ensure that this check takes place.

BorderOptions

Handles appearance options of borders for MultiView components. TMultiViewBorderOptions defines the Color and Visible properties.

Type:

MultiViewBorderOptions

ClearContent()

Removes all controls from the content.

ControlType

ControlType:

CustomPresentationClass

Refers the custom class for presentations of master panes in MultiView controls. The user can customize the master pane presentation. You need to set the MultiView control to Custom and declare your own class that descends from TMultiViewPresentation or from other classes declared in the FMX.MultiView.Presentations.pas unit (such as MyPresentationClass). The custom presentation class should be set in the CustomPresentationClass property. See the Custom Mode subsection in Mobile Tutorial: Using a MultiView Component to Display Alternate Views of Information (iOS and Android).

Type:

MultiViewPresentationClass

DefaultStyleLookupName

Returns a string with the name of the default style of this control

DrawerOptions

Handles appearance options of the master pane in the Drawer presentation mode. The DrawerOptions property handles the following options:

DurationSliding: specifies the duration of the master pane sliding (in seconds). Mode: specifies the master pane sliding mode. Placement: specifies the master pane location (left or right). TouchAreaSize: specifies the touch area size (in pixels).

Type:

DrawerAppearance

FindStyleResource(AStyleLookup: str, AClone: bool) FmxObject

Finds the linked resource object for the style specified by name. The AStyleLookup parameter specifies the name of the style. If AStyleLookup is empty, FindStyleResource returns nil. If no resource object is linked directly to the control, FindStyleResource looks to the styles of the control’s children. If no resource object is found, it returns nil. Clone determines whether the returned style resource object should be the original style object (False) or a copy of the original (True). Finds the linked resource object for the style specified by name. The AStyleLookup parameter specifies the name of the style. If AStyleLookup is empty, FindStyleResource returns nil. If no resource object is linked directly to the control, FindStyleResource looks to the styles of the control’s children. If no resource object is found, it returns nil. Clone determines whether the returned style resource object should be the original style object (False) or a copy of the original (True).

HasMasterButton()

Verifies whether the component has a master button. A master button is a UI element that allows you to view or hide the master pane.

HasPresentationProxy() Boolean
HasPresenter()

Retrieves whether the master pane of the current MultiView component has the Presenter.

HasTargetControl()

Verifies whether the component has the detail pane.

HideMaster()

Hides the master pane. Use this method to hide the master pane.

Inflate()

Call this procedure to get and apply its style lookup.

IsShowed()

Verifies whether the master pane is displayed. Use this method to verify whether the master pane is displayed. The IsShowed method returns the following values:

true: the master pane is displayed. false: the master pane is hidden.

LoadPresentation()
MasterButton

Allows you to hide or show the master pane. If your application has no master button, leave the MasterButton property empty.

Limitations The master button cannot be used when:

The button is invisible and if the Mode property is set to Panel presentation mode. That is, the master pane is a “docked panel”. The onClick event handler is not supported.

Type:

Control

MasterContent

Holds the content (child controls) of the MultiView. MasterContent lists child controls in the master pane and does not list the detail pane.

Note: The detail pane is referenced by the TargetControl property.

Type:

Content

Mode

Specifies the presentation mode of the master pane. The TMultiViewMode type provides the following presentation modes:

Mode

Master Pane Presentation

Drawer

In the Drawer mode, the master pane can be whether hidden or can slide to overlap the detail pane.

Panel

Master and detail panels are always displayed, independently of a device type and orientation. The master panel is docked to the left or right of the MultiView component.

PlatformBehaviour

An application automatically selects the master pane presentation mode depending on the device type and orientation, as described in the tables in the Platform Dependent Behavior Mode subsection below.

Popover

Pop-up menu.

NavigationPane

Navigation pane.

Custom

The user can customize the master pane presentation. The custom presentation class should be set in the CustomPresentationClass property. For details, see Custom Mode description.

For detailed information about the presentation modes, see Master Pane Presentation Modes.

Platform Dependent Behavior Mode In the PlatformBehaviour mode, you let the application automatically select the master pane presentation mode. In this scenario, the application behavior depends on the device type, orientation, and the operation system version (only for desktop applications) as described in the following tables: Mobile Applications

Device Type

Device Orientation

Master Pane Presentation

Phone

Landscape, Portrait

Drawer (push/overlap)

Tablet

Landscape

Docked panel

Tablet

Portrait

Drawer (push/overlap)

Desktop Applications

OS Version

Master Pane Presentation

Windows 10

Navigation pane

Windows 8 or earlier

Docked panel

OS X

Docked panel

Type:

MultiViewMode

Model

DataModel:

NavigationPaneOptions

Handles the appearance options of the master pane in the NavigationPane presentation mode. With NavigationPaneOptions, you can manage the CollapsedWidth property of the master pane appearance of the current MultiView component. CollapsedWidth specifies the width (in pixels) of the master pane in the NavigationPane presentation mode when it is collapsed.

Type:

NavigationPaneAppearance

NeedStyleLookup()

Call this procedure to indicate that this control requires to get and apply its style lookup.

PointInObjectLocal(X: float, Y: float) bool

Checks whether the point specified by local coordinates belongs to the control area. PointInObjectLocal returns True if the specified point belongs to the control area, and False otherwise. The X and Y are the local coordinates of the point to be checked (compare with PointInObject):

X is the X coordinate. Y is the Y coordinate. The local coordinates of the upper-left corner of the control rectangle are (0,0), and the local coordinates of the lower-right corner are (Width, Height). The points of the control boundary specified by BoundsRect belong to the control and PointInObjectLocal returns True for them. If a control supports the Touch property, the control area can be optionally inflated on the values specified by the TouchTargetExpansion property. TouchTargetExpansion keeps four optional parameters representing the expansion for the four sides of the control in pixels (Bottom, Left, Right, and Top). The dclasses can change the ‘control area’ definition. For example:

The FMX.Objects.TSelection class extends the ‘control area’ definition relative to BoundsRect. FMX.Objects.TSelection.PointInObjectLocal also returns True if the point belongs to any of small rectangles of the four grip controls used to manage the selection shape. The rectangles of the grip controls are rectangles surrounding the four corners of the TSelection rectangle. The Width and Height of these rectangles are equal to 2 * GripSize. For example, the grip control’s rectangle of the upper-right corner UR_Corner of TSelection is defined by the following corners: (UR_Corner.Top - GripSize, UR_Corner.Right - GripSize)–upper-left corner of the grip. (UR_Corner.Top + GripSize, UR_Corner.Right + GripSize)–lower-right corner of the grip. FMX.Objects.TSelectionPoint.PointInObjectLocal returns True if the specified point belongs to the rectangle of the grip control corresponding to the TSelectionPoint object, and False otherwise.

PopoverOptions

Handles appearance options of the master pane in the Popover presentation mode. In the Popover presentation mode, the master pane is a pop-up menu, which can be displayed or hidden using the master button. The PopoverOptions property allows you to handle the following options:

AppearanceDuration: specifies the duration of the pop-up window appearance (in seconds). By default, this property is set to 0.25 s. PopupHeight: specifies the height of the pop-up window (in pixels). By default, this property is set to 400px. StyleLookup: specifies the name of the resource object (style) to which this pop-up window is linked. TintColor: specifies the tint applied to this pop-up window.

Type:

PopoverAppearance

Presentation

Object:

PresentationProxy

PresentationProxy:

PresentationState

PresentationState:

Presenter

Keeps the object providing the presentation of the master pane of the current MultiView component.

Type:

MultiViewPresentation

RecalcEnabled()

Forces the current control to recalculate its enabled state. RecalcEnabled also forces the control’s children to recalculate their enabled state.

RecalcOpacity()

Forces the current control to recalculate its Opacity property. RecalcOpacity also forces the control’s children to recalculate their Opacity property.

ReloadPresentation()
ShadowOptions

Handles appearance options of a shadow that the master pane casts on the detail pane. With ShadowOptions property, you can handle the following appearance options of the shadow:

Color: specifies the shadow color. Enabled: enables or disables the shadow. Opacity: specifies the opacity level of the shadow.

Type:

ShadowAppearance

ShowMaster()

Displays the master pane. Use this method to display the master pane.

SplitViewOptions

Handles appearance options of the master pane in the Panel presentation mode. With SplitViewOptions property, you can handle the Placement option. Placement specifies the docked master pane location (left, right, top, or bottom).

Type:

SplitViewAppearance

StartTriggerAnimation(AInstance: FmxObject, ATrigger: str) None

Embarcadero Technologies does not currently have any additional information.

StartTriggerAnimationWait(AInstance: FmxObject, ATrigger: str) None

Embarcadero Technologies does not currently have any additional information.

StyleLookup

Specifies the name of the resource object to which the current TStyledControl is linked

StyleState

This property allows you to define the current state of style

TargetControl

Specifies a datail pane container (such as TPanel) showing elements described in the master pane. For more information about the master-detail interface, see Mobile Tutorial: Using a MultiView Component to Display Alternate Views of Information (iOS and Android).

Limitations See FireMonkey Native iOS Controls: Combining Native iOS Controls With Non-native Controls for more information about the limitations when using native controls.

Exceptions Setting TargetControl may raise the following exception:

Exception

Exception.Message

Scenarios

EComponentError

TargetControl cannot be a child of TMultiView.

You set a child control of a TMultiView as the TargetControl of that TMultiView. You set a TMultiView as the TargetControl of itself.

Type:

Control

UnloadPresentation()
UpdateAlignment()

Embarcadero Technologies does not currently have any additional information.