X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Friece-menu.el;h=4bc4f5e11f7aa2446389d63b31b3e2e1f1063b4b;hb=f88a663c1b379044573897f6f2ae44e5f5172ed6;hp=7aede3ab8381e37137fa55978f0d89aa26ebafd1;hpb=9d82a05224c7f62428f49bb9cbe852d4e7ea3f72;p=riece diff --git a/lisp/riece-menu.el b/lisp/riece-menu.el index 7aede3a..4bc4f5e 100644 --- a/lisp/riece-menu.el +++ b/lisp/riece-menu.el @@ -29,12 +29,17 @@ ;;; 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] "----" - ["Change Window Layout" - riece-command-change-layout t] + ("Change Window Layout..." :filter riece-menu-create-layouts-menu) ["Toggle Freeze Channel Buffer" riece-command-toggle-freeze t] ["Toggle Freeze Channel Buffer Until Next Message" @@ -48,12 +53,24 @@ "----" ["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] + "----" ("Channels" :filter riece-menu-create-channels-menu) ("Servers" :filter riece-menu-create-servers-menu)) "Menu used in command mode.") +(defun riece-menu-create-layouts-menu (menu) + (mapcar (lambda (entry) + (vector (car entry) (list 'riece-command-change-layout (car entry)) + t)) + riece-layout-alist)) + (defun riece-menu-create-channels-menu (menu) (mapcar (lambda (channel) (list (riece-format-identity channel) @@ -77,6 +94,8 @@ (riece-server-opened (car entry))))) riece-server-alist)) +(defvar riece-command-mode-map) + (defun riece-menu-insinuate () (add-hook 'riece-command-mode-hook (lambda ()