comparison lisp/cus-edit.el @ 108024:4d8277a44bb4

Gtk tool bars can be text, icons with text or just icons. * xsettings.c: Qmonospace_font_name, Qtool_bar_style and current_tool_bar_style are new. (store_config_changed_event): Rename from store_font_changed_event. (XSETTINGS_TOOL_BAR_STYLE): New define. (SEEN_FONT, SEEN_TB_STYLE): New enum values. (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef HAVE_XFT. (something_changedCB): store_font_changed_event is now store_config_changed_event (parse_settings): Rename from parse_xft_settings. Read non-xft xsettings outside #ifdef HAVE_XFT. (read_settings): Renamed from read_xft_settings. (apply_xft_settings): Take current settings as parameter. Do not call read_(xft)_settings. (read_and_apply_settings): New function. (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call read_and_apply_settings if there are settings to be read. (init_xsettings): Renamed from init_xfd_settings. Call read_and_apply_settings unconditionally. (xsettings_initialize): Call init_xsettings. (Ftool_bar_get_system_style): New function. (syms_of_xsettings): Define Qmonospace_font_name and Qtool_bar_style. Initialize current_tool_bar_style to nil. defsubr Stool_bar_get_system_style. Fprovide on dynamic-setting. * xsettings.h (Ftool_bar_get_system_style): Declare. * xdisp.c: Vtool_bar_style, tool_bar_max_label_size, Qtext, Qboth, Qboth_horiz are new. (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR Vtool_bar_style, tool_bar_max_label_size. * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz. * keyboard.c: QClabel is new. (parse_tool_bar_item): Take out QClabel from tool bar items. Try to construct a label if ther is no QClabel. (syms_of_keyboard): Intern :label as QClabel. * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new. (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE): New. * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to dynamic-setting.el. * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item. (xg_make_tool_item, xg_show_toolbar_item): New function. (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL. Call xg_make_tool_item to make a tool bar item. Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget. * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin into account for toolbars. * vc-dir.el (vc-dir-tool-bar-map): Add :label on some tool bar items. * tool-bar.el (tool-bar-setup): Add :label on some tool bar items. * loadup.el: Load dynamic-setting.el if feature dynamic-setting is present. * info.el (info-tool-bar-map): Add labels. * cus-start.el (all): Add tool-bar-style and tool-bar-max-label-size. * cus-edit.el (custom-commands): Add labels for tool bar. (custom-buffer-create-internal, Custom-mode): Adjust for labels in custom-commands. * dynamic-setting.el: Renamed from font-setting.el.
author Jan D. <jan.h.d@swipnet.se>
date Tue, 20 Apr 2010 20:52:07 +0200
parents d6963128f839
children 90428e3ef1f1
comparison
equal deleted inserted replaced
108023:150fd3d78f5a 108024:4d8277a44bb4
737 ;; `custom-buffer-create-internal' if `custom-buffer-verbose-help' is non-nil. 737 ;; `custom-buffer-create-internal' if `custom-buffer-verbose-help' is non-nil.
738 738
739 (defvar custom-commands 739 (defvar custom-commands
740 '(("Set for current session" Custom-set t 740 '(("Set for current session" Custom-set t
741 "Apply all settings in this buffer to the current session" 741 "Apply all settings in this buffer to the current session"
742 "index") 742 "index"
743 "Apply")
743 ("Save for future sessions" Custom-save 744 ("Save for future sessions" Custom-save
744 (or custom-file user-init-file) 745 (or custom-file user-init-file)
745 "Apply all settings in this buffer and save them for future Emacs sessions." 746 "Apply all settings in this buffer and save them for future Emacs sessions."
746 "save") 747 "save"
748 "Save")
747 ("Undo edits" Custom-reset-current t 749 ("Undo edits" Custom-reset-current t
748 "Restore all settings in this buffer to reflect their current values." 750 "Restore all settings in this buffer to reflect their current values."
749 "refresh") 751 "refresh"
752 "Undo")
750 ("Reset to saved" Custom-reset-saved t 753 ("Reset to saved" Custom-reset-saved t
751 "Restore all settings in this buffer to their saved values (if any)." 754 "Restore all settings in this buffer to their saved values (if any)."
752 "undo") 755 "undo"
756 "Reset")
753 ("Erase customizations" Custom-reset-standard 757 ("Erase customizations" Custom-reset-standard
754 (or custom-file user-init-file) 758 (or custom-file user-init-file)
755 "Un-customize all settings in this buffer and save them with standard values." 759 "Un-customize all settings in this buffer and save them with standard values."
756 "delete") 760 "delete"
761 "Uncustomize")
757 ("Help for Customize" Custom-help t 762 ("Help for Customize" Custom-help t
758 "Get help for using Customize." 763 "Get help for using Customize."
759 "help") 764 "help"
760 ("Exit" Custom-buffer-done t "Exit Customize." "exit"))) 765 "Help")
766 ("Exit" Custom-buffer-done t "Exit Customize." "exit" "Exit")))
761 767
762 (defun Custom-help () 768 (defun Custom-help ()
763 "Read the node on Easy Customization in the Emacs manual." 769 "Read the node on Easy Customization in the Emacs manual."
764 (interactive) 770 (interactive)
765 (info "(emacs)Easy Customization")) 771 (info "(emacs)Easy Customization"))
1614 ;; frame with a toolbar, then later viewed in one without. 1620 ;; frame with a toolbar, then later viewed in one without.
1615 ;; So now the buttons are always inserted in the buffer. (Bug#1326) 1621 ;; So now the buttons are always inserted in the buffer. (Bug#1326)
1616 (if custom-buffer-verbose-help 1622 (if custom-buffer-verbose-help
1617 (widget-insert " 1623 (widget-insert "
1618 Operate on all settings in this buffer:\n")) 1624 Operate on all settings in this buffer:\n"))
1619 (let ((button (lambda (tag action active help icon) 1625 (let ((button (lambda (tag action active help icon label)
1620 (widget-insert " ") 1626 (widget-insert " ")
1621 (if (eval active) 1627 (if (eval active)
1622 (widget-create 'push-button :tag tag 1628 (widget-create 'push-button :tag tag
1623 :help-echo help :action action)))) 1629 :help-echo help :action action))))
1624 (commands custom-commands)) 1630 (commands custom-commands))
4678 ;; Set up `custom-tool-bar-map'. 4684 ;; Set up `custom-tool-bar-map'.
4679 (let ((map (make-sparse-keymap))) 4685 (let ((map (make-sparse-keymap)))
4680 (mapc 4686 (mapc
4681 (lambda (arg) 4687 (lambda (arg)
4682 (tool-bar-local-item-from-menu 4688 (tool-bar-local-item-from-menu
4683 (nth 1 arg) (nth 4 arg) map custom-mode-map)) 4689 (nth 1 arg) (nth 4 arg) map custom-mode-map
4690 :label (nth 5 arg)))
4684 custom-commands) 4691 custom-commands)
4685 (setq custom-tool-bar-map map)))) 4692 (setq custom-tool-bar-map map))))
4686 (make-local-variable 'custom-options) 4693 (make-local-variable 'custom-options)
4687 (make-local-variable 'custom-local-buffer) 4694 (make-local-variable 'custom-local-buffer)
4688 (make-local-variable 'widget-documentation-face) 4695 (make-local-variable 'widget-documentation-face)