The Config Script
gooey includes a configuration script, __Configuration__, that you can find inside the main folder. This script contains all the macro variables needed to setup the library.
Runtime setup
The configuration options for gooey cannot be set at runtime - you can only edit them before compiling.
The options as of version 2025.11
| Option name (macro variable name) | Description | Supported Values |
|---|---|---|
UI_LOG_MESSAGE_LEVEL |
Define the severity and quantity of messages shown in the Gamemaker log. | UI_MESSAGE_LEVEL enum (by default: UI_MESSAGE_LEVEL.WARNING) |
UI_ENABLE_DEPTH |
Defines whether to disable the depth buffer to improve performance. Enable for 3D games. | true or false |
UI_CURSOR_DEFAULT |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the pointer cursor | cr_ constants, or sprite index |
UI_CURSOR_INTERACT |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the "click" cursor | cr_ constants, or sprite index |
UI_CURSOR_SIZE_NWSE |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the cursor when resizing diagonally from the NW or SE | cr_ constants, or sprite index |
UI_CURSOR_SIZE_NESW |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the cursor when resizing diagonally from the NE or SW | cr_ constants, or sprite index |
UI_CURSOR_SIZE_NS |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the cursor when resizing vertically | cr_ constants, or sprite index |
UI_CURSOR_SIZE_WE |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the cursor when resizing horizontally | cr_ constants, or sprite index |
UI_CURSOR_DRAG |
Define the cursor constant, or Gamemaker sprite reference, to use for displaying the cursor when dragging | cr_ constants, or sprite index |
UI_MANAGE_CURSORS |
Whether to let gooey manage/change the cursors. Change to false if you want to manage them manually (default: true) |
|
UI_DRILL_THROUGH_LEFT_CLICK |
Whether to enable drill-through on left click events | true or false (default: false) |
UI_DRILL_THROUGH_LEFT_HOLD |
Whether to enable drill-through on left hold events | true or false (default: false) |
UI_DRILL_THROUGH_LEFT_RELEASE |
Whether to enable drill-through on left release events | true or false (default: false) |
UI_DRILL_THROUGH_MIDDLE_CLICK |
Whether to enable drill-through on middle click events | true or false (default: false) |
UI_DRILL_THROUGH_MIDDLE_HOLD |
Whether to enable drill-through on middle hold events | true or false (default: false) |
UI_DRILL_THROUGH_MIDDLE_RELEASE |
Whether to enable drill-through on middle release events | true or false (default: false) |
UI_DRILL_THROUGH_RIGHT_CLICK |
Whether to enable drill-through on right click events | true or false (default: false) |
UI_DRILL_THROUGH_RIGHT_HOLD |
Whether to enable drill-through on right hold events | true or false (default: false) |
UI_DRILL_THROUGH_RIGHT_RELEASE |
Whether to enable drill-through on right release events | true or false (default: false) |
UI_DRILL_THROUGH_MOUSE_ENTER |
Whether to enable drill-through on mouse enter events | true or false (default: false) |
UI_DRILL_THROUGH_MOUSE_EXIT |
Whether to enable drill-through on mouse exit events | true or false (default: false) |
UI_DRILL_THROUGH_MOUSE_OVER |
Whether to enable drill-through on mouse over events | true or false (default: false) |
UI_DRILL_THROUGH_MOUSE_WHEEL_UP |
Whether to enable drill-through on mouse wheel up events | true or false (default: true) |
UI_DRILL_THROUGH_MOUSE_WHEEL_DOWN |
Whether to enable drill-through on mouse wheel down events | true or false (default: true) |
UI_DISPLAY_AFTER_GUI_END |
Whether to render the UI in Draw GUI Begin or in Draw GUI End events. If you are combining gooey with other things being drawn in the Draw GUI event, activating this ensures gooey is rendered correctly, on top of your other elements | true or false (default: false) |
UI_DEFAULT_ANCHOR_POINT |
Default anchor point for created widgets | UI_RELATIVE_TO enum (by default: UI_RELATIVE_TO.TOP_LEFT) |
UI_USE_SCISSORS |
Whether to use GPU scissors to render widgets instead of surfaces | true or false (default: true) |