Reflex — File Browser

Reflexv0.1 / Reflexv0.1 / Reflex / system / scripts / core.mrc

core.mrc — 8.6 KB — Download this file

/*
## DIR/FILE aliases ##
*/

alias mircsdir { return $shortfn($mircdir) }
alias sysdir { return $+($mircsdir,system\) }
alias scrdir { return $+($mircsdir,system\scripts\) }
alias icodir { return $+($mircsdir,system\icons\) }
alias dlldir { return $+($mircsdir,system\dlls\) }
alias dowdir { return $+($mircsdir,system\download\) }
alias datdir { return $+($mircsdir,system\data\) }
alias htmdir { return $+($mircsdir,system\html\) }
alias thmdir { return $+($mircsdir,system\themes\) }

alias webstr { return http://homepage.ntlworld.com/allenhunt/ }
alias datafile { return $+($datdir,core.dat) }
alias sidebarData { return $+($datdir,sidebar.txt) }

alias switchbarIcons { return $+($icodir,switchbar.icl) }
alias Icons { return $data(iconpack) }

/*
## Dll List ##

  kTools - kamer - Docking dll
  sz - GrimZ - sizing functions.
  mdx - dragonzap - extra dialog controls
  nHtmln - Necroman/Dan/FoLKeN^ - allows use of IE html rendering engine in mIRC 
  installfont - Soul_Eater - installs a font temporarily for mIRC 

*/

alias kTools { return $dll($kToolsFile,$1,$2-) }
alias kToolsFile { return $+($dlldir,kTools.dll) }
alias sz { return $dll($szFile,$1,$2-) }
alias szFile { return $+($dlldir,sz.dll) }
alias mdx { return $dll($mdxFile,$1,$2-) }
alias mdxFile { return $+($dlldir,mdx.dll) }
alias mdx_Dialog { return $+($dlldir,dialog.mdx) }
alias mdx_Views { return $+($dlldir,views.mdx) }
alias mdx_ctl_gen { return $+($dlldir,ctl_gen.mdx) }
alias nHtmln { return $dll($nHtmlnFile,$1,$2-) }
alias nHtmlnFile { return $+($dlldir,nHTMLn_2.94.dll) }

/*
## Core Events ##
*/
on *:start: {
  if (!$hget(core)) { hmake core 10 | if ($isfile($datafile)) { hload -i core $datafile core } }
  if (!$hget(color)) { hmake color 10 | if ($isfile($datafile)) { hload -i color $datafile color } | col_cache }
  sz SetIcon $active > $SwitchbarIcons $+ ,0
  sz SetIcon mirc > $icodir $+ mirc.ico
  switchbar_init
  sidebar_init
  check_update
  if (%init) { initial | unset %init }
  .timercore 0 1 core_timer
}

on *:exit: {
  if ($hget(core)) { hsave -i core $datafile core } 
  if ($hget(color)) { hsave -i color $datafile color }
  ;unload dlls in reverse
  var %i = $dll(0) | while (%i) { dll -u $dll(%i) | dec %i } 
}
alias query { if (!$window($$1)) .timerdraw -m 1 25 switchbar_draw | query $$1- }
on *:INPUT:*:{
  if ($0) && ((/* !iswm $1) || ($ctrlenter)) && (($active ischan) || ($query($active)) || (=* iswm $active)) && ($window($active, 0) = 1) {
    temp idle 0 | hinc -c temp idle 1
  }
}
ctcp *:DCC*:*: { .timerdcclist -im 1 400 dccarea_list }
on *:join:#:{ if ($nick == $me) .timerdraw -m 1 25 switchbar_draw }
on *:part:#:{ if ($nick == $me) .timerdraw -m 1 25 switchbar_draw }
on *:kick:#:{ if ($knick == $me) .timerdraw -m 1 25 switchbar_draw }
on *:quit:{ if ($nick == $me) .timerdraw -m 1 25 switchbar_draw }
on *:open:?: .timerdraw -m 1 25 switchbar_draw
on *:close:?: .timerdraw -m 1 25 switchbar_draw
on *:text:*:#: {
  if ($chan != $active) && (!$istok($temp(s_highlight),$cid $+ $chr(44) $+ #,32)) {
    .timerdraw -m 1 25 switchbar_draw 
    temp s_highlight $addtok($temp(s_highlight),$cid $+ $chr(44) $+ #,32)
  }
}
on *:text:*:?: { 
  if ($nick != $active) && (!$istok($temp(s_highlight),$cid $+ $chr(44) $+ $nick,32)) {
    .timerdraw -m 1 25 switchbar_draw 
    temp s_highlight $addtok($temp(s_highlight),$cid $+ $chr(44) $+ $nick,32)
  }
}
on *:action:*:#: { 
  if ($chan != $active) && (!$istok($temp(s_highlight),$cid $+ $chr(44) $+ #,32)) {
    .timerdraw -m 1 25 switchbar_draw 
    temp s_highlight $addtok($temp(s_highlight),$cid $+ $chr(44) $+ #,32)
  }
}
on *:action:*:?: {
  if ($nick != $active) && (!$istok($temp(s_highlight),$cid $+ $chr(44) $+ $nick,32)) {
    .timerdraw -m 1 25 switchbar_draw 
    temp s_highlight $addtok($temp(s_highlight),$cid $+ $chr(44) $+ $nick,32)
  }
}
on ^*:logon:*: { .timerdraw -m 1 25 switchbar_draw }
on *:active:*: { 
  if ($remtok($temp(s_highlight),$cid $+ $chr(44) $+ $active,1,32)) { temp s_highlight $v1 }
  else { hdel temp s_highlight }
  .timerdraw -m 1 25 switchbar_draw 
  sidebar_draw 
}
on *:appactive: { .timerdraw -m 1 25 switchbar_draw }
on *:disconnect: { .timerdraw -m 1 25 switchbar_draw | sidebar_draw }
on *:connect: { 
  .timerdraw -m 1 25 switchbar_draw | sidebar_draw 
  data recent_servers $deltok($+($server,$chr(44),$remtok($data(recent_servers),$server,1,44)),11-,44) 
  data recent_networks $deltok($+($network,$chr(44),$remtok($data(recent_networks),$network,1,44)),11-,44) 
}

on *:SIGNAL:sz: {
  if ($2 == @hide_switchbar) {
    if ($1 == mousemove) {
      var %i = $switch_getItem($3).both
      if ($4 >= 4) && ($4 <= $calc($data(switch_height) - 4)) && (%i) {
        if ($temp(switch_hover) != %i) { 
          temp switch_hover %i 
          switchbar_draw 
        }
      }
      elseif ($temp(switch_hover)) { 
        temp switch_hover 
        switchbar_draw
      } 
    }
    elseif ($1 == resize) { .timerresize -m 1 100 switchbar_draw $chr(124) awaypopup_draw $chr(124) dccarea_draw }
  }
  elseif ($2 == @hide_sidebar) {
    if ($istok(top bottom,$data(side_pos),32)) { 
      var %i = $sidebar_getItem($3)
      if ($4 >= 4) && ($4 <= $calc($data(side_width) - 4)) {
        if ($temp(side_hover) != %i) { 
          temp side_hover %i 
          sidebar_draw | awaypopup_draw
          if (!$temp(side_tooltip)) { sz AddTip @hide_sidebar > $sidebar_Item(%i).text | temp side_tooltip $true }
          else { sz DelTip @hide_sidebar | sz AddTip @hide_sidebar > $sidebar_Item(%i).text }
        } 
      }
      elseif ($temp(side_hover)) { 
        temp side_hover 
        sidebar_draw
        sz DelTip @hide_sidebar
      } 
    }
    elseif ($istok(left right,$data(side_pos),32)) {
      var %i = $sidebar_getItem($4)
      if ($3 >= 4) && ($3 <= $calc($data(side_width) - 4)) {
        if ($temp(side_hover) != %i) { 
          if (!$temp(side_tooltip)) { sz AddTip @hide_sidebar > $sidebar_Item(%i).text | temp side_tooltip $true }
          else { sz DelTip @hide_sidebar | sz AddTip @hide_sidebar > $sidebar_Item(%i).text }
          temp side_hover %i 
          sidebar_draw
        } 
      }
      elseif ($temp(side_hover)) { 
        sz DelTip @hide_sidebar
        temp side_hover 
        sidebar_draw
      } 
    }
    if ($1 == resize) { 
      .timerresize2 -m 1 100 sidebar_draw      
    }
  }
}

alias core_timer {
  away_check
}

/*
## Core Aliases ##
*/

alias data {
  if (!$hget(core)) { hmake core 10 }
  if ($isid) && ($1) { 
    if ($hget(core,$1) != $null) { return $v1 }
    elseif ($findtok(version iconpack switch_style switch_pos switch_height switch_showIcons switch_showGripper switch_showSeperator side_style side_pos side_width,$1,1,32)) { return $gettok(0.1 $+($icodir,default_pack.icl) 1 bottom 26 1 1 1 1 left 26,$v1,32) }
  }
  elseif (!$isid) && ($1-2) { hadd core $1 $2- }
  elseif (!$isid) && ($1) && (!$2) { hdel core $1 }
}
alias temp {
  if (!$hget(temp)) { hmake temp 10 }
  if ($isid) && ($1) { 
    if ($hget(temp,$1) != $null) { return $v1 }
  }
  elseif (!$isid) && ($1-2) { hadd temp $1 $2- }
  elseif (!$isid) && ($1) && (!$2) { hdel temp $1 }
}
alias col {
  if ($hget(color,background) != $rgb(face)) || ($hget(color,background) != $rgb(hilight)) { col_cache }
  return $hget(color,$1)
}
alias col_cache {
  hadd color background $rgb(face)
  hadd color text $rgb(text)
  hadd color border $rgb(frame)
  hadd color highlight $rgb(hilight)
  hadd color shadow $rgb(shadow)
  hadd color active $col_active
  hadd color hover $col_hover
  hadd color greyed $col_darken
  hadd color tooltip 14811135
}
alias col_active {
  tokenize 44 $rgb($rgb(face))
  var %r = $calc($1 + 35) , %g = $calc($2 + 35) , %b = $calc($3 + 35) , %c
  if (%r > 255) || (%g > 255) || (%b > 255) { %c = 16777215 }
  else { %c = $rgb(%r,%g,%b) }
  return %c %c2
}
alias col_hover {
  tokenize 44 $rgb($rgb(face))
  var %r2 = $calc($1 + 20) , %g2 = $calc($2 + 20) , %b2 = $calc($3 + 20) , %c2
  if (%r2 > 255) || (%g2 > 255) || (%b2 > 255) { %c2 = 16777215 }
  else { %c2 = $rgb(%r2,%g2,%b2) }
  return %c2
}
alias col_darken {
  tokenize 44 $rgb($rgb(face))
  var %r = $calc($1 - 30) , %g = $calc($2 - 30) , %b = $calc($3 - 30)
  if (%r  < 0) || (%g  < 0) || (%b < 0) { return 0 }
  return $rgb(%r,%g,%b)
}

; http://mircscripts.org/comments.php?cid=1581 - qwerty - Snippet which allows you to simulate keystrokes in mIRC.
alias sendkeys {
  var %a = sendkeys $+ $ticks
  .comopen %a WScript.Shell
  if !$comerr {
    var %b = $com(%a,SendKeys,3,bstr,$1-)
    .comclose %a
    return %b
  }
  return 0
}