WBStartup NoCli WbToScreen 0 ShowScreen 0 DEFTYPE.Screen scr_wb suc.b = GetScreenData_(&scr_wb, SizeOf.Screen, #WBENCHSCREEN, 0) .init_window ; using tags for extnewwindow struct (v37+) DEFTYPE.l iflg,wflg Dim zoomsize.w(4) Dim winTag.TagItem(16) ; see libincs:utility/tagitem.bb2 WindowTitle.s = "My extended Window" myWnd = 0 : myGList = 0 : myMList = 0 ileft=100 itop=30 iwidth=230 iheight=scr_wb\BarHeight + 1 ; Contract to Menu height zoomsize(0) =ileft ; Left - of zoomed window zoomsize(1) =itop ; Top zoomsize(2) =iwidth ; Width - min width of system gadgets zoomsize(3) =iheight ; Height - min height 10 iflg = #IDCMP_NEWSIZE|#IDCMP_REFRESHWINDOW iflg = iflg|#IDCMP_MENUPICK|#IDCMP_IDCMPUPDATE iflg = iflg|#IDCMP_GADGETDOWN|#IDCMP_GADGETUP|#IDCMP_CLOSEWINDOW iflg = iflg|#IDCMP_ACTIVEWINDOW|#IDCMP_CHANGEWINDOW iflg = iflg|#IDCMP_RAWKEY wflg = #WFLG_DRAGBAR|#WFLG_DEPTHGADGET|#WFLG_CLOSEGADGET wflg = wflg|#WFLG_ACTIVATE|#WFLG_NW_EXTENDED wflg = wflg|#WFLG_SMART_REFRESH|#WFLG_NEWLOOKMENUS winTag(0)\ti_Tag = #WA_Left,100 ; wleft, wtop etc, are winTag(1)\ti_Tag = #WA_Top,30 ; winTag(2)\ti_Tag = #WA_Width,250 ; all deftype.w winTag(3)\ti_Tag = #WA_Height,80 ; winTag(4)\ti_Tag = #WA_IDCMP,iflg winTag(5)\ti_Tag = #WA_Flags,wflg winTag(6)\ti_Tag = #WA_AutoAdjust,True winTag(7)\ti_Tag = #WA_Zoom,&zoomsize(0) winTag(8)\ti_Tag = #TAG_DONE,0 DefaultIDCMP iflg WindowTags myWnd,wflg,WindowTitle,&winTag(0) Use Window myWnd ;GTSetMenu myMList AttachGTList myGList,myWnd CatchDosErrs ; errors on configured public screen please. ShowRequesters 2 Repeat ev.l=WaitEvent Until ev=#IDCMP_CLOSEWINDOW ;MouseWait ;CloseWindow End