Mercurial > emacs
view lisp/url/url-dired.el @ 108027:2ba5d029fd5e
Gtk tool bars can be text, icons with text or just icons
* frames.texi (Tool Bars): Add tool-bar-style.
* 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.
* 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.
author | Jan D. <jan.h.d@swipnet.se> |
---|---|
date | Wed, 21 Apr 2010 18:26:09 +0200 |
parents | 1d1d5d9bd884 |
children | 0b37f86b040e 376148b31b5e |
line wrap: on
line source
;;; url-dired.el --- URL Dired minor mode ;; Copyright (C) 1996, 1997, 1998, 1999, 2004, ;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. ;; Keywords: comm, files ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. ;;; Code: (autoload 'dired-get-filename "dired") (defvar url-dired-minor-mode-map (let ((map (make-sparse-keymap))) (define-key map "\C-m" 'url-dired-find-file) (define-key map [mouse-2] 'url-dired-find-file-mouse) map) "Keymap used when browsing directories.") (defvar url-dired-minor-mode nil "Whether we are in url-dired-minor-mode.") (make-variable-buffer-local 'url-dired-minor-mode) (defun url-dired-find-file () "In dired, visit the file or directory named on this line." (interactive) (let ((filename (dired-get-filename))) (find-file filename))) (defun url-dired-find-file-mouse (event) "In dired, visit the file or directory name you click on." (interactive "@e") (mouse-set-point event) (url-dired-find-file)) (defun url-dired-minor-mode (&optional arg) "Minor mode for directory browsing." (interactive "P") (cond ((null arg) (setq url-dired-minor-mode (not url-dired-minor-mode))) ((equal 0 arg) (setq url-dired-minor-mode nil)) (t (setq url-dired-minor-mode t)))) (if (not (fboundp 'add-minor-mode)) (defun add-minor-mode (toggle name &optional keymap after toggle-fun) "Add a minor mode to `minor-mode-alist' and `minor-mode-map-alist'. TOGGLE is a symbol which is used as the variable which toggle the minor mode, NAME is the name that should appear in the modeline (it should be a string beginning with a space), KEYMAP is a keymap to make active when the minor mode is active, and AFTER is the toggling symbol used for another minor mode. If AFTER is non-nil, then it is used to position the new mode in the minor-mode alists. TOGGLE-FUN specifies an interactive function that is called to toggle the mode on and off; this affects what appens when button2 is pressed on the mode, and when button3 is pressed somewhere in the list of modes. If TOGGLE-FUN is nil and TOGGLE names an interactive function, TOGGLE is used as the toggle function. Example: (add-minor-mode 'view-minor-mode \" View\" view-mode-map)" (if (not (assq toggle minor-mode-alist)) (setq minor-mode-alist (cons (list toggle name) minor-mode-alist))) (if (and keymap (not (assq toggle minor-mode-map-alist))) (setq minor-mode-map-alist (cons (cons toggle keymap) minor-mode-map-alist))))) (add-minor-mode 'url-dired-minor-mode " URL" url-dired-minor-mode-map) (defun url-find-file-dired (dir) "\"Edit\" directory DIR, but with additional URL-friendly bindings." (interactive "DURL Dired (directory): ") (find-file dir) (url-dired-minor-mode t)) (provide 'url-dired) ;; arch-tag: 2694f21a-43e1-4391-b3cb-cf6e5349f15f ;;; url-dired.el ends here