Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.UITabControl

Extends
UIObject
Modifiers
native ( UIPrivate ) config ( UI ) placeable

This widget manages a collection of panels. Only one panel can be active at a time. Each panel is associated with a tab, which is displayed in a row across one edge of the tab control. Users select the tab corresponding to the panel they wish to interact with by clicking with the mouse or using the keyboard/gamepad to activate neighboring panels. A UITabControl is composed of two main areas - the "tab region" and the "client region". The tab region is where the tabs are rendered, while the client region is where the currently active panel is rendered. Copyright 1998-2008 Epic Games, Inc. All Rights Reserved

Core.Object
|   
+-- Engine.UIRoot
   |   
   +-- Engine.UIScreenObject
      |   
      +-- Engine.UIObject
         |   
         +-- Engine.UITabControl

Direct Known Subclasses:

UTUITabControl

Constants Summary
Inherited Contants from Engine.UIObject
CONTEXTMENU_BINDING_INDEX, FIRST_DEFAULT_DATABINDING_INDEX, TOOLTIP_BINDING_INDEX

Variables Summary
boolbUpdateLayout
UIStyleReferenceTabButtonBackgroundStyle
UIStyleReferenceTabButtonCaptionStyle
Presentation
boolbAllowPagePreviews
UIScreenValue_ExtentTabButtonPadding[EUIOrientation.UIORIENT_MAX]
UIScreenValue_ExtentTabButtonSize
EUIWidgetFaceTabDockFace
EUITabAutosizeTypeTabSizeMode
Sound
nameActivateTabCue
UITabControl
UITabPageActivePage
array<UITabPage>Pages
UITabPagePendingPage
Inherited Variables from Engine.UIObject
AnimationParent, AnimationPosition, AnimStack, bDebugShowBounds, bEnableActiveCursorUpdates, bSupportsPrimaryStyle, ContextMenuData, DebugBoundsColor, DockTargets, NavigationTargets, Owner, OwnerScene, PrimaryStyle, PrivateFlags, RenderBoundsVertices[EUIWidgetFace.UIFACE_MAX], RenderBounds[EUIWidgetFace.UIFACE_MAX], RenderOffset, Rotation, StyleSubscribers, TabIndex, ToolTip, WidgetID, WidgetTag
Inherited Variables from Engine.UIScreenObject
bHidden, bInitialized, bNeverFocus, bSupports3DPrimitives, Children, DefaultStates, EventProvider, FocusControls, FocusedCue, FocusPropagation, InactiveStates, InitialState, MouseEnterCue, NavigateDownCue, NavigateLeftCue, NavigateRightCue, NavigateUpCue, Opacity, PlayerInputMask, Position, StateStack, ZDepth

Enumerations Summary
EUITabAutosizeType
TAST_Manual, TAST_Fill, TAST_Auto,

Delegates Summary
delegate OnPageActivated (UITabControl Sender, UITabPage NewlyActivePage, int PlayerIndex)
delegate OnPageInserted (UITabControl Sender, UITabPage NewPage, int PlayerIndex)
delegate OnPageRemoved (UITabControl Sender, UITabPage OldPage, int PlayerIndex)
Inherited Delegates from Engine.UIObject
OnClicked, OnCloseContextMenu, OnContextMenuItemSelected, OnCreate, OnDoubleClick, OnOpenContextMenu, OnPressed, OnPressRelease, OnPressRepeat, OnQueryToolTip, OnRefreshSubscriberValue, OnUIAnimEnd, OnValueChanged
Inherited Delegates from Engine.UIScreenObject
NotifyActiveSkinChanged, NotifyActiveStateChanged, NotifyPositionChanged, NotifyResolutionChanged, NotifyVisibilityChanged, OnPreRenderCallBack, OnProcessInputAxis, OnProcessInputKey, OnRawInputAxis, OnRawInputKey

Functions Summary
functionbool ActivateBestTab (int PlayerIndex, optional bool bFocusPage=true, optional int StartIndex=0 ))
eventbool ActivateNextPage (int PlayerIndex, optional bool bFocusPage=true, optional bool bAllowWrapping=true ))
eventbool ActivatePage (UITabPage PageToActivate, int PlayerIndex, optional bool bFocusPage=true ))
functionbool ActivatePageByCaption (string PageCaption, int PlayerIndex, optional bool bFocusPage=true ))
eventbool ActivatePreviousPage (int PlayerIndex, optional bool bFocusPage=true, optional bool bAllowWrapping=true ))
event AddedChild (UIScreenObject WidgetOwner, UIObject NewChild ))
functionUITabPage CreateTabPage (class<UITabPage> TabPageClass, optional UITabPage PagePrefab)
eventbool EnableTabPage (UITabPage PageToEnable, int PlayerIndex, bool bEnablePage=true, optional bool bActivatePage, optional bool bFocusPage=true ))
functionint FindPageIndexByButton (UITabButton SearchButton ))
functionint FindPageIndexByCaption (string PageCaption, optional bool bMarkupString ))
functionint FindPageIndexByPageRef (UITabPage SearchPage ))
functionUITabButton FindTargetedTab (int PlayerIndex ) con)
functionUITabPage GetPageAtIndex (int PageIndex ) con)
functionint GetPageCount () con)
eventbool InsertPage (UITabPage PageToInsert, int PlayerIndex, int InsertIndex=INDEX_NONE, optional bool bActivateImmediately=true ))
event PostInitialize ()))
event PrivateActivatePage (UITabPage PageToActivate, int PlayerIndex ))
functionbool ProcessInputKey (const out InputEventParameters EventParms ))
eventbool RemovePage (UITabPage PageToRemove, int PlayerIndex ))
eventbool ReplacePage (UITabPage ExistingPage, UITabPage NewPage, int PlayerIndex, optional bool bFocusPage=true ))
function RequestLayoutUpdate ()
functionbool TabButtonClicked (UIScreenObject EventObject, int PlayerIndex))
Inherited Functions from Engine.UIObject
AddStyleSubscriber, AnimSetBottom, AnimSetColor, AnimSetLeft, AnimSetOpacity, AnimSetPosition, AnimSetRelPosition, AnimSetRight, AnimSetRotation, AnimSetScale, AnimSetTop, AnimSetVisibility, CanAcceptFocus, ClearDefaultDataBinding, ClearUIAnimation, FindStyleSubscriberIndex, FindStyleSubscriberIndexById, GenerateSceneDataStoreMarkup, GenerateTransformMatrix, GetAnchorPosition, GetDefaultDataBinding, GetDefaultDataStores, GetOwner, GetParent, GetPositionExtent, GetPositionExtents, GetRotationMatrix, GetScene, GetToolTipValue, HasTransform, IsContainedBy, IsDockedTo, IsPrivateBehaviorSet, LogRenderBounds, NeedsActiveCursorUpdates, NotifyValueChanged, OnSetDatastoreBinding, PlayUIAnimation, RemoveStyleSubscriber, ResolveDefaultDataBinding, ResolveStyles, RotateWidget, SetActiveCursorUpdate, SetAnchorPosition, SetDefaultDataBinding, SetDockPadding, SetDockParameters, SetDockTarget, SetForcedNavigationTarget, SetNavigationTarget, SetPrivateBehavior, SetWidgetStyleByName, StopUIAnimation, TickAnim, UIAnimEnd, UpdateRotationMatrix
Inherited Functions from Engine.UIScreenObject
AcceptsPlayerInput, ActivateEventByClass, ActivateState, ActivateStateByClass, AddedChild, CanAcceptFocus, CanPlayOnline, CanPropagateFocusFor, CanvasToScreen, ConditionalPropagateEnabledState, ContainsChild, ContainsChildOfClass, CreatePlayerData, CreateWidget, DeactivateState, DeactivateStateByClass, DeProject, DisablePlayerInput, DisableWidget, EnablePlayerInput, EnableWidget, FindChild, FindChildIndex, FindChildUsingID, FindEventsOfClass, FocusFirstControl, FocusLastControl, GetActivePlayerCount, GetAspectRatioAutoScaleFactor, GetBestControllerId, GetBestPlayerIndex, GetBounds, GetCanvasToScreen, GetChildren, GetCurrentState, GetDockedWidgets, GetFocusedControl, GetInverseCanvasToScreen, GetLastFocusedControl, GetLoginStatus, GetNATType, GetObjectCount, GetParent, GetPlayerOwner, GetPosition, GetPositionVector, GetSupportedPlayerCount, GetSupportedUIActionKeyNames, GetViewportHeight, GetViewportOffset, GetViewportOrigin, GetViewportScale, GetViewportSize, GetViewportWidth, GetWidgetPathName, HasActiveStateOfClass, HasLinkConnection, Initialize, Initialized, InitializePlayerTracking, InsertChild, IsActive, IsEnabled, IsFocused, IsHidden, IsHoldingAlt, IsHoldingCtrl, IsHoldingShift, IsInitialized, IsLoggedIn, IsNeverFocused, IsPressed, IsVisible, KillFocus, LogCurrentState, NavigateFocus, NextControl, OnChangeVisibility, OnConsoleCommand, OnSetControllerId, OnShowAchievementsUI, OnShowContentMarketplaceUI, OnShowFeedbackUI, OnShowFriendInviteUI, OnShowFriendsUI, OnShowGamerCardUI, OnShowMembershipMarketplaceUI, OnShowMessagesUI, OnShowPlayersUI, OverrideLastFocusedControl, PixelToCanvas, PixelToScreen, PlayUISound, PostInitialize, PrevControl, PrivateSetVisibility, Project, RebuildNavigationLinks, RemoveChild, RemoveChildren, RemovedChild, RemovedFromParent, RemovePlayerData, ReplaceChild, RequestFormattingUpdate, RequestPrimitiveReview, RequestSceneUpdate, ScreenToCanvas, ScreenToPixel, SetEnabled, SetFocus, SetFocusToChild, SetInputMask, SetPosition, SetVisibility


Variables Detail

bUpdateLayout Source code

var transient bool bUpdateLayout;
set to indicate that the tab control should layout the buttons and panels during the next tick

TabButtonBackgroundStyle Source code

var private UIStyleReference TabButtonBackgroundStyle;
The style to use for the tab button background image

TabButtonCaptionStyle Source code

var private UIStyleReference TabButtonCaptionStyle;
The style to use for the tab button labels

Presentation

bAllowPagePreviews Source code

var(Presentation) config bool bAllowPagePreviews;
Controls whether tab buttons are allowed to enter the targeted state

TabButtonPadding[EUIOrientation.UIORIENT_MAX] Source code

var(Presentation) UIScreenValue_Extent TabButtonPadding[EUIOrientation.UIORIENT_MAX];
The amount of padding to apply to each button's text. The specified value will be evenly distributed to each sides of the button's caption.

TabButtonSize Source code

var(Presentation) UIScreenValue_Extent TabButtonSize;
The size to use for the tab buttons along the orientation of the TabDockFace (i.e. if tabs are docked at top or bottom, this determines the height of the tabs)

TabDockFace Source code

var(Presentation) EUIWidgetFace TabDockFace;
Controls which face of this UITabControl the tab buttons will be docked to @todo ronp - currently only top and bottom are properly supported. In order to support left & right, we'll probably need to rotate the buttons, but first need to figure out what the docking relationship should be in that case.

TabSizeMode Source code

var(Presentation) EUITabAutosizeType TabSizeMode;
The mode to use for sizing the tab buttons

Sound

ActivateTabCue Source code

var(Sound) name ActivateTabCue;
this sound is played when a new tab is activated

UITabControl

ActivePage Source code

var(UITabControl) editconst editinline transient UITabPage ActivePage;
Reference to the currently active page

Pages Source code

var(UITabControl) protected editinline editfixedsize editconst array<UITabPage> Pages;
the list of tab pages managed by this UITabControl

PendingPage Source code

var(UITabControl) editconst editinline transient UITabPage PendingPage;
Reference to the page which is about to become active.


Enumerations Detail

EUITabAutosizeType Source code

enum EUITabAutosizeType
{
TAST_Manual, TAST_Fill, TAST_Auto,
};
Different ways to adjust the sizes of tab buttons used in this control.


Delegates Detail

OnPageActivated Source code

delegate OnPageActivated ( UITabControl Sender, UITabPage NewlyActivePage, int PlayerIndex )
Called when a new page is activated.
@param Sender the tab control that activated the page
@param NewlyActivePage the page that was just activated
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.

OnPageInserted Source code

delegate OnPageInserted ( UITabControl Sender, UITabPage NewPage, int PlayerIndex )
Called when a new page is added to this tab control.
@param Sender the tab control that added the page
@param NewPage the page that was just added
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.

OnPageRemoved Source code

delegate OnPageRemoved ( UITabControl Sender, UITabPage OldPage, int PlayerIndex )
Called when a page is removed from this tab control.
@param Sender the tab control that removed the page
@param OldPage the page that was removed
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.


Functions Detail

ActivateBestTab Source code

function bool ActivateBestTab ( int PlayerIndex, optional bool bFocusPage=true, optional int StartIndex=0 ) )
Chooses the best tab to activate and activates it.
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player to activate this tab for.
@param bFocusPage specify FALSE if the tab control itself should maintain focus.
@param StartIndex if specified, starts the iteration at this index when searching for a new tab to activate.
@return TRUE if a tab was successfully activated.

ActivateNextPage Source code

event bool ActivateNextPage ( int PlayerIndex, optional bool bFocusPage=true, optional bool bAllowWrapping=true ) )
Activates the page immediately after the currently active page. If the currently active page is the last one, activates the first page.
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.
@param bFocusPage specify FALSE if the tab control itself should maintain focus.
@param bAllowWrapping specify false to prevent the first page from being activated if the currently active page is the last page in the stack.
@return TRUE if the next page was successfully activated.

ActivatePage Source code

event bool ActivatePage ( UITabPage PageToActivate, int PlayerIndex, optional bool bFocusPage=true ) )
Attempts to activate the specified tab page.
@param PageToActivate the tab page that should be become the active page
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player to activate this tab for.
@param bFocusPage specify FALSE if the tab control itself should maintain focus.
@return TRUE if the specified page was successfully activated.

ActivatePageByCaption Source code

function bool ActivatePageByCaption ( string PageCaption, int PlayerIndex, optional bool bFocusPage=true ) )
Attempts to activate the specified tab page.
@param PageToActivate the tab page that should be become the active page
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player to activate this tab for.
@param bFocusPage specify FALSE if the tab control itself should maintain focus.
@return TRUE if the specified page was successfully activated.

ActivatePreviousPage Source code

event bool ActivatePreviousPage ( int PlayerIndex, optional bool bFocusPage=true, optional bool bAllowWrapping=true ) )
Activates the page immediately before the currently active page. If the currently active page is the first one, activates the last page.
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.
@param bFocusPage specify FALSE if the tab control itself should maintain focus.
@param bAllowWrapping specify false to prevent the first page from being activated if the currently active page is the last page in the stack.
@return TRUE if the previous page was successfully activated.

AddedChild Source code

event AddedChild ( UIScreenObject WidgetOwner, UIObject NewChild ) )
Called immediately after a child has been added to this screen object. This version hooks up the OnClicked delegate for the newly added button.
@param WidgetOwner the screen object that the NewChild was added as a child for
@param NewChild the widget that was added

CreateTabPage Source code

native function UITabPage CreateTabPage ( class<UITabPage> TabPageClass, optional UITabPage PagePrefab )
Creates a new UITabPage of the specified class as well as its associated tab button.
@param TabPageClass the class to use for creating the tab page.
@param PagePrefab if specified, the prefab to use for creating this tab page.
@return a pointer to a new instance of the specified UITabPage class

EnableTabPage Source code

event bool EnableTabPage ( UITabPage PageToEnable, int PlayerIndex, bool bEnablePage=true, optional bool bActivatePage, optional bool bFocusPage=true ) )
Enables/disables a tab page and its associated tab button.
@param PageToEnable the page to enable/disable.
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this event.
@param bEnablePage controls whether the page should be enabled or disabled.
@param bActivatePage if true, the page will also be activated (only relevant if bEnablePage is true).
@param bFocusPage specify FALSE if the new page should not become the focused control (only relevant if bActivatePage is true)
@return TRUE if the page was successfully enabled/disabled.

FindPageIndexByButton Source code

function int FindPageIndexByButton ( UITabButton SearchButton ) )
Returns the index [into the Pages array] for the page which has the specified button.
@return INDEX_NONE if no page was found with the specified button.

FindPageIndexByCaption Source code

function int FindPageIndexByCaption ( string PageCaption, optional bool bMarkupString ) )
Returns the index [into the Pages array] for the page which has a button with the specified caption.
@param PageCaption the caption to use for searching for the page
@param bMarkupString if TRUE, searches for the button that has PageCaption as its data store binding.
@return INDEX_NONE if no page was found with the specified caption.

FindPageIndexByPageRef Source code

function int FindPageIndexByPageRef ( UITabPage SearchPage ) )
Returns the index [into the Pages array] for the specified page.
@return INDEX_NONE if the specified was None or isn't in the Pages array.

FindTargetedTab Source code

native final const function UITabButton FindTargetedTab ( int PlayerIndex ) con )
Returns a reference to the tab button which is currently in the Targeted state, or NULL if no buttons are in that state.

GetPageAtIndex Source code

native final const function UITabPage GetPageAtIndex ( int PageIndex ) con )
Returns a reference to the page at the specified index.

GetPageCount Source code

native final const function int GetPageCount ( ) con )
Returns the number of pages in this tab control.

InsertPage Source code

event bool InsertPage ( UITabPage PageToInsert, int PlayerIndex, int InsertIndex=INDEX_NONE, optional bool bActivateImmediately=true ) )
Inserts a page at the specified location.
@param PageToInsert the tab page to insert
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this action.
@param InsertIndex location to insert the page in the Pages array. If not specified, page is inserted at the end.
@param bActivateImmediately if TRUE, immediately activates the page and gives it focus
@return TRUE if the page was successfully added to this tab control

PostInitialize Source code

event PostInitialize ( ) )
Called after this screen object's children have been initialized

PrivateActivatePage Source code

protected event PrivateActivatePage ( UITabPage PageToActivate, int PlayerIndex ) )
Worker method for setting a new active page. Handles deactivating the previously active page and firing the appropriate notifications.
@param PageToActivate the tab page that should be become the active page
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player to activate this tab for.
@return TRUE if the specified page was successfully activated.

ProcessInputKey Source code

function bool ProcessInputKey ( const out InputEventParameters EventParms ) )
Provides a hook for unrealscript to respond to input using actual input key names (i.e. Left, Tab, etc.) Called when an input key event is received which this widget responds to and is in the correct state to process. The keys and states widgets receive input for is managed through the UI editor's key binding dialog (F8). This delegate is called BEFORE kismet is given a chance to process the input. Allows the user to use the left/right arrow keys to preview other panels if this widget is the globally focused control
@param EventParms information about the input event.
@return TRUE to indicate that this input key was processed; no further processing will occur on this input key event.

RemovePage Source code

event bool RemovePage ( UITabPage PageToRemove, int PlayerIndex ) )
Removes the specified page from this tab control's list of pages.
@param PageToRemove the tab page to remove
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this action.
@return TRUE if the page was successfully removed from the pages array.

ReplacePage Source code

event bool ReplacePage ( UITabPage ExistingPage, UITabPage NewPage, int PlayerIndex, optional bool bFocusPage=true ) )
Replaces one tab page with another one.
@param ExistingPage the tab page to replace; must be a page that is currently in this tab control's Pages array.
@param NewPage the tab page that will replace the existing one.
@param PlayerIndex the index [into the Engine.GamePlayers array] for the player that generated this action.
@param bFocusPage if TRUE, immediately activates the page and gives it focus
@return TRUE if the page was successfully replaced.

RequestLayoutUpdate Source code

native final function RequestLayoutUpdate ( )
Enables the bUpdateLayout flag and triggers a scene update to occur during the next frame.

TabButtonClicked Source code

function bool TabButtonClicked ( UIScreenObject EventObject, int PlayerIndex) )
Called when the user clicks on a tab button and releases the mouse. Begins activating the associated tab page.
@param EventObject Object that issued the event.
@param PlayerIndex Player that performed the action that issued the event.
@return return TRUE to prevent the kismet OnClick event from firing.


Defaultproperties

defaultproperties
{
   TabDockFace=UIFACE_Top
   TabSizeMode=TAST_Auto
   TabButtonSize=(Value=0.020000,ScaleType=UIEXTENTEVAL_PercentOwner,Orientation=UIORIENT_Vertical)
   TabButtonPadding(0)=(Value=0.020000,ScaleType=UIEXTENTEVAL_PercentOwner)
   TabButtonPadding(1)=(Value=0.020000,ScaleType=UIEXTENTEVAL_PercentOwner,Orientation=UIORIENT_Vertical)
   TabButtonBackgroundStyle=(DefaultStyleTag="TabButtonBackgroundStyle",RequiredStyleClass=Class'Engine.UIStyle_Image')
   TabButtonCaptionStyle=(DefaultStyleTag="DefaultTabButtonStringStyle",RequiredStyleClass=Class'Engine.UIStyle_Combo')
   bAllowPagePreviews=True
   bSupportsPrimaryStyle=False
   DefaultStates(2)=Class'Engine.UIState_Focused'
   DefaultStates(3)=Class'Engine.UIState_Pressed'
   DefaultStates(4)=Class'Engine.UIState_Active'
   Begin Object Class=UIComp_Event Name=WidgetEventComponent ObjName=WidgetEventComponent Archetype=UIComp_Event'Engine.Default__UIObject:WidgetEventComponent'
      ObjectArchetype=UIComp_Event'Engine.Default__UIObject:WidgetEventComponent'
   End Object
   EventProvider=WidgetEventComponent
   __OnRawInputKey__Delegate=Default__UITabControl.ProcessInputKey
   Name="Default__UITabControl"
   ObjectArchetype=UIObject'Engine.Default__UIObject'
}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: sk 18-3-2018 10:00:48.184 - Created with UnCodeX