On Mon, 27 Nov 2000, Jürgen Vigna wrote:
> Well you didn't tell me where in the code :), but I'm pretty sure this is
> in the part where the width of the columns (tabular) is calculated is it?
>
Sorry, I didn't realise you didn't have easy access to the source as
well. This is InsetTabular::draw(), inside the need_update == CELL
case. It comes *after* the code that does the
GetWidthOfColumn() GetAscentOfRow() stuff - is that where you mean ?
> This should be only a visual feedback problem (this means that the tabular is
> not redrawn. Please try to select more tabular columns without being inside
> the text inset (the textinst should not be locked).
I'm not sure what you mean here, I can't select stuff without the text
cursor following. And shouldn't I be able to get it to redraw properly
later ?
>
> Probably we can fix the problem by unlocking the textinset in the part
> of the switch in TabularFeatures where the Multicolumn-Set is handled.
>
> Wait IMO we could handle this better let's for now just unlock the inset
> in UpdateLocal if the what == INIT something like:
>
> void InsetTabular::UpdateLocal(BufferView * bv, UpdateCodes what,
> bool mark_dirty) const
> {
> if ((what == INIT) && the_locking_inset) {
> the_locking_inset->InsetUnlock(bv);
> the_locking_inset = 0;
> }
> ....
> }
>
> This should help IMO, but please test!
>
I had to make the_locking_inset member mutable as well. Unfortunately this
didn't help. I still get the ERROR every time I select "multicolumn". I
wish I could help further but I've never seen this code before ;)
thanks
john
--
"This is the most blatant case of fraudulent advertising since my suit against the
film 'The Neverending Story'."
- Lionel Hutz