/* $TOG: TransFamilyM1.dat /main/5 1997/05/23 10:13:17 dbl $ */
/*
 * Motif
 *
 * Copyright (c) 1987-2012, The Open Group. All rights reserved.
 *
 * These libraries and programs are free software; you can
 * redistribute them and/or modify them under the terms of the GNU
 * Lesser General Public License as published by the Free Software
 * Foundation; either version 2 of the License, or (at your option)
 * any later version.
 *
 * These libraries and programs are distributed in the hope that
 * they will be useful, but WITHOUT ANY WARRANTY; without even the
 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 * PURPOSE. See the GNU Lesser General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with these librararies and programs; if not, write
 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
 * Floor, Boston, MA 02110-1301 USA
 */
/*
 * HISTORY
 */

#) This is a test testing the various behaviors of a family of transient 
   windows with their parent windows and otherwise.

#) There should be two TopLevel Shells with a bulletinboard containing a
   bunch of pushbuttons inside.

C)


#) Click MouseBtn1 on "Create Primary Modal from TopShell1". This should
   post a PrimaryModal dialog child of TopShell1.

#) Post the windowMenu of the newly posted dialog. There should be an 
   item "Beep" appended to the windowMenu.

#) Select the item "Beep" from the posted windowMenu. If bell is not
   turned off on your system, you should hear a beep.

#) Click MouseBtn1 on "Cancel" of the posted dialog.

#) Click MouseBtn1 on "Create Modeless Dialog from TopShell1". This should
   post a Modeless dialog child of TopShell1.  Repeat steps 2 thru 4.

#) Click MouseBtn1 on "Create Full App Modal from TopShell1". This should
   post a FullAppModal dialog child of TopShell1.  Click MouseBtn1 on 
   "Cancel" of the posted dialog.

#) Click MouseBtn1 on "Create System Modal from TopShell1". This should
   post a System Modal dialog child of TopShell1.  Click MouseBtn1 on 
   "Cancel" of the posted dialog.

#) Repeat steps 1 thru 7 replacing TopShell1 with TopShell2.


C)


#) Click MouseBtn1 on "Create Primary Modal from TopShell1". This should
   post a PrimaryModal dialog child of TopShell1.

#) Click MouseBtn1 on "Spawn Dialog Child". This should post a PrimaryModal
   dialog child of the first PrimaryModal dialog. When this second child
   is up, you should not be able to input into either the first dialog, or
   TopShell1.

#) Click MouseBtn1 on "Create Modeless Dialog from TopShell1". This should
   post a PrimaryModal dialog child of TopShell1.

#) Click MouseBtn1 on "Spawn Dialog Child". This should post a Modeless
   dialog child of the first Modeless dialog. Even when this second child
   is up, you should be able to input in all the other windows.

#) Click MouseBtn1 on "Create FullApp Modal from TopShell1". This should
   post a FullApp Modal dialog child of TopShell1.

#) Click MouseBtn1 on "Spawn Dialog Child". This should post a FullApp Modal
   dialog child of the first FullApp Modal dialog. When this second child
   is up, you should not be able to input into any other window in the
   application including the first FullApp modal.

#) Click MouseBtn1 on "Create System Modal from TopShell1". This should
   post a System Modal dialog child of TopShell1.

#) Click MouseBtn1 on "Spawn Dialog Child". This should post a System Modal
   dialog child of the first System Modal dialog. When this second child
   is up, you should not be able to input anywhere else on the screen, 
   including the first System modal.

#) Repeat steps 1 thru 8 replacing TopShell1 with TopShell2.

C)



#) If you are NOT running 1.2 (or greater) mwm, please exit the test now.

C) 

#) Continue to test some new features of 1.2 (or greater) mwm.

C) 


#) Now post different dialog children from both TopShell1 and TopShell2,
   by clicking on the appropriate buttons.

#) All the children should have four new items, "LowerWithin", "LowerFree",
   "RaiseWithin", and "RaiseFree", appended to the WindowMenu.

#) Get rid of all the children by selecting "Cancel" in each.


C)

#) Click on "Create Modeless Dialog from TopShell1" in TopShell1. Spawn
   a bunch of modeless dialogs by selecting "Spawn Dialog Child" in the
   newly created modeless dialogs.

#) The modeless dialogs are no longer created as children of the spawning
   dialog but of TopShell1 or TopShell2. 

#) Select "LowerWithin" from the WindowMenu of any of the modeless dialogs.
   This should lower that dialog window within the family, (and staying
   above the parent), without lowering the family in the global window
   stack.

#) Select "RaiseWithin" from the WindowMenu of any of the modeless dialogs.
   This should raise that dialog window within the family, (and staying
   above the parent), without raising the family in the global window
   stack.

#) Select "LowerFree" from the WindowMenu of any of the modeless dialogs.
   This should lower that dialog window to the bottom of the 
   window stack without affecting its position within the global window stack.

#) Select "RaiseFree" from the WindowMenu of any of the modeless dialogs.
   This should raise that dialog window to the top of the 
   window stack without affecting its position within the global window stack.

#) Get rid of all the children by selecting "Cancel" in each.

#) Try different combinations of the above tests, creating children from 
   both TopShell1 and TopShell2 at the same time.

C)


E)
