Skip to content

Commit 7ba87b7

Browse files
committed
Clarify scrolling submenu behavior
Contributed by Lonny Pursell.
1 parent de98c0b commit 7ba87b7

File tree

4 files changed

+56
-26
lines changed

4 files changed

+56
-26
lines changed

gem/aes/menu_/menu_attach.ui

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,9 +167,9 @@ Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis der Wert 0
167167
zurckgegeben wird.
168168

169169
!item [Verfgbar:]
170-
Diese Funktion ist nur Verfgbar seit AES Version 3.30 und
171-
hher. In AES Version 4.0 und gržer sollte (!link [appl_getinfo][%apgi_9])
172-
(Opcode 9) benutzt werden ob er Aufruf mglich ist.
170+
Diese Funktion ist nur verf(!uumlaut)gbar seit AES Version 3.30 und
171+
h(!oumlaut)her. In AES Version 4.0 und gr(!oumlaut)žer sollte (!link [appl_getinfo][%apgi_9])
172+
(Opcode 9) benutzt werden ob der Aufruf m(!oumlaut)glich ist.
173173

174174
!item [Gruppe:]
175175
(!link [Mens][Menfunktionen])

gem/aes/menu_/menu_popup.ui

Lines changed: 47 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,25 @@ Y-coordinate of the menu's top left corner
3333
Pointer to the data of the selected menu entry
3434
!end_xlist
3535

36+
If (!I)mn_scroll(!i) of MENU is set to 0 when menu_popup is called, a
37+
non-scrollable popup menu will be displayed.
38+
39+
if (!I)mn_scroll(!i) of MENU is set to >0 when menu_popup is called, a
40+
scrolling popup menu will be displayed; height of MN_SET determines
41+
it's height in items (note that Atari's AES implements up/down arrows
42+
within the popup for scrolling to maintain the same look and feel of
43+
dropdown menus as they can be attached to menubar items, note that NAES
44+
mimics this exact behavior). See also menu_settings.
45+
46+
As of (!nolink [AES]) version 4.1, if (!I)mn_scroll(!i) of MENU is set to -1
47+
when menu_popup is called, a dropdown list box instead of a popup menu will be
48+
displayed; this will have a scroll bar if eight entries or more exist.
49+
3650
!item [(!nolink [Return]) value:]
3751
An error has arisen only if the value 0 is returned.
3852

3953
!item [Availability:]
4054
This function is available only with (!nolink [AES]) versions 3.30 and above.
41-
As of (!nolink [AES]) version 4.1, if (!I)mn_scroll(!i) of MENU is set to -1
42-
when menu_popup is called, a dropdown list box instead of a popup menu will be
43-
displayed; this will have a scroll bar if eight entries or more exist.
4455

4556
The presence of this function can be ascertained by a call of
4657
(!link [appl_getinfo][%apgi_9]) (opcode 9).
@@ -106,7 +117,7 @@ int_out !! int_out[0] !! Return value
106117
(!begin_liste) [Beschreibung]
107118

108119
!item [Name:]
109-
¯Menu (!nolink [Popup])® - bernimmt die Darstellung und Abarbeitung eines (!nolink [Popup])-Mens
120+
¯Menu (!nolink [Popup])® - (!uumlaut)bernimmt die Darstellung und Abarbeitung eines (!nolink [Popup])-Men(!uumlaut)s
110121

111122
!item [AES-Nummer:]
112123
36
@@ -116,7 +127,7 @@ int16_t menu_popup ( MENU *me_menu, int16_t me_xpos,
116127
int16_t me_ypos, MENU *me_mdata );
117128

118129
!item [Beschreibung:]
119-
Die Funktion bernimmt die Darstellung und Bearbeitung eines (!nolink [Popup])-Mens. Es
130+
Die Funktion (!uumlaut)bernimmt die Darstellung und Bearbeitung eines (!nolink [Popup])-Men(!uumlaut)s. Es
120131
gilt:
121132

122133
!begin_xlist !compressed [Parameter]
@@ -127,35 +138,51 @@ Bedeutung
127138
!item [me_menu]
128139
Zeiger auf die Struktur des (!link [Popups][MENU])
129140
!item [me_xpos]
130-
x-Koordinate des Mens
141+
x-Koordinate des Men(!uumlaut)s
131142
!item [me_ypos]
132-
y-Koordinate des Mens
143+
y-Koordinate des Men(!uumlaut)s
133144
!item [me_mdata]
134-
Zeiger auf die Daten des selektierten Meneintrages.
145+
Zeiger auf die Daten des selektierten Men(!uumlaut)eintrages.
135146
!end_xlist
136147

148+
Wenn (!I)mn_scroll(!i) von MENU auf 0 gesetzt ist wenn menu_popup
149+
aufgerufen wird, wird ein nicht scrollbares Popup-Men(!uumlaut) angezeigt.
150+
151+
Wenn (!I)mn_scroll(!i) von MENU auf >0 gesetzt ist wenn menu_popup
152+
aufgerufen wird, wird ein scrollbares Popup-Men(!uumlaut) angezeigt; der Wert (!I)height(!i) von
153+
MN_SET bestimmt seine H(!oumlaut)he in Elementen (beachten Sie, dass Ataris AES
154+
Auf-/Ab-Pfeile innerhalb des Popups zum Scrollen implementiert, um das
155+
gleiche Erscheinungsbild von Dropdown-Men(!uumlaut)s beizubehalten, wie sie an
156+
Men(!uumlaut)leistenelemente angeh(!aumlaut)ngt werden k(!oumlaut)nnen; beachten Sie, dass NAES
157+
genau dieses Verhalten nachahmt). Siehe auch menu_settings.
158+
159+
Ab (!nolink [AES]) Version 4.1 wird, wenn (!I)mn_scroll(!i) von MENU
160+
auf -1 gesetzt ist wenn menu_popup aufgerufen wird, ein
161+
Dropdown-Listenfeld statt eines Popup-Men(!uumlaut)s angezeigt; dieses verf(!uumlaut)gt
162+
(!uumlaut)ber eine Bildlaufleiste, wenn acht oder mehr Eintr(!aumlaut)ge vorhanden sind.
163+
137164
!item [Ergebnis:]
138165
Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis der Wert 0
139-
zurckgegeben wird.
166+
zur(!uumlaut)ckgegeben wird.
140167

141-
!item [Verfgbar:]
142-
This function is only available with AES versions 3.30 and
143-
above.
168+
!item [Verf(!uumlaut)gbar:]
169+
Diese Funktion ist nur verf(!uumlaut)gbar seit (!nolink [AES]) Version 3.30 und
170+
h(!oumlaut)her.
144171

145-
Das Vorhandensein dieser Funktion kann ber einen Aufruf
172+
Das Vorhandensein dieser Funktion kann (!uumlaut)ber einen Aufruf
146173
von (!link [appl_getinfo][%apgi_9]) (Opcode 9) festgestellt werden.
147174

148175
!item [Gruppe:]
149-
(!link [Mens][Menfunktionen])
176+
(!link [Men(!uumlaut)s][Men(!uumlaut)funktionen])
150177

151178
!item [Querverweis:]
152-
(!link [Binding] [Bindings fr menu_popup]) ~ menu_settings ~ XMEN_MGR
179+
(!link [Binding] [Bindings f(!uumlaut)r menu_popup]) ~ menu_settings ~ XMEN_MGR
153180

154181
(!ende_liste)
155182

156183

157184

158-
!begin_node Bindings fr menu_popup
185+
!begin_node Bindings f(!uumlaut)r menu_popup
159186
!ignore_index
160187

161188
(!begin_liste) [GEM-Arrays]
@@ -183,10 +210,10 @@ int16_t menu_popup (MENU *me_menu, int16_t me_xpos,
183210
Adresse !! Feldelement !! Belegung
184211
!hline
185212
control !! control[0] !! 36 # Opcode der Funktion
186-
control+2 !! control[1] !! 2 # Eintrge in int_in
187-
control+4 !! control[2] !! 1 # Eintrge in int_out
188-
control+6 !! control[3] !! 2 # Eintrge in addr_in
189-
control+8 !! control[4] !! 0 # Eintrge in addr_out
213+
control+2 !! control[1] !! 2 # Eintr(!aumlaut)ge in int_in
214+
control+4 !! control[2] !! 1 # Eintr(!aumlaut)ge in int_out
215+
control+6 !! control[3] !! 2 # Eintr(!aumlaut)ge in addr_in
216+
control+8 !! control[4] !! 0 # Eintr(!aumlaut)ge in addr_out
190217
int_in !! int_in[0] !! me_xpos
191218
int_in+2 !! int_in[1] !! me_ypos
192219
addr_in !! addr_in[0] !! me_menu

gem/aes/menu_/menu_settings.ui

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ kommen.
138138
Die Funktion liefert stets den Wert 1 zurck.
139139

140140
!item [Verfgbar:]
141-
This function is only available with AES versions 3.30 and
142-
above.
141+
Diese Funktion ist nur verf(!uumlaut)gbar seit (!nolink [AES]) Version 3.30 und
142+
h(!oumlaut)her.
143143

144144
Das Vorhandensein dieser Funktion kann ber einen Aufruf
145145
von (!link [appl_getinfo][%apgi_9]) (Opcode 9) festgestellt werden.

gem/aes/structures/menu.ui

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ typedef struct
1212
/* 0 - The menu will not scroll */
1313
/* >0 - The menu will scroll (no scrollbar) */
1414
/* -1 - The menu will scroll (with scrollbar) */
15+
/* (AES >= 4.1) */
1516
int16_t mn_keystate; /* The [CTRL], [ALT], [SHIFT] key state at */
1617
/* the time the mouse button was pressed */
1718
} MENU;
@@ -32,7 +33,9 @@ typedef struct
3233
int16_t mn_item; /* Anfangs-Meneintrag (bestimmt */
3334
/* die Position des Mens */
3435
int16_t mn_scroll; /* 0 = nicht scrollen */
35-
/* >0 = scrollen */
36+
/* >0 = scrollen (ohne scrollbar) */
37+
/* -1 = scrollen (mit scrollbar) */
38+
/* (AES >= 4.1) */
3639
int16_t mn_keystate; /* Tastaturstatus (Shift, Control */
3740
/* bzw. Alternate) */
3841
} MENU;

0 commit comments

Comments
 (0)