19#ifndef INCLUDED_SVX_SOURCE_INC_FMTEXTCONTROLSHELL_HXX
20#define INCLUDED_SVX_SOURCE_INC_FMTEXTCONTROLSHELL_HXX
22#include <com/sun/star/frame/XDispatchProvider.hpp>
23#include <com/sun/star/awt/FocusEvent.hpp>
24#include <com/sun/star/awt/XTextComponent.hpp>
25#include <com/sun/star/form/runtime/XFormController.hpp>
26#include <com/sun/star/awt/XControl.hpp>
27#include <com/sun/star/util/XURLTransformer.hpp>
48 class FmFocusListenerAdapter;
49 class FmTextControlFeature;
50 class FmMouseListenerAdapter;
55 virtual void focusGained(
const css::awt::FocusEvent& _rEvent ) = 0;
56 virtual void focusLost(
const css::awt::FocusEvent& _rEvent ) = 0;
82#ifndef DONT_REMEMBER_LAST_CONTROL
127 void formActivated(
const css::uno::Reference< css::form::runtime::XFormController >& _rxController );
130 void formDeactivated(
const css::uno::Reference< css::form::runtime::XFormController >& _rxController );
140 virtual void focusGained(
const css::awt::FocusEvent& _rEvent )
override;
141 virtual void focusLost(
const css::awt::FocusEvent& _rEvent )
override;
155 const css::uno::Reference< css::frame::XDispatchProvider >& _rxProvider,
162 const css::uno::Reference< css::awt::XControl >& _rxControl,
171 bool _bTranslateLatin
175 void controlActivated(
const css::uno::Reference< css::awt::XControl >& _rxControl );
void SetControlActivationHandler(const Link< LinkParamNone *, void > &_rHdl)
ControlFeatures m_aControlFeatures
void controlDeactivated()
to be called when the currently active control has been deactivated
css::uno::Reference< css::awt::XTextComponent > m_xActiveTextComponent
SfxBindings & m_rBindings
::std::map< SfxSlotId, ControlFeature > ControlFeatures
Link< LinkParamNone *, void > m_aControlActivationHandler
AutoTimer m_aClipboardInvalidation
void stopControllerListening()
stops listening at the active controller @precond we have an active controller currently
void GetTextAttributeState(SfxItemSet &_rSet)
void ExecuteTextAttribute(SfxRequest &_rReq)
void Invalidate(SfxSlotId _nSlot)
static void transferFeatureStatesToItemSet(ControlFeatures &_rDispatchers, SfxAllItemSet &_rSet, bool _bTranslateLatin)
creates SfxPoolItes for all features in the given set, and puts them into the given SfxAllItemSet
bool m_bNeedClipboardInvalidation
void implClearActiveControlRef()
css::uno::Reference< css::form::runtime::XFormController > m_xActiveController
::std::vector< FocusListenerAdapter > FocusListenerAdapters
void controlActivated(const css::uno::Reference< css::awt::XControl > &_rxControl)
to be called when a control has been activated
css::uno::Reference< css::util::XURLTransformer > m_xURLTransformer
void designModeChanged()
notifies the instance that the design mode has changed
SfxViewFrame * m_pViewFrame
bool IsActiveControl(bool _bCountRichTextOnly=false) const
void formActivated(const css::uno::Reference< css::form::runtime::XFormController > &_rxController)
to be called when a form in our document has been activated
DECL_LINK(OnInvalidateClipboard, Timer *, void)
bool m_bActiveControlIsRichText
MouseListenerAdapter m_aContextMenuObserver
void startControllerListening(const css::uno::Reference< css::form::runtime::XFormController > &_rxController)
starts listening at all controls of the given controller for focus events @precond we don't have an a...
FocusListenerAdapters m_aControlObservers
void ForgetActiveControl()
virtual ~FmTextControlShell()
FmTextControlShell(SfxViewFrame *_pFrame)
virtual void focusGained(const css::awt::FocusEvent &_rEvent) override
css::uno::Reference< css::awt::XControl > m_xActiveControl
virtual void focusLost(const css::awt::FocusEvent &_rEvent) override
rtl::Reference< FmTextControlFeature > ControlFeature
virtual void contextMenuRequested() override
void executeAttributeDialog(AttributeSet _eSet, SfxRequest &_rReq)
bool m_bActiveControlIsReadOnly
rtl::Reference< FmTextControlFeature > implGetFeatureDispatcher(const css::uno::Reference< css::frame::XDispatchProvider > &_rxProvider, SfxApplication const *_pApplication, SfxSlotId _nSlot)
void fillFeatureDispatchers(const css::uno::Reference< css::awt::XControl > &_rxControl, SfxSlotId *_pZeroTerminatedSlots, ControlFeatures &_rDispatchers)
void executeClipboardSlot(SfxSlotId _nSlot)
rtl::Reference< FmFocusListenerAdapter > FocusListenerAdapter
bool isControllerListening() const
void formDeactivated(const css::uno::Reference< css::form::runtime::XFormController > &_rxController)
to be called when a form in our document has been deactivated
rtl::Reference< FmMouseListenerAdapter > MouseListenerAdapter
~IContextRequestObserver()
virtual void contextMenuRequested()=0
virtual void focusGained(const css::awt::FocusEvent &_rEvent)=0
virtual void focusLost(const css::awt::FocusEvent &_rEvent)=0