From 0740a8ba9e23c76d26627c4d3482c2952091ed8f Mon Sep 17 00:00:00 2001 From: florian Date: Thu, 22 Jan 2009 15:52:13 +0000 Subject: =?UTF-8?q?Bildschirmtastatur=20und=20Tray-Icons=20nun=20auch=20f?= =?UTF-8?q?=C3=BCr=20ahk=5Fkbdneo2.ahk?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.neo-layout.org@1510 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- .../AHK_f\303\274r_kbdneo2/ahk_kbdneo2.ahk" | 268 ++++++++++++++++++++- 1 file changed, 265 insertions(+), 3 deletions(-) diff --git "a/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/ahk_kbdneo2.ahk" "b/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/ahk_kbdneo2.ahk" index 5dad2c7..b1054dc 100644 --- "a/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/ahk_kbdneo2.ahk" +++ "b/windows/kbdneo2/Treiber/AHK_f\303\274r_kbdneo2/ahk_kbdneo2.ahk" @@ -1,4 +1,47 @@ -;Inititalisierung +;********************* +; Anfangsbedingungen * +;********************* +name=Neo 2.0 (Erweiterung für nativen Treiber) +enable=Aktiviere %name% +disable=Deaktiviere %name% +#usehook on +#LTrim + +; Benutze Bilder wennsie im aktuellen Verzeichnis vorhanden sind +if (FileExist("ebene1.png")&&FileExist("ebene2.png")&&FileExist("ebene3.png")&&FileExist("ebene4.png")&&FileExist("ebene5.png")&&FileExist("ebene6.png")) + zeigeBildschirmTastatur = 1 +if (FileExist("neo.ico")&&FileExist("neo_aus.ico")) + iconBenutzen=1 + + + +;************************* +; Menü des Systray-Icons * +;************************* +if (iconBenutzen) + menu,tray,icon,neo.ico,,1 +menu,tray,nostandard +menu,tray,add,AHK öffnen,open + menu,helpmenu,add,Info,about + menu,helpmenu,add + menu,helpmenu,add,http://autohotkey.com/,autohotkey + menu,helpmenu,add,http://www.neo-layout.org/,neo +menu,tray,add,Hilfe,:helpmenu +menu,tray,add +menu,tray,add,%disable%,togglesuspend +menu,tray,add +menu,tray,add,Skript Bearbeiten,edit +menu,tray,add,Neu Laden,reload +menu,tray,add +menu,tray,add,Nicht im Systray anzeigen,hide +menu,tray,add,%name% beenden,exitprogram +menu,tray,default,%disable% +menu,tray,tip,%name% + + +;****************** +; Initialisierung * +;****************** isShiftRPressed := 0 isShiftLPressed := 0 isShiftPressed := 0 @@ -12,11 +55,11 @@ isMod4Pressed := 0 isMod4Locked := 0 isMod4Active := 0 - ~F24::return -; alle Modifier werden gehookt + +; benötigte Modifier werden gehookt ~*SC136:: if (isShiftLPressed and !isShiftRPressed) @@ -203,3 +246,222 @@ if (isMod4Active and !isMod3Pressed) Ifwinactive ahk_class Notepad++ Sendinput {Blind}{BACKSPACE}{ENTER} return + + + + + +;***************** +; Menüfunktionen * +;***************** +togglesuspend: + if A_IsSuspended { + menu,tray,rename,%enable%,%disable% + menu,tray,tip,%name% + if (iconBenutzen) + menu,tray,icon,neo.ico,,1 + suspend,off ; Schaltet Suspend aus + } else { + menu,tray,rename,%disable%, %enable% + menu,tray,tip,%name% : Deaktiviert + if (iconBenutzen) + menu,tray,icon,neo_aus.ico,,1 + suspend,on ; Schaltet Suspend ein + } return + +about: + msgbox, 64, NEO 2.0 – Ergonomische Tastaturbelegung, + ( + %name% + `nDas Neo-Layout ist ein alternatives deutsches Tastaturlayout + Näheres finden Sie unter http://neo-layout.org/. + `nDieses Skript erweitert den nativen Tastaturtreiber um + einige fehlende Funktionen. + ) +return + +neo: + run http://neo-layout.org/ +return + +autohotkey: + run http://autohotkey.com/ +return + +open: + ListLines ; shows the Autohotkey window +return + +edit: + edit +return + +reload: + Reload +return + +hide: + menu, tray, noicon +return + +exitprogram: + exitapp +return + + + + +;********************* +; BildschirmTastatur * +;********************* + +guiErstellt = 0 +alwaysOnTop = 1 + +*F1:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch1 + else send {blind}{F1} +return + +*F2:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch2 + else send {blind}{F2} +return + +*F3:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch3 + else send {blind}{F3} +return + +*F4:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch4 + else send {blind}{F4} +return + +*F5:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch5 + else send {blind}{F5} +return + +*F6:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Switch6 + else send {blind}{F6} +return + +*F7:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto Show + else send {blind}{F7} +return + +*F8:: + if (isMod4Pressed&&zeigeBildschirmTastatur) + goto ToggleAlwaysOnTop + else send {blind}{F8} +return + +Switch1: + tImage := "ebene1.png" + goto Switch +Return + +Switch2: + tImage := "ebene2.png" + goto Switch +Return + +Switch3: + tImage := "ebene3.png" + goto Switch +Return + +Switch4: + tImage := "ebene4.png" + goto Switch +Return + +Switch5: + tImage := "ebene5.png" + goto Switch +Return + +Switch6: + tImage := "ebene6.png" + goto Switch +Return + +Switch: + if guiErstellt { + if (Image = tImage) + goto Close + else { + Image := tImage + SetTimer, Refresh + } + } else { + Image := tImage + goto Show + } +Return + +Show: + if guiErstellt { + goto Close + } else { + if (Image = "") { + Image := "ebene1.png" + } + yPosition := A_ScreenHeight -270 + Gui,Color,FFFFFF + Gui,Add,Button,xm+5 gSwitch1,F1 + Gui,Add,Text,x+5,kleine Buchstaben + Gui,Add,Button,xm+5 gSwitch2,F2 + Gui,Add,Text,x+5,große Buchstaben + Gui,Add,Button,xm+5 gSwitch3,F3 + Gui,Add,Text,x+5,Satz-/Sonderzeichen + Gui,Add,Button,xm+5 gSwitch4,F4 + Gui,Add,Text,x+5,Zahlen / Steuerung + Gui,Add,Button,xm+5 gSwitch5,F5 + Gui,Add,Text,x+5,Sprachen + Gui,Add,Button,xm+5 gSwitch6,F6 + Gui,Add,Text,x+5,Mathesymbole + Gui,Add,Button,xm+5 gShow,F7 + Gui,Add,Text,x+5,An / + Gui,Add,Text,y+3,Aus + Gui,Add,Button,x+10 y+-30 gShow,F8 + Gui,Add,Text,x+5,OnTop + Gui,Add,Picture,AltSubmit ys w564 h200 vPicture,%Image% + Gui,+AlwaysOnTop + Gui,Show,y%yposition% Autosize +; SetTimer,Refresh + guiErstellt = 1 + } +Return + +Close: + guiErstellt = 0 + Gui,Destroy +Return + +Refresh: + If (Image != OldImage) { + GuiControl,,Picture,%Image% + OldImage := Image + } +Return + +ToggleAlwaysOnTop: + if alwaysOnTop { + Gui, -AlwaysOnTop + alwaysOnTop = 0 + } else { + Gui, +AlwaysOnTop + alwaysOnTop = 1 + } +Return \ No newline at end of file -- cgit v1.2.3