Chart Document Controller

From Apache OpenOffice Wiki
< Documentation‎ | DevGuide
Revision as of 19:36, 20 December 2020 by DiGro (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



The chart document model implements com.sun.star.frame.XModel. Therefore, controllers can be registered with the method connectController(). When one of the registered controllers is set as current one with setCurrentController(), this one is also returned in the method getCurrentController().

Apart from using the controller directly, there are three other useful methods:

  void lockControllers()
  void unlockControllers()
  boolean hasControllersLocked()

With a call to lockControllers() all registered controllers will no longer be notified about changes in the model. If there are changes those are notified no earlier than after calling unlockControllers(). This is especially useful if you do many changes to the chart model at a time but do not need the view to be updated after every single change. The method hasControllersLocked() just gives you the state whether controllers are locked or not.

Documentation note.png You can nest calls to lockControllers(). Every call to lockControllers() needs a corresponding unlockControllers() call. Only after the correct number of unlocking calls, notifications of the model will be sent again. So, you can safely lock and unlock the controllers in your code without having to check if they have already been locked or not. Just make sure that you call both methods and do not leave the controllers in a locked state after your code finishes.
Content on this page is licensed under the Public Documentation License (PDL).
Personal tools
In other languages