26#include <com/sun/star/frame/XDispatch.hpp>
27#include <com/sun/star/util/URL.hpp>
41 class XMultiServiceFactory;
49 bool operator() (
const css::util::URL& x,
const css::util::URL& y)
const {
return x.Complete ==
y.Complete; }
52 class SbaXStatusMultiplexer;
55 ,
public css::frame::XDispatch
61 SbaXGridControl(
const css::uno::Reference< css::uno::XComponentContext >&);
66 virtual css::uno::Any SAL_CALL
queryAggregation(
const css::uno::Type& _rType)
override;
69 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes( )
override;
77 virtual void SAL_CALL
dispatch(
const css::util::URL&
aURL,
const css::uno::Sequence< css::beans::PropertyValue >& aArgs)
override;
78 virtual void SAL_CALL
addStatusListener(
const css::uno::Reference< css::frame::XStatusListener > & xControl,
const css::util::URL&
aURL)
override;
79 virtual void SAL_CALL
removeStatusListener(
const css::uno::Reference< css::frame::XStatusListener > & xControl,
const css::util::URL&
aURL)
override;
82 virtual void SAL_CALL
dispose()
override;
84 virtual void SAL_CALL
createPeer(
const css::uno::Reference< css::awt::XToolkit > & rToolkit,
const css::uno::Reference< css::awt::XWindowPeer > & rParentPeer)
override;
94 ,
public css::frame::XDispatch
100 SbaXGridPeer(
const css::uno::Reference< css::uno::XComponentContext >&);
104 virtual void SAL_CALL
acquire() noexcept
override { FmXGridPeer::acquire(); }
105 virtual void SAL_CALL
release() noexcept
override { FmXGridPeer::release(); }
106 virtual css::uno::Any SAL_CALL
queryInterface(
const css::uno::Type& _rType)
override;
108 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes()
override;
111 virtual void SAL_CALL
dispatch(
const css::util::URL&
aURL,
const css::uno::Sequence< css::beans::PropertyValue >& aArgs)
override;
112 virtual void SAL_CALL
addStatusListener(
const css::uno::Reference< css::frame::XStatusListener > & xControl,
const css::util::URL&
aURL)
override;
113 virtual void SAL_CALL
removeStatusListener(
const css::uno::Reference< css::frame::XStatusListener > & xControl,
const css::util::URL&
aURL)
override;
116 virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL
queryDispatch(
const css::util::URL&
aURL,
const OUString& aTargetFrameName, sal_Int32 nSearchFlags)
override;
119 virtual void SAL_CALL
dispose()
override;
123 void NotifyStatusChanged(
const css::util::URL& aUrl,
const css::uno::Reference< css::frame::XStatusListener > & xControl);
129 css::uno::Sequence< css::beans::PropertyValue >
aArgs;
154 ,
public DragSourceHelper
158 virtual void dispose()
override;
211 virtual void dispose()
override;
213 virtual void Select()
override;
217 virtual void ActivateCell(sal_Int32 nRow, sal_uInt16 nCol,
bool bSetCellFocus =
true)
override;
219 using FmGridControl::ActivateCell;
221 bool IsAllSelected()
const {
return (GetSelectRowCount() == GetRowCount()) && (GetRowCount() > 0); }
253 virtual ::svt::CellController*
GetController(sal_Int32 nRow, sal_uInt16 nCol)
override;
264 css::uno::Reference< css::beans::XPropertySet >
getField(sal_uInt16 nModelPos);
267 css::uno::Reference< css::beans::XPropertySet >
getDataSource()
const;
271 void DoFieldDrag(sal_uInt16 nColumnPos, sal_Int16 nRowPos);
285 using FmGridControl::AcceptDrop;
286 using FmGridControl::ExecuteDrop;
287 using FmGridControl::MouseButtonDown;
AccessibleBrowseBoxObjType
virtual void DeleteSelectedRows() override
SbaGridListener * m_pMasterListener
void SetMasterListener(SbaGridListener *pListener)
SvNumberFormatter * GetDatasourceFormatter()
virtual OUString GetAccessibleObjectDescription(AccessibleBrowseBoxObjType eObjType, sal_Int32 _nPosition=-1) const override
return the description of the specified object.
virtual void onColumnChange() override
virtual sal_Int8 AcceptDrop(const BrowserAcceptDropEvent &rEvt) override
HeaderBar * GetHeaderBar() const
DECL_LINK(AsynchDropEvent, void *, void)
void DoColumnDrag(sal_uInt16 nColumnPos)
virtual void PreExecuteRowContextMenu(weld::Menu &rMenu) override
void SetColWidth(sal_uInt16 nColId)
void SetColAttrs(sal_uInt16 nColId)
bool IsAllSelected() const
virtual ::svt::CellController * GetController(sal_Int32 nRow, sal_uInt16 nCol) override
css::uno::Reference< css::beans::XPropertySet > getDataSource() const
virtual sal_Int8 ExecuteDrop(const BrowserExecuteDropEvent &rEvt) override
void CopySelectedRowsToClipboard()
copies the currently selected rows to the clipboard @precond at least one row is selected
virtual void StartDrag(sal_Int8 _nAction, const Point &_rPosPixel) override
virtual void DeactivateCell(bool bUpdate=true) override
virtual void ActivateCell(sal_Int32 nRow, sal_uInt16 nCol, bool bSetCellFocus=true) override
bool IsReadOnlyDB() const
virtual void MouseButtonDown(const BrowserMouseEvent &rMEvt) override
virtual ~SbaGridControl() override
virtual void Select() override
SbaGridControl(css::uno::Reference< css::uno::XComponentContext > const &_rM, Window *pParent, FmXGridPeer *_pPeer, WinBits nBits)
virtual void PostExecuteRowContextMenu(const OUString &rExecutionResult) override
css::uno::Reference< css::beans::XPropertySet > getField(sal_uInt16 nModelPos)
void DoFieldDrag(sal_uInt16 nColumnPos, sal_Int16 nRowPos)
virtual void dispose() override
ImplSVEvent * m_nAsyncDropEvent
bool m_bActivatingForDrop
virtual VclPtr< BrowserHeader > imp_CreateHeaderBar(BrowseBox *pParent) override
svx::ODataAccessDescriptor m_aDataDescriptor
virtual void onRowChange() override
void implTransferSelectedRows(sal_Int16 nRowPos, bool _bTrueIfClipboardFalseIfDrag)
virtual void CellActivated()=0
virtual void SelectionChanged()=0
virtual void AfterDrop()=0
virtual void RowChanged()=0
virtual void CellDeactivated()=0
virtual void ColumnChanged()=0
virtual void BeforeDrop()=0
OUString SAL_CALL getImplementationName() override
SbaXGridControl(const css::uno::Reference< css::uno::XComponentContext > &)
virtual void SAL_CALL createPeer(const css::uno::Reference< css::awt::XToolkit > &rToolkit, const css::uno::Reference< css::awt::XWindowPeer > &rParentPeer) override
std::map< css::util::URL, rtl::Reference< SbaXStatusMultiplexer >, SbaURLCompare > StatusMultiplexerArray
StatusMultiplexerArray m_aStatusMultiplexer
virtual ~SbaXGridControl() override
virtual void SAL_CALL removeStatusListener(const css::uno::Reference< css::frame::XStatusListener > &xControl, const css::util::URL &aURL) override
virtual rtl::Reference< FmXGridPeer > imp_CreatePeer(vcl::Window *pParent) override
virtual css::uno::Any SAL_CALL queryAggregation(const css::uno::Type &_rType) override
virtual void SAL_CALL dispatch(const css::util::URL &aURL, const css::uno::Sequence< css::beans::PropertyValue > &aArgs) override
virtual void SAL_CALL dispose() override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
virtual void SAL_CALL addStatusListener(const css::uno::Reference< css::frame::XStatusListener > &xControl, const css::util::URL &aURL) override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual void SAL_CALL addStatusListener(const css::uno::Reference< css::frame::XStatusListener > &xControl, const css::util::URL &aURL) override
MapDispatchToBool m_aDispatchStates
virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch(const css::util::URL &aURL, const OUString &aTargetFrameName, sal_Int32 nSearchFlags) override
virtual VclPtr< FmGridControl > imp_CreateControl(vcl::Window *pParent, WinBits nStyle) override
SbaXGridPeer(const css::uno::Reference< css::uno::XComponentContext > &)
static DispatchType classifyDispatchURL(const css::util::URL &_rURL)
virtual void SAL_CALL dispatch(const css::util::URL &aURL, const css::uno::Sequence< css::beans::PropertyValue > &aArgs) override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
DECL_LINK(OnDispatchEvent, void *, void)
virtual void SAL_CALL removeStatusListener(const css::uno::Reference< css::frame::XStatusListener > &xControl, const css::util::URL &aURL) override
virtual void SAL_CALL release() noexcept override
std::map< DispatchType, bool > MapDispatchToBool
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &_rType) override
virtual ~SbaXGridPeer() override
void NotifyStatusChanged(const css::util::URL &aUrl, const css::uno::Reference< css::frame::XStatusListener > &xControl)
virtual void SAL_CALL dispose() override
std::queue< DispatchArgs > m_aDispatchArgs
virtual void SAL_CALL acquire() noexcept override
comphelper::OMultiTypeInterfaceContainerHelperVar4< css::util::URL, css::frame::XStatusListener, SbaURLCompare > m_aStatusListeners
bool operator()(const css::util::URL &x, const css::util::URL &y) const
css::uno::Sequence< css::beans::PropertyValue > aArgs
#define DECLARE_UNO3_AGG_DEFAULTS(classname, baseclass)