view lisp/config.el @ 5047:07dcc7000bbf

put width before height consistently, fix a real bug found in the process -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-20 Ben Wing <ben@xemacs.org> * EmacsFrame.c (EmacsFrameRecomputeCellSize): * faces.c (default_face_font_info): * faces.c (default_face_width_and_height): * faces.c (Fface_list): * faces.h: * frame-gtk.c (gtk_set_initial_frame_size): * frame-gtk.c (gtk_set_frame_size): * frame-gtk.c (gtk_recompute_cell_sizes): * frame.c: * frame.c (frame_conversion_internal_1): * frame.c (change_frame_size_1): * frame.c (change_frame_size): * glyphs-msw.c (mswindows_combo_box_instantiate): * glyphs-widget.c (widget_instantiate): * glyphs-widget.c (tree_view_query_geometry): * glyphs-widget.c (Fwidget_logical_to_character_width): * glyphs-widget.c (Fwidget_logical_to_character_height): * indent.c (vmotion_pixels): * redisplay-output.c (get_cursor_size_and_location): * redisplay-xlike-inc.c (XLIKE_output_eol_cursor): * redisplay-xlike-inc.c (XLIKE_flash): * redisplay.c (calculate_baseline): * redisplay.c (start_with_point_on_display_line): * redisplay.c (glyph_to_pixel_translation): * redisplay.c (pixel_to_glyph_translation): * window.c (margin_width_internal): * window.c (frame_size_valid_p): * window.c (frame_pixsize_valid_p): * window.c (check_frame_size): * window.c (set_window_pixsize): * window.c (window_pixel_height_to_char_height): * window.c (window_char_height_to_pixel_height): * window.c (window_displayed_height): * window.c (window_pixel_width_to_char_width): * window.c (window_char_width_to_pixel_width): * window.c (change_window_height): * window.c (window_scroll): * window.h: IMPORTANT: Aidan and Carbon Repo, please pay attention and fix appropriately! Rename: default_face_height_and_width -> default_face_width_and_height and reverse width/height arguments. Reverse width/height arguments to the following functions: -- default_face_font_info -- default_face_height_and_width (see above) -- check_frame_size -- frame_size_valid_p (made into a static function) Fix a redisplay bug where args to default_face_height_and_width were in the wrong order.
author Ben Wing <ben@xemacs.org>
date Sat, 20 Feb 2010 18:56:01 -0600
parents 3ecd8885ac67
children 308d34e9f07d
line wrap: on
line source

;;; config.el --- access configuration parameters

;; Copyright (C) 1997 Sun Microsystems, Inc.

;; Author:   Martin Buchholz
;; Keywords: configure

;; This file is part of XEmacs.

;; XEmacs 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 2, or (at your option)
;; any later version.

;; XEmacs 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 XEmacs; see the file COPYING.  If not, write to the
;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.

;;; Synched up with: not in FSF.

;;; Commentary:

;;; Code:


(defvar config-value-file (expand-file-name "config.values" doc-directory)
  "File containing configuration parameters and their values.")

(defvar config-value-hash-table nil
  "Hash table to store configuration parameters and their values.")

;;;###autoload
(defun config-value-hash-table ()
  "Return hash table of configuration parameters and their values."
  (when (null config-value-hash-table)
    (setq config-value-hash-table (make-hash-table :size 300))
    (save-excursion
      (let ((buf (get-buffer-create " *Config*")))
	(set-buffer buf)
	(erase-buffer)
	(insert-file-contents config-value-file)
	(goto-char (point-min))
	(condition-case nil
	    (while t
	      (let* ((key (read buf))
		     (value (read buf))
		     (prev (gethash key config-value-hash-table)))
		(cond ((null prev)
		       (puthash key value config-value-hash-table))
		      ((atom prev)
		       (puthash key (list prev value) config-value-hash-table))
		      (t
		       (nconc prev (list value))))))
	  (end-of-file nil)))
      (kill-buffer " *Config*")))
  config-value-hash-table)

;;;###autoload
(defun config-value (config-symbol)
  "Return the value of the configuration parameter CONFIG_SYMBOL."
  (gethash config-symbol (config-value-hash-table)))

(provide 'config)
;;; config.el ends here