[Top][All Lists]

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

Re: Subwindow terminology

From: Stephen J. Turnbull
Subject: Re: Subwindow terminology
Date: Mon, 07 Nov 2011 07:15:44 +0900

martin rudalics writes:

 >  > Does anyone ever actually think in genealogical terms?  [...]
 >  > Does anybody *ever* care about anything except in which of the
 >  > visible windows output will appear (and similar static questions
 >  > about the current window configuration)?
 > People interested in manipulating window configurations will have to
 > care.

They never have cared about genealogy in the past.  I don't see why
they need to now; sure, you have the issue that window identity needs
to be considered carefully in implementation since variables may refer
to them.  Of course they need to be implicitly aware of the tree
structure, but that can be deduced from the arrangement of windows in
most cases.  The genealogical issues should be managed internally, and
AFAICS they can be managed internally.

 >  > And at the Lisp level, only leaf windows are actually accessible as
 >  > far as I know.  Are there any Lisp functions that operate on parent
 >  > windows, other than those that create or destroy children?
 > Plenty.  You can split, delete, and resize them

Not up to now.  You could split a leaf window; this creates a sibling,
and may involve either creation of a new parent or addition of the
sibling as a child of the existing parent.  The function API doesn't
know about the parent though.  Similarly, the Lisp API may delete all
siblings of a given window, in which case the parent would be deleted
and the child become a child of its grandparent.  If you resize a leaf
perpendicularly to relation to its siblings, the parent will be
implicitly resized.  Parents were simply a device for keeping the tree

Are you saying that parent windows are now visible to the Lisp API for
operations like split, even though you can't select them for
displaying buffers?  This seems like a bad idea to me.

 > (you can't resize and delete a frame's root window, obviously).

Except by resizing or deleting the frame.

reply via email to

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