EasyMouse V1.0 (c)1989 Oliver Enseling -------------------------------------- Everybody that works on the Amiga with the Workbench and all the windows on it gets slightly irritated about the circumstantial procedures and acrobatic movements that have to be performed with the mouse to arrange the windows in a suitable way. Besides that the handling of inputs from that keypad could be designed a bit more elegant. To do so EasyMouse was created. Though already there ecxists already a bunch of similar programs I decided to write my one of my own that exactly fits my needs. EasyMouse can be started from Workbench or via "RUN EasyMouse" from the CLI. I recommend that EasyMouse is being started in the startup-sequence. After it is started EasyMouse opens a window on the Workbench screen showing the time and the memory available in system. Besides this window has a pull-down menu which is explained later on. First let me shortly elucidate what exactly EasyMouse does. After the Window is set up EasyMouse installes an input handler. The input handler is a routine, that checks all the input events from the mouse and the keypad and calls routines that do certain things according to those input events. For example all the normal window operations like dragging them around or pushing them to the back etc. are performed by the standard intuition input handler. Now, EasyMouse installs its own handler that gets executed before the intuition one. This handler performs the following operations: - accelerating the mouse - activating windows automatically - pushing windows to the back or pulling them to the front by simple mouse clicks - turning off the screen display after a certain time span - turning of the mouse pointer - simplify the input of qualified keycodes All these operations work permanently i.e. when they are turned on they are applied on every input event until they are turned off. Let me now depict the above mentioned menu of the EasyMouse window. It consists of two menu columns. The first one entitled "Actions" has all the actions in it. It serves as a help menu to show all the actions EasyMouse can perform and how they can be invoked. Besides every menu item a keycode can be found that performes the respective action. You have to press the given key and the Shift-Alt. Some of the actions may be invoked directly from the meZ80, "150K"}, IText51 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "200K"}, IText50 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "250K"}, IText49 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "500K"}, IText48 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 1M"}, IText47 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Anzeige"}, IText46 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Uhrzeit"}, IText45 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Speicher gesamt"}, IText44 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Speicher CHIP"}, IText43 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Speicher FAST"}, IText42 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Bildschirm ausschalten"}, IText41 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " Aus "}, IText40 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "1/2 min"}, IText39 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 1 min"}, IText38 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 2 min"}, IText37 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 3 min"}, IText36 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 5 min"}, IText35 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "10 min"}, IText34 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 15 min"}, IText33 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 30 min"}, IText32 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Maus ausschalten"}, IText31 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " Aus "}, IText30 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 1 sek"}, IText29 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 2 sek"}, IText28 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 3 sek"}, IText27 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 5 sek"}, IText26 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "10 sek"}, IText25 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "15 sek"}, IText24 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "30 sek"}, IText23 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 1 min"}, IText22 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Mausbeschleunigung"}, IText21 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " Aus "}, IText20 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "2"}, IText19 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "3"}, IText18 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 4"}, IText17 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "5"}, IText16 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "6"}, IText15 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 7"}, IText14 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "8"}, IText13 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "9"}, IText12 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Beschleunigungsschranke"}, IText11 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " Aus "}, IText10 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "1"}, IText9 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "2"}, IText8 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 3"}, IText7 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "4"}, IText6 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "5"}, IText5 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, " 6"}, IText4 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "7"}, IText3 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "8"}, IText2 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Qualifizierer sammeln"}, IText1 = {3, 1, COMPLEMENT, 19, 0, &TOPAZ80, "Konfiguration Speichern"}; #else IText87 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Screen display off "}, IText86 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Screen to back <->"}, IText84 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to back "}, IText83 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to front "}, IText82 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window small <,>"}, IText81 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window big <.>"}, IText80 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to left "}, IText79 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to right "}, IText78 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to top "}, IText77 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Window to bottom "}, IText76 = {3, 1, COMPLEMENT, 0, 0, &TOPAZ80, "Activate