[clfswm-cvs] r447 - in clfswm: . src

Philippe Brochard pbrochard at common-lisp.net
Mon Apr 18 12:06:26 UTC 2011


Author: pbrochard
Date: Mon Apr 18 08:06:26 2011
New Revision: 447

Log:
	* src/clfswm-pack.lisp (implode-frame, implode-current-frame): New functions. Absorb all frames subchildren in frame. Explode frame opposite.

Modified:
   clfswm/ChangeLog
   clfswm/TODO
   clfswm/src/clfswm-pack.lisp
   clfswm/src/menu-def.lisp

Modified: clfswm/ChangeLog
==============================================================================
--- clfswm/ChangeLog	(original)
+++ clfswm/ChangeLog	Mon Apr 18 08:06:26 2011
@@ -2,6 +2,8 @@
 
 	* src/clfswm-pack.lisp (resize-frame-constrained): Takes care of
 	border size.
+	(implode-frame, implode-current-frame): New functions. Absorb all
+	frames subchildren in frame. Explode frame opposite.
 
 2011-04-17  Philippe Brochard  <pbrochard at common-lisp.net>
 

Modified: clfswm/TODO
==============================================================================
--- clfswm/TODO	(original)
+++ clfswm/TODO	Mon Apr 18 08:06:26 2011
@@ -9,8 +9,6 @@
 
 -> Nothing here yet.
 
--> implode
-
 
 FOR THE NEXT RELEASE
 ====================

Modified: clfswm/src/clfswm-pack.lisp
==============================================================================
--- clfswm/src/clfswm-pack.lisp	(original)
+++ clfswm/src/clfswm-pack.lisp	Mon Apr 18 08:06:26 2011
@@ -211,6 +211,22 @@
   (leave-second-mode))
 
 
+(defun implode-frame (frame)
+  "Absorb all frames subchildren in frame (explode frame opposite)"
+  (when (frame-p frame)
+    (dolist (child (frame-child frame))
+      (when (frame-p child)
+        (dolist (subchild (frame-child child))
+          (setf (frame-child frame) (append (frame-child frame) (list subchild))))
+        (remove-child-in-frame child frame)))))
+
+(defun implode-current-frame ()
+  "Absorb all frames subchildren in frame (explode frame opposite)"
+  (implode-frame *current-child*)
+  (leave-second-mode))
+
+
+
 
 ;;;;;,-----
 ;;;;;| Constrained move/resize frames

Modified: clfswm/src/menu-def.lisp
==============================================================================
--- clfswm/src/menu-def.lisp	(original)
+++ clfswm/src/menu-def.lisp	Mon Apr 18 08:06:26 2011
@@ -165,11 +165,12 @@
 
 
 (add-menu-key 'frame-miscellaneous-menu "s" 'show-all-frames-info)
-(add-menu-key 'frame-miscellaneous-menu "i" 'hide-all-frames-info)
+(add-menu-key 'frame-miscellaneous-menu "a" 'hide-all-frames-info)
 (add-menu-key 'frame-miscellaneous-menu "h" 'hide-current-frame-window)
 (add-menu-key 'frame-miscellaneous-menu "w" 'show-current-frame-window)
 (add-menu-key 'frame-miscellaneous-menu "u" 'renumber-current-frame)
 (add-menu-key 'frame-miscellaneous-menu "x" 'explode-current-frame)
+(add-menu-key 'frame-miscellaneous-menu "i" 'implode-current-frame)
 
 
 




More information about the clfswm-cvs mailing list