[climacs-cvs] CVS esa
thenriksen
thenriksen at common-lisp.net
Sun Sep 3 21:22:05 UTC 2006
Update of /project/climacs/cvsroot/esa
In directory clnet:/tmp/cvs-serv5873
Modified Files:
packages.lisp esa-io.lisp
Log Message:
`current-buffer' should not take required arguments, but we still need
to be able to do per-application method dispatch. So introduce
`frame-current-buffer'.
--- /project/climacs/cvsroot/esa/packages.lisp 2006/08/20 10:08:23 1.6
+++ /project/climacs/cvsroot/esa/packages.lisp 2006/09/03 21:22:05 1.7
@@ -25,7 +25,7 @@
(defpackage :esa-io
(:use :clim-lisp :clim :esa :esa-buffer)
- (:export #:buffers #:current-buffer
+ (:export #:buffers #:frame-current-buffer #:current-buffer
#:find-file #:find-file-read-only
#:set-visited-filename
#:save-buffer #:write-buffer
--- /project/climacs/cvsroot/esa/esa-io.lisp 2006/08/20 10:43:40 1.4
+++ /project/climacs/cvsroot/esa/esa-io.lisp 2006/09/03 21:22:05 1.5
@@ -23,9 +23,14 @@
(defgeneric buffers (application-frame)
(:documentation "Return a list of all the buffers of the application"))
-(defgeneric current-buffer (application-frame)
+(defgeneric frame-current-buffer (application-frame)
(:documentation "Return the current buffer of APPLICATION-FRAME"))
+(defun current-buffer (&optional (frame *application-frame*))
+ "Return the current buffer of `frame'. This function merely
+calls `frame-current-buffer' with `frame' as argument."
+ (frame-current-buffer frame))
+
(defgeneric find-file (file-path application-frame))
(defgeneric find-file-read-only (file-path application-frame))
(defgeneric set-visited-filename (filepath buffer application-frame))
@@ -164,7 +169,7 @@
(make-pathname
:directory
(pathname-directory
- (or (filepath (current-buffer *application-frame*))
+ (or (filepath (current-buffer))
(user-homedir-pathname)))))
(define-command (com-find-file :name t :command-table esa-io-table)
@@ -226,7 +231,7 @@
"Toggle the readonly status of the current buffer.
When a buffer is readonly, attempts to change the contents of the
buffer signal an error."
- (let ((buffer (current-buffer *application-frame*)))
+ (let ((buffer (current-buffer)))
(setf (read-only-p buffer) (not (read-only-p buffer)))))
(set-key 'com-read-only 'esa-io-table '((#\x :control) (#\q :control)))
@@ -246,7 +251,7 @@
"Prompt for a new filename for the current buffer.
The next time the buffer is saved it will be saved to a file with
that filename."
- (set-visited-file-name filename (current-buffer *application-frame*) *application-frame*))
+ (set-visited-file-name filename (current-buffer) *application-frame*))
(defun extract-version-number (pathname)
"Extracts the emacs-style version-number from a pathname."
@@ -312,7 +317,7 @@
"Write the contents of the buffer to a file.
If there is filename associated with the buffer, write to that
file, replacing its contents. If not, prompt for a filename."
- (let ((buffer (current-buffer *application-frame*)))
+ (let ((buffer (current-buffer)))
(if (or (null (filepath buffer))
(needs-saving buffer))
(save-buffer buffer *application-frame*)
@@ -338,7 +343,7 @@
:default-type 'pathname))
"Prompt for a filename and write the current buffer to it.
Changes the file visted by the buffer to the given file."
- (let ((buffer (current-buffer *application-frame*)))
+ (let ((buffer (current-buffer)))
(write-buffer buffer filepath *application-frame*)))
(set-key `(com-write-buffer ,*unsupplied-argument-marker*)
More information about the Climacs-cvs
mailing list