alias -l Fix.Str2File {
return $replace($1,&,&26,\,&5C,/,&2F,:,&3A,*,&2A,?,&3F,",&22,<,&3C,>,&3E,|,&7C,.,&2E)
}
alias -l Fix.File2Str {
return $replace($1,&5C,\,&2F,/,&3A,:,&2A,*,&3F,?,&22,",&3C,<,&3E,>,&7C,|,&2E,.,&26,&)
}
menu @Quer.MENU {
lbclick: {
sline -l $QuerWindow $1
clear $QuerWindow
background -x $QuerWindow
if ($sline($QuerWindow,0) == 1) {
quer.titlebar
var %f = $+(QuerLogs\Quer.,$Fix.Str2File($sline($QuerWindow,1)),.jpg) | if ($isfile(%f)) {
background -p $QuerWindow %f
}
var %f = $+(QuerLogs\Quer.,$Fix.Str2File($sline($QuerWindow,1)),.txt) | if ($isfile(%f)) {
loadbuf -pi $QuerWindow %f
}
}
}
dclick: {
if ($sline($QuerWindow,0) == 1) {
whois $sline($QuerWindow,1)
set %Quer.Whois $sline($QuerWindow,1)
}
}
Close $$1 Conversation: {
if ($sline($QuerWindow,0) == 1) {
clear $QuerWindow
write $+(QuerLogs\Quer.,$Fix.Str2File($1),.txt) Session ended: $+([,$asctime,],$lf,$lf)
close -m $1
background -x $QuerWindow
titlebar $QuerWindow
dline -l $QuerWindow $sline($QuerWindow,1).ln
}
}
Delete $$1 History: {
if ($sline($QuerWindow,0) == 1) {
clear $QuerWindow
close -m $1
background -x $QuerWindow
titlebar $QuerWindow
dline -l $QuerWindow $sline($QuerWindow,1).ln
.remove $+(QuerLogs\Quer.,$Fix.Str2File($1),.txt)
}
}
}
alias QuerWindow {
set %QuerWindow @Quer
if (!$window(%QuerWindow)) {
window -odeSl11k0 %QuerWindow 245 250 594 266 @Quer.MENU
}
return %QuerWindow
}
alias Quer.Titlebar {
titlebar $QuerWindow - Conversation with $sline($QuerWindow,1) - $iif(%QuerTextWin,TW,NW) - $iif(%QuerConfirmOff,IM,CM)
}
on ^*:open:?:*: {
query -n $nick
window -h $nick
}
on ^*:text:*:?: {
quer.open.and.text.event $1-
}
on ^*:action:*:?: {
quer.open.and.text.event $1-
}
alias quer.open.and.text.event {
mkdir QuerLogs
var %t = $+($iif($event == action, $+ $color(action)),[,$time(HH:nn),]) $iif($event == action,* $nick,$+(<,$nick,>)) $1-
write $+(QuerLogs\Quer.,$Fix.Str2File($nick),.txt) %t
aline -ln $QuerWindow $nick
if ($sline($QuerWindow,1) == $nick) {
aline -pi $QuerWindow %t
}
window -g1 $QuerWindow
window -h $nick
haltdef
}
on *:input:@:{
if ($active == %QuerWindow) {
if ((%QuerTextWin) || ($ctrlenter) || (/* !iswm $1-)) {
.quer.msg $1-
if ($isfile(sounds/enter.wav)) { splay sounds/enter.wav }
}
else {
.timer 1 0 savebuf $QuerWindow $+(QuerLogs\Quer.,$Fix.Str2File($sline($QuerWindow,1)),.txt)
}
}
}
alias quer.msg {
if ($sline($QuerWindow,0) == 1) {
if ((%QuerConfirmOff) || ($input(Secure Send Message $+ $crlf $+ Send this message to $sline($QuerWindow,1) $+ ? $+ $crlf $+ $crlf $+ $1-,c,Send Message.) == $true)) {
PRIVMSG $sline($QuerWindow,1) $1-
aline -p $QuerWindow $+([,$time(HH:nn),] <,$me,>) $1-
haltdef
}
else { editbox $QuerWindow $1- }
savebuf $QuerWindow $+(QuerLogs\Quer.,$Fix.Str2File($sline($QuerWindow,1)),.txt)
}
}
on *:NICK:{
if ($fline($QuerWindow,$nick,1,1)) {
if ($sline($QuerWindow,1) == $nick) {
dline -l $QuerWindow $fline($QuerWindow,$nick,1,1)
aline -ln $QuerWindow $newnick
sline -l $QuerWindow $fline($QuerWindow,$newnick,1,1)
quer.titlebar
}
else {
dline -l $QuerWindow $fline($QuerWindow,$nick,1,1)
aline -ln $QuerWindow $newnick
}
}
var %of = $+(QuerLogs\Quer.,$Fix.Str2File($nick),.txt)
if ($isfile(%of)) {
var %nf = $+(QuerLogs\Quer.,$Fix.Str2File($newnick),.txt)
.remove %nf
.timer 1 0 .rename %of %nf
}
var %of = $+(QuerLogs\Quer.,$Fix.Str2File($nick),.jpg)
if ($isfile(%of)) {
var %nf = $+(QuerLogs\Quer.,$Fix.Str2File($newnick),.jpg)
.remove %nf
.timer 1 0 .rename %of %nf
}
}
on *:Keydown:%QuerWindow:*: {
[color:red]
if ($isfile(sounds\typewriter.wav)) {
splay sounds\typewriter.wav
}
[/color]
[color:red]
if ($keyval == 8) {
if ($isfile(sounds\back.wav)) {
splay sounds\back.wav
}
}
[/color]
if ($keyval == 18) {
var %cycle = $!false $!false/$true $!false/$true $!true/$false $!true/$false $!false
var %cycle = $gettok(%cycle,$calc($findtok(%cycle,%QuerTextWin %QuerConfirmOff,1,47)+1),47)
set %QuerTextWin $gettok(%cycle,1,32)
set %QuerConfirmOff $gettok(%cycle,2,32)
Quer.Titlebar
}
elseif ($keyval == 27) {
window -c $QuerWindow
}
}
on *:CLOSE:%QuerWindow:{
window -n %QuerWindow
if ($input(Are you sure you want to close the $QuerWindow window?,dq,Confirm close) != $true) {
close -@ $QuerWindow $+ Closing
renwin $QuerWindow $QuerWindow $+ Closing
filter -cpzww $QuerWindow $+ Closing $QuerWindow *
filter -czwwlL $QuerWindow $+ Closing $QuerWindow *
if ($sline($QuerWindow $+ Closing,1).ln) {
sline -l $QuerWindow [ $v1 ]
Quer.Titlebar
var %f = $+(QuerLogs\Quer.,$Fix.Str2File($sline($QuerWindow,1)),.jpg) | if ($isfile(%f)) {
background -p $QuerWindow %f
}
}
}
else {
background -x $QuerWindow
var %i = $line($QuerWindow,0,1)
while (%i) {
close -m $line($QuerWindow,%i,1)
dec %i
}
}
}
alias quer.whois.image {
set %quer.whois.image @quer.whois.image
if (!$window(%quer.whois.image)) {
window -c %quer.whois.image
set %Quer.whois.image.x 5
set %Quer.Whois.image.y 5
window -hp %quer.whois.image 1 1 100 100
set %Quer.whois.image.w.adjust $calc($window(%quer.whois.image).w - $window(%quer.whois.image).bw + 10)
set %Quer.whois.image.h.adjust $calc($window(%quer.whois.image).h - $window(%quer.whois.image).bh + 10)
}
return %quer.whois.image
}
alias quer.whois.line {
var %width = $width($1-,$window($quer.whois.image).font,$window($quer.whois.image).fontsize,0,1) + %Quer.whois.image.w.adjust
var %height = $height($1-,$window($quer.whois.image).font,$window($quer.whois.image).fontsize)
window $quer.whois.image 1 1 %width $calc(%Quer.whois.image.y + %height + %Quer.whois.image.h.adjust)
drawtext -p $quer.whois.image $color(normal text) 5 %Quer.whois.image.y $1-
inc %Quer.whois.image.y %height
haltdef
}
alias quer.whois.finish {
window $quer.whois.image 1 1 1 240
var %f = $+(QuerLogs\Quer.,$Fix.Str2File(%Quer.whois),.jpg)
drawsave $quer.whois.image %f
background -p $QuerWindow %f
window -c $quer.whois.image
haltdef
}
raw 300:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 301:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 302:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 303:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 304:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 305:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 306:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 307:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 308:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 309:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 310:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 311:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 312:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 313:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 314:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 315:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 316:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 317:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 318:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.finish
raw 319:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 320:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-
raw 614:$(& $iif(%Quer.whois,$v1,-) *):quer.whois.line $3-