X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Friece-menu.el;h=4023b7d3a0e253fc0bb00207ce1aef2dfaf6c889;hb=b3b4c7eadac62a1a395edd00e87adc4cbdfc5af0;hp=5df0fbc5ae15212c0012d17907741767e8fb09f1;hpb=3e1525d2b875dd5c4d9fb0b9c300da05c3739170;p=elisp%2Friece.git diff --git a/lisp/riece-menu.el b/lisp/riece-menu.el index 5df0fbc..4023b7d 100644 --- a/lisp/riece-menu.el +++ b/lisp/riece-menu.el @@ -1,4 +1,4 @@ -;;; riece-menu.el --- define command menu on menubar +;;; riece-menu.el --- setup Riece's command menus ;; Copyright (C) 1998-2003 Daiki Ueno ;; Author: Daiki Ueno @@ -24,14 +24,20 @@ ;;; Commentary: -;; To use, add the following line to your ~/.riece/init.el: -;; (add-to-list 'riece-addons 'riece-menu) +;; NOTE: This is an add-on module for Riece. ;;; Code: +(require 'riece-options) +(require 'riece-globals) +(require 'riece-identity) +(require 'riece-layout) +(require 'riece-server) + (defvar riece-menu-items `("Riece" ["Version" riece-version t] + ["Submit Bug Report" riece-submit-bug-report t] "----" ("Change Window Layout..." :filter riece-menu-create-layouts-menu) ["Toggle Freeze Channel Buffer" @@ -55,10 +61,16 @@ ["Kick User" riece-command-kick riece-current-channel] ["Invite User" riece-command-invite riece-current-channel] "----" + ["Next Channel" riece-command-next-channel riece-current-channels] + ["Previous Channel" riece-command-previous-channel riece-current-channels] + "----" ("Channels" :filter riece-menu-create-channels-menu) ("Servers" :filter riece-menu-create-servers-menu)) "Menu used in command mode.") +(defconst riece-menu-description + "Setup Riece's command menus.") + (defun riece-menu-create-layouts-menu (menu) (mapcar (lambda (entry) (vector (car entry) (list 'riece-command-change-layout (car entry)) @@ -88,14 +100,29 @@ (riece-server-opened (car entry))))) riece-server-alist)) +(defvar riece-command-mode-map) +(defvar riece-menu) + +(defun riece-menu-command-mode-hook () + (easy-menu-define riece-menu + riece-command-mode-map + "Riece Menu" + riece-menu-items) + (easy-menu-add riece-menu)) + (defun riece-menu-insinuate () + (if riece-command-buffer + (with-current-buffer riece-command-buffer + (riece-menu-command-mode-hook))) (add-hook 'riece-command-mode-hook - (lambda () - (easy-menu-define riece-menu - riece-command-mode-map - "Riece Menu" - riece-menu-items) - (easy-menu-add riece-menu)))) + 'riece-menu-command-mode-hook)) + +(defun riece-menu-uninstall () + (if riece-command-buffer + (with-current-buffer riece-command-buffer + (easy-menu-remove riece-menu))) + (remove-hook 'riece-command-mode-hook + 'riece-menu-command-mode-hook)) (provide 'riece-menu)