-
Notifications
You must be signed in to change notification settings - Fork 2
freezing
You have to be EXTEMELY careful when freezing the mouse, not correctly unfreezing it can cause issues like the mouse not working anymore.
Sometimes and object needs to keep a hold of the mouse, even is the mouse is not over the object anymore. For example, sliding a slider all the way to the right might result in the mouse not being over the slider anymore. However in this example you would still want your slider to be in "move with the mouse"-mode. For this you need "mouse freezing".
Using uiz_mouse_freeze() (or setting the global.mousefrozen variable to true) removes all uiz mousechecks and makes sure that the "global.mouseover" variables aren't changed anymore.
No uiz object (except the caller of _freeze()) will react to the mouse anymore.
The mouse needs to be unfrozen by calling uiz_mouse_unFreeze() (or by setting global.mousefrozen to false) when you're done.
If you have a hard time correctly unfreezing the mouse, or just want to be very sure, you can use "uiz_mouse_setMouseSafety()".
This script needs to be called every step while the mouse should be frozen, and if it isn't called anymore then the mouse will automatically unfreeze. This safety feature will generate a warning and it is recommended that you fix your code instead of relying on this last resort.
Not calling the script at all will not result in your mouse being automatically unfrozen, only after calling this script once you need to keep calling if every step for the duration of your mouse freeze.
- uiz_mouse_freeze(): Freezes the mouse so no mouse variables can change any more.
- uiz_mouse_unFreeze(): Unfreezes the mouse so mouse variables can changed again by uiZ.
- uiz_mouse_setMouseSafety(): This is an optional script. If you do decide to use it, then it should be called every step. If it isn't called every step uiZ will unfreeze the mouse. This is added as a safety guard to prevent a mouse lock, where the mouse if frozen and no code is willing to unfreeze it because of a bug.
-
frozen = uiz_mouse_isFrozen():
- frozen: Returns whether the mouse is currently frozen on any object.
-
frozen = uiz_mouse_isFrozen_on(instanceid):
- frozen: Returns whether the mouse is currently frozen on a specific object.
- instanceid: What specific object to check for.
πTutorials
Basics 1: Basic positioning
Basics 2: Parenting system
Basics 3: Advanced positioning
Basics 4: Advanced sizing and set point
Basics 5: Canvas and containment
Basics 6: Alpha and depth
Basics 7: Using the manual and Animations
Basics 8: Object backgrounds
Basics 9: Grids
Basics 10: Framesets
Basics 11: Windows
Basics 12: Scroll bars
βοΈ Positioning
π Depth
π Structures
π Objects
obj_uiZ_3waybutton
obj_uiZ_button
obj_uiZ_checkbox
obj_uiZ_clock
obj_uiZ_colorbox
obj_uiZ_cover
obj_uiZ_drawdslist
obj_uiZ_dropdown
obj_uiZ_easybutton
obj_uiZ_frame
obj_uiZ_framescrollbar
obj_uiZ_functionbar
obj_uiZ_gradientsquare
obj_uiZ_gradientroundrect
obj_uiZ_gridlist
obj_uiZ_huesquare
obj_uiZ_loadingbar
obj_uiZ_loadingcircle
obj_uiZ_menubutton
obj_uiZ_mousemenu
obj_uiZ_radiobox
obj_uiZ_rotator
obj_uiZ_slider
obj_uiZ_scrollbar
obj_uiZ_slider_2col
obj_uiZ_slickslider
obj_uiZ_slideframe
obj_uiZ_sprbutton
obj_uiZ_spriteanimationbutton
obj_uiZ_spritecounter
obj_uiZ_stringbox
obj_uiZ_sliderstruct
obj_uiZ_surfacecanvas
obj_uiZ_sprite
obj_uiZ_square
obj_uiZ_squarebutton
obj_uiZ_swipicon
obj_uiZ_switch
obj_uiZ_tabslider
obj_uiZ_tabs
obj_uiZ_treelist
obj_uiZ_text
obj_uiZ_text_background
obj_uiZ_textarea
obj_uiZ_valuebox
π Strings
uiz_addChar
uiz_changechar
uiz_charCanHaveAddon
uiz_returnCharAddon
uiz_charIsNumber
uiz_charIsNumberOrText
uiz_getlines
uiz_gettext_contained
uiz_gettextlines_contained
uiz_getValidVariableName
uiz_isSpaceChar
uiz_lastStringChars
uiz_removeChar
uiz_replaceChars_
uiz_string_copy
uiz_string_digits
uiz_string_format
uiz_string_fromReal
uiz_string_real_getFracLength
uiz_string_real_getIntLength
uiz_string_repeat
uiz_string_replace
uiz_string_pos_at
uiz_stringUntilNewline