Re: commit (HEAD): Format Table compile and not crash.

From: Martin Sevior (msevior@physics.unimelb.edu.au)
Date: Tue Sep 17 2002 - 11:41:21 EDT

  • Next message: Hubert Figuiere: "Re: Commit (STABLE): backport fix for bug 3339"

    On 17 Sep 2002, j.m.maurer wrote:

    > > make format Table compile and not crash.
    >
    > it compiled here... /me is puzzled :)

    I suspect it was gcc 2.96 weirdness

    > >
    > > uwog, changing just a cell property does not rebuild a table which is
    > > needed after a cell property change. I put in a couple methods I wrote
    > > to do this.
    > >
    >
    > ah... that explains a lot... I'm not very experienced with anything that
    > has to do with the piecetable... but I'm learning ...

    In this case it is the formating engine. Changing a strux means that the
    fp*Container described by the strux must be destroyed and rebuilt with the
    new properties the strux has obtained. (Look in the fl*Layout classes at
    what happens in the *ChangeStrux methods) I could have put in a couple of
    calls in the fl_CellLayout to destroy and rebuild the entire table
    fp_TableContainer upon a changeStrux in the cell (which we have to do
    anyway) but I decided that for performance reasons it would be better to
    do it externally. There are many cases where a set of strux changes to
    cells are made sequentially (like inserting or deleting rows,columns etc)
    in which case it would be very inefficient to destroy the
    fp_TableContainer on each cell change. On the other hand the entire table
    DOES need to be rebuilt so I put in the calls to do that.

    Cheers

    Martin



    This archive was generated by hypermail 2.1.4 : Tue Sep 17 2002 - 11:46:31 EDT