Specifies whether changes to a stack appear on the screen.
# Metadata
Platforms: desktop, server, mobile OS: mac, windows, linux, ios, android Introduced: 1.0 Security:
# Syntax
set the lockScreen to {true | false}
# Examples
set the lockScreen to (not the lockScreen)
# Description
Use the lockScreen property to control when changes to the appearance of objects appear to the user, or to speed up actions that change several objects.
If the lockScreen property is set to true, statements that affect the appearance of the stack windows--such as opening or closing a stack, going to another card, or changing properties of an object --are not shown on the screen until the lockScreen is set back to false.
If the lockScreen is false, all changes are displayed immediately.
Setting the lockScreen to true also speeds up handlers that affect the screen appearance. Since LiveCode does not need to take time redraw its windows when the lockScreen is true, a handler that visits several cards in a row or changes several objects runs faster if the lockScreen property is set to true while the changes are made.
The lockScreen property is automatically set to false when a palette, modeless, or modal stack is opened, even if a handler is still running.
>*Important:* Open stacks cannot be brought to the front (using the > go or topLevel command) while the lockScreen is true.
LiveCode keeps count of how many times the screen has been locked. You must balance each unlock with a lock; if you lock the screen twice and then unlock it once, the screen remains locked. For example, the following pair of handlers draws everything while the display is still locked:
on mouseUp lock screen -- first lock drawStuff -- gets locked again and unlocked in drawStuff show image "Sprite" unlock screen -- now unlocked - 2 locks balanced by 2 unlocks end mouseUp
on drawStuff lock screen -- screen now locked twice show field "Notify" unlock screen -- not unlocked yet - locked twice, unlocked once end drawStuff
>*Note:* When using script debug mode, the screen cannot be locked and > the setting of the lockScreen property has no effect.
# Tags
ui,
# See
- **keyword:** card - **property:** properties, lockCursor - **command:** unlock screen, topLevel, palette, modal, reset, go, show cards, modeless - **function:** stacks - **glossary:** object, property, stack window, handler, execute, statement, redraw, script debug mode, command - **object:** stack, card