599
h Window has no title bar.
i
Window has no icon in the upper left corner.
m Enables "maximize" box in top right corner of window (only for
dialogue windows created with OPT="*").
M Window has a menu bar.
s 'DIALOGUE'( ) returns a CTL value to signal when the dialogue view
state is changed; i.e.,
CTL=-1106 when the dialogue is minimized
CTL=-1107 when the dialogue is restored to normal state
CTL=-1105 when the dialogue is maximized.
(CTL=-1105 is also returned for the Z option (below) if dialogue has
been resized.)
S Window has Status line / Message Bar.
x Disables X close button on title bar of window and eliminates the
system control menu from the title bar.
X Enables X close button on title bar of window and supports the
system control menu on the title bar.
Z Creates a resizable window without scrollbars. When the user resizes
the window a CTL=-1105 is generated. See also 'SIZE', p.637.
wdw_id
Optional dialogue window's unique ID number (0 -255).
Description
Use 'DIALOGUE' to define a new window which is not contained in the main
ProvideX screen. In a non-Windows environment, this does the same as a 'WINDOW'
mnemonic.
Note: The `DIALOGUE' mnemonic with OPT="^" can be useful for error message
windows. Although the users can still perform other operations, the error message
will remain "always on top" as a constant reminder to deal with the error.
ProvideX uses the WS_DLGFRAME frame style from the Windows API for the 'DIALOGUE'
mnemonic. For more information, see Windows API Frame Styles, p.577.
See also: 'TEXTWDW' Create Text Window, p.641 and WINDOW' Define / Draw
Example
The example below creates a dynamic, resizable/scrollable viewer using a
`DIALOGUE' window which is large enough to display the complete picture. A 'SIZE'
mnemonic fits the window to the screen. The user is supplied with scroll bars to
view the desired image.
0010 CALL "*picture;Get_size","c:\windows\clouds.bmp",WD,HI
0020 LET WD=INT(WD),HI=INT(HI)
0030 PRINT 'DIALOGUE'(10,10,WD,HI,"MY Photo",OPT="*-m"),
0030: 'SIZE'(30,10),'B?','SR','CS',
(ProvideX normally redraws the text plane below the picture. Line 0040 suppresses
the text plane to avoid flicker.)
0040 PRINT '-T',
0050 PRINT 'PICTURE'(0,0,@X(WD),@Y(HI),"C:\windows\clouds.bmp"),
0060 OBTAIN 'C0',*; IF CTL<>4 THEN GOTO *SAME