This is a bit quick and dirty but should give you the idea!
PROGRAM
MAP
ProxyMDIChild PROCEDURE()
MyFakeModal PROCEDURE()
END
INCLUDE('equates.clw'),ONCE
AppFrame APPLICATION('Application'),AT(,,505,318),CENTER,MASK,SYSTEM,MAX,ICON('WAFRAME.ICO'),STATUS(-1,80,120,45),FONT('Microsoft Sans Serif',8,, |
FONT:regular),RESIZE
MENUBAR,USE(?Menubar)
MENU('&File'),USE(?FileMenu)
ITEM('&Print Setup ...'),USE(?PrintSetup),MSG('Setup printer'), |
STD(STD:PrintSetup)
ITEM(''),SEPARATOR,USE(?SEPARATOR1)
ITEM('E&xit'),USE(?Exit),MSG('Exit this application'),STD(STD:Close)
END
MENU('&Edit'),USE(?EditMenu)
ITEM('Cu&t'),USE(?Cut),MSG('Remove item to Windows Clipboard'),STD(STD:Cut)
ITEM('&Copy'),USE(?Copy),MSG('Copy item to Windows Clipboard'),STD(STD:Copy)
ITEM('&Paste'),USE(?Paste),MSG('Paste contents of Windows Clipboard'), |
STD(STD:Paste)
END
ITEM('Open Modal'),USE(?MenuOpenModal)
MENU('&Window'),USE(?WindowMenu),STD(STD:WindowList)
ITEM('T&ile'),USE(?Tile),MSG('Make all open windows visible'), |
STD(STD:TileWindow)
ITEM('&Cascade'),USE(?Cascade),MSG('Stack all open windows'),STD(STD:CascadeWindow) |
ITEM('&Arrange Icons'),USE(?Arrange),MSG('Align all window icons'), |
STD(STD:ArrangeIcons)
END
MENU('&Help'),USE(?HelpMenu)
ITEM('&Contents'),USE(?Helpindex),MSG('View the contents of the help file'), |
STD(STD:HelpIndex)
ITEM('&Search for Help On...'),USE(?HelpSearch),MSG('Search for help on ' & |
'a subject'),STD(STD:HelpSearch)
ITEM('&How to Use Help'),USE(?HelpOnHelp),MSG('How to use Windows Help'), |
STD(STD:HelpOnHelp)
END
END
END
CODE
Open(AppFrame)
ACCEPT
CASE ACCEPTED()
OF ?MenuOpenModal
Start(ProxyMDIChild)
END
END
ProxyMDIChild PROCEDURE()
Window WINDOW('Caption'),AT(,,185,92),MDI,GRAY,SYSTEM,FONT('Microsoft Sans Serif' & |
'',8,,FONT:regular),RESIZE
END
CODE
Open(Window)
0{PROP:Hide} = TRUE
ACCEPT
CASE Event()
OF EVENT:OpenWindow
MyFakeModal()
END
END
MyFakeModal PROCEDURE()
Window WINDOW('Caption'),AT(,,199,92),CENTER,GRAY,SYSTEM,FONT('Microsoft Sans S' & |
'erif',8),DOUBLE
PROMPT('HI THERE!'),AT(76,23),USE(?PROMPT1)
END
CODE
Open(Window)
ACCEPT
END