On Tue, 2011-10-25 at 23:26 +0200, Christoph Noack wrote:
Yep, would be one solution ... maybe we do some nasty tricks to make the
user believe it is a character-by-character update?
* When changing a name / expression (e.g. entering a character),
the system might check for the name / expression validity, and
(if valid) update the table. The model stays unchanged. If the
name / expression is invalid, further changes in the model
mustn't be done anyway.
* If the user exits the input field, then the model is updated and
a undo item is created.
But still, I don't know whether its doable or solves the performance
issue. But I really think its very elegant ;-)
I agree that it would be an elegant solution. However...
One issue we need to consider is that, once the name is updated in the
model, and assuming that the auto recalculation is turned on (it's on by
default and most users leave this on), all affected formula cells will
need to be re-calculated. And this needs to happens every time a name
is updated. Depending on how large the document is, and how complex its
formula network is, this can be very expensive.
Right now, all modified names are committed to the model once when you
click OK, so at most we have to re-calculate once. But if the current
proposal becomes implemented, then we would need to do re-calc on every
name definition change. That would potentially make the whole name
updating experience unpleasant.
If the dialog was modal, we could temporarily turn off auto-recalc and
turn it back on once the dialog is dismissed, but we can't do that with
modeless dialog.
Sorry to give you guys another obstacle. But I felt I needed to mention
this to make sure this issue is taken into consideration in the design.
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.