-;;; 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 <ueno@unixuser.org>
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; 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"
"----"
["Join Channel" riece-command-join t]
["Change Nickname" riece-command-change-nickname t]
+ ["Mark As Away" riece-command-toggle-away t]
["Quit IRC" riece-command-quit t]
"----"
+ ["Part Channel" riece-command-part riece-current-channel]
+ ["Set Channel Topic" riece-command-topic riece-current-channel]
+ ["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))
(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)