Newsgroups: comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!rochester!udel!news.mathworks.com!uunet!news.sprintlink.net!howland.reston.ans.net!torn!nott!cunews!freenet.carleton.ca!FreeNet.Carleton.CA!aa586
From: aa586@FreeNet.Carleton.CA (Colin Phillips)
Subject: Re: Nested windows in VisualAge OS/2?
Message-ID: <D69s24.H1C@freenet.carleton.ca>
Sender: aa586@freenet3.carleton.ca (Colin Phillips)
Reply-To: aa586@FreeNet.Carleton.CA (Colin Phillips)
Organization: The National Capital FreeNet
References: <1995Mar28.145030.29415@mercury.ncat.edu>  
Date: Thu, 30 Mar 1995 20:10:51 GMT
Lines: 34

In a previous posting,  (dowtin@mercury.ncat.edu) writes:
> q: I'm still researching this but have not seen anything that looks
> promising  -
> 
>  I'm trying to implement what would be a MDI in Windows - in VisualAge. 
> 
>  That is to say to have several windows as the child of one main window.
>  
>  It seems OS/2 supports this but not many apps use it, could I be mistaken
> here?
> 
> 

This is possible to fake out using IBM Smalltalk (which Visual Age is built
on)  The way to implement this is to have a window with subordinate dialogs
as children.
For example:

| windowShell dialogShell |
windowShell := CwTopLevelShell createApplicationShell: 'ws' argBlock: nil.
(windowShell createForm: 'f' argBlock: nil) manageChild.
dialogShell := windowShell createDialogShell: 'ds' argBlock: nil.
(dialogShell createForm: 'df' argBlock: nil) manageChild.
windowShell realizeWidget.

You will notice the behavior here is that the dialog is non-modal, and when
the window is minimized the dialog goes away .. also, when the window is 
maximixed, the dialog stays in front of the window.

Hope this helps,

Colin


