Ich habe jetzt wind_update()-Aufrufe eingebaut, um andere Prozesse zu blockieren, und form_dial()-Aufrufe zum Wiederherstellen des Bildschirms ...
Genau. Auch die Maus-Semaphore solltest Du einbauen. Eigentlich bräuchte auch die Tastatur eine Semaphore - aber die gibt´s nicht, ist wohl schlicht in GEM vergessen worden (was indes selten auffällt); muß man bei Bedarf ´von Hand´ stricken.
Allerdings fehlt noch irgendetwas, um nach Programmende die Menüleiste wiederherzustellen.
Ja, nachdem man die anderen Dinge brav erledigt hat, dann kommt man schließlich an diesen Punkt. Es handelt sich (ich stelle das mal in aller Bescheidenheit fest, auch wenn ich jetzt womöglich wieder mal den Zorn der Götter errege) imho um eine
Macke - die XaAES indes mit anderen Zelebritäten wie zB. MAGX gemein hat:
Es ist nämlich so, daß afaik nirgends in den GEM-Unterlagen festgelegt ist, daß ein ´richtiges´ GEM-Prg. eine Menue-Leiste haben
muß, aber MAGX & Co.* gehen genau davon aus! Weil dem so ist und es wenig Sinn hat, an dieser Macke herumzukritteln (man möchte ja, daß eigene Prge. überall laufen), bleibt nur ein ´Workaround´:
Grundsätzlich ist der auf zweierlei Art möglich: Entweder muß man die Menue-Zone vor Benutzung retten und bei Prg.-Ende selbst restaurieren, oder aber, imho billiger: Man installiert eine ´triviale´ MenueLeiste (ohne sie je zu benutzen), dann erledigt das AES die Restaurierung selbst.
*
In NAES besteht das Problem nur aus einer einzigen PixelZeile (weil iGgs. zu den Konkurrenten fast der gesamte Bildschirm zur Verfügung steht), die auch noch schwarz ist und deshalb kaum auffällt. Warum macht XaAES das nicht genauso?! Ach, das ist ´nicht mein Bier´. Warum die Eitelkeiten reizen...