This is the legacy 4D documentation web site. Documentations are progressively being moved to developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20.6
Window Types (compatibility)
|
Constant | Type | Value | Comment |
Plain no zoom box window | Longint | 0 | |
Modal dialog box | Longint | 1 | |
Plain dialog box | Longint | 2 | Can be a floating window |
Alternate dialog box | Longint | 3 | Can be a floating window |
Plain fixed size window | Longint | 4 | |
Movable dialog box | Longint | 5 | Can be a floating window |
Plain window | Longint | 8 | |
Round corner window | Longint | 16 | |
Pop up window | Longint | 32 | |
Sheet window | Longint | 33 | |
Resizable sheet window | Longint | 34 | |
Palette window | Longint | 1984 | Can be a floating window |
If you pass one of these constants to Open window, you open a regular windows. To open a floating windows, pass a negative window type value to Open window.
The main characteristic of floating windows is that they remain in the foreground even if the user clicks on another window of the process. Floating windows are generally used to display permanent information or tool bars.
A modal window places the user in a state (or “mode”) where they can only act within this window. As long as the modal window is displayed, the menu commands and other application windows are inaccessible. To close a modal window, the user must either validate it, cancel it, or choose one of the options it offers. Warning dialog boxes are a typical example of modal windows.
In 4D, windows of the types 1 and 5 are modal windows.
Note: A modal window always stays in the foreground. As a consequence, when a modal window calls a non-modal window, this latter window is displayed in the background, even though it was called subsequent to the modal window. You should thus avoid this type of operation.
On the other hand, when a modal window calls another modal window, this latter window will be displayed in the foreground.
Here are the descriptions for each type of window under Windows (left) and Mac OS (right).
This type of window allows you to generate floating windows which can be defined as resizable or not. Only the following options are supported:
Option | Value to pass under Windows | Value to pass under macOS |
Not resizable | -(Palette window+2) | -Palette window |
Resizable | -(Palette window+6) | -(Palette window+6) |
Note: With this type of window, the set of values (constant+option) must always be passed as a negative value. Make sure that you pass, for example, -(Palette window+6) and not (-Palette window+6).
Sheet windows are specific to Mac OS X. These windows “drop down” over the title bar of the main window using animation and are displayed above the main window. They are automatically centered in the main window. Their properties are comparable to those of the modal dialog boxes. They are generally used to perform an action directly relating to the action occurring in the primary window.
This type of window has the same basic characteristics of the Plain dialog box (2) type windows and features the following advanced specifics:
Under Mac OS, it is possible to apply a texture appearance to windows. This type of look is found throughout the Macintosh interface. Under Windows, this property has no effect.
To apply a texture appearance to a window created by the Open window command, you can just add the Texture appearance constant to the window type set in the type parameter. For example:
$win:=Open window(10;80;-1;-1;Plain window+Texture appearance;"")
This look can be associated with the following types of windows:
Plain window |
Plain no zoom box window |
Plain fixed size window |
Movable dialog box |
Round corner window |
The "full screen" option is available beginning with 4D v14 under OS X for document type windows. When this option is used, a "Full screen" button is displayed in the top right corner of the window:
When the user clicks on this icon, the window switches to full screen and 4D automatically hides the main tool bar.
To use this option, you just add the Has full screen mode Mac constant to the type parameter for the Open window, Open form window and commands. For example, this code creates a form window with a full-screen button under OS X:
$win:=Open form window([Interface];"User_Choice";Plain form window+Form has full screen mode Mac)
DIALOG([Interface];"User_Choice")
Note: Under Windows, this option has no effect.
Product: 4D
Theme: Windows
Renamed: 4D v16
4D Language Reference ( 4D v20)
4D Language Reference ( 4D v20.1)
4D Language Reference ( 4D v20.2)
4D Language Reference ( 4D v20.3)
4D Language Reference ( 4D v20.4)
4D Language Reference ( 4D v20.5)
4D Language Reference ( 4D v20.6)