diff options
| author | John Wiegley <johnw@newartisans.com> | 2002-04-07 08:44:00 +0000 |
|---|---|---|
| committer | John Wiegley <johnw@newartisans.com> | 2002-04-07 08:44:00 +0000 |
| commit | 2ef00c4beddb77e546cdc212cc502c5a9a4bba6c (patch) | |
| tree | f20a250ce3e162fd5580696528d7b8251cdcfcf4 /chess-session.el | |
| parent | b148d84be1c3bd781c4fd11dd0a928fbeeda28fd (diff) | |
Simplified the event model, and removed session objects. Now
everything just revolves around a game. Gnuchess is now playable to
the end, except don't make moves that leave your king in check! The
engine still doesn't check for this yet.
Diffstat (limited to 'chess-session.el')
| -rw-r--r-- | chess-session.el | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/chess-session.el b/chess-session.el deleted file mode 100644 index 8ddf3c6..0000000 --- a/chess-session.el +++ /dev/null @@ -1,59 +0,0 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; -;; Manage a chess playing/viewing session -;; -;; $Revision$ - -;;; Commentary: - -(defun chess-session-create () - (cons nil nil)) - -(defun chess-session-add-listener (session listener &optional front object) - (if (or front (not (cdr session))) - (setcdr session (cons (cons listener object) - (cdr session))) - (nconc session (list (cons listener object))))) - -(defun chess-session-remove-listener (session listener) - (setcdr session (delq (assq listener (cdr session)) - (cdr session)))) - -(defun chess-session-data (session sym) - (cdr (assq sym (car session)))) - -(defun chess-session-set-data (session sym value) - (let ((entry (assq sym (car session)))) - (if entry - (setcdr entry value) - (setcar session (cons (cons sym value) - (car session)))))) - -(defun chess-session-del-data (session sym) - (setcar session (delq (assq sym (car session)) - (car session)))) - -(defun chess-session-event (session event &rest args) - (let ((listeners (cdr session)) result) - (while (and (or (eq event 'initialize) - (null result)) listeners) - (setq result (apply (caar listeners) session (cdar listeners) - event args)) - (if (eq event 'initialize) - (setcdr (car listeners) result)) - (setq listeners (cdr listeners))) - result)) - -;; (define-chess-module MODULE (&rest args)) -;; (define-chess-module (MODULE BASES...) (&rest args) -;; :ctor-args (ARGS...) -;; :create-buffer -;; (EVENT -;; FORMS...) -;; ...) -;; -;; (chess-call-derived args &optional base-module) - -(provide 'chess-session) - -;;; chess-session.el ends here |
