Advertisement
SaNCaK

mIRC Toolbar Clock

Feb 3rd, 2014
636
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 6.95 KB | None | 0 0
  1. /*
  2. [Addon]
  3. Script=Toolbar Clock
  4. Version=2.7
  5. Author=pball
  6. Desc=Shows a digital clock in the toolbar
  7. For=Mirc
  8. Date=
  9.  
  10. [script]
  11. */
  12. alias clock {
  13.   set %startclock clock $1
  14.   if (!$isfile($scriptdirclock.txt)) popupfile
  15.   if (!%clockcolors) set %clockcolors 0 255 0 11 74 19 0 0 0 0
  16.   if (!$toolbar(clocksep)) toolbar -is clocksep
  17.   if (!$window(@clock)) window -nBj2kpw0 +f @clock 0 0 117 23
  18.   if (!$toolbar(clock)) toolbar -auxo clock "" @clock 0 0 $iif($1 == 12,111,82) 17
  19.   clear @clock
  20.   set -l %time $asctime($iif($1 == 12,hhcnncsstt,HHcnncss))
  21.   set -l %num 1
  22.   while ($mid(%time,%num,1) != $null) {
  23.     if ($mid(%time,1,1) != 0) || (%num != 1) || ($1 != 12) numbers $mid(%time,%num,1) $gettok(0 12 24 29 41 53 58 70 $iif($1 == 12,87 99),%num,32)
  24.     else numbers null 0
  25.     inc %num
  26.   }
  27.   toolbar -pu clock @clock 0 0 $iif($1 == 12,111,82) 17
  28.   toolbar -l clock "/clockchange"
  29.   toolbar -o clock $scriptdirclock.txt
  30.   .timerclock -mo $iif($asctime(ss) == 00,$asctime(HH:nn) 1 0,1 1000) clock $iif($1 == 12,$v1)
  31. }
  32.  
  33. on *:start: if (%startclock) { .timerclock -o 1 1 %startclock | unset %startclock }
  34.  
  35. alias clockchange { clock $iif($timer(clock).com == clock 12,,12) }
  36.  
  37. alias clockoff {
  38.   unset %startclock
  39.   .timerclock off
  40.   toolbar -d clocksep
  41.   toolbar -d clock
  42.   window -c @clock
  43. }
  44.  
  45. alias -l popupfile {
  46.   write -c $scriptdirclock.txt Switch to $($iif($timer(clock).com == clock 12,24,12),0) Hour Time: clock $($iif($timer(clock).com == clock 12,,12),0)
  47.   write $scriptdirclock.txt $(Change Colors: if (!$dialog(clockcolors)) dialog -ma clockcolors clockcolors,0)
  48. }
  49.  
  50. alias -l numbers {
  51.   if ($2 == 0) drawdot -r @clock $rgb( [ $replace($gettok(%clockcolors,7-9,32),$chr(32),$chr(44)) ] ) 75 50 10
  52.   if ($1 == c) {
  53.     set -l %num 1
  54.     while (%num <= 4) {
  55.       drawline -r @clock $c2 1 $calc($2 + $gettok(1 5 11 13,%num,32)) $gettok(3 5 11 13,%num,32) $calc($2 + 4) $gettok(3 5 11 13,%num,32)
  56.       inc %num
  57.     }
  58.     drawline -r @clock $c1 3 $calc($2 + 2) 4 $calc($2 + 2) 4
  59.     drawline -r @clock $c1 3 $calc($2 + 2) 12 $calc($2 + 2) 12
  60.     return
  61.   }
  62.   drawline -r @clock $iif($1 isin ap02356789,$c1,$c2) 1 $calc($2 + 2) 1 $calc($2 + 10) 1
  63.   drawline -r @clock $iif($1 isin ap02356789,$c1,$c2) 1 $calc($2 + 3) 2 $calc($2 + 9) 2
  64.   drawline -r @clock $iif($1 isin apm045689,$c1,$c2) 1 $calc($2 + 1) 2 $calc($2 + 1) 7
  65.   drawline -r @clock $iif($1 isin apm045689,$c1,$c2) 1 $calc($2 + 2) 3 $calc($2 + 2) 8
  66.   drawline -r @clock $iif($1 isin apm0268,$c1,$c2) 1 $calc($2 + 1) 10 $calc($2 + 1) 15
  67.   drawline -r @clock $iif($1 isin apm0268,$c1,$c2) 1 $calc($2 + 2) 9 $calc($2 + 2) 14
  68.   drawline -r @clock $iif($1 isin 023568,$c1,$c2) 1 $calc($2 + 2) 15 $calc($2 + 10) 15
  69.   drawline -r @clock $iif($1 isin 023568,$c1,$c2) 1 $calc($2 + 3) 14 $calc($2 + 9) 14
  70.   drawline -r @clock $iif($1 isin apm01234789,$c1,$c2) 1 $calc($2 + 10) 2 $calc($2 + 10) 7
  71.   drawline -r @clock $iif($1 isin apm01234789,$c1,$c2) 1 $calc($2 + 9) 3 $calc($2 + 9) 8
  72.   drawline -r @clock $iif($1 isin am013456789,$c1,$c2) 1 $calc($2 + 10) 10 $calc($2 + 10) 15
  73.   drawline -r @clock $iif($1 isin am013456789,$c1,$c2) 1 $calc($2 + 9) 9 $calc($2 + 9) 14
  74.   drawline -r @clock $iif($1 isin ap2345689,$c1,$c2) 3 $calc($2 + 4) 8 $calc($2 + 7) 8
  75.   if ($1 == m) {
  76.     set -l %num 1
  77.     while (%num <= 6) {
  78.       drawline -r @clock $c1 1 $calc($2 + $gettok(2 3 4 5 7 8,%num,32)) $gettok(1 2 3 4 2 1,%num,32) $calc($2 + $gettok(4 5 8 7 9 10,%num,32)) $gettok(1 2 3 4 2 1,%num,32)
  79.       inc %num
  80.     }
  81.   }
  82. }
  83.  
  84. alias c1 { return $rgb( [ $replace($gettok(%clockcolors,1-3,32),$chr(32),$chr(44)) ] ) }
  85.  
  86. alias c2 { return $rgb( [ $replace($gettok(%clockcolors,4-6,32),$chr(32),$chr(44)) ] ) }
  87.  
  88. dialog clockcolors {
  89.   title "Clock Colors"
  90.   size -1 -1 400 230
  91.   option pixels
  92.   text "Main", 3, 5 5 55 17
  93.   icon 105, 5 25 40 40
  94.   text "Red", 5, 70 5 34 17
  95.   text "Green", 6, 70 25 34 17
  96.   text "Blue", 7, 70 45 34 17
  97.   edit "", 100, 105 5 35 20, limit 3
  98.   edit "", 200, 105 25 35 20, limit 3
  99.   edit "", 300, 105 45 35 20, limit 3  
  100.   scroll "", 101, 140 5 256 16, horizontal range 1 256
  101.   scroll "", 201, 140 25 256 16, horizontal range 1 256
  102.   scroll "", 301, 140 45 256 16, horizontal range 1 256
  103.   text "Secondary", 12, 5 75 55 17
  104.   icon 405, 5 95 40 40
  105.   text "Red", 14, 70 75 34 17
  106.   text "Green", 15, 70 95 34 17
  107.   text "Blue", 16, 70 115 34 17
  108.   edit "", 400, 105 75 35 20, limit 3  
  109.   edit "", 500, 105 95 35 20, limit 3
  110.   edit "", 600, 105 115 35 20, limit 3
  111.   scroll "", 401, 140 75 256 16, horizontal range 1 256
  112.   scroll "", 501, 140 95 256 16, horizontal range 1 256
  113.   scroll "", 601, 140 115 256 16, horizontal range 1 256
  114.   text "Background", 23, 5 140 55 17
  115.   icon 705, 5 160 40 40
  116.   text "Red", 25, 70 140 34 17
  117.   text "Green", 26, 70 160 34 17
  118.   text "Blue", 27, 70 180 34 17
  119.   edit "", 700, 105 140 35 20, limit 3
  120.   edit "", 800, 105 160 35 20, limit 3
  121.   edit "", 900, 105 180 35 20, limit 3
  122.   scroll "", 701, 140 140 256 16, horizontal range 1 256
  123.   scroll "", 801, 140 160 256 16, horizontal range 1 256
  124.   scroll "", 901, 140 180 256 16, horizontal range 1 256
  125.   check "Check for color samples to update (Warning CPU intensive)", 1, 5 205 360 17
  126. }
  127.  
  128. alias clockcolors { if (!$dialog(clockcolors)) dialog -ma clockcolors clockcolors }
  129.  
  130. on *:dialog:clockcolors:*:*: {
  131.   if ($devent == close) {
  132.     set %clockcolors $did(100) $did(200) $did(300) $did(400) $did(500) $did(600) $did(700) $did(800) $did(900) $did(1).state
  133.     .remove $scriptdirclock1.bmp
  134.     .remove $scriptdirclock2.bmp
  135.     .remove $scriptdirclock3.bmp
  136.   }
  137.   elseif ($devent == init) {
  138.     if (!%clockcolors) set %clockcolors 0 255 0 11 74 19 0 0 0 0
  139.     set -l %num 1
  140.     while (%num <= 9) {
  141.       did -a $dname %num $+ 00 $gettok(%clockcolors,%num,32)
  142.       did -c $dname %num $+ 01 $gettok(%clockcolors,%num,32)
  143.       inc %num
  144.     }
  145.     if ($gettok(%clockcolors,10,32)) did -c $dname 1
  146.     refreshcolors
  147.   }
  148.   elseif ($devent == scroll) {
  149.     did -ra $dname $calc($did - 1) $calc($did($did).sel - 1)
  150.     refreshcolors
  151.   }
  152.   elseif ($devent == edit) {
  153.     if ($did($did) isnum 0-255) did -c $dname $calc($did + 1) $did($did)
  154.     else did -ra $dname $did 0
  155.     refreshcolors
  156.   }
  157.   elseif ($devent == sclick) {
  158.     if ($did == 1) { did - $+ $iif($did(1).state,v,h) $dname 105,405,705 | if ($did(1).state == 1) refreshcolors }
  159.   }
  160. }
  161.  
  162. alias -l refreshcolors { set %clockcolors $did(100) $did(200) $did(300) $did(400) $did(500) $did(600) $did(700) $did(800) $did(900) | if ($did(1).state == 1) clockcolor }
  163.  
  164. alias -l clockcolor {
  165.   set -l %num 1
  166.   while (%num <= 3) {
  167.     window -nBfj2kpw0 +f @color $+ %num 0 0 40 40
  168.     drawdot -r @color $+ %num $rgb($gettok(%clockcolors,$calc(1 + (( %num -1)*3) ),32),$gettok(%clockcolors,$calc(2 + (( %num -1)*3) ),32),$gettok(%clockcolors,$calc(3 + (( %num -1)*3) ),32)) 120 20 20
  169.     drawsave @color $+ %num $scriptdirclock $+ %num $+ .bmp
  170.     window -c @color $+ %num
  171.     did -g clockcolors $calc(1 + (( %num -1)*3) ) $+ 05 $scriptdirclock $+ %num $+ .bmp
  172.     inc %num
  173.   }
  174. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement