; +-----------------------------+ ; | Custom Aliases | ; +-----------------------------+ dialog caliases { title "Custom Aliases" size -1 -1 243 148 option dbu icon $_zicl, 3 text "", 1, 3 3 235 13 text "Custom Aliases", 2, 7 6 90 8 text "", 3, 0 0 0 0, hide result list 4, 3 19 236 108, size extsel button "ok", 8, 161 133 37 12, default ok button "cancel", 9, 202 133 37 12, default cancel box "", 7, 3 126 236 4 button "add", 5, 4 133 37 12, default button "edit", 6, 45 133 37 12, default button "delete", 11, 86 133 37 12, default } dialog caliasesedit { title "" size -1 -1 124 107 option dbu icon $_zicl, 3 text "", 1, 3 3 118 13 text "Edit", 2, 7 6 90 8 text "Alias Name:", 3, 7 24 30 8 edit "", 4, 43 23 75 10, autohs limit 200 text "Alias Action:", 5, 7 39 40 8 edit "", 6, 43 38 75 39, multi return autovs check "Enabled ", 11, 7 78 33 10 button "OK", 12, 44 92 37 12, default ok button "Cancel", 13, 83 92 37 12, cancel text "", 20, 0 0 0 0, hide result } alias caliases::open { dialog -m caliases caliases } alias caliases::close { dialog -x caliases caliases } on *:dialog:caliases:init:*: { _mdx::load $dname _mdx::button $dname 6,8,9,11 _mdx::font $dname 4,5,6,7,8,9,11 _mdx::font $dname 2 large bold _mdx::border $dname 1,4,5 _mdx SetBorderStyle $dname 4 windowedge clientedge var %r = $rgb($rgb(face)) var %r = $+($iif($calc($gettok(%r,1,44) + 20) > 255,255,$v1),$chr(44),$iif($calc($gettok(%r,2,44) + 20) > 255,255,$v1),$chr(44),$iif($calc($gettok(%r,3,44) + 20) > 255,255,$v1)) _mdx SetColor $dname 1,2 background $rgb( [ %r ] ) _mdx SetColor $dname 1,2 textbg $rgb( [ %r ] ) _mdx SetControlMDX $dname 4 ListView report single rowselect autoarrange infotip nohscroll checkboxes grid showsel > $_mdxviews did -i $dname 4 1 headerdims 120:1 332:2 did -i $dname 4 1 headertext Alias Name $+ $chr(9) $+ Alias Action caliases::fill } on *:dialog:caliasesedit:init:*: { _mdx::load $dname _mdx::button $dname 12,13 _mdx::font $dname 4,6,8,10,11,12,13 _mdx::font $dname 3,5,7,9 default bold _mdx::font $dname 2 large bold var %r = $rgb($rgb(face)) var %r = $+($calc($gettok(%r,1,44) + 20),$chr(44),$calc($gettok(%r,2,44) + 20),$chr(44),$calc($gettok(%r,3,44) + 20)) _mdx SetColor $dname 1,2 background $rgb( [ %r ] ) _mdx SetColor $dname 1,2 textbg $rgb( [ %r ] ) _mdx::border $dname 1 did -o $dname 2 1 $iif(%caliases == add,Add,Edit) Custom Alias | dialog -t $dname $iif(%caliases == add,Add,Edit) Custom Alias if (%caliases == edit) { did -a $dname 4 $gettok($gettok($did(caliases,4).seltext,1,9),6,32) did -m $dname 4 did -f $dname 12 did -a $dname 6 $gettok($gettok($did(caliases,4).seltext,2,9),5-,32) $iif($gettok($gettok($did(caliases,4).seltext,1,9),5,32) == 2,did -c $dname 11,$null) } unset %caliases } alias cini { return $sysdir(ZioX.ini) } alias caliases::fill { var %d = $dialog(caliases) if (%d) { did -r %d 4 var %x = 1 while (%x <= $ini($cini,CAliases,0)) { var %y = $readini($cini,n,CAliases,$ini($cini,CAliases,%x)),%i = $numtok(%y,32) did -a %d 4 1 0 0 $iif(-e- == $gettok(%y,1,32),2,0) $ini($cini,CAliases,%x) $chr(9) $iif(-e- == $gettok(%y,1,32),$gettok(%y,2-,32),$gettok(%y,1-,32)) inc %x } } } on *:dialog:caliases:sclick:4: { if ($gettok($did($dname,4,1).text,1,32) == stateclick) { var %page = $_mdx::page($dname,$did).event if ($gettok(%page,1,32) == stateclick) { var %x = $did($dname,4,$gettok(%page,3,32)).text var %name = $gettok($gettok(%x,1,9),6-,32), %action = $gettok($gettok(%x,2,9),5-,32) writeini $cini CAliases %name $iif($gettok(%x,5,32) == 1,-e-,$null) %action } } } on *:dialog:caliases:sclick:5: { set %caliases add var %d = $dialog(caliasesedit,caliasesedit) } on *:dialog:caliases:sclick:6: { if ($did($dname,4).seltext) { set %caliases edit var %d = $dialog(caliasesedit,caliasesedit) } } on *:dialog:caliases:sclick:11: { if ($did($dname,4).seltext) { remini $cini CAliases $gettok($gettok($did(caliases,4).seltext,1,9),6,32) caliases::fill } } on *:dialog:caliasesedit:sclick:12: { if ($isalias($remove($didtok($dname,4,32),/)) == $true) { var %x = $input(This alias already exists as a part of mIRC or another custom alias. Please choose another.,auow,Error) | did -r $dname 4,6 | did -f $dname 4 | halt } writeini $cini CAliases $remove($didtok($dname,4,32),/) $iif($did($dname,11).state == 1,-e-,$null) $didtok($dname,6,32) caliases::fill } on *:input:*: { if ($iscalias($1)) { $($ifmatch,2) | halt } } alias iscalias { if (/* iswm $1) && ($isalias($remove($1,/)) == $false) && ($ismirc(/ $+ $remove($1,/)) == 0) && ($readini($cini,n,CAliases,$remove($1,/))) && ($gettok($readini($cini,n,CAliases,$remove($1,/)),1,32) == -e-) { return $gettok($readini($cini,n,CAliases,$remove($1,/)),2-,32) } else { return $null } } alias ismirc { ; Declare local variables for storing list of undocumented identifiers/commands var %f $+(",$findfile($mircdir,mirc.hlp,1),"),%r return,%e echo $color(i) -ea,%i $iif($!* iswm $1,1),%s $iif($!* iswm $& $1,identifier.,command.),%c $eval($remote $beta $nopnick $nvnick $nhopnick $* $r $colour $nickmode $true $false $yes $no $ok $& $cancel $hfile $lof $bits $evalnext $initopic $dir $auto $banlist $token $rnick $mp3 $wavedir $mp3dir $mididir $addtokcs $findtokcs $& $istokcs $matchtokcs $remtokcs $reptokcs $sorttokcs $wildtokcs $getdir $inpaste $trust $! $? /xyzzy /colour /closemsg /clearial $& /quote /auto /leave /registration /action /else /elseif /setlayer /notice /username,0),%l %e ** $1 is a built in %s ; If it's an identifier such as $1-2 or an undocumented command/identifier then proceed if ((i* iswm %s) && ($regex($mid($1,2),^\d+-*\d*$))) || ($istok(%c $!&,$1,32)) { goto y } if (!$1) || (!$regex($1,^\$|/)) { %e Specify a command/identifier to search for $iif(!$1,(remember to use ! in identifiers to keep them from evaluating)) %r } if (!%f) { %e Help file missing | %r } if ($version < 6.1) { %e mIRC version 6.1 or greater required. | %r } ; Read the contents of the help file into a binary variable and search for the requested command/identifier within it bread %f 1 $lof(%f) &t var %p = $bfind(&t,1,$1) if (%p && !$bvar(&t,$calc(%p -1))) && (!$bvar(&t,$calc($len($1)+%p))) { :y if ($isid) { %r 1 } %l %r } ; Output results if ($isid) { %r 0 } $instok(%l,not,7,32) }