20#ifndef INCLUDED_SFX2_SFXBASECONTROLLER_HXX
21#define INCLUDED_SFX2_SFXBASECONTROLLER_HXX
27#include <com/sun/star/frame/XDispatchProvider.hpp>
28#include <com/sun/star/frame/XDispatchInformationProvider.hpp>
29#include <com/sun/star/frame/XController2.hpp>
30#include <com/sun/star/frame/XControllerBorder.hpp>
31#include <com/sun/star/frame/XInfobarProvider.hpp>
32#include <com/sun/star/frame/XTitle.hpp>
33#include <com/sun/star/frame/XTitleChangeBroadcaster.hpp>
34#include <com/sun/star/lang/XInitialization.hpp>
37#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
38#include <com/sun/star/ui/XContextMenuInterception.hpp>
39#include <com/sun/star/awt/XUserInputInterception.hpp>
66typedef ::cppu::WeakImplHelper < css::frame::XController2
67 , css::frame::XControllerBorder
68 , css::frame::XDispatchProvider
69 , css::task::XStatusIndicatorSupplier
70 , css::ui::XContextMenuInterception
71 , css::awt::XUserInputInterception
72 , css::frame::XDispatchInformationProvider
73 , css::frame::XInfobarProvider
75 , css::frame::XTitleChangeBroadcaster
76 , css::lang::XInitialization
96 SAL_DLLPRIVATE
void ReleaseShell_Impl();
97 SAL_DLLPRIVATE
void BorderWidthsChanged_Impl();
99 css::uno::Reference< css::task::XStatusIndicator > SAL_CALL getStatusIndicator( )
override;
103 virtual css::uno::Reference< css::awt::XWindow > SAL_CALL getComponentWindow()
override;
104 virtual OUString SAL_CALL getViewControllerName()
override;
105 virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL getCreationArguments()
override;
107 virtual css::uno::Reference< css::ui::XSidebarProvider > SAL_CALL getSidebar()
override;
113 virtual void SAL_CALL attachFrame(
const css::uno::Reference< css::frame::XFrame >&
xFrame )
override ;
115 virtual sal_Bool SAL_CALL attachModel(
const css::uno::Reference< css::frame::XModel >&
xModel )
override ;
119 css::uno::Any SAL_CALL getViewData()
override ;
121 void SAL_CALL restoreViewData(
const css::uno::Any& aValue )
override ;
123 css::uno::Reference< css::frame::XFrame > SAL_CALL getFrame()
override ;
125 css::uno::Reference< css::frame::XModel > SAL_CALL getModel()
override ;
131 virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch(
const css::util::URL &
aURL ,
132 const OUString & sTargetFrameName,
133 sal_Int32 eSearchFlags )
override ;
135 virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL queryDispatches(
const css::uno::Sequence< css::frame::DispatchDescriptor >& seqDescriptor )
override ;
141 virtual css::frame::BorderWidths SAL_CALL getBorder()
override;
142 virtual void SAL_CALL addBorderResizeListener(
const css::uno::Reference< css::frame::XBorderResizeListener >& xListener )
override;
143 virtual void SAL_CALL removeBorderResizeListener(
const css::uno::Reference< css::frame::XBorderResizeListener >& xListener )
override;
144 virtual css::awt::Rectangle SAL_CALL queryBorderedArea(
const css::awt::Rectangle& aPreliminaryRectangle )
override;
150 virtual void SAL_CALL
dispose()
override ;
152 virtual void SAL_CALL addEventListener(
const css::uno::Reference< css::lang::XEventListener >& aListener )
override ;
154 virtual void SAL_CALL removeEventListener(
const css::uno::Reference< css::lang::XEventListener >& aListener )
override ;
155 virtual void SAL_CALL registerContextMenuInterceptor(
const css::uno::Reference< css::ui::XContextMenuInterceptor >& xInterceptor )
override;
156 virtual void SAL_CALL releaseContextMenuInterceptor(
const css::uno::Reference< css::ui::XContextMenuInterceptor >& xInterceptor )
override;
158 virtual void SAL_CALL addKeyHandler(
const css::uno::Reference< css::awt::XKeyHandler >& xHandler )
override;
159 virtual void SAL_CALL removeKeyHandler(
const css::uno::Reference< css::awt::XKeyHandler >& xHandler )
override;
160 virtual void SAL_CALL addMouseClickHandler(
const css::uno::Reference< css::awt::XMouseClickHandler >& xHandler )
override;
161 virtual void SAL_CALL removeMouseClickHandler(
const css::uno::Reference< css::awt::XMouseClickHandler >& xHandler )
override;
165 virtual css::uno::Sequence< sal_Int16 > SAL_CALL getSupportedCommandGroups()
override;
166 virtual css::uno::Sequence< css::frame::DispatchInformation > SAL_CALL getConfigurableDispatchInformation( sal_Int16 nCommandGroup )
override;
169 virtual OUString SAL_CALL
getTitle( )
override;
170 virtual void SAL_CALL setTitle(
const OUString& sTitle )
override;
173 virtual void SAL_CALL addTitleChangeListener(
const css::uno::Reference< css::frame::XTitleChangeListener >& xListener )
override;
174 virtual void SAL_CALL removeTitleChangeListener(
const css::uno::Reference< css::frame::XTitleChangeListener >& xListener )
override;
177 virtual void SAL_CALL initialize(
const css::uno::Sequence< css::uno::Any >&
aArguments )
override;
180 virtual void SAL_CALL
181 appendInfobar(
const OUString&
sId,
const OUString& sPrimaryMessage,
182 const OUString& sSecondaryMessage, sal_Int32 aInfobarType,
183 const css::uno::Sequence<css::beans::StringPair>& actionButtons,
184 sal_Bool bShowCloseButton)
override;
185 virtual void SAL_CALL updateInfobar(
const OUString&
sId,
const OUString& sPrimaryMessage,
186 const OUString& sSecondaryMessage,
187 sal_Int32 aInfobarType)
override;
188 virtual void SAL_CALL removeInfobar(
const OUString&
sId)
override;
189 virtual sal_Bool SAL_CALL hasInfobar(
const OUString&
sId)
override;
194 SAL_DLLPRIVATE
bool HandleEvent_Impl(
NotifyEvent const & rEvent );
195 SAL_DLLPRIVATE
bool HasKeyListeners_Impl()
const;
196 SAL_DLLPRIVATE
bool HasMouseClickListeners_Impl()
const;
197 SAL_DLLPRIVATE
void SetCreationArguments_Impl(
const css::uno::Sequence< css::beans::PropertyValue >& i_rCreationArgs );
198 SAL_DLLPRIVATE css::uno::Reference< css::frame::XTitle > impl_getTitleHelper ();
201 void CopyLokViewCallbackFromFrameCreator();
210 SAL_DLLPRIVATE
void ConnectSfxFrame_Impl(
const ConnectSfxFrame i_eConnect );
212 SAL_DLLPRIVATE
void ShowInfoBars( );
216 std::unique_ptr<IMPL_SfxBaseController_DataContainer>
m_pData ;
std::unique_ptr< IMPL_SfxBaseController_DataContainer > m_pData
DECL_DLLPRIVATE_LINK(CheckOutHandler, weld::Button &, void)
One SfxViewShell more or less represents one edit window for a document, there can be multiple ones f...
Sequence< PropertyValue > aArguments
std::u16string_view getTitle(std::u16string_view aPath)
sal_Int16 MapGroupIDToCommandGroup(SfxGroupId nGroupID)
::cppu::WeakImplHelper< css::frame::XController2, css::frame::XControllerBorder, css::frame::XDispatchProvider, css::task::XStatusIndicatorSupplier, css::ui::XContextMenuInterception, css::awt::XUserInputInterception, css::frame::XDispatchInformationProvider, css::frame::XInfobarProvider, css::frame::XTitle, css::frame::XTitleChangeBroadcaster, css::lang::XInitialization > SfxBaseController_Base
Reference< XFrame > xFrame
Reference< XModel > xModel