# HG changeset patch # User Jan D # Date 1281705973 -7200 # Node ID 3c2274d0da652c7e679be73e550c279a8aff201c # Parent 30994c3466ad9ec895f165e9a40d67841858e338 Fix handling of tool-bar-position, also put into default-frame-alist. * lisp/menu-bar.el (menu-bar-set-tool-bar-position): New function. (menu-bar-showhide-tool-bar-menu-customize-enable-left) (menu-bar-showhide-tool-bar-menu-customize-enable-right) (menu-bar-showhide-tool-bar-menu-customize-enable-top) (menu-bar-showhide-tool-bar-menu-customize-enable-bottom): Call menu-bar-set-tool-bar-position. * src/frame.h (Qtool_bar_position): Declare. * src/xfns.c (Fx_create_frame): Call x_default_parameter for Qtool_bar_position. diff -r 30994c3466ad -r 3c2274d0da65 lisp/ChangeLog --- a/lisp/ChangeLog Fri Aug 13 14:09:51 2010 +0300 +++ b/lisp/ChangeLog Fri Aug 13 15:26:13 2010 +0200 @@ -1,3 +1,12 @@ +2010-08-13 Jan Djärv + + * menu-bar.el (menu-bar-set-tool-bar-position): New function. + (menu-bar-showhide-tool-bar-menu-customize-enable-left) + (menu-bar-showhide-tool-bar-menu-customize-enable-right) + (menu-bar-showhide-tool-bar-menu-customize-enable-top) + (menu-bar-showhide-tool-bar-menu-customize-enable-bottom): Call + menu-bar-set-tool-bar-position. + 2010-08-12 Stefan Monnier * progmodes/octave-mod.el (octave-mode-syntax-table): Use the new "c" diff -r 30994c3466ad -r 3c2274d0da65 lisp/menu-bar.el --- a/lisp/menu-bar.el Fri Aug 13 14:09:51 2010 +0300 +++ b/lisp/menu-bar.el Fri Aug 13 15:26:13 2010 +0200 @@ -968,6 +968,14 @@ :help ,(purecopy "Turn menu-bar on/off") :button (:toggle . (> (frame-parameter nil 'menu-bar-lines) 0)))) +(defun menu-bar-set-tool-bar-position (position) + (customize-set-variable 'tool-bar-mode t) + (set-frame-parameter nil 'tool-bar-position position) + (customize-set-variable 'default-frame-alist + (cons (cons 'tool-bar-position position) + (assq-delete-all 'tool-bar-position + default-frame-alist)))) + (defun menu-bar-showhide-tool-bar-menu-customize-disable () "Do not display tool bars." (interactive) @@ -975,24 +983,20 @@ (defun menu-bar-showhide-tool-bar-menu-customize-enable-left () "Display tool bars on the left side." (interactive) - (customize-set-variable 'tool-bar-mode t) - (set-frame-parameter nil 'tool-bar-position 'left)) + (menu-bar-set-tool-bar-position 'left)) (defun menu-bar-showhide-tool-bar-menu-customize-enable-right () "Display tool bars on the right side." (interactive) - (customize-set-variable 'tool-bar-mode t) - (set-frame-parameter nil 'tool-bar-position 'right)) + (menu-bar-set-tool-bar-position 'right)) (defun menu-bar-showhide-tool-bar-menu-customize-enable-top () "Display tool bars on the top side." (interactive) - (customize-set-variable 'tool-bar-mode t) - (set-frame-parameter nil 'tool-bar-position 'top)) + (menu-bar-set-tool-bar-position 'top)) (defun menu-bar-showhide-tool-bar-menu-customize-enable-bottom () "Display tool bars on the bottom side." (interactive) - (customize-set-variable 'tool-bar-mode t) - (set-frame-parameter nil 'tool-bar-position 'bottom)) + (menu-bar-set-tool-bar-position 'bottom)) (if (featurep 'move-toolbar) (progn diff -r 30994c3466ad -r 3c2274d0da65 src/ChangeLog --- a/src/ChangeLog Fri Aug 13 14:09:51 2010 +0300 +++ b/src/ChangeLog Fri Aug 13 15:26:13 2010 +0200 @@ -1,3 +1,10 @@ +2010-08-13 Jan Djärv + + * frame.h (Qtool_bar_position): Declare. + + * xfns.c (Fx_create_frame): Call x_default_parameter for + Qtool_bar_position. + 2010-08-13 Eli Zaretskii * unexcoff.c: Remove the parts used when "emacs" is not defined. diff -r 30994c3466ad -r 3c2274d0da65 src/frame.h --- a/src/frame.h Fri Aug 13 14:09:51 2010 +0300 +++ b/src/frame.h Fri Aug 13 15:26:13 2010 +0200 @@ -1050,7 +1050,7 @@ extern Lisp_Object Qicon, Qicon_name, Qicon_type, Qicon_left, Qicon_top; extern Lisp_Object Qinternal_border_width; extern Lisp_Object Qtooltip; -extern Lisp_Object Qmenu_bar_lines, Qtool_bar_lines; +extern Lisp_Object Qmenu_bar_lines, Qtool_bar_lines, Qtool_bar_position; extern Lisp_Object Qmouse_color; extern Lisp_Object Qname, Qtitle; extern Lisp_Object Qparent_id; diff -r 30994c3466ad -r 3c2274d0da65 src/xfns.c --- a/src/xfns.c Fri Aug 13 14:09:51 2010 +0300 +++ b/src/xfns.c Fri Aug 13 15:26:13 2010 +0200 @@ -3392,6 +3392,8 @@ "waitForWM", "WaitForWM", RES_TYPE_BOOLEAN); x_default_parameter (f, parms, Qfullscreen, Qnil, "fullscreen", "Fullscreen", RES_TYPE_SYMBOL); + x_default_parameter (f, parms, Qtool_bar_position, + f->tool_bar_position, 0, 0, RES_TYPE_SYMBOL); /* Compute the size of the X window. */ window_prompting = x_figure_window_size (f, parms, 1);