On Sat, Mar 25, 2006 at 06:44:42PM +0100, Abdelrazak Younes wrote:
> Martin Vermeer a écrit :
> >See attached.
> >
> >The Deeper and Shallower ("In" and "Out") functionalities are not yet
> >implemented.
> >
> >You can test the moving of a sectioning header plus belonging text up
> >and down by entering into the minibuffer: "outline 0" or "outline 1".
> >
> >I have this stuff also working from qt2, with buttons on the TOC pop-up
> >window ;-)
> >
> >For now this is very preliminary. But is this the way we want to go for
> >implementing outlining?
> >  
> I have not tested the patch yet but I have some questions:
> It seems from the code that if I want to move say a chapter from 2 to 6, 
> I have to repeat the outline operation 4 times. Am I correct?
> If yes, an additional argument for the destination would be good:
> 
> -void Outline(OutlineOp mode, Buffer * buf, pit_type & origin)
> +void Outline(OutlineOp mode, Buffer * buf, pit_type const destination, 
> pit_type & origin)

Not useful when accessing the functionality from the GUI. Then you just
press the Up or Down button as many times as it takes. The minibuffer
is just for demoing. Now, a "dragging" operation by mouse would be
something different. If you promise to implement that in qt4, you could
convince me ;-)
 
> But at the end the code would be the same as Cut&Paste, wouldn't it? 
> Maybe a clean-up of CutAndPaste.[Ch] is in order so that we could use 
> that...
> What do you think?

Yes, I was thinking that too at first. But the difference is that here
we always handle whole paragraphs. Using the full C&P here would be
serious overkill.

One thing that this prototype does not do though (and what using C&P
would give for free), is take change tracking into account. Easiest
would be to just disable CT during outlining, as I am not sure it would
make much sense to actually track these huge structural changes.

- Martin

Attachment: pgp9yQJb9QBQu.pgp
Description: PGP signature

Reply via email to