Kod'un son hali böyle..
Kod: Kodu kopyalamak için üzerine çift tıklayın!
/*
real time edidbox changer(RTEC)
baþlama tarihi: 1/Mayýs/2008
yapýmcý: Alience
versiyon: 1.0.3
*/
;--- DCX dll fonksiyonlarý START
;--- DCX dll fonksiyonlarý END
on *:load: {
set %rtecsentence 1
echo $color(info text) -at * RTEC yüklendi, ayarlarýný yapmak için /rtec veya /stil komutunu kullanabilirsiniz.
}
on *:start: {
if !$hget(RTEC) { hmake RTEC 50 }
if !$hget(RTECOPT) { hmake RTECOPT 2 }
.hload -b RTEC $qt($+($scriptdir,rtec.bin))
.timerRTEC -m 0 80 /RTEC -t
}
on *:CONNECT: {
if !$hget(RTEC) { hmake RTEC 50 }
if !$hget(RTECOPT) { hmake RTECOPT 2 }
.hload -b RTEC $qt($+($scriptdir,rtec.bin))
.timerRTEC -m 0 80 /RTEC -t
}
alias stil { rtec $1- }
alias RTEC {
if $regex($1-,(\-t)) {
if $regex($window($active).type,^(channel|query|chat)$) && !$regex(%str,(^\/)) {
var %str = $editbox($active), %replaced = %str, %selstart = $editbox($active).selstart, %selend = $editbox($active).selend
if %rtecstr != %str {
if $right($editbox($active),1) != $chr(32) {
var %i = $hget(RTEC,0).item
while %i {
%replaced = $replace(%replaced,$hget(RTEC,%i).item,$hget(RTEC,%i).data)
dec %i 1
}
if %rtecsentence {
%replaced = $regsubex(%replaced,/((?<=\.|\?|\!)([^\s]))/g,$+($chr(32),$upper(\1)))
%replaced = $regsubex(%replaced,/((?<=\.|\?|\!)(\s)([a-zðüöçþý]))/g,$+($upper(\1)))
%replaced = $regsubex(%replaced,/((?<=^)(.))/g,$+($upper(\1)))
%replaced = $regsubex(%replaced,/((?<=,)([^\s]))/g,$+($chr(32),\1))
}
var %xdif = ($len(%replaced) - $len(%str))
%selstart = $calc(%selstart + %xdif)
%selend = $calc(%selend + %xdif)
%rtecstr = %replaced
editbox $+(-ab,%selstart,e,%selend) %replaced
}
}
}
}
else {
if !$dialog(RTECDLG) { dialog -m RTECDLG RTEC_TABLE }
}
}
dialog RTEC_TABLE {
title "Rtec v1.0 - ßy Alience(Halim) 2008"
size -1 -1 315 307
option dbu
button "&Ekle", 1, 252 2 37 12
button "Degistir", 2, 252 19 37 12
button "&Sil", 3, 252 36 37 12
check "&Cümle Stili Uygula", 4, 252 267 52 10
button "&Iptal", 6, 252 233 37 12, cancel
button "&Tamam", 5, 252 250 37 12, ok
text "&Degistirilecek String:", 8, 3 5 49 7, right
edit "", 9, 54 2 193 10, autohs
text "&Yazilacak String:", 10, 8 16 40 7, right
edit "", 11, 54 13 193 10, autohs
}
on *:dialog:RTECDLG:*:*: {
if $devent == init {
dcx Mark $dname RTECDLG_CB
xdialog -b $dname +tyz
xdialog -c $dname 7 listview 4 50 490 505 report fullrow singlesel grid showsel autoarrange
xdid -t $dname 7 +l 2 100 Degistirilecek $chr(9) +c 1 356 Yazilacak
var %i = $hget(RTEC,0).item
while %i {
xdid -a $dname 7 1 0 +c 1 0 0 0 $rgb(0,0,0) $rgb(255,255,255) $hget(RTEC,%i).item $chr(9) + 0 -1 $rgb(10,210,250) $rgb(255,0,255) $hget(RTEC,%i).data
dec %i 1
}
did -f $dname 9
if $xdid($dname, 7).num { xdid -c $dname 7 1 }
if %rtecsentence { did -c $dname 4 }
}
if $devent == sclick {
if $did == 1 {
if $did(9) != $null && $did(11) != $null {
if !$xdid($dname, 7, $chr(9) $did(9) $chr(9), W, 0, 0).find {
xdid -a $dname 7 1 0 +cs 1 0 0 0 $rgb(0,0,0) $rgb(255,255,255) $did(9) $chr(9) + 0 -1 $rgb(10,210,250) $rgb(255,0,255) $did(11)
did -r $dname 9,11
}
}
}
elseif $did == 2 {
if $did(2) == Degistir {
if $xdid($dname, 7, 0).sel {
did -ra $dname 9 $xdid($dname, 7, 1).seltext
did -ra $dname 11 $xdid($dname, 7, 2).seltext
did -b $dname 7,1,3
did -ra $dname 2 Tamam
}
}
else {
did -ra $dname 2 Degistir
did -e $dname 7,1,3
if $xdid($dname, 7, 1).seltext != $did(9) {
if !$xdid($dname, 7, $chr(9) $did(9) $chr(9), W, 0, 0).find {
xdid -d $dname 7 $xdid($dname, 7, 0).sel
xdid -a $dname 7 1 0 +cs 1 0 0 0 $rgb(0,0,0) $rgb(255,255,255) $did(9) $chr(9) + 0 -1 $rgb(10,210,250) $rgb(255,0,255) $did(11)
}
}
elseif $xdid($dname, 7, 2).seltext != $did(11) {
xdid -d $dname 7 $xdid($dname, 7, 0).sel
xdid -a $dname 7 1 0 +cs 1 0 0 0 $rgb(0,0,0) $rgb(255,255,255) $did(9) $chr(9) + 0 -1 $rgb(10,210,250) $rgb(255,0,255) $did(11)
}
}
}
elseif $did == 3 {
if $xdid($dname, 7, 0).sel {
xdid -d $dname 7 $xdid($dname, 7, 0).sel
if $xdid($dname, 7).num { xdid -c $dname 7 $v1 }
}
}
elseif $did == 5 {
var %i = 1, %end = $xdid($dname, 7).num
hfree RTEC
while %i <= %end {
hadd -m RTEC $xdid($dname, 7, %i, 1).text $xdid($dname, 7, %i, 2).text
inc %i 1
}
hsave -b RTEC $qt($+($scriptdir,rtec.bin))
set %rtecsentence $did(4).state
}
}
}
;dcx mark alias not important.
alias RTECDLG_CB { }
;EOF
mirc son sürüm yan 7.77 kulaniyorum.
yanlisim yoksa.. bu kisimda karakter hatasi var..
on *:load: { set %rtecsentence 1 echo $color(info text) -at * RTEC yüklendi, ayarlarýný yapmak için /rtec veya /stil komutunu kullanabilirsiniz. }
ve bu kisimda..
if %rtecsentence { %replaced = $regsubex(%replaced,/((?<=\.|\?|\!)([^\s]))/g,$+($chr(32),$upper(\1))) %replaced = $regsubex(%replaced,/((?<=\.|\?|\!)(\s)([a-zðüöçþý]))/g,$+($upper(\1))) %replaced = $regsubex(%replaced,/((?<=^)(.))/g,$+($upper(\1))) %replaced = $regsubex(%replaced,/((?<=,)([^\s]))/g,$+($chr(32),\1)) }