Standard Window

This document covers the following topics:


Description

A standard window is the most common dialog type. It is a top-level dialog that is not capable of containing any child dialogs. For this reason, it is sometimes known as an SDI (Single Document Interface) window, to distinguish it from MDI (Multiple Document Interface) frame windows, where multiple MDI child windows can be simultaneously open, each capable of displaying a separate "document".

Note:
The term "document" is used to refer to any set of related data, and does not necessarily correspond to a separate file in the file system.

Standard windows can exist in one of three forms: Modeless, Modal or Dialog Box. These are not separate types, but are instead implemented as values of the STYLE attribute. A Dialog Box differs from the other two forms in that control only returns from the OPEN DIALOG statement after the dialog box has been processed and closed. Thus, the execution of a dialog box is said to be "synchronous". In contrast, Modeless and Modal dialogs return control to the caller immediately after the OPEN and AFTER-OPEN events have been processed, although the dialog remains open and capable of receiving events until it is closed. The execution in this case is said to be "asynchronous", because the code following the OPEN DIALOG statement is executed before the dialog is closed. The difference between the Modeless and Modal dialogs is that, when a Modal dialog is activated, all other dialogs are implicitly disabled and are thus temporarily inaccessible to the user, whereas Modeless dialogs allow the user to switch to, and work with, another dialog. Note that Dialog Box dialogs are also implicitly modal. Of the three forms of dialog, Modal dialogs are the most infrequently encountered. The vast majority of dialogs fall into the "modeless and asynchronous" (i.e., Modeless) or "modal and synchronous" (i.e., Dialog Box) categories.

Note that the PARENT (if any) of a Standard Window refers to the "owner" window, and does not imply any special containment. This informs Windows that the two dialogs "belong" together. For example, Windows ensures that owned windows are kept together with (and in front of) their owner in the window depth ("Z-order") sequence, and that owned windows are automatically hidden when their owner window is minimized.

Attributes for Standard Window

Attribute Name Query Set/Modify In Attr. Window
AUTO-ADJUST X -/X X
BACKGROUND-COLOUR-NAME X X/X X
BACKGROUND-COLOUR-VALUE X X/X X
BITMAP-FILE-NAME X X/X X
CLIENT-DATA X X/-  
CLIENT-HANDLE X X/X  
CLIENT-KEY X X/X  
COMPATIBILITY X X/- X
CONTEXT-MENU X X/X X
CLIENT-VALUE X X/X  
DEFAULT-BUTTON X X/X X
DOCKING X X/X X
DPI X X/-  
DROP-MODE X X/X X
ENABLED X X/X X
EVENT-QUEUEING X X/X X
FIRST-CHILD X -/-  
FOLLOWS X -/-  
FONT-HANDLE X -/-  
FONT-STRING X X/- X
HAS-DIL X X/X X
HAS-HELP-BUTTON X X/- X
HAS-MENU-BAR X X/-  
HAS-STATUS-BAR X X/X X
HAS-SYSTEM-BUTTON X X/- X
HAS-TOOLBAR X X/X X
HAS-TOOLTIP X X/X  
HELP-FILENAME X X/X X
HELP-ID X X/X X
HORIZ-SCROLLABLE X X/X X
LAST-CHILD X -/-  
MAXIMIZABLE X X/- X
MAXIMIZED X X/X X
MENU-HANDLE X X/X  
MINIMIZABLE X X/- X
MINIMIZED X X/X X
MODIFIED X X/X  
MODIFIED-SUCCESSOR X -/-  
NAME X -/-  
PARENT X X/-  
POPUP-HELP X X/X X
PREDECESSOR X -/-  
RECTANGLE-H X X/X X
RECTANGLE-W X X/X X
RECTANGLE-X X X/X X
RECTANGLE-Y X X/X X
RTL X -/- X
SCROLLRANGE-X X X/X  
SCROLLRANGE-Y X X/X  
SIZE-MODIFIABLE X -/- X
STATUS-HANDLE X X/X  
STATUS-TEXT   -/X  
STRING X X/X X
STYLE X X/- X
SUCCESSOR X -/-  
SUPPRESS-CLIENT-SIZE-EVENT X X/X  
SUPPRESS-COMMAND-STATUS-EVENT X X/X  
SUPPRESS-DRAG-DROP-EVENT X X/X  
SUPPRESS-DRAG-ENTER-EVENT X X/X  
SUPPRESS-DRAG-LEAVE-EVENT X X/X  
SUPPRESS-DRAG-OVER-EVENT X X/X  
SUPPRESS-ENTER-EVENT X X/X  
SUPPRESS-IDLE-EVENT X X/X  
SUPPRESS-LEAVE-EVENT X X/X  
SUPPRESS-SIZE-EVENT X X/X  
TOOLBAR-HANDLE X X/-  
TOOLBAR-POS X X/- X
TOOLTIP X X/X  
TYPE X X/- X
VERSION X -/-  
VERT-SCROLLABLE X X/X X
VISIBLE X X/X X
WALLPAPER X X/X X

Events

After-Any Event, After-Open Event, Before-Any Event, Before Open Event, Before-Open Event, Client-Size Event (may be suppressed), Close Event, Command-Status Event (may be suppressed), Drag-Drop Event (may be suppressed), Drag-Enter Event (may be suppressed), Drag-Leave Event (may be suppressed), Drag-Over Event (may be suppressed), Enter Event (may be suppressed), Error Event, Idle Event (may be suppressed), Leave Event (may be suppressed), Size Event (may be suppressed).