![]() |
Gondwana Game Engine Development (master) - 2.6.1
Gondwana is a cross-platform 2.5D game and rendering engine written in C#/.NET 8. It provides fine-grained control over rendering, timing, and scene composition, with built-in support for parallax, z-ordering, pixel overhang, collision detection, and particle effects. Gondwana targets desktop and web platforms using SkiaSharp for graphics and pluggable audio backends for desktop and browser targets.
|
A command, check/radio item, or submenu owner in a menu dropdown. More...
Public Member Functions | |
| MenuItemWidget | SetEnabled (bool enabled) |
| Enables or disables the item. | |
| MenuItemWidget | SetChecked (bool isChecked) |
| Changes state without invoking callbacks. Checking a radio item clears its group peers. | |
| void | PerformClick () |
| Invokes an enabled command, even while its dropdown is closed, or opens its submenu. | |
| override void | Dispose () |
| Disposes the composite and every child it owns. | |
| Public Member Functions inherited from Gondwana.Widgets.WidgetBase | |
| virtual bool | HitTest (View view, Point screenPositionPx) |
| Determines whether the widget can be hit at the specified screen position within the specified view. | |
| virtual bool | HitTest (Point screenPositionPx) |
| Determines whether the widget can be hit at the specified screen position. | |
| WidgetBase | Show () |
| Shows the widget and registers it for input routing. | |
| WidgetBase | Hide () |
| Hides the widget and releases any routed input state. | |
| WidgetBase | Activate () |
| Activates the widget and brings it to the front of the input order. | |
| WidgetBase | Cancel () |
| Cancels the widget. | |
| Public Member Functions inherited from Gondwana.Drawing.Direct.DirectComposite | |
| DirectComposite (RenderSurfaceHostBase renderSurfaceHost, DirectDrawingMode mode, PointF anchor=default, string? nickname=null) | |
| Initializes a new instance of the DirectComposite class. | |
| Vector2 | GetPosition () |
| Gets the current composite anchor. | |
| void | SetPosition (Vector2 position) |
| Sets the composite anchor and repositions all children from their stored offsets. | |
| DirectComposite | SetPosition (float x, float y) |
| Sets the composite anchor and repositions all children from their stored offsets. | |
| virtual DirectComposite | Add (IDirectCompositeChild child, bool keepCurrentOffset=true, Vector2? explicitLocalOffsetPx=null) |
| Adds a composite-compatible direct drawable as a child. | |
| virtual DirectComposite | Remove (IDirectCompositeChild child) |
| Removes a child without disposing it. | |
| virtual DirectComposite | Clear () |
| Removes every child without disposing them. | |
| DirectComposite | SetLocalOffset (IDirectCompositeChild child, Vector2 newLocalOffsetPx) |
| Changes one child's local offset and reapplies its position. | |
| DirectComposite | SetZOrder (int zOrder) |
| Applies one Z-order to every descendant. | |
| DirectComposite | SetOpacity (float opacity) |
| Applies one opacity to every descendant. | |
| DirectComposite | SetIsVisible (bool visible) |
| Applies one visibility value to every descendant. | |
| DirectComposite | FadeTo (float targetOpacity, float durationSec) |
| Fades every descendant to the requested opacity. | |
| DirectComposite | FadeIn (float durationSec) |
| Fades every descendant to full opacity. | |
| DirectComposite | FadeOut (float durationSec) |
| Fades every descendant to zero opacity. | |
| RectangleF | GetDrawLocationScreen (View view) |
| Gets the union of all visible descendants as projected through a view. | |
| void | Draw (BackbufferBase backbuffer, RectangleF destRectScreen) |
| Performs no direct rendering because descendants render independently. | |
| virtual void | Update (long tick) |
| Advances composite movement. | |
Protected Member Functions | |||
| override void | OnPointerEnter (WidgetPointerEventArgs args) | ||
Called when a pointer enters the widget bounds.
| |||
| override void | OnPointerLeave (WidgetPointerEventArgs args) | ||
Called when a pointer leaves the widget bounds.
| |||
| override void | OnPointerDown (WidgetPointerEventArgs args) | ||
Called when a pointer press begins on the widget.
| |||
| override void | OnPointerUp (WidgetPointerEventArgs args) | ||
Called when a pointer press is released for the widget.
| |||
| override void | OnPointerClick (WidgetPointerEventArgs args) | ||
Called when a pointer click is dispatched to the widget.
| |||
| override void | OnKeyboardInput (WidgetKeyboardEventArgs args) | ||
Called when keyboard input is routed to the widget.
| |||
| Protected Member Functions inherited from Gondwana.Widgets.WidgetBase | |||
| WidgetBase (RenderSurfaceHostBase renderSurfaceHost, DirectDrawingMode mode, PointF anchor=default, string? nickname=null) | |||
| Initializes a new instance of the WidgetBase class. | |||
| virtual void | ProcessShown () | ||
| Performs processing when the widget is shown before notification callbacks are invoked. | |||
| virtual void | ProcessHidden () | ||
| Performs processing when the widget is hidden before notification callbacks are invoked. | |||
| virtual void | ProcessActivated () | ||
| Performs processing when the widget is activated before notification callbacks are invoked. | |||
| virtual void | ProcessCancelled () | ||
| Performs processing when the widget is cancelled before notification callbacks are invoked. | |||
| virtual void | ProcessPointerEnter (WidgetPointerEventArgs args) | ||
| Performs processing when a pointer enters the widget before notification callbacks are invoked. | |||
| virtual void | ProcessPointerLeave (WidgetPointerEventArgs args) | ||
| Performs processing when a pointer leaves the widget before notification callbacks are invoked. | |||
| virtual void | ProcessPointerDown (WidgetPointerEventArgs args) | ||
| Performs processing when a pointer press begins on the widget before notification callbacks are invoked. | |||
| virtual void | ProcessPointerMove (WidgetPointerEventArgs args) | ||
| Performs processing when pointer movement is routed to the widget before notification callbacks are invoked. | |||
| virtual void | ProcessPointerUp (WidgetPointerEventArgs args) | ||
| Performs processing when a pointer press is released for the widget before notification callbacks are invoked. | |||
| virtual void | ProcessFocusGained () | ||
| Performs processing when the widget gains focus before notification callbacks are invoked. | |||
| virtual void | ProcessFocusLost () | ||
| Performs processing when the widget loses focus before notification callbacks are invoked. | |||
| virtual void | ProcessKeyboardInput (WidgetKeyboardEventArgs args) | ||
| Performs processing when keyboard input is routed to the widget before notification callbacks are invoked. | |||
| virtual bool | ShouldDispatchPointerClick (WidgetPointerEventArgs args) | ||
| Determines whether a pointer-click event should be dispatched for the specified pointer event data. | |||
| virtual void | OnShown () | ||
| Called when the widget is shown. | |||
| virtual void | OnHidden () | ||
| Called when the widget is hidden. | |||
| virtual void | OnActivated () | ||
| Called when the widget is activated. | |||
| virtual void | OnCancelled () | ||
| Called when the widget is cancelled. | |||
| virtual void | OnPointerMove (WidgetPointerEventArgs args) | ||
| Called when pointer movement is routed to the widget. | |||
| virtual void | OnMouseWheel (WidgetMouseWheelEventArgs args) | ||
| Called when mouse-wheel input is routed to the widget. | |||
| virtual void | OnFocusGained () | ||
| Called when the widget gains focus. | |||
| virtual void | OnFocusLost () | ||
| Called when the widget loses focus. | |||
| Protected Member Functions inherited from Gondwana.Drawing.Direct.DirectComposite | |||
| virtual void | OnChildAdded (IDirectCompositeChild child) | ||
| Called after a child has been successfully added. | |||
| virtual void | OnChildRemoved (IDirectCompositeChild child) | ||
| Called after a child has been removed from the composite. | |||
Properties | |
| string? | Key [get] |
| Gets the immutable optional key, unique within the menu bar. | |
| string | Text [get] |
| Gets the command label. | |
| KeyGesture? | Shortcut [get] |
| Gets the executable gesture, if any. | |
| string | ShortcutText [get] |
| Gets gesture-generated text, or the legacy display-only shortcut text. | |
| char? | Mnemonic [get] |
| Gets the explicit, case-insensitive access character. | |
| SKImage? | Icon [get] |
| Gets the caller-owned image. Keep it alive until the item is disposed. | |
| DirectImage? | IconDrawing [get] |
| Gets the retained icon drawing, if configured. | |
| bool | IsCheckable [get] |
| Gets whether this item has check or radio state. | |
| bool | IsChecked [get] |
| Gets the current checked state. | |
| string? | RadioGroup [get] |
| Gets the radio group, scoped to the containing dropdown. | |
| MenuDropDownWidget? | SubMenu [get] |
| Gets the child dropdown, if this item owns a submenu. | |
| DirectRectangle | Background [get] |
| Gets the background drawing. | |
| TextBlock | Label [get] |
| Gets the label drawing. | |
| TextBlock | ShortcutLabel [get] |
| Gets the shortcut drawing. | |
| DirectDrawingMovableBase | Marker [get] |
| Gets the check/radio indicator drawing. | |
| DirectDrawingMovableBase | Arrow [get] |
| Gets the submenu arrow drawing. | |
| bool | IsEnabled [get] |
| Gets whether this item is enabled. | |
| bool | IsSelected [get] |
| Gets whether this item is selected by pointer or keyboard. | |
| Properties inherited from Gondwana.Widgets.WidgetBase | |
| bool | IsInputEnabled [get, set] |
| Gets or sets a value indicating whether the widget can participate in input routing. | |
| bool | IsPointerInputEnabled [get, set] |
| Gets or sets a value indicating whether the widget can receive pointer input. | |
| bool | IsKeyboardInputEnabled [get, set] |
| Gets or sets a value indicating whether the widget can receive keyboard input. | |
| bool | CanReceiveFocus [get, set] |
| Gets or sets a value indicating whether the widget can receive keyboard focus. | |
| bool | IsFocused [get, set] |
| Gets a value indicating whether the widget currently has keyboard focus. | |
| Properties inherited from Gondwana.Drawing.Direct.DirectComposite | |
| Guid | Id = Guid.NewGuid() [get] |
| Gets the unique identifier of the composite. | |
| string? | Nickname [get] |
| Gets the optional diagnostic nickname of the composite. | |
| RenderSurfaceHostBase | RenderSurfaceHost [get] |
| Gets the render surface host shared by the composite and its children. | |
| DirectDrawingMode | Mode [get] |
| Gets the coordinate mode shared by the composite and its children. | |
| SceneLayer? | SceneLayer [get] |
| Gets the scene layer shared by all children in scene-layer mode. | |
| View? | View [get] |
| Gets the view shared by all children in view mode. | |
| ReadOnlyCollection< IDirectCompositeChild > | Children [get] |
| Gets the children owned by the composite. | |
| MovementController | Movement [get] |
| Gets the movement controller used to move the composite anchor. | |
| MovementSpace | PositionSpace [get] |
| Gets the coordinate space used by the movement controller. | |
| bool | Visible [get, set] |
| Gets or sets the visibility of all descendants. | |
| int | ZOrder [get] |
| Gets the composite Z-order. | |
| Rectangle | ScreenBounds [get] |
| Gets the union of all visible descendants' screen-space bounds. | |
| Rectangle | WorldBounds [get] |
| Gets the union of all visible descendants' world-space bounds. | |
Events | |
| Action< MenuItemWidget >? | Invoked |
| Occurs after state changes and hierarchy closure, before the command callback. | |
| Events inherited from Gondwana.Widgets.WidgetBase | |
| Action? | Shown |
| Occurs when the widget is shown. | |
| Action? | Hidden |
| Occurs when the widget is hidden. | |
| Action? | Activated |
| Occurs when the widget is activated. | |
| Action? | Cancelled |
| Occurs when the widget is cancelled. | |
| Action< WidgetPointerEventArgs >? | PointerEnter |
| Occurs when a pointer enters the widget bounds. | |
| Action< WidgetPointerEventArgs >? | PointerLeave |
| Occurs when a pointer leaves the widget bounds. | |
| Action< WidgetPointerEventArgs >? | PointerDown |
| Occurs when a pointer button or touch press begins on the widget. | |
| Action< WidgetPointerEventArgs >? | PointerMove |
| Occurs when a pointer moves while routed to the widget. | |
| Action< WidgetPointerEventArgs >? | PointerUp |
| Occurs when a pointer button or touch press is released for the widget. | |
| Action< WidgetPointerEventArgs >? | PointerClick |
| Occurs when a pointer press and release completes as a click on the widget. | |
| Action< WidgetMouseWheelEventArgs >? | MouseWheel |
| Occurs when mouse-wheel input is routed to the widget while the pointer is over it. | |
| Action? | FocusGained |
| Occurs when the widget gains keyboard focus. | |
| Action? | FocusLost |
| Occurs when the widget loses keyboard focus. | |
| Action< WidgetKeyboardEventArgs >? | KeyboardInput |
| Occurs when keyboard input is routed to the widget. | |
| Events inherited from Gondwana.Drawing.Direct.DirectComposite | |
| EventHandler< IDirectDrawable >? | Disposing |
| Occurs when the composite is being disposed. | |
| Events inherited from Gondwana.Drawing.Direct.IDirectDrawable | |
| EventHandler< IDirectDrawable >? | Disposing |
| Occurs when the object is being disposed. | |
A command, check/radio item, or submenu owner in a menu dropdown.
Definition at line 12 of file MenuItemWidget.cs.
|
virtual |
Disposes the composite and every child it owns.
Reimplemented from Gondwana.Drawing.Direct.DirectComposite.
Definition at line 212 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when keyboard input is routed to the widget.
| args | The keyboard event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 264 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when a pointer click is dispatched to the widget.
| args | The pointer event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 255 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when a pointer press begins on the widget.
| args | The pointer event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 241 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when a pointer enters the widget bounds.
| args | The pointer event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 223 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when a pointer leaves the widget bounds.
| args | The pointer event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 233 of file MenuItemWidget.cs.
|
protectedvirtual |
Called when a pointer press is released for the widget.
| args | The pointer event data. |
Reimplemented from Gondwana.Widgets.WidgetBase.
Definition at line 248 of file MenuItemWidget.cs.
| void Gondwana.Widgets.Menus.MenuItemWidget.PerformClick | ( | ) |
Invokes an enabled command, even while its dropdown is closed, or opens its submenu.
The bar and ancestor items must be available. State changes and menu closure precede callbacks.
Definition at line 141 of file MenuItemWidget.cs.
| MenuItemWidget Gondwana.Widgets.Menus.MenuItemWidget.SetChecked | ( | bool | isChecked | ) |
Changes state without invoking callbacks. Checking a radio item clears its group peers.
| isChecked | Whether the control starts or becomes checked. |
Definition at line 129 of file MenuItemWidget.cs.
| MenuItemWidget Gondwana.Widgets.Menus.MenuItemWidget.SetEnabled | ( | bool | enabled | ) |
Enables or disables the item.
| enabled | Whether the feature is enabled. |
Definition at line 116 of file MenuItemWidget.cs.
|
get |
Gets the submenu arrow drawing.
Definition at line 106 of file MenuItemWidget.cs.
|
get |
Gets the background drawing.
Definition at line 98 of file MenuItemWidget.cs.
|
get |
Gets the caller-owned image. Keep it alive until the item is disposed.
Definition at line 86 of file MenuItemWidget.cs.
|
get |
Gets the retained icon drawing, if configured.
Definition at line 88 of file MenuItemWidget.cs.
|
get |
Gets whether this item has check or radio state.
Definition at line 90 of file MenuItemWidget.cs.
|
get |
Gets the current checked state.
Definition at line 92 of file MenuItemWidget.cs.
|
get |
Gets whether this item is enabled.
Definition at line 108 of file MenuItemWidget.cs.
|
get |
Gets whether this item is selected by pointer or keyboard.
Definition at line 110 of file MenuItemWidget.cs.
|
get |
Gets the immutable optional key, unique within the menu bar.
Definition at line 76 of file MenuItemWidget.cs.
|
get |
Gets the label drawing.
Definition at line 100 of file MenuItemWidget.cs.
|
get |
Gets the check/radio indicator drawing.
Definition at line 104 of file MenuItemWidget.cs.
|
get |
Gets the explicit, case-insensitive access character.
Definition at line 84 of file MenuItemWidget.cs.
|
get |
Gets the radio group, scoped to the containing dropdown.
Definition at line 94 of file MenuItemWidget.cs.
|
get |
Gets the executable gesture, if any.
Definition at line 80 of file MenuItemWidget.cs.
|
get |
Gets the shortcut drawing.
Definition at line 102 of file MenuItemWidget.cs.
|
get |
Gets gesture-generated text, or the legacy display-only shortcut text.
Definition at line 82 of file MenuItemWidget.cs.
|
get |
Gets the child dropdown, if this item owns a submenu.
Definition at line 96 of file MenuItemWidget.cs.
|
get |
Gets the command label.
Definition at line 78 of file MenuItemWidget.cs.
| Action<MenuItemWidget>? Gondwana.Widgets.Menus.MenuItemWidget.Invoked |
Occurs after state changes and hierarchy closure, before the command callback.
Definition at line 27 of file MenuItemWidget.cs.