TMGOOT2  ;TMG/kst/OO Test code ;03/25/06
         ;;1.0;TMG-LIB;**1**;04/25/04
 
 ;"Kevin Toppenberg MD
 ;"GNU General Public License (GPL) applies
 
 ;------------------------------------------
 ;Main function below
 ;------------------------------------------
 
MyFunct
 
        do VCUSAV2^TMGTERM
 
        new tScreen  ;"will store type def & all instances of object type
        new pScrn   ;"will store 1 instance of object (actually inside object type def [tScreen])
        set pScrn=$$new^TMGOOL("tScreen","TMGWSCR")
        new tWindow,pWinMain,pWin1,pWin2
        set pWinMain=$$new^TMGOOL("tWindow","TMGWIN01")
        do proc^TMGOOL(pWinMain,"SET TLHW",0,0,IOSL,IOM)
        do setProp^TMGOOL(pScrn,"WINDOW",pWinMain)
 
  ;"goto X2
        ;"========== Start of custom windows etc. ===========
        set pWin1=$$new^TMGOOL("tWindow","TMGWIN01")
        do proc^TMGOOL(pWin1,"SET TLHW",12,5,10,30)
        do setProp^TMGOOL(pWin1,"TITLE","Main Window")
        do setProp^TMGOOL(pWin1,"PARENT",pWinMain)
 
        new tButton,pButton1
        set pButton1=$$new^TMGOOL("tButton","TMGWBT01")
        do proc^TMGOOL(pButton1,"SET TLHW",5,5,3,8)
        do setProp^TMGOOL(pButton1,"TITLE","Button")
        do setProp^TMGOOL(pButton1,"PARENT",pWin1) ;"<-- now parent paint will effect painting of this
 
        set pWin2=$$new^TMGOOL("tWindow","TMGWIN01")
        do proc^TMGOOL(pWin2,"SET TLHW",8,10,18,60)
        do setProp^TMGOOL(pWin2,"TITLE","Another Window")
        do setProp^TMGOOL(pWin2,"PARENT",pWinMain)
 
        new tScrlBox,pSB
        set pSB=$$new^TMGOOL("tScrlBox","TMGWSBX1")
        do proc^TMGOOL(pSB,"SET TLHW",2,2,10,20)
        do setProp^TMGOOL(pSB,"PARENT",pWin2)
        do setProp^TMGOOL(pSB,"SIZABLE",1)
 
X2
RUN     do proc^TMGOOL(pScrn,"RUN")
 
 ;" goto X3
        do delete^TMGOOL(pWinMain)
        do delete^TMGOOL(pScrn)
 
X3
 
        do VCULOAD2^TMGTERM
        write "That all folks!",!
 
        quit
