home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / me34src.zip / me3 / mutt / builtin / hidebuf.mut < prev    next >
Text File  |  1995-01-14  |  2KB  |  85 lines

  1.   ;; C Durland    Public Domain
  2.  
  3. (include me.mh)
  4.  
  5. (defun
  6.   prev-buffer  { (nex-buffer -1) }
  7.   next-buffer  { (nex-buffer  1) }
  8.   nex-buffer (int tick) HIDDEN
  9.   {
  10.     (int bid i n)
  11.  
  12.     (n (nth-buffer))
  13.     (while TRUE
  14.     {
  15.       (if (< (+= n tick) 0) (n (- (buffers) 1)))
  16.       
  17.       (bid (nth-buffer n))
  18.       (if (== (current-buffer) bid) (done))        ;; no previous buffer
  19.       (if (buffer-not-hidden bid)
  20.         {
  21.       (current-buffer bid TRUE)
  22.       (done)
  23.     })
  24.     })
  25. ;(current-buffer (nth-buffer -1 tick BFHidden) TRUE)
  26. ;    (current-buffer
  27. ;      (nth-buffer (+ tick (nth-buffer -1 BFHidden)) BFHidden)
  28. ;      TRUE)
  29.   }
  30.   Nth-buffer HIDDEN
  31.   {
  32.     (int j)
  33.  
  34.     (for (j 0) (< j (buffers)) (+= j 1)
  35.       (if (== (nth-buffer j) (current-buffer)) { j (done) }))
  36.   }
  37.   buffer-not-hidden (int bid) HIDDEN
  38.   {
  39.     (== 0 (bit-and (buffer-flags bid)
  40.                (bit-or BFHidden BFHidden2)))
  41.   }
  42.   MAIN
  43.   {
  44.     (bind-to-key "next-buffer"     "F-2")
  45. ;    (bind-to-key "prev-buffer"     "~")
  46.   }
  47. )
  48.  
  49.  
  50. (defun
  51.   hide-buffer
  52.   {
  53.     (int bid)
  54.  
  55.     (bid (current-buffer))
  56.     (msg "Hiding " (buffer-name bid))
  57.     (buffer-flags -1 (bit-or BFHidden2 (buffer-flags -1)))
  58.     (nex-buffer 1)
  59.     (msg "Hid " (buffer-name bid))
  60.   }
  61.   reset-hide-bit (int bid) HIDDEN
  62.   {
  63.     (buffer-flags bid (bit-clear (buffer-flags bid) BFHidden2))
  64.   }
  65.   unhide-buffer
  66.   {
  67.     (string buf-name)
  68.  
  69.     (buf-name (complete CC_BUF "Unhide buffer: "))
  70.     (if (== "" buf-name)
  71.       (reset-hide-bit (current-buffer))        ;; default
  72.       (reset-hide-bit (attached-buffer buf-name)))
  73.   }
  74.   unhide-buffers        ;; unhide all buffers
  75.   {
  76.     (int j)
  77.  
  78.     (for (j 0) (< j (buffers)) (+= j 1) (reset-hide-bit (nth-buffer j)))
  79.   }
  80.   MAIN
  81.   {
  82.     (bind-to-key "hide-buffer"     "M-h")
  83.   }
  84. )
  85.