menu channel {
-
Text ReplaceR: txtr
-
}
On 1:Start: {
hmake replace
if ($isfile(replace.hsh)) hload -i replace replace.hsh
}
alias txtr dialog -m txt txt
dialog txt {
title "Text Replacer"
icon "replacer.ico"
size -1 -1 150 148
option dbu
text "Text ReplaceR", 1, 28 6 91 9, center
button "Ok", 2, 9 134 21 9
button "Close", 3, 114 133 21 9, cancel
list 8, 9 19 128 63, extsel
edit "", 9, 67 84 70 10, autohs
edit "", 10, 67 97 70 10, autohs
text "Insert Word", 12, 9 86 33 8
text "Insert Replacing Word", 13, 9 99 55 8
button "Add", 15, 40 115 24 8
button "Delete", 16, 83 115 24 8
}
on 1:dialog:txt:sclick:2: {
dialog -x txt txt
}
on 1:dialog:txt:sclick:15:{
if (!$did(txt,8).sel) {
if (!$did(txt,9)) || (!$did(txt,10)) { /halt }
hadd -m replace $did(txt,9) $did(txt,10)
did -a txt 8 $did(txt,9)
}
else {
hadd -m replace $did(txt,8).seltext $did(txt,10)
}
}
on 1:dialog:txt:init:0:{
var %i = 1
while (%i <= $hget(replace,0).item) {
did -a txt 8 $hget(replace,%i).item
inc %i
}
}
On 1:dialog:txt:close:0: {
hsave -i replace replace.hsh
}
on 1:dialog:txt:sclick:16: {
hdel replace $did(txt,8).seltext
did -d txt 8 $didwm(txt,8,$did(txt,8).seltext,1)
}
on 1:dialog:txt:sclick:8: {
did -ra txt 9 $did(txt,8).seltext
did -ra txt 10 $hget(replace,$did(txt,8).seltext)
}
on 1:input:*: {
if ($left($1,1) == / ) { /return }
var %i = 1
while (%i <= $hget(replace,0).item) {
if ($1- == $hget(replace,%i).item) {
say $hget(replace,%i).data
halt
}
inc %i
}
}