(******************************************************************************) (* This MODULE is Public Domain. Copy me like a beast! *) (* Christian Ledermann *) (* W”lfelkofen 2 *) (* 84166 Adlkofen *) (******************************************************************************) (* *) (* Started: 20.12.92 03:54:30 *) (* Version: 20.01.94 04:12:54 *) (* *) (******************************************************************************) (* *) (* Diese Software ist ohne jede Garantie. Ich verspreche *) (* keinerlei Wartung und bernehme keine Verantwortung fr Sch„den die *) (* durch die Benutzung dieses Programmes entstehen. *) (* Jegliche Ersatzansprche lehne ich ab. *) (* *) (******************************************************************************) DEFINITION MODULE WindowMenue; FROM SYSTEM IMPORT ADDRESS; VAR MenuX,MenuY,MenuW,MenuH:INTEGER; (*********************************************************************) (* An dieser Position ist das WindowMen installiert worden *) (*********************************************************************) PROCEDURE InstallMenu(WindowHandle : INTEGER; MenuTree:ADDRESS):BOOLEAN; (*********************************************************************) (* PROCEDURE um in einem (offenen) Fenster mit Handle WindowHandle *) (* eine Menzeile mit der ADDRESSe MenuTree zu installieren *) (* Das Fenster muss(!) als Elemente mindestens Titel- und Infozeile *) (* In der Infozeile wird das Men installiert. *) (* Portiert von c->M2 Orginal in ST-COMPUTER 9/90 *) (* Achtung ! Nach jedem Window-Event (MOVEen,SIZEen)muž die Menzeile*) (* explizit wieder installiert werden, weil sonst das Men irgendwo *) (* bzw. genau da wo es zum ersten Male installiert wurde auftaucht *) (* und das hat sehr seltsame Auswirkungen. *) (* Genauso muss der Anwender selbst berwachen das wenn ein anderes *) (* Fenster Getopt wird, oder das Fenster geschlossen wird die *) (* Window-Menzeile wieder ausgeschaltet wird! Da GEM immer nur eine *) (* Menzeile verwaltet muss bei einem Nebeneinander verschiedener *) (* Menzeilen je nach Bedarf umgeschaltet werden z.B durch *) (* Mouse1Event+Mouse2Event in EventMultiple *) (* wobei Mouse1Event das betreten der normalen Menzeile berwacht *) (* und Mouse2Event berwacht bei bedarf die Windowmenzeile -> bei *) (* betreten von Rechteck MenuX,MenuY,MenuW,MenuH erfolgt ein Aufruf *) (* von MenuBar(Menutree,1) oder besser von InstallMenu. *) (* Die beiben MouseEvents k”nnen sich ja gegenseitig umschalten... *) (*********************************************************************) END WindowMenue.