diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index c128df14..f0aa2465 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/INC/LIBGUI.I.txt b/INC/LIBGUI.I.txt index 0ae24df6..83ee4b70 100644 --- a/INC/LIBGUI.I.txt +++ b/INC/LIBGUI.I.txt @@ -35,6 +35,22 @@ C16.PINK .EQ 13 C16.YELLOW .EQ 14 C.WHITE .EQ 255 *-------------------------------------- +BM.ID.APPLE .EQ 2 +BM.ID.CLOSE .EQ 4 +BM.ID.MAX .EQ 6 +BM.ID.MIN .EQ 8 +BM.ID.LEFT .EQ 10 +BM.ID.RIGHT .EQ 12 +BM.ID.UP .EQ 14 +BM.ID.DOWN .EQ 16 +*-------------------------------------- +BUT.ID.OK .EQ 1 +BUT.ID.CANCEL .EQ 2 +BUT.ID.RETRY .EQ 4 +BUT.ID.IGNORE .EQ 8 +BUT.ID.YES .EQ 16 +BUT.ID.NO .EQ 32 +*-------------------------------------- PTR.T.ARROW .EQ 0 PTR.T.MOVE .EQ 2 PTR.T.RESIZEX .EQ 4 @@ -200,15 +216,6 @@ S.MITEM.ID .EQ 10 * S.MITEM .EQ 12 *-------------------------------------- -BM.ID.APPLE .EQ 2 -BM.ID.CLOSE .EQ 4 -BM.ID.MAX .EQ 6 -BM.ID.MIN .EQ 8 -BM.ID.LEFT .EQ 10 -BM.ID.RIGHT .EQ 12 -BM.ID.UP .EQ 14 -BM.ID.DOWN .EQ 16 -*-------------------------------------- S.BUT.F.DISABLED .EQ %10000000 * S.BUT.S.PUSHED .EQ %10000000 diff --git a/LIB/LIBGUI.S.MBAR.txt b/LIB/LIBGUI.S.MBAR.txt index 0496b63b..ee358c45 100644 --- a/LIB/LIBGUI.S.MBAR.txt +++ b/LIB/LIBGUI.S.MBAR.txt @@ -108,13 +108,13 @@ MBAR.GetData lda ZPMENUPtr jsr SkipStrZPtr1 skip "TEXT\0" + lda (ZPPtr1) + jsr MBAR.AddByte pMENU + ldy #1 lda (ZPPtr1),y jsr MBAR.AddByte pMENU+1 - lda (ZPPtr1) - jsr MBAR.AddByte pMENU - lda #2 jsr SkipAPtr1 stkip pMENU bra .1 @@ -176,9 +176,15 @@ MBAR.Enter ldy #S.WND.pMBAR >LDYA ZPPtr1 >STYA ZPPtr2 save MBITEM to activate - + .2 jsr MBAR.NextMBItem bra .1 + +*-------------------------------------- + +.8 clc +.9 rts + *-------------------------------------- .3 lda ZPPtr2 ora ZPPtr2+1 @@ -215,6 +221,9 @@ MBAR.Enter ldy #S.WND.pMBAR .5 eor #S.MBITEM.S.SELECTED sta (ZPPtr1),y + >LDYA CB.Cache+S.CB.X1 + >STYA DX + jsr MBAR.DrawMBItem bcs .9 @@ -222,10 +231,25 @@ MBAR.Enter ldy #S.WND.pMBAR bra .4 .7 >LDYA L.WND.Screen - jmp CB.FlushBufToYA + jsr CB.FlushBufToYA + bcs .9 + + >LDYA CB.Cache+S.CB.Y2 + >STYA DY -.8 clc -.9 rts + ldy #S.MBITEM.pMENU + lda (ZPPtr2),y + pha + iny + lda (ZPPtr2),y + ply + >DEBUG + jsr MENU.New.I + bcs .99 + + jmp MENU.Draw + +.99 rts *-------------------------------------- MBAR.Leave diff --git a/LIB/LIBGUI.S.MBOX.txt b/LIB/LIBGUI.S.MBOX.txt index 5c04783c..a78b6a4b 100644 --- a/LIB/LIBGUI.S.MBOX.txt +++ b/LIB/LIBGUI.S.MBOX.txt @@ -1,7 +1,7 @@ NEW AUTO 3,1 *-------------------------------------- -* iButton MsgBox(hWND, pTITLE, pTEXT, pBM, iButtons) +* idButton MsgBox(hWND, pTITLE, pTEXT, pBM, idButtons) *-------------------------------------- *-------------------------------------- diff --git a/LIB/LIBGUI.S.MENU.txt b/LIB/LIBGUI.S.MENU.txt index c8159d25..17c3b99c 100644 --- a/LIB/LIBGUI.S.MENU.txt +++ b/LIB/LIBGUI.S.MENU.txt @@ -6,7 +6,8 @@ NEW MENU.New >PULLW DY >PULLW DX >PULLYA - >STYA ZPPtr1 MENU definition + +MENU.New.I >STYA ZPPtr1 MENU definition >STYA ZPObjPtr for pass #2 ldx MENU.Stack.Cnt diff --git a/LIB/LIBGUI.S.txt b/LIB/LIBGUI.S.txt index f8b3f99f..57126b11 100644 --- a/LIB/LIBGUI.S.txt +++ b/LIB/LIBGUI.S.txt @@ -445,7 +445,6 @@ TEXTBUF .BS 16 for composing HotKey strings PREFS.BestViewedX .DA #$FC PREFS.MBarXMargin .DA #5 * -PREFS.bSYSBARTOP .DA #0 PREFS.MenuColor .DA #C.WHITE PREFS.SYSBARCOLOR .DA #C.WHITE PREFS.BorderColor .DA #C.BLACK diff --git a/ROOT/asmtest/TESTGUI.S.txt b/ROOT/asmtest/TESTGUI.S.txt index ea84d4ce..95b25bdb 100644 --- a/ROOT/asmtest/TESTGUI.S.txt +++ b/ROOT/asmtest/TESTGUI.S.txt @@ -42,6 +42,11 @@ L.WND.TITLE .DA WND.TITLE L.WND.MBAR .DA WND.MBAR L.WND.STATUS .DA WND.STATUS L.WND.Test.fPaint .DA WND.Test.fPaint +L.MENU.FILE .DA MENU.FILE +L.MENU.EDIT .DA MENU.EDIT +L.MENU.OPTIONS .DA MENU.OPTIONS +L.MENU.HELP .DA MENU.HELP +L.MENU.SUBMENU .DA MENU.SUBMENU .DA 0 *-------------------------------------- @@ -110,6 +115,17 @@ WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F. >PUSHW L.WND.TITLE >LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp + >LDYA L.MENU.FILE + >STYA WND.MBAR.1 + >LDYA L.MENU.EDIT + >STYA WND.MBAR.2 + >LDYA L.MENU.OPTIONS + >STYA WND.MBAR.3 + >LDYA L.MENU.HELP + >STYA WND.MBAR.4 + >LDYA L.MENU.SUBMENU + >STYA MENU.OPTIONS.2 + >PUSHB hWND >PUSHW L.WND.MBAR >LIBCALL hLIBGUI,LIBGUI.WND.SetMBar @@ -155,16 +171,16 @@ WND.TITLE .AZ "Libgui ASM API test" WND.STATUS .AZ "Window status bar message" *-------------------------------------- WND.MBAR .AZ "File" - .DA WND.MENU.FILE +WND.MBAR.1 .DA MENU.FILE .AZ "Edit" - .DA WND.MENU.EDIT +WND.MBAR.2 .DA MENU.EDIT .AZ "Options" - .DA WND.MENU.OPTIONS +WND.MBAR.3 .DA MENU.OPTIONS .AZ "?" - .DA WND.MENU.HELP +WND.MBAR.4 .DA MENU.HELP .DA #0 *-------------------------------------- -WND.MENU.FILE .DA #S.MITEM.T.ITEM +MENU.FILE .DA #S.MITEM.T.ITEM .DA #02 ID .DA #KEYMOD.CTRL,#'N' .DA 0 pICON @@ -196,7 +212,7 @@ WND.MENU.FILE .DA #S.MITEM.T.ITEM .DA #0 *-------------------------------------- -WND.MENU.EDIT .DA #S.MITEM.T.ITEM +MENU.EDIT .DA #S.MITEM.T.ITEM .DA #12 ID .DA #KEYMOD.CTRL,#'X' .DA 0 pICON @@ -216,8 +232,7 @@ WND.MENU.EDIT .DA #S.MITEM.T.ITEM .DA #0 *-------------------------------------- -WND.MENU.OPTIONS - .DA #S.MITEM.T.ITEM +MENU.OPTIONS .DA #S.MITEM.T.ITEM .DA #18 ID .DA #0,#0 .DA 0 pICON @@ -226,13 +241,13 @@ WND.MENU.OPTIONS .DA #S.MITEM.T.SEP .DA #S.MITEM.T.SUBMENU - .DA WND.MENU.SUB +MENU.OPTIONS.2 .DA MENU.SUBMENU .DA 0 pICON .AZ "Sub Menu" .DA #0 *-------------------------------------- -WND.MENU.HELP .DA #S.MITEM.T.ITEM +MENU.HELP .DA #S.MITEM.T.ITEM .DA #20 ID .DA #0,#0 .DA 0 pICON @@ -240,7 +255,7 @@ WND.MENU.HELP .DA #S.MITEM.T.ITEM .DA #0 *-------------------------------------- -WND.MENU.SUB .DA #S.MITEM.T.ITEM +MENU.SUBMENU .DA #S.MITEM.T.ITEM .DA #18 ID .DA #0,#0 .DA 0 pICON