A generic widget.
Called when this widget is left clicked (on mouse release).
Called when this widget is left clicked (on mouse press).
Called when this widget is clicked with the mouse wheel (on mouse press).
Called when mouse is released over this widget.
Called when this widget is right clicked (on mouse release).
Called when this widget is right clicked (on mouse press).
Override the widget's paint process.
Return true
to prevent the default paint action, which is to call Widget.OnPaint.
Cursor override for this widget.
If true then this widget has a debug mode that can be activated
Makes the widget read only. I.e. You can copy text of a text entry, but can't edit it. Applies retroactively to all children.
Accept drag and dropping shit on us
Enable debug mode on this widget.
Delete this widget when close is pressed
The scale this widget is using (multiplying Size by this value gives the actual native size)
Makes the widget not interactable. This is also usually be reflected visually by the widget. The widget will not process any keyboard or mouse inputs. Applies retroactively to all children.
Shortcut, sets Widget.MinimumHeight and Widget.MaximumHeight
Shortcut, sets Widget.MinimumWidth and Widget.MaximumWidth
Sets the focus mode for this widget. This determines both how it will get focus and whether it will receive keyboard input.
Utility to interact with a widget's width - use Size where possible
Whether something is being dragged over this widget.
Whether this widget can be drag and dropped onto other widgets.
Whether this widget has keyboard focus.
Whether this widget is currently being pressed down or not.
The widget's internal layout, if any. Must be created via SetLayout or otherwise set beforehand.
This widgets height should never be larger than the given value.
Sets Widget.MaximumWidth and Widget.MaximumHeight simultaneously.
This widgets width should never be larger than the given value.
This widgets height should never be smaller than the given value.
Sets Widget.MinimumWidth and Widget.MinimumHeight simultaneously.
This widgets width should never be smaller than the given value.
Name of the widget, usually for debugging purposes.
Parent widget. If non null, position of this widget will be relative to the parent widget. Certain events will also propagate to the parent widget if unhandled.
Returns the geometry of the screen this widget is currently on.
Position of the widget relative to the monitor's top left corner.
This panel's rect in screen coordinates
If set, hovering over this widget will set the text of a Editor.StatusBar of the window the widget belongs to.
If set, this text will be displayed after a certain delay of hovering this widget with the mouse cursor.
If true, Update will call
Whether this widget is visible or not.
Utility to interact with a widget's width - use Size where possible
If a window - will close
Called to make sure all child panels are in correct positions and have correct sizes. This is typically called when the size of this widget changes, but there are other cases as well.
Make this widget not visible.
Called when the widget loses keyboard focus.
Called when a window is about to be closed.
Called when a window is closed.
Called after Widget.OnMouseRightClick, for the purposes of opening a context menu.
Called when the widget was double clicked with any mouse button.
Something was dragged and dropped on this widget. Apply the data here, if its valid.
Requires Widget.AcceptDrops to function.
Cursor with drag and drop data moved on this widget.
Requires Widget.AcceptDrops to function.
Cursor with drag and drop data left the bounds of this widget.
Requires Widget.AcceptDrops to function.
Called when dragging. Widget.IsDraggable should be true.
Called when the widget gains keyboard focus.
A key has been pressed. Your widget needs keyboard focus for this to be called - see FocusMode.
A key has been released.
Called when this widget is left clicked (on mouse release).
Mouse cursor entered the bounds of this widget.
Mouse cursor exited the bounds of this widget.
Called when the mouse cursor is moved while being over this widget.
Called when mouse is pressed over this widget.
Called when mouse is released over this widget.
Called when this widget is right clicked (on mouse release).
Called when the widget was moved.
Override to custom paint your widget, for example using Editor.Paint. Can be overwritten by Widget.OnPaintOverride.
Called when the widgets' size was changed.
A shortcut has been activated. This is called on the focused control so they can override it.
Called when the visibility of this widget changes.
Mouse wheel was scrolled while the mouse cursor was over this widget.
Make this widget visible.
Should return the size this widget really wants to be if it can its way. The default is that you don't care - and just to return whatever the base value is.
Tell this widget that shit changed and it needs to redraw
Adjusts the size of the widget to fit its contents.
Clear keyboard focus from this widget.
Remove a context on this widget. This will NOT remove contexts set from parent objects.
Reposition this widget to ensure it is within the given rectangle.
Constrain this widget to the screen it's currently on.
Destroys all child widgets of this widget.
Calling this will set the WS_EX_NOACTIVATE flag on the window internally, which will stop it taking focus away from other windows.
Transform coordinates relative to the monitors's top left corner, to coordinates relative to panel's top left corner.
Find a context on this widget. If not found, look at the parent. If not found, look at the parent. This is useful for passing information down to child widgets without any effort.
Returns true if this is a modal window. This means it will appear on top of everything and block input to everything else.
Lowers the widget to the bottom of the parent widget's stack. After this call the widget will be visually behind (and therefore obscured by) any overlapping sibling widgets.
Raises this widget to the top of the parent widget's stack. After this call the widget will be visually in front of any overlapping sibling widgets.
Restore position and size previously stored via Widget.SaveGeometry.
Serialize position and size of this widget to a string, which can then be passed to Widget.RestoreGeometry.
Call every frame/tick to redraw this Widget on content change
Set a context value on this widget. This context will be available to its children via FindContext.
Set this window to be modal. This means it will appear on top of everything and block input to everything else.
Directly set CSS style sheet(s) for this widget. Same format as a .css file.
Set a file to load CSS for this widget from.
When a value on this widget changed due to user input (ie, checking a box, editing a form) this is called, which sends a signal up the parent widgets.
Called when the visibility of this widget changes.
Information about a widget drag and drop event.
A list of assets with filtering options.
Implement this with your target type to create a special inspector for the resource type See Editor.ClothingEditor for a cromulent example of this.
A simple button widget.
A generic checkbox widget.
Used to store and manipulate a collection of colors.
A color picker widget that makes it easy to select or edit colors
A control widget is used to edit the value of a single SerializedProperty.
A widget which contains an editable curve
A text box with a draggable icon on the left. Dragging the icon left and right will change the value Dragging the icon up and down will change the rate at which the value changes So dragging down, then left and right will change in 100s, dragging up and then left and right will change in 0.01s
A wrapper to more easily create dialog windows.
A text box with a draggable icon on the left. Dragging the icon left and right will change the value Dragging the icon up and down will change the rate at which the value changes So dragging down, then left and right will change in 100s, dragging up and then left and right will change in 0.01s
Like a widget - but is drawn
Opens an invisible popup above the game screen which allows you to left click once on the scene. This is great for things like selecting something from the game scene.
This would be a lot simpler if we just passed the handle to it, and let it fuck with it directly!!
A text box with a draggable icon on the left. Dragging the icon left and right will change the value Dragging the icon up and down will change the rate at which the value changes So dragging down, then left and right will change in 100s, dragging up and then left and right will change in 0.01s
A simple text label.
A single line text entry. See Editor.TextEdit for multi line version.
A popup widget that automatically deletes itself once it stops being visible
A text entry that automatically breaks the input into tags
Offers a popup menu with a number of "tags" when you can then select
A multi-line text entry. See Editor.LineEdit for a single line version.
A button that shows as an icon and tries to keep itself square.
A widget that uses a pixmap to display a video.
A widget that shows a web page.