;Language Translator ;Version 1.00 ;by LemonButt (lemonbutt@graffiti.net) Menu Menubar { - Language Translator: { LT } - } On *:Sockopen:LT: { Sockwrite -tn $Sockname GET $+(http://www.babelfish.altavista.com/tr?lp=,%~~lt.language,&trtext=,%~~lt.text,) HTTP/1.1 Sockwrite -tn $Sockname Host: babelfish.altavista.com $+ $Str($Crlf,2) Sockwrite -tn $Sockname User-Agent: mIRC Sockwrite -tn $Sockname $Crlf Unset %~~lt.language Unset %~~lt.text } On *:Sockread:LT: { If ($Sockerr) { Sockclose $Sockname | Echo -a An error has occured: $Sockerr | Halt } Elseif (%~~tbsitu.updated == $Null) { Sockread %~~lt.sockread If (*
* Iswm %~~lt.sockread) && ($Dialog(LT) != $Null) { Set %~~lt.settings $Gettok(%~~lt.settings,1-2,32) $Calc($Gettok(%~~lt.settings,3,32) + 1) Did -ra LT 105 $Gettok($Gettok(%~~lt.sockread,3,60),2,62) Did -ra LT 110 Total Messages Translated: $Gettok(%~~lt.settings,3,32) } } Unset %~~lt.sockread } On *:Load: { Set %~~lt.settings 3 4 0 } On *:Unload: { Unset %~~lt.* } Dialog LT { Title "Language Translator [/lt]" Size -1 -1 205 110 Option DBU Box "Source", 100, 5 5 195 40 Combo 101, 10 14 50 10, Drop Edit "", 102, 65 14 130 25, Multi, AutoVS Box "Translation", 103, 5 50 195 40 Combo 104, 10 59 50 10, Drop Edit "", 105, 65 59 130 25, Multi, AutoVS Button "Translate", 106, 10 29 50 10, OK Button "Swap Languages", 107, 10 74 50 10 Button "About", 108, 115 95 40 10 Button "Close", 109, 160 95 40 10 Text "", 110, 5 96 110 10 } On *:Dialog:LT:*:*: { If ($Devent == Init) { Set -u0 %~~lt.init 1 While ($LT.Language(%~~lt.init) != $Null) { Did -a $Dname 101,104 $LT.Language(%~~lt.init) | Inc %~~lt.init } Did -c $Dname 101 $Gettok(%~~lt.settings,1,32) Did -c $Dname 104 $Gettok(%~~lt.settings,2,32) Did -ra $Dname 110 Total Messages Translated: $Gettok(%~~lt.settings,3,32) Did -f $Dname 106 } If ($Devent == Sclick) { If ($Did == 106) { If ($Did($Dname,101).sel != $Did($Dname,104).sel) && ($Did($Dname,102) != $Null) { LT.Translate $+($LT.Language($Did($Dname,101).seltext),_,$LT.Language($Did($Dname,104).seltext)) $Did($Dname,102) } ElseIf ($Did($Dname,102) == $Null) { LT $Input(Please enter text to translate.,wdo,Enter Text) } Else { LT $Input(Please select two different languages.,wdo,Same Language) } Haltdef } If ($Did == 107) { Set -u0 %~~lt.source $Did($Dname,101).sel | Did -c $Dname 101 $Did($Dname,104).sel | Did -c $Dname 104 %~~lt.source } If ($Did == 108) { LT $Input($+(Language Translator,$Crlf,Version 1.00,$Crlf,by LemonButt (lemonbutt@graffiti.net)),ido,About) } If ($Did == 109) { Dialog -x $Dname } } } Alias LT { If ($1 == $Null) { If ($Dialog(LT) == $Null) { Dialog -m LT LT } Else { Dialog -v LT } } } Alias -l LT.Translate { Sockclose LT Set %~~lt.language $$1 Set %~~lt.text $Replace($$2-,$Chr(32),$+($Chr(37),20)) Set %~~lt.settings $Did(LT,101).sel $Did(LT,104).sel $Gettok(%~~lt.settings,3,32) Sockopen LT babelfish.altavista.com 80 } Alias -l LT.Language { If ($$1 == English) { Return en } ElseIf ($$1 == Chinese) { Return zh } ElseIf ($$1 == Dutch) { Return nl } ElseIf ($$1 == French) { Return fr } ElseIf ($$1 == German) { Return de } ElseIf ($$1 == Greek) { Return el } ElseIf ($$1 == Italian) { Return it } ElseIf ($$1 == Japanese) { Return ja } ElseIf ($$1 == Korean) { Return ko } ElseIf ($$1 == Portuguese) { Return pt } ElseIf ($$1 == Russian) { Return ru } ElseIf ($$1 == Spanish) { Return es } ElseIf ($$1 == 1) || ($$1 == zh) { Return Chinese } ElseIf ($$1 == 2) || ($$1 == nl) { Return Dutch } ElseIf ($$1 == 3) || ($$1 == en) { Return English } ElseIf ($$1 == 4) || ($$1 == fr) { Return French } ElseIf ($$1 == 5) || ($$1 == de) { Return German } ElseIf ($$1 == 6) || ($$1 == el) { Return Greek } ElseIf ($$1 == 7) || ($$1 == it) { Return Italian } ElseIf ($$1 == 8) || ($$1 == ja) { Return Japanese } ElseIf ($$1 == 9) || ($$1 == ko) { Return Korean } ElseIf ($$1 == 10) || ($$1 == pt) { Return Portuguese } ElseIf ($$1 == 11) || ($$1 == ru) { Return Russian } ElseIf ($$1 == 12) || ($$1 == es) { Return Spanish } }