Window properties

Screen API window properties are the properties of a window API object.

Screen distinguishes between parent and owner window properties.

Parent window properties

Parent window properties are the properties of the window that can be changed by a parent application window or a window manager. A window manager's access to properties is more limited than that of a parent window. A window manager can only change the properties of top-level windows and windows that are created by the window manager itself.

The owner of the window is allowed to set the parent window properties only if the parent window has set its SCREEN_PROPERTY_SELF_LAYOUT property to true, or when there is no parent window or window manager present.

Note: Only the parent window has permission to set the SCREEN_PROPERTY_SELF_LAYOUT property—even if SCREEN_PROPERTY_SELF_LAYOUT has been set to true.

Owner window properties

Owner window properties are properties that can be changed by the owner of the window; some owner window properties can be changed by both the owner and the parent of the window.

Window Property Permissions

The following table lists all of the window properties and indicates whether each can be changed by the parent window, the window manager or the window owner:

Window Property Parent Window/Window Manager Window Owner
SCREEN_PROPERTY_ALPHA_MODE No Yes
SCREEN_PROPERTY_ALTERNATE_WINDOW No Yes
SCREEN_PROPERTY_ALTERNATE_BRIGHTNESS Yes Yes
SCREEN_PROPERTY_BRUSH No Yes
SCREEN_PROPERTY_BRUSH_CLIP_POSITION No Yes
SCREEN_PROPERTY_BRUSH_CLIP_SIZE No Yes
SCREEN_PROPERTY_BUFFER_COUNT No Yes
SCREEN_PROPERTY_BUFFER_SIZE No Yes
SCREEN_PROPERTY_CBABC_MODE No Yes
SCREEN_PROPERTY_CLASS Yes Yes
SCREEN_PROPERTY_CLIP_POSITION Yes No
SCREEN_PROPERTY_CLIP_SIZE Yes No
SCREEN_PROPERTY_COLOR No Yes
SCREEN_PROPERTY_COLOR_SPACE No Yes
SCREEN_PROPERTY_CONTRAST Yes Yes
SCREEN_PROPERTY_DEBUG Yes Yes
SCREEN_PROPERTY_DISPLAY Yes Yes
SCREEN_PROPERTY_FLIP Yes Yes
SCREEN_PROPERTY_FLOATING Yes Yes
SCREEN_PROPERTY_FORMAT No Yes
SCREEN_PROPERTY_GLOBAL_ALPHA Yes Yes
SCREEN_PROPERTY_HUE Yes Yes
SCREEN_PROPERTY_ID_STRING No Yes
SCREEN_PROPERTY_IDLE_MODE No Yes
SCREEN_PROPERTY_MIRROR Yes Yes
SCREEN_PROPERTY_PIPELINE Yes Yes
SCREEN_PROPERTY_POSITION Yes No
SCREEN_PROPERTY_PROTECTION_ENABLE No Yes
SCREEN_PROPERTY_ROTATION Yes Yes
SCREEN_PROPERTY_SATURATION Yes Yes
SCREEN_PROPERTY_SCALE_QUALITY Yes Yes
SCREEN_PROPERTY_SELF_LAYOUT Yes No
SCREEN_PROPERTY_SENSITIVITY No Yes
SCREEN_PROPERTY_SIZE Yes No
SCREEN_PROPERTY_SOURCE_CLIP_POSITION No Yes
SCREEN_PROPERTY_SOURCE_CLIP_SIZE No Yes
SCREEN_PROPERTY_SOURCE_POSITION Yes Yes
SCREEN_PROPERTY_SOURCE_SIZE Yes Yes
SCREEN_PROPERTY_STATIC No Yes
SCREEN_PROPERTY_SWAP_INTERVAL No Yes
SCREEN_PROPERTY_TRANSPARENCY No Yes
SCREEN_PROPERTY_USAGE No Yes
SCREEN_PROPERTY_VIEWPORT_POSITION No Yes
SCREEN_PROPERTY_VIEWPORT_SIZE No Yes
SCREEN_PROPERTY_VISIBLE Yes No
SCREEN_PROPERTY_ZORDER Yes No