mIRC Home    About    Download    Register    News    Help

Print Thread
Joined: Jan 2003
Posts: 1
D
Mostly harmless
OP Offline
Mostly harmless
D
Joined: Jan 2003
Posts: 1
Once you are in too many channels or have too many gets or sends the list joes goes on and you cant see most recent stuff. Can we get a scroll bar or something? Thanks. Jon

Joined: Dec 2002
Posts: 1,321
H
Hoopy frood
Offline
Hoopy frood
H
Joined: Dec 2002
Posts: 1,321
Building on an idea that Khaled started (with Alt-F1) and someone else mentioned in an earlier post, this post shows a way to use the function keys to selectively hide/show different kinds of windows individually by connection. It uses F2-F8 to hide or show that window type on that connection. (F1 is /help, so we'll leave that one alone.)

[*] F2 channel windows
[*] F3 query windows
[*] F4 @windows

[*] F5 DCC Chat windows
[*] F6 DCC Get windows
[*] F7 DCC Send windows
[*] F8 Toggle all

Granted, this is a workaround, but it's a nifty way to just show you exactly what you want to currently be seeing for a given connection.
Code:

[color:#006600];  [color:#840017]F2[/color]  - Toggle #channels
;[/color]
alias F2 {
  var %i = 1, %toggle.state = $iif($window($chan(1)).state == hidden,-w,-h)
  while ($chan(%i)) {
    window %toggle.state $ifmatch
    inc %i
  }
}
[color:#006600];  [color:#840017]F3[/color]  - Toggle queries
;[/color]
alias F3 {
  var %i = 1, %toggle.state = $iif($window($query(1)).state == hidden,-w,-h)
  while ($query(%i)) {
    window %toggle.state $ifmatch
    inc %i
  }
}
[color:#006600];  [color:#840017]F4[/color]  - Toggle custom @Windows
;[/color]
alias F4 {
  var %i = 1, %toggle.state = $iif($window(1).state == hidden,-w,-h)
  while ($window(%i)) {
    if ($window(%i).cid == $activecid) {
      window %toggle.state $window(%i)
    }
    inc %i
  }
}
[color:#006600];  [color:#840017]F5[/color]  - Toggle DCC Chats
;[/color]
alias F5 {
  var %i = 1, %toggle.state = $iif($window($+(=,$chat(1))).state == hidden,-w,-h)
  while ($window($+(=,$chat(%i)))) {
    window %toggle.state $ifmatch
    inc %i
  }
}
[color:#006600];  [color:#840017]F6[/color]  - Toggle DCC Gets
;[/color]
alias F6 {
  var %i = 1, %toggle.state = $iif($window(Get $get(1) $get(1).file).state == hidden,-w,-h)
  while ($window(Get $get(%i) $get(%i).file)) {
    window %toggle.state $+("Get $get(%i) $get(%i).file,")
    inc %i
  }
}
[color:#006600];  [color:#840017]F7[/color]  - Toggle DCC Sends
;[/color]
alias F7 {
  var %i = 1, %toggle.state = $iif($window(Send $send(1) $send(1).file).state == hidden,-w,-h)
  while ($window(Send $send(%i) $send(%i).file)) {
    window %toggle.state $+("Send $get(%i) $get(%i).file,")
    inc %i
  }
}
[color:#006600];  [color:#840017]F8[/color]  - Toggle all
;[/color]
alias F8 {
  if (($chan(1)) && ($window($chan(1)))) {
    var %toggle.state = $iif($window($chan(1)).state == hidden,-w,-h)
  }
  elseif (($query(1) && ($window($query(1)))) {
    var %toggle.state = $iif($window($query(1)).state == hidden,-w,-h)
  }
  elseif (($query(1) && ($window(1))) {
    var %toggle.state = $iif($window(1).state == hidden,-w,-h)
  }
  elseif (($query(1) && ($window($+(=,$chat(1))))) {
    var %toggle.state = $iif($window($+(=,$chat(1))).state == hidden,-w,-h)
  }
  elseif (($query(1) && ($window(Get $get(1) $get(1).file))) {
    var %toggle.state = $iif($window(Get $get(1) $get(1).file).state == hidden,-w,-h)
  }
  elseif (($query(1) && ($window(Send $send(1) $send(1).file))) {
    var %toggle.state = $iif($window(Send $send(1) $send(1).file).state == hidden,-w,-h)
  }
  var %i = 1
  while ($chan(%i)) {
    window %toggle.state $ifmatch
    inc %i
  }
  %i = 1
  while ($query(%i)) {
    window %toggle.state $ifmatch
    inc %i
  }
  %i = 1
  while ($window(%i)) { 
    if ($window(%i).cid == $activecid) window %toggle.state $window(%i)
    inc %i 
  }
  %i = 1
  while ($window($+(=,$chat(%i)))) {
    window %toggle.state $ifmatch
    inc %i
  }
  %i = 1
  while ($window(Get $get(%i) $get(%i).file)) {
    window %toggle.state $+("Get $get(%i) $get(%i).file,")
    inc %i
  }
  %i = 1
  while ($window(Send $send(%i) $send(%i).file)) {
    window %toggle.state $+("Send $get(%i) $get(%i).file,")
    inc %i
  }
  if ($window(Links List)) {
    window %toggle.state "Links List"
  }
  if ($window(Channels List)) {
    window %toggle.state "Channels List"
  }
}

All of the code posted above goes into a remote script file. I hope this will help you do what you need or at least points you in the correct direction to do what you want to do since there is no way to scroll switchbar buttons yet. cool


DALnet: #HelpDesk and #m[color:#FF0000]IR[color:#EEEE00]C
Joined: Jan 2003
Posts: 1,063
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Jan 2003
Posts: 1,063
I'm doing this neet trick, not finnished yet but just to get the idea and to comment:

;### HIDDEN TOOLBAR CONTROL ###;
alias tbwin { return $shortfn($+($scriptdir,tbwin.dll)) }

alias doqhaltdefhide { window -c @doqhaltdefhide | window -ophBk0 +dbL @doqhaltdefhide 0 0 0 22 | dll $tbwin Attach @doqhaltdefhide | dll $tbwin OnMouse @doqhaltdefhide sclick /doqhaltdefclick | window @doqhaltdefhide 740 8 55 16 | drawfill -r @doqhaltdefhide $rgb(0,128,0) 0 1 1 | drawpic -tcr @doqhaltdefhide $rgb(255,0,255) 0 0 $+($shortfn($scriptdir),hidden.bmp) | window -a @doqhaltdefhide }

alias doqhaltdefhide_update { if ($window($active).icon == on) { drawrect -rf @doqhaltdefhide $rgb(0,128,0) 1 40 4 8 8 } | else { drawrect -rf @doqhaltdefhide $rgb(0,255,0) 1 40 4 8 8 } | window -a @doqhaltdefhide }
alias -l doqmousepos { var %x = $dll($tbwin, GetMouse, NOT_USED) | var %z = x y key hover win | if ($findtok(%z, $1, 1, 32)) return $gettok(%x, $ifmatch, 32) | else return $null }

alias doqhaltdefclick { var %x = $doqmousepos(x) , %y = $doqmousepos(y) | if (%x isnum 38-49) && (%y isnum 2-14) { if ($window($active).icon == on) { window -h $+(",$active,") | doqhaltdefhide_update } | elseif ($window($active).icon == off) { window -w $+(",$active,") | doqhaltdefhide_update } } | else { halt } }

alias doqhaltdefhide_sub_chan {
if ($1 == begin) { return $style(2) $chr(35) Channels:/ }
if ($1 != end) && ($1) && ($chan($1)) { return $chan($1) $iif($window($chan($1)).icon == on,[],[x]) :/window $iif($window($chan($1)).icon == on,-h,-w) $chan($1) }
}

alias doqhaltdefhide_sub_query {
if ($1 == begin) { return $style(2) Querys:/ }
if ($1 != end) && ($1) && ($query($1)) { return $query($1) $iif($window($query($1)).icon == on,[],[x]) :/window $iif($window($query($1)).icon == on,-h,-w) $query($1) }
}

alias doqhaltdefhide_sub_chat {
if ($1 == begin) { return $style(2) = Chats:/ }
if ($1 != end) && ($1) && ($chat($1)) { scid $chat($1).cid | return = $+ $chat($1) $iif($window(= $+ $chat($1)).icon == on,[],[x]) : /scid $chat($1).cid /window $iif($window(= $+ $chat($1)).icon == on,-h,-w) = $+ $chat($1) | scid -r }
}

on *:ACTIVE:*: { doqhaltdefhide_update }

menu @doqhaltdefhide {
$iif($network,$ifmatch,$gettok($server,-2,46)) (Status) $iif($window(Status Window).icon == on,[],[x]) : /window $iif($window(Status Window).icon == on,-h,-w) "Status Window"
-
$submenu($doqhaltdefhide_sub_chan($1))
-
$submenu($doqhaltdefhide_sub_query($1))
-
$submenu($doqhaltdefhide_sub_chat($1))
-
Close: window -c @doqhaltdefhide
Reload: { doqhaltdefhide | doqhaltdefhide_update }
}

menu status,channel,query,chat {
-
Toggle "Hide" Tool : $iif($window(@doqhaltdefhide),window -c @doqhaltdefhide,doqhaltdefhide)
-
}

the BMP has a pic which lookes like: Hide: [ ]
the [ ] is a square which will be filled with bgcolor or light color, the dll is to attach the window to the toolbar


If it ain't broken, don't fix it!

Link Copied to Clipboard