TheformshelliscreatedanddestroyedbytheViewShellManagerbyusing afactoryobjectprovidedbytheFormShellManager.
*/ class FormShellManager final : public SfxListener
{ public:
FormShellManager(ViewShellBase& rBase); virtual ~FormShellManager() override;
/** Typically called by a ShellFactory. It tells the FormShellManagerwhichformshelltomanage. @parampFormShell Thismaybe<NULL/>todisconnecttheViewShellManagerfromthe formshell.
*/ void SetFormShell(FmFormShell* pFormShell);
/** Return the form shell last set with SetFormShell(). @return Theresultmaybe<NULL/>whentheSetFormShell()methodhasnot yetbeencalledorwaslastcalledwith<NULL/>.
*/
FmFormShell* GetFormShell() { return mpFormShell; }
private:
ViewShellBase& mrBase;
/** Ownership of the form shell lies with the ViewShellManager. This referenceiskeptsothattheFormShellManagercandetectwhenanew formshellispassedtoSetFormShell().
*/
FmFormShell* mpFormShell;
/** Remember whether the form shell is currently above or below the main viewshell.
*/ bool mbFormShellAboveViewShell;
/** The factory is remembered so that it removed from the ViewShellManagerwhentheFormShellManagerisdestroyed.
*/
ViewShellManager::SharedShellFactory mpSubShellFactory;
bool mbIsMainViewChangePending;
VclPtr<vcl::Window> mpMainViewShellWindow;
/** Register at window of center pane and at the form shell that representstheformtoolbar.Theformerinformsthismanagerabout thedeselectionoftheformshell.Thelaterinformsaboutits selection.
*/ void RegisterAtCenterPane();
/** Unregister the listeners that were registered in RegisterAtCenterPane().
*/ void UnregisterAtCenterPane();
/** This call back is called by the application window (among others) whenthewindowgetsthefocus.Inthiscasetheformshellis movedtothebottomoftheshellstack.
*/
DECL_LINK(WindowEventHandler, VclWindowEvent&, void);
/** This call back is called when view in the center pane is replaced. Whenthishappensthenweunregisteratthewindowoftheoldand registeratthewindowofthenewshell.
*/
DECL_LINK(ConfigurationUpdateHandler, ::sd::tools::EventMultiplexerEvent&, void);
/** This call back is called by the form shell when it gets the focus. Inthiscasetheformshellismovedtothetopoftheshellstack.
*/
DECL_LINK(FormControlActivated, LinkParamNone*, void);
/** This method is called by the form shell when that is destroyed. It actsasalastresortagainstreferencingadeadformshell.With thefactoryworkingproperlythismethodshouldnotbenecessary (andmayberemovedinthefuture.)
*/ virtualvoid Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
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.