emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r113768: Move frameset-to-register stuff from regist


From: Juanma Barranquero
Subject: [Emacs-diffs] trunk r113768: Move frameset-to-register stuff from register.el to frameset.el.
Date: Fri, 09 Aug 2013 00:30:36 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 113768
revision-id: address@hidden
parent: address@hidden
committer: Juanma Barranquero <address@hidden>
branch nick: trunk
timestamp: Fri 2013-08-09 02:30:24 +0200
message:
  Move frameset-to-register stuff from register.el to frameset.el.
  
  lisp/register.el (frameset-frame-id, frameset-frame-with-id, frameset-p)
  (frameset-restore, frameset-save, frameset-session-filter-alist):
  Remove declarations.
  (register-alist): Doc fix.
  (frameset-to-register): Move to frameset.el.
  (jump-to-register, describe-register-1): Remove frameset-specific code.
  
  lisp/frameset.el (frameset-p): Add autoload cookie.
  (frameset--jump-to-register): New function, based on code moved from
  register.el.
  (frameset-to-register): Move from register.el.  Adapt to `registerv'.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/frameset.el               frameset.el-20130802043218-tfwraxv1c2zlibpw-1
  lisp/register.el               register.el-20091113204419-o5vbwnq5f7feedwu-104
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-08-08 23:59:14 +0000
+++ b/lisp/ChangeLog    2013-08-09 00:30:24 +0000
@@ -1,3 +1,17 @@
+2013-08-09  Juanma Barranquero  <address@hidden>
+
+       * frameset.el (frameset-p): Add autoload cookie.
+       (frameset--jump-to-register): New function, based on code moved from
+       register.el.
+       (frameset-to-register): Move from register.el.  Adapt to `registerv'.
+
+       * register.el (frameset-frame-id, frameset-frame-with-id, frameset-p)
+       (frameset-restore, frameset-save, frameset-session-filter-alist):
+       Remove declarations.
+       (register-alist): Doc fix.
+       (frameset-to-register): Move to frameset.el.
+       (jump-to-register, describe-register-1): Remove frameset-specific code.
+
 2013-08-08  Juanma Barranquero  <address@hidden>
 
        * allout-widgets.el (allout-widgets-pre-command-business)

=== modified file 'lisp/frameset.el'
--- a/lisp/frameset.el  2013-08-08 15:59:14 +0000
+++ b/lisp/frameset.el  2013-08-09 00:30:24 +0000
@@ -129,6 +129,9 @@
 IMPORTANT: Modifying this slot may cause frameset functions to fail,
 unless the type constraints defined above are respected.\n\n(fn FRAMESET)")
 
+;;;###autoload (autoload 'frameset-p "frameset"
+;;;###autoload   "Return non-nil if OBJECT is a frameset, nil otherwise." nil)
+
 (defun frameset-copy (frameset)
   "Return a deep copy of FRAMESET.
 FRAMESET is copied with `copy-tree'."
@@ -1184,6 +1187,41 @@
     (unless (or (daemonp) (visible-frame-list))
       (make-frame-visible (car (frame-list))))))
 
+
+;; Register support
+
+(defun frameset--jump-to-register (data)
+  "Restore frameset from DATA stored in register.
+Called from `jump-to-register'.  Internal use only."
+  (let* ((delete (and current-prefix-arg t))
+        (iconify-list (if delete nil (frame-list))))
+    (frameset-restore (aref data 0)
+                     :filters frameset-session-filter-alist
+                     :reuse-frames (if delete t :keep))
+    (mapc #'iconify-frame iconify-list)
+    (let ((frame (frameset-frame-with-id (aref data 1))))
+      (when frame
+       (select-frame-set-input-focus frame)
+       (goto-char (aref data 2))))))
+
+;;;###autoload
+(defun frameset-to-register (register &optional _arg)
+  "Store the current frameset in register REGISTER.
+Use \\[jump-to-register] to restore the frameset.
+Argument is a character, naming the register."
+  (interactive "cFrameset to register: \nP")
+  (set-register register
+               (registerv-make
+                (vector (frameset-save nil
+                                       :app 'register
+                                       :filters frameset-session-filter-alist)
+                        ;; frameset-save does not include the value of point
+                        ;; in the current buffer, so record that separately.
+                        (frameset-frame-id nil)
+                        (point-marker))
+                :print-func (lambda (_data) (princ "a frameset."))
+                :jump-func #'frameset--jump-to-register)))
+
 (provide 'frameset)
 
 ;;; frameset.el ends here

=== modified file 'lisp/register.el'
--- a/lisp/register.el  2013-08-08 00:44:22 +0000
+++ b/lisp/register.el  2013-08-09 00:30:24 +0000
@@ -31,12 +31,6 @@
 
 (eval-when-compile (require 'cl-lib))
 
-(declare-function frameset-frame-id "frameset" (frame))
-(declare-function frameset-frame-with-id "frameset" (id &optional frame-list))
-(declare-function frameset-p "frameset" (frameset))
-(declare-function frameset-restore "frameset" (frameset &rest keys) t)
-(declare-function frameset-save "frameset" (frame-list &rest keys) t)
-
 ;;; Code:
 
 (cl-defstruct
@@ -77,9 +71,7 @@
 A list of the form (WINDOW-CONFIGURATION POSITION)
  represents a saved window configuration plus a saved value of point.
 A list of the form (FRAME-CONFIGURATION POSITION)
- represents a saved frame configuration plus a saved value of point.
-A list of the form (FRAMESET FRAME-ID POSITION)
- represents a saved frameset plus the value of point in frame FRAME-ID.")
+ represents a saved frame configuration plus a saved value of point.")
 
 (defgroup register nil
   "Register commands."
@@ -140,22 +132,6 @@
   ;; of point in the current buffer, so record that separately.
   (set-register register (list (current-frame-configuration) (point-marker))))
 
-(defvar frameset-session-filter-alist)
-
-(defun frameset-to-register (register &optional _arg)
-  "Store the current frameset in register REGISTER.
-Use \\[jump-to-register] to restore the frameset.
-Argument is a character, naming the register."
-  (interactive "cFrameset to register: \nP")
-  (set-register register
-               (list (frameset-save nil
-                                    :app 'register
-                                    :filters frameset-session-filter-alist)
-                     ;; frameset-save does not include the value of point
-                     ;; in the current buffer, so record that separately.
-                     (frameset-frame-id nil)
-                     (point-marker))))
-
 (defalias 'register-to-point 'jump-to-register)
 (defun jump-to-register (register &optional delete)
   "Move point to location stored in a register.
@@ -181,16 +157,6 @@
      ((and (consp val) (window-configuration-p (car val)))
       (set-window-configuration (car val))
       (goto-char (cadr val)))
-     ((and (consp val) (frameset-p (car val)))
-      (let ((iconify-list (if delete nil (frame-list)))
-           frame)
-       (frameset-restore (car val)
-                         :filters frameset-session-filter-alist
-                         :reuse-frames (if delete t :keep))
-       (mapc #'iconify-frame iconify-list)
-       (when (setq frame (frameset-frame-with-id (cadr val)))
-         (select-frame-set-input-focus frame)
-         (goto-char (nth 2 val)))))
      ((markerp val)
       (or (marker-buffer val)
          (error "That register's buffer no longer exists"))
@@ -303,9 +269,6 @@
      ((and (consp val) (frame-configuration-p (car val)))
       (princ "a frame configuration."))
 
-     ((and (consp val) (frameset-p (car val)))
-      (princ "a frameset."))
-
      ((and (consp val) (eq (car val) 'file))
       (princ "the file ")
       (prin1 (cdr val))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]