eDriven Framework API
InteractiveComponent Class
NamespaceseDriven.Gui.ComponentsInteractiveComponent
eDriven Framework API
Declaration Syntax
C#Visual BasicVisual C++
public abstract class InteractiveComponent : InvalidationManagerClient, 
	IFocusComponent, IFocusManagerClient
Public MustInherit Class InteractiveComponent _
	Inherits InvalidationManagerClient _
	Implements IFocusComponent, IFocusManagerClient
public ref class InteractiveComponent abstract : public InvalidationManagerClient, 
	IFocusComponent, IFocusManagerClient
Members
All MembersConstructorsMethodsPropertiesFields



IconMemberDescription
InteractiveComponent()()()()
Initializes a new instance of the InteractiveComponent class

_depth (Inherited from DisplayListMember.)
ActionKeys
The collection of KeyCode which should fire action events (like PRESS event of button when in focus)

AddChild(DisplayListMember) (Inherited from DisplayObjectContainer.)
AddChildAt(DisplayListMember, Int32) (Inherited from DisplayObjectContainer.)
AddEventListener(String, EventHandler)
AddEventListener Overload Assumes that useCapturePhase is false
(Inherited from DisplayListMember.)
AddEventListener(String, EventHandler, EventPhase, Int32)
Adds the event listener
(Inherited from EventDispatcher.)
AddEventListener(String, EventHandler, EventPhase)
Adds the event listener
(Inherited from EventDispatcher.)
AddEventListener(String, EventHandler, Int32)
Adds the event listener
(Inherited from EventDispatcher.)
Alpha
Alpha
(Inherited from DisplayObject.)
AutoDisposeData (Inherited from DisplayObject.)
AutoUpdateDrawingList
If true, the drawing list will update after each child addition or removal The process of updating is being optimized by the Container However, with DisplayObjectContainer it is not beacuse there are no invalidation methods We might choose to optimize the process, set this to false and call the InvalidateDrawingList() manually
(Inherited from DisplayObjectContainer.)
Bounds
Bounds relative to Owner (bakes rect)
(Inherited from DisplayObject.)
BringToFront()()()()
Bring to front
(Inherited from DisplayListMember.)
CanSkipMeasurement()()()() (Inherited from InvalidationManagerClient.)
Children
The child components of the container
(Inherited from DisplayObjectContainer.)
ChildrenCreated()()()()
Runs after all the children have been created
(Inherited from InvalidationManagerClient.)
Click
ColorEnd()()()() (Inherited from DisplayObject.)
ColorStart()()()() (Inherited from DisplayObject.)
CommitProperties()()()() (Overrides InvalidationManagerClient.CommitProperties()()()().)
Contains(DisplayListMember)
Returns true if child is the descendant of the component or the component itself Non-exclusive variant
(Inherited from DisplayObjectContainer.)
Contains(DisplayListMember, Boolean) (Inherited from DisplayObjectContainer.)
ContainsPoint(Point, Boolean)
The place where the developer could implement the custom logic after the child removal
(Inherited from DisplayObjectContainer.)
Content
GUIContent This is the content used by Unity when rendering pieces of GUI GUIContent consists of icon and label
(Inherited from DisplayObject.)
CreateChildren()()()()
Creates component's children
(Inherited from InvalidationManagerClient.)
Created
Is component created

CreationComplete()()()()
Runs after the creation hase been completed
(Inherited from InvalidationManagerClient.)
Data
The arbitrary data attached to this piece of GUI
(Inherited from DisplayObject.)
DebugMode
DecreaseSkipFrameCount()()()() (Inherited from DisplayObject.)
Defer(DisplayObject..::..DeferedCall, Int32, array<Object>[]()[][])
Defers the function call for a given number of frames
(Inherited from DisplayObject.)
Depth
Crutial for fixing ScrollView and TextField click-throughs
(Inherited from DisplayListMember.)
DispatchEvent(Event, Boolean)
Dispatches an event with the option of late processing (immediate = TRUE/FALSE)
(Inherited from EventDispatcher.)
DispatchEvent(Event)
Dispatches an event immediatelly
(Inherited from EventDispatcher.)
DispatchPropertyChangeEvent(String, Object, Object) (Inherited from InvalidationManagerClient.)
DispatchStyleChanges
Should this component dispatch style changes events (optimization)

Dispose()()()()
Releases all resources used by the InteractiveComponent
(Overrides DisplayObject.Dispose()()()().)
DoubleClick
Draw()()()() (Inherited from DisplayObject.)
DrawFocus(Boolean)

Enabled
The component enabled/disabled state

EnqueueEvent(Event) (Inherited from InvalidationManagerClient.)
Equals(Object)
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
ExecuteListeners(Event)
Executes event handlers listening for a particular event type
(Inherited from EventDispatcher.)
ExplicitHeight
The explicit height of the component (in pixels)
When set, it resets PercentHeight property to null
(Inherited from InvalidationManagerClient.)
ExplicitMaxHeight
Explicit max height
(Inherited from InvalidationManagerClient.)
ExplicitMaxWidth
Explicit max width
(Inherited from InvalidationManagerClient.)
ExplicitMinHeight
Explicit min height
(Inherited from InvalidationManagerClient.)
ExplicitMinWidth
Explicit min width
(Inherited from InvalidationManagerClient.)
ExplicitWidth
The explicit width of the component (in pixels)
When set, it resets PercentWidth property to null
(Inherited from InvalidationManagerClient.)
Finalize()()()()
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
FirstShow
The event that fires when the component is shown for the first time
(Inherited from DisplayObject.)
FOCUS_OUT_UID
FocusEnabled
Is the component is set to focus via FocusManager Handled by Component in click processing if ProcessClicks is true

FocusIn
FocusInHandler(Event)
Executes when the component focus in is requested

FocusOut
FocusOutHandler(Event)
Executes when the component focus out is requested

FocusRender()()()() (Overrides DisplayObject.FocusRender()()()().)
FocusRenderSignal
The signal that emits just before the focus render
(Inherited from DisplayObject.)
FocusRouting
Focus routing

GetChildAt(Int32) (Inherited from DisplayObjectContainer.)
GetChildComponent(String)
Finds a child component by ID

GetChildIndex(DisplayListMember) (Inherited from DisplayObjectContainer.)
GetExplicitOrMeasuredHeight()()()()
Returns explicit height if set. Else returns the measured height
(Inherited from InvalidationManagerClient.)
GetExplicitOrMeasuredWidth()()()()
Returns explicit width if set. Else returns the measured width
(Inherited from InvalidationManagerClient.)
GetHashCode()()()()
Serves as a hash function for a particular type.
(Inherited from Object.)
GetType()()()()
Gets the type of the current instance.
(Inherited from Object.)
GlobalToLocal(Point) (Inherited from DisplayListMember.)
GlobalToLocal(Rectangle) (Inherited from DisplayListMember.)
HasBubblingEventListener(String)
IMPORTANT Here we plug in the event traverser for GUI components
(Inherited from DisplayListMember.)
HasChild(DisplayListMember) (Inherited from DisplayObjectContainer.)
HasEventListener(String)
Returns true if EventDispatcher has any registered listeners for a specific type and phase
(Inherited from EventDispatcher.)
HasExplicitFocus
Does a component have an explicit focus

HasFocus
Does a component have focus (including its children)

HasFocusableChildren

Height (Inherited from InvalidationManagerClient.)
HideHandler
The event that fires when the component is hidden
(Inherited from DisplayObject.)
HighlightOnFocus
Does a component highlight when focused

HotControlId
This method is run each time that any style has been changed

Id
Component ID used by developer for locating the component via ComponentManager
Must be unique in the application
(Overrides DisplayListMember.Id.)
IncludeInLayout
Is component processed in LayoutChildren()?
(Inherited from InvalidationManagerClient.)
InitializationComplete()()()()
Runs after the initialization has been completed
(Inherited from InvalidationManagerClient.)
Initialize()()()()
Initializes the component Called by the parent upon first addition At this state all the properties have been set Sets child's Owner and reference to Stage Sets Skin
(Inherited from InvalidationManagerClient.)
InitializeContent()()()() (Overrides DisplayObject.InitializeContent()()()().)
Initialized
A flag that determines if an object has been through all three phases of layout: commitment, measurement, and layout (provided that any were required)
(Inherited from InvalidationManagerClient.)
InitializeStyle()()()()
Initializes Style
(Inherited from DisplayObject.)
InitTransform()()()() (Inherited from InvalidationManagerClient.)
InternalStructureBuilt
Is the component initialized (added to parent for the first time)
(Inherited from InvalidationManagerClient.)
InvalidateDisplayList()()()()
A lifecycle method Invalidates layout
(Inherited from InvalidationManagerClient.)
InvalidateParentSizeAndDisplayList()()()()
Invalidates parent's size and layout if parent exists Should be internal, but cannot because of the interface
(Inherited from InvalidationManagerClient.)
InvalidateProperties()()()()
A lifecycle method Invalidates properties
(Inherited from InvalidationManagerClient.)
InvalidateSize()()()()
A lifecycle method Invalidates size
(Inherited from InvalidationManagerClient.)
InvalidateTransform()()()()
A lifecycle method Invalidates position
(Inherited from InvalidationManagerClient.)
IsActionKey(KeyCode)
Check if supplied key is registered as action key

IsDefaultPrevented(String, Boolean)
Exposes the cancelable event to the outside if there are listeners for that event type If default prevented, returns false If not, returns true
(Inherited from EventDispatcher.)
IsDefaultPrevented(String)
No-bubbling version
(Inherited from EventDispatcher.)
IsFocusable
IsInFocus
IsOurFocus(DisplayObject)
KeyDown
KeyDownFilter
The collection of KeyCode which should fire the KeyDown If the collection is empty, no filter is applied

KeyDownHandler(Event)
KeyDown handler NOTE: We do the filtering here (in the local handler), but dispatching happens always (when component in focus) - no metter of filtering This is needed for event bubbling (because perhaps parent component wants to react on key that is filtered by this component)

KeyUp
KeyUpFilter
The collection of KeyCode which should fire the KeyUp If the collection is empty, no filter is applied

KeyUpHandler(Event)
KeyUp handler NOTE: We do the filtering here (in the local handler), but dispatching happens always (when component in focus) - no metter of filtering This is needed for event bubbling (because perhaps parent component wants to react on key that is filtered by this component)

LocalRenderingRect
The rendering Rect This is the optimization technique: since we are using Rectangle class for internal calculations, and Unity uses Rects to render components, To avoid constant conversions from Rectangle to Rect, we are converting only when needed (when coordinates or size change) We update this variable on change
(Inherited from DisplayObject.)
LocalToGlobal(Point)
Overriding Y If parent is container, then the position internals will be updated via InvalidationManager But if parent is not a container (it's only a component, like ComboBox) we have to update position internals here
(Inherited from DisplayListMember.)
LocalToGlobal(Rectangle) (Inherited from DisplayListMember.)
MappedToAnyPhase(String, EventHandler, EventPhase)
Returns true if handler is mapped to any of the specified phases
(Inherited from EventDispatcher.)
MaxHeight
Maximal Height for percentage-based component
(Inherited from InvalidationManagerClient.)
MaxWidth
Maximal Width for percentage-based component
(Inherited from InvalidationManagerClient.)
Measure()()()() (Inherited from InvalidationManagerClient.)
MeasuredHeight
Measured height Set by the measuring process
(Inherited from InvalidationManagerClient.)
MeasuredMinHeight
Measured min height The min height of the component Set by the measuring process
(Inherited from InvalidationManagerClient.)
MeasuredMinWidth
Measured min width The min width of the component Set by the measuring process
(Inherited from InvalidationManagerClient.)
MeasuredWidth
Measured width Set by the measuring process
(Inherited from InvalidationManagerClient.)
MemberwiseClone()()()()
Creates a shallow copy of the current Object.
(Inherited from Object.)
MiddleClick
MiddleDoubleClick
MiddleMouseDown
MiddleMouseUp
MinHeight
Minimal height
(Inherited from InvalidationManagerClient.)
MinWidth
Minimal width
(Inherited from InvalidationManagerClient.)
MouseChildren
Should the children of this container be tested for mouse events
(Inherited from DisplayObjectContainer.)
MouseDown
MouseDownOutside
MouseEnabled
Is mouse position processed when moved Use wisely - performance costing

MouseFocusEnabled
Whether the component can receive focus when clicked on

MouseMove
MouseOut
MouseOver
MouseUp
MouseWheel
MouseWheelOutside
Move(Single, Single)
Moves the component to a position specified with (x, y)
(Inherited from InvalidationManagerClient.)
Move(Point)
Moves the component to a specified position
(Inherited from InvalidationManagerClient.)
NestLevel
NestLevel
Used for invalidation: this is a property of the DisplayObject class because DisplayObjects
could also have InvalidationManagerClients as children, so they must know how to pass the NestLevel to these children
(Inherited from InvalidationManagerClient.)
NumberOfChildren
Number of children
(Inherited from DisplayObjectContainer.)
OnLayoutUpdateComplete()()()() (Inherited from InvalidationManagerClient.)
OptimizeMeasureCalls
The flag is telling if the measurement optimization is turned on If it is, then if CanSkipMeasurement() returns true (because of the explicit sizes) the component never gets measured However, when changing the component dimensions from the outside (using Resizable for instance) we would like to know min/max dimensions to know how much we can contract/expand Thus we should switch this optimization off for this kind of components NOTE: true by default
(Inherited from InvalidationManagerClient.)
OverlayRender()()()()
Post-draw logic Renders component overlay layer
(Inherited from DisplayObject.)
OverlayRenderSignal
The signal that emits just before the overlay render
(Inherited from DisplayObject.)
Owner
The owner of this component
(Inherited from DisplayListMember.)
Parent
A parent container
Set by framework
Has to be set for every component on stage except Stage
(Inherited from DisplayListMember.)
PercentHeight
The percent height of the component (in pixels)
When set, it resets ExplicitHeight property to null
(Inherited from InvalidationManagerClient.)
PercentWidth
The percent height of the component (in pixels)
When set, it resets ExplicitHeight property to null
(Inherited from InvalidationManagerClient.)
Plugins
The list of plugins
(Inherited from InvalidationManagerClient.)
Position
Position
(Inherited from DisplayObject.)
PostRender()()()()
Post-draw logic Switching off Alpha, scrollbars and clipping
(Inherited from DisplayObject.)
PostRenderSignal
The signal that emits after render
(Inherited from DisplayObject.)
PreRender()()()() (Overrides DisplayObject.PreRender()()()().)
PreRenderSignal
The signal that emits before before render
(Inherited from DisplayObject.)
ProcessEvent(Event)
Override of processing events
(Inherited from DisplayListMember.)
ProcessKeys
Processes key up/downs Use wisely - performance costing

ProcessQueue()()()() (Inherited from InvalidationManagerClient.)
QAddChild(DisplayListMember) (Inherited from DisplayObjectContainer.)
QAddChildAt(DisplayListMember, Int32)
The main add child method
(Inherited from DisplayObjectContainer.)
QChildren
(Inherited from DisplayObjectContainer.)
QContains(DisplayListMember) (Inherited from DisplayObjectContainer.)
QContains(DisplayListMember, Boolean)
Returns true if child is the descendant of the component or the component itself
(Inherited from DisplayObjectContainer.)
QDrawingList
The list of components ordered by child Depth
Used for rendering
The rendering order might have different than layout order
(Inherited from DisplayObjectContainer.)
QGetChildAt(Int32)
(Inherited from DisplayObjectContainer.)
QGetChildIndex(DisplayListMember) (Inherited from DisplayObjectContainer.)
QHasChild(DisplayListMember)
Checks if this is a Owner of a component
(Inherited from DisplayObjectContainer.)
QNumberOfChildren
(Inherited from DisplayObjectContainer.)
QRemoveAllChildren()()()() (Inherited from DisplayObjectContainer.)
QRemoveChild(DisplayListMember) (Inherited from DisplayObjectContainer.)
QRemoveChildAt(Int32) (Inherited from DisplayObjectContainer.)
QSetChildIndex(DisplayListMember, Int32)
Sets child index
(Inherited from DisplayObjectContainer.)
QSwapChildren(DisplayListMember, DisplayListMember)
(Inherited from DisplayObjectContainer.)
QVisible
Note: never make this property virtual and override it This property reflects the true nature of component visibility This is important because the components are being hidden during the instantiation, and shown on creation complete This is the way to find out the desired visibility state (some of them might want to be hidden)
(Inherited from DisplayObject.)
RegisterComponent()()()()
RemoveAllChildren()()()() (Inherited from DisplayObjectContainer.)
RemoveAllListeners(String)
Removes all listeners for the spacified event type (both capture and bubbling phase)
(Inherited from EventDispatcher.)
RemoveAllListeners(String, EventPhase)
Removes all listeners for the spacified event type and phases
(Inherited from EventDispatcher.)
RemoveChild(DisplayListMember) (Inherited from DisplayObjectContainer.)
RemoveChildAt(Int32) (Inherited from DisplayObjectContainer.)
RemoveEventListener(String, EventHandler) (Inherited from DisplayListMember.)
RemoveEventListener(String, EventHandler, EventPhase)
Removes the event listener
(Inherited from EventDispatcher.)
Render()()()() (Inherited from DisplayObjectContainer.)
RenderChildren()()()()
Renders container's children
(Inherited from DisplayObjectContainer.)
RenderDoneSignal
The signal that emits after the render is complete
(Inherited from DisplayObject.)
RenderingRect
The rendering Rect This is the optimization technique: since we are using Rectangle class for internal calculations, and Unity uses Rects to render components, To avoid constant conversions from Rectangle to Rect, we are converting only when needed (when coordinates or size change) We update this variable on change
(Inherited from DisplayObject.)
RenderSignal
The signal that emits before render
(Inherited from DisplayObject.)
ResizeWithContent
A flag indicating if component size depends of the content size
(Inherited from InvalidationManagerClient.)
ResizeWithStyleBackground
A flag indicating if component size depends of the style background size
(Inherited from InvalidationManagerClient.)
RightClick
RightDoubleClick
RightMouseDown
RightMouseUp
RollOut
RollOver
Rotation
Rotation The pivot point is the center of the component
(Inherited from DisplayObject.)
RotationEnd()()()() (Inherited from DisplayObject.)
RotationPivot
Rotation pivot
(Inherited from DisplayObject.)
RotationStart()()()() (Inherited from DisplayObject.)
Scale
Scale The pivot point is the center of the component
(Inherited from DisplayObject.)
ScaleEnd()()()() (Inherited from DisplayObject.)
ScaleStart()()()() (Inherited from DisplayObject.)
SendToBack()()()()
Send to back
(Inherited from DisplayListMember.)
SetActualSize(Single, Single)
Sets the temporary size
(Inherited from InvalidationManagerClient.)
SetChildIndex(DisplayListMember, Int32)
Sets child index
(Inherited from DisplayObjectContainer.)
SetFocus()()()()
Sets component to focus

SetLayoutBoundsPosition(Single, Single)
(Inherited from InvalidationManagerClient.)
SetLayoutBoundsSize(Nullable<(Of <<'(Single>)>>), Nullable<(Of <<'(Single>)>>))
(Inherited from InvalidationManagerClient.)
SetVisible(Boolean, Boolean) (Inherited from InvalidationManagerClient.)
ShowHandler
The event that fires when the component is shown
(Inherited from DisplayObject.)
SkipRender(Int32)
This is the approach of skipping the rendering process for N frames Needed by effects which start tweening one frame too late TODO: Investigate!
(Inherited from DisplayObject.)
Stage (Inherited from DisplayObjectContainer.)
SupressEventPropagation
Does this suppress event propagation to background (other stages or 3D)

SwapChildren(DisplayListMember, DisplayListMember) (Inherited from DisplayObjectContainer.)
TabFocusEnabled
Whether the component can receive focus via the TAB key

TabIndex

Tooltip (Overrides DisplayObject.Tooltip.)
ToString()()()() (Inherited from DisplayListMember.)
Transform (Inherited from DisplayObject.)
TriggerEffect(String)
Plays the styled effect if such style set
(Inherited from InvalidationManagerClient.)
TriggerEffect(String, Object)
Note: this has to go here because the container should be able to run children effects And we don't want to use too much castinh in the code
(Inherited from DisplayListMember.)
UpdateDisplayList(Single, Single)
A lifecycle method Updates layout Top to bottom
(Inherited from InvalidationManagerClient.)
ValidateDisplayList()()()()
Validates layout A lifecycle method Top-down
(Inherited from InvalidationManagerClient.)
ValidateNow()()()()
A lifecycle method Validates all (properties, position, size and layout)
(Inherited from InvalidationManagerClient.)
ValidateProperties()()()()
A lifecycle method Validates properties Top-down
(Inherited from InvalidationManagerClient.)
ValidateSize(Boolean)
Validates size layout A lifecycle method Bottom-up
(Inherited from InvalidationManagerClient.)
ValidateTransform()()()()
Validates position A lifecycle method Top-down
(Inherited from InvalidationManagerClient.)
Visible (Overrides InvalidationManagerClient.Visible.)
Width (Inherited from InvalidationManagerClient.)
X
X coordinate
(Inherited from InvalidationManagerClient.)
Y
Y coordinate
(Inherited from InvalidationManagerClient.)
Inheritance Hierarchy

Assembly: eDriven.Gui (Module: eDriven.Gui) Version: 2.0.1.0 (2.0.1.0)