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


Reply via email to