lmi
[Top][All Lists]
Advanced

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

Re: [lmi] Child documents [Was: Adding open files to MDI "Window" menu]


From: Greg Chicares
Subject: Re: [lmi] Child documents [Was: Adding open files to MDI "Window" menu]
Date: Sun, 15 Mar 2009 06:33:02 +0000
User-agent: Thunderbird 2.0.0.19 (Windows/20081209)

On 2009-01-30 22:57Z, Vadim Zeitlin wrote:
> 
>  I'm continuing my trip in the past of this mailing list archives and by
> now I reached the discussion about the child documents. To give you more
> context, the full contents of the message I'm replying to can be seen at
> 
>       http://lists.nongnu.org/archive/html/lmi/2008-03/msg00038.html
> 
> I don't think the thread it makes part of has anything else related to this
> subject though.

The concept is quite simple; the implementation is less so. To make it all
clearer, I implemented it in the spirit of that 2008-03 message, correcting
some errors along the way and using some ideas from your message, and then
uploaded a patch here:
  http://savannah.nongnu.org/support/?104485

It seems to work, and my very limited testing finds no user-observable
defects. Here's the fundamental testcase:
  start lmi
  open 'sample.cns' from your local lmi cvs tree
  ctrl-R
[optionally refocus the 'sample.cns' window; hit alt-R again; repeat...]
[optionally, also do ctrl-shift-R with the '.cns' window focused]
  close 'sample.cns'
All the '*.ill' child views close; then the 'sample.cns' view closes.
That's what we want.

The patch is fairly large because class wxDocument doesn't yet have a
child-document list, so I added one to a couple of different classes;
I also added some commentary and some tracing statements. In lmi, every
IllustrationDocument created from a CensusDocument is a child of the
CensusDocument (but other IllustrationDocument instances have no parent);
that's the only parent-child relationship at present.

This patch is only a proof of concept, and not a polished implementation.
But I do hope it accelerates understanding.

Let me try to answer the rest of your note tomorrow.




reply via email to

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