]> git.eshelyaron.com Git - emacs.git/commitdiff
(tetris): New defgroup.
authorRichard M. Stallman <rms@gnu.org>
Wed, 23 Jan 2002 23:33:02 +0000 (23:33 +0000)
committerRichard M. Stallman <rms@gnu.org>
Wed, 23 Jan 2002 23:33:02 +0000 (23:33 +0000)
(tetris-use-glyphs, tetris-use-color, tetris-draw-border-with-glyphs)
(tetris-default-tick-period): Convert to defcustom.
Added * in docstring to indicate user variable.
(tetris-update-speed-function, tetris-mode-hook, tetris-tty-colors)
(tetris-x-colors, tetris-buffer-name, tetris-buffer-width)
(tetris-buffer-height, tetris-width, tetris-height)
(tetris-top-left-x, tetris-top-left-y): Convert to defcustom.

lisp/ChangeLog
lisp/play/tetris.el

index e809b7874501f0c7e5a03419fb4ef910fecd1fc6..77460c0fe7f190476918b04e36a7b39640f79464 100644 (file)
@@ -1,3 +1,14 @@
+2002-01-23  Richard M. Stallman  <rms@gnu.org>
+
+        * play/tetris.el: (tetris): New defgroup.
+        (tetris-use-glyphs, tetris-use-color, tetris-draw-border-with-glyphs)
+        (tetris-default-tick-period): Convert to defcustom.
+       Added * in docstring to indicate user variable.
+        (tetris-update-speed-function, tetris-mode-hook, tetris-tty-colors)
+        (tetris-x-colors, tetris-buffer-name, tetris-buffer-width)
+        (tetris-buffer-height, tetris-width, tetris-height)
+        (tetris-top-left-x, tetris-top-left-y): Convert to defcustom.
+
 2002-01-22  Richard M. Stallman  <rms@gnu.org>
 
        * bindings.el (mode-line-copied-mode-name): New variable.
index 704ed5045ff0e8e35eec0a48c5ecd23bdefebaa3..44968431497b10d0267811980a5db8da5dd0548f 100644 (file)
 
 ;; ;;;;;;;;;;;;; customization variables ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(defvar tetris-use-glyphs t
-  "Non-nil means use glyphs when available.")
-
-(defvar tetris-use-color t
-  "Non-nil means use color when available.")
-
-(defvar tetris-draw-border-with-glyphs t
-  "Non-nil means draw a border even when using glyphs.")
-
-(defvar tetris-default-tick-period 0.3
-  "The default time taken for a shape to drop one row.")
-
-(defvar tetris-update-speed-function
+(defgroup tetris nil
+  "Play a game of tetris."
+  :prefix "tetris-"
+  :group 'games)
+
+(defcustom tetris-use-glyphs t
+  "*Non-nil means use glyphs when available."
+  :group 'tetris
+  :type 'boolean)
+
+(defcustom tetris-use-color t
+  "*Non-nil means use color when available."
+  :group 'tetris
+  :type 'boolean)
+
+(defcustom tetris-draw-border-with-glyphs t
+  "*Non-nil means draw a border even when using glyphs."
+  :group 'tetris
+  :type 'boolean)
+
+(defcustom tetris-default-tick-period 0.3
+  "*The default time taken for a shape to drop one row."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-update-speed-function
   'tetris-default-update-speed-function
   "Function run whenever the Tetris score changes
 Called with two arguments: (SHAPES ROWS)
 SHAPES is the number of shapes which have been dropped
 ROWS is the number of rows which have been completed
 
-If the return value is a number, it is used as the timer period.")
+If the return value is a number, it is used as the timer period."
+  :group 'tetris
+  :type 'function)
 
-(defvar tetris-mode-hook nil
-  "Hook run upon starting Tetris.")
+(defcustom tetris-mode-hook nil
+  "Hook run upon starting Tetris."
+  :group 'tetris
+  :type 'hook)
 
-(defvar tetris-tty-colors
+(defcustom tetris-tty-colors
   [nil "blue" "white" "yellow" "magenta" "cyan" "green" "red"]
   "Vector of colors of the various shapes in text mode
-Element 0 is ignored.")
-
-(defvar tetris-x-colors
+Element 0 is ignored."
+  :group 'tetris
+  :type (let ((names `("Shape 1" "Shape 2" "Shape 3"
+                      "Shape 4" "Shape 5" "Shape 6" "Shape 7"))
+             (result `(vector (const nil))))
+         (while names
+           (add-to-list 'result 
+                        (cons 'choice 
+                              (cons :tag 
+                                    (cons (car names) 
+                                          (mapcar (lambda (color)
+                                                    (list 'const color))
+                                                  (defined-colors)))))
+                        t)
+           (setq names (cdr names)))
+         result))
+
+(defcustom tetris-x-colors
   [nil [0 0 1] [0.7 0 1] [1 1 0] [1 0 1] [0 1 1] [0 1 0] [1 0 0]]
   "Vector of colors of the various shapes
-Element 0 is ignored.")
-
-(defvar tetris-buffer-name "*Tetris*"
-  "Name used for Tetris buffer.")
-
-(defvar tetris-buffer-width 30
-  "Width of used portion of buffer.")
-
-(defvar tetris-buffer-height 22
-  "Height of used portion of buffer.")
-
-(defvar tetris-width 10
-  "Width of playing area.")
-
-(defvar tetris-height 20
-  "Height of playing area.")
-
-(defvar tetris-top-left-x 3
-  "X position of top left of playing area.")
-
-(defvar tetris-top-left-y 1
-  "Y position of top left of playing area.")
+Element 0 is ignored."
+  :group 'tetris
+  :type 'sexp)
+
+(defcustom tetris-buffer-name "*Tetris*"
+  "Name used for Tetris buffer."
+  :group 'tetris
+  :type 'string)
+
+(defcustom tetris-buffer-width 30
+  "Width of used portion of buffer."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-buffer-height 22
+  "Height of used portion of buffer."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-width 10
+  "Width of playing area."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-height 20
+  "Height of playing area."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-top-left-x 3
+  "X position of top left of playing area."
+  :group 'tetris
+  :type 'number)
+
+(defcustom tetris-top-left-y 1
+  "Y position of top left of playing area."
+  :group 'tetris
+  :type 'number)
 
 (defvar tetris-next-x (+ (* 2 tetris-top-left-x) tetris-width)
   "X position of next shape.")