class IContextRequestObserver
{ public: virtualvoid contextMenuRequested() = 0;
protected:
~IContextRequestObserver() {}
};
class FmTextControlShell final : public IFocusObserver
,public IContextRequestObserver
{ private:
css::uno::Reference< css::util::XURLTransformer > m_xURLTransformer;
css::uno::Reference< css::awt::XControl > m_xActiveControl;
css::uno::Reference< css::awt::XTextComponent > m_xActiveTextComponent;
css::uno::Reference< css::form::runtime::XFormController > m_xActiveController; #ifndef DONT_REMEMBER_LAST_CONTROL // without this define, m_xActiveControl remembers the *last* active control, even // if it, in the meantime, already lost the focus bool m_bActiveControl; // so we need an additional boolean flag telling whether the active control // is really focused #endif bool m_bActiveControlIsReadOnly; bool m_bActiveControlIsRichText;
// listening at all controls of the active controller for focus changes typedef rtl::Reference<FmFocusListenerAdapter> FocusListenerAdapter; typedef ::std::vector< FocusListenerAdapter > FocusListenerAdapters;
FocusListenerAdapters m_aControlObservers;
// translating between "slots" of the framework and "features" of the active control typedef rtl::Reference<FmTextControlFeature> ControlFeature; typedef ::std::map< SfxSlotId, ControlFeature > ControlFeatures;
ControlFeatures m_aControlFeatures;
/** to be called when a form in our document has been activated
*/ void formActivated( const css::uno::Reference< css::form::runtime::XFormController >& _rxController ); /** to be called when a form in our document has been deactivated
*/ void formDeactivated( const css::uno::Reference< css::form::runtime::XFormController >& _rxController );
/** notifies the instance that the design mode has changed
*/ void designModeChanged();
// fills the given structure with dispatchers for the given slots, for the given control void fillFeatureDispatchers( const css::uno::Reference< css::awt::XControl >& _rxControl,
SfxSlotId* _pZeroTerminatedSlots,
ControlFeatures& _rDispatchers
);
/// creates SfxPoolItes for all features in the given set, and puts them into the given SfxAllItemSet staticvoid transferFeatureStatesToItemSet(
ControlFeatures& _rDispatchers,
SfxAllItemSet& _rSet, bool _bTranslateLatin
);
/// to be called when a control has been activated void controlActivated( const css::uno::Reference< css::awt::XControl >& _rxControl ); /// to be called when the currently active control has been deactivated void controlDeactivated( );
void implClearActiveControlRef();
/** starts listening at all controls of the given controller for focus events @precond wedon'thaveanactivecontrollercurrently
*/ void startControllerListening( const css::uno::Reference< css::form::runtime::XFormController >& _rxController ); /** stops listening at the active controller @precond wehaveanactivecontrollercurrently
*/ void stopControllerListening( );
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.