/** This singleton observes all registered documents for changes in the used masterpagesandinturninformsitslistenersaboutit.Onesuch listeneristhemasterpageselectorcontrolinthetoolpanelthat showstherecentlyusedmasterpages.
*/ class MasterPageObserver final : public SdGlobalResource
{ public: typedef ::std::set<OUString> MasterPageNameSet;
/** Return the single instance of this class.
*/ static MasterPageObserver& Instance();
/** The master page observer will listen to events of this document and detectchangesoftheuseofmasterpages.
*/ void RegisterDocument(SdDrawDocument& rDocument);
/** The master page observer will stop to listen to events of this document.
*/ void UnregisterDocument(SdDrawDocument& rDocument);
/** Add a listener that is informed of master pages that are newly assignedtoslidesorbecomeunassigned. @paramrEventListener Theeventlistenertocallforfutureevents.Call RemoveEventListener()beforethelistenerisdestroyed.
*/ void AddEventListener(const Link<MasterPageObserverEvent&, void>& rEventListener);
/** Remove the given listener from the list of listeners. @paramrEventListener Afterthismethodreturnsthegivenlistenerisnotcalledback fromthisobject.Passingalistenerthathasnot beenregisteredbeforeissafeandissilentlyignored.
*/ void RemoveEventListener(const Link<MasterPageObserverEvent&, void>& rEventListener);
private: class Implementation;
::std::unique_ptr<Implementation> mpImpl;
/** Objects of this class are sent to listeners of the MasterPageObserver singletonwhenthelistofmasterpagesofonedocumenthaschanged.
*/ class MasterPageObserverEvent
{ public: enum EventType
{ /// Master page already exists when document is registered.
ET_MASTER_PAGE_EXISTS, /// Master page has been added to a document.
ET_MASTER_PAGE_ADDED, /// Master page has been removed from to a document.
ET_MASTER_PAGE_REMOVED
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.