Apache OpenOffice (AOO) Bugzilla – Full Text Issue Listing |
Summary: | new Chart: Undo after leave the chart does not work | ||
---|---|---|---|
Product: | General | Reporter: | kla <thomas.klarhoefer> |
Component: | chart | Assignee: | kla <thomas.klarhoefer> |
Status: | CLOSED FIXED | QA Contact: | issues@graphics <issues> |
Severity: | Trivial | ||
Priority: | P3 | CC: | issues, tony.galmiche.ooo |
Version: | 3.3.0 or older (OOo) | Keywords: | new_implementation |
Target Milestone: | --- | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Latest Confirmation in: | --- |
Developer Difficulty: | --- |
Description
kla
2007-02-19 10:34:21 UTC
set Keyword Aaaargh! Why does this work in the old chart! If we want to fix this, we would have to change the whole Undo-Concept. This issue comes a bit late for being able to change this in a timely manner. Undo is currently done by the controller. When you leave the inplace-mode the controller is destroyed. Therefore Undo-information is lost. To keep the undo information, we would have to store the undo at the model. Which, by the way, only works as long as a chart is not swapped out of memory due to the "OLE cache" limitation or a switch to another sheet. The problem with an undo that survives the leaving of the outplace mode is, that changes done in Calc may influence the chart, rendering a later undo useless. For illustration, in the old chart create a chart out of three columns of data. Change some properties of the last series, go back to calc and delete the last column (that serves the data for that series). => The series will disappear. Now enter the chart and do an "Undo" => Nothing happens (fortunately there is no crash :-) ), because the object the undo works for no longer exists. As long as we have no merged undo (between Calc and Chart), I don't know how much sense in a remembered Undo-Stack makes, anyway. Ha! I knew it! Change the properties of a data point (e.g. data label), delete the corresponding data in Calc, go back to chart and do "Undo", then "Redo" => Crash. (Old chart of course) Accepting changed target according to i-team decision Undo now is implemented at the XModel, so that it is possible to do undo/redo as long as the model lives. For this change there are two new interfaces in namespace css:chart2: XUndoManager and XUndoSupplier. Side Note: Due to the OLE caching mechanism it is possible that the model is swapped out while a document is open, thus undo gets lost. However, this is the same for all other OOo applications as well. Please verify in CWS chart07. verified seen ok in current master -> closed |