Mercurial > emacs
changeset 4670:e39967101d8b
(set-frame-configuration): Take new optional arg NODELETE; if non-nil,
don't delete any frames.
author | Roland McGrath <roland@gnu.org> |
---|---|
date | Tue, 07 Sep 1993 00:53:48 +0000 |
parents | e212db4385f9 |
children | 3c5e001c9d60 |
files | lisp/frame.el |
diffstat | 1 files changed, 6 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/frame.el Tue Sep 07 00:45:56 1993 +0000 +++ b/lisp/frame.el Tue Sep 07 00:53:48 1993 +0000 @@ -391,10 +391,12 @@ (current-window-configuration frame)))) (frame-list)))) -(defun set-frame-configuration (configuration) +(defun set-frame-configuration (configuration &optional nodelete) "Restore the frames to the state described by CONFIGURATION. Each frame listed in CONFIGURATION has its position, size, window -configuration, and other parameters set as specified in CONFIGURATION." +configuration, and other parameters set as specified in CONFIGURATION. +Unless optional second argument NODELETE is given and non-nil, deletes +all existing frames not listed in CONFIGURATION." (or (frame-configuration-p configuration) (signal 'wrong-type-argument (list 'frame-configuration-p configuration))) @@ -416,7 +418,8 @@ (set-window-configuration (nth 2 parameters))) (setq frames-to-delete (cons frame frames-to-delete)))))) (frame-list)) - (mapcar 'delete-frame frames-to-delete))) + (or nodelete + (mapcar 'delete-frame frames-to-delete)))) (defun frame-configuration-p (object) "Return non-nil if OBJECT seems to be a frame configuration.