Thanks to Jochen Merz I can now release a very new version of QMenu (menu_rext), along with the original manual: QMenu download page
Earlier releases done by me had a few annoying bugs which I was now able to track down. The problems actually were not located in the QMenu source code itself, but Jochen had to slightly adapt his copy of the Tony Tebby libraries, changes which were sadly missing in my copy of those libraries… a pointer was not saved and thus all sort of havoc ensued. This was for example why the “file extension filter” in the file select box wasn’t working in any binary assembled by me.
Furthermore I tried to address the incompatibilities with QDT. It took me quite a long time to realize that the problem is actually pretty simple: QMenu v7.68 added a “move” button to the LIST dialog and of course this increased the size of the dialog somewhat. No big deal, right?
Well, QDT, not having any main window, employs a special EXE to invoke QMenu and the window outline this EXE provides only has enough space for the smaller pre-v7.68 menu… in v8.03 I have now included the old menu as a fallback option for this special case when the newer menu doesn’t fit. This way QMenu seems to be compatible to QDT again, but if you know of any more problems please contact me or write on the ql-users list.
Congratulations Marcel, thank you for all the support you are providing to the QL community.
Giorgio
Vielen Dank dass Du die wichtigen Sachen weiter pflegst
ich habe noch eine Frage zu list_select
gibt es eine Möglichkeit den Cursor hinter dem zu editierenden String zu stellen ?
Bug
wenn name$ zu klein dimensioniert wird zB. name$(nr ,5)
will man nun den string editieren -> Absturz des Systems
100 CLEAR
110 nr = 10 : DIM name$(nr,50),name%(nr)
120 :
130 name%(3) = 128 :name%(5) = 16 :name%(6) = 16384:
140 :
150 RESTORE
160 FOR x = 0 TO nr : READ name$(x)
170 :
180 REPeat loop
190 r = LIST_SELECT (“Test”,name$,name%,4,,,,)
200 SELect ON r
205 :
210 = -2
220 FOR a = 1 TO nr
230 s = name%(a)&&(BIN$ (16,16))
240 IF s = 256
250 PRINT #1, name$(a)
260 END IF
288 NEXT a
289 :
290 = -1 :EXIT loop
295 :
300 = REMAINDER
310 END SELect
330 END REPeat loop
340 :
350 :
360 :
370 DATA “Paul”,”Fred”,”christopher”,”Ann”
380 DATA “Mary”,”Michael”,”try editing this string”
390 DATA “without flags = 4″,”Christine”,”Stephanie”,”Nicholas”
Grüsse aus der Schweiz
Markus
Hallo Markus, danke für das Feedback, ich schau mir das in Ruhe mal an!
Gruß Marcel