LibreOffice Module svx (master)  1
fmgridif.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 #ifndef INCLUDED_SVX_FMGRIDIF_HXX
20 #define INCLUDED_SVX_FMGRIDIF_HXX
21 
22 #include <svx/svxdllapi.h>
23 
24 #include <com/sun/star/view/XSelectionSupplier.hpp>
25 #include <com/sun/star/beans/XPropertyChangeListener.hpp>
26 #include <com/sun/star/container/XEnumerationAccess.hpp>
27 #include <com/sun/star/container/XContainer.hpp>
28 #include <com/sun/star/container/XContainerListener.hpp>
29 #include <com/sun/star/sdbc/XRowSetListener.hpp>
30 #include <com/sun/star/sdb/XRowSetSupplier.hpp>
31 #include <com/sun/star/form/XResetListener.hpp>
32 #include <com/sun/star/form/XBoundComponent.hpp>
33 #include <com/sun/star/form/XLoadListener.hpp>
34 #include <com/sun/star/form/XGridControl.hpp>
35 #include <com/sun/star/form/XGridPeer.hpp>
36 #include <com/sun/star/frame/XDispatchProvider.hpp>
37 #include <com/sun/star/frame/XStatusListener.hpp>
38 #include <com/sun/star/frame/XDispatchProviderInterception.hpp>
39 #include <com/sun/star/view/XSelectionChangeListener.hpp>
40 #include <com/sun/star/util/XModeSelector.hpp>
41 #include <com/sun/star/util/XModifyListener.hpp>
42 #include <com/sun/star/util/XModifyBroadcaster.hpp>
43 
44 #include <tools/wintypes.hxx>
48 #include <comphelper/uno3.hxx>
49 #include <cppuhelper/implbase.hxx>
51 #include <memory>
52 
53 namespace com::sun::star::beans { class XPropertySet; }
54 namespace com::sun::star::uno { class XComponentContext; }
55 
56 class DbGridColumn;
58 
60 {
61 protected:
63 
64 public:
65  OWeakSubObject(::cppu::OWeakObject& rParent) : m_rParent(rParent) { }
66 
67  virtual void SAL_CALL acquire() throw() override { m_rParent.acquire(); }
68  virtual void SAL_CALL release() throw() override { m_rParent.release(); }
69 };
70 
71 
72 // FmXModifyMultiplexer
73 
76  ,public css::util::XModifyListener
77 {
78 public:
79  FmXModifyMultiplexer( ::cppu::OWeakObject& rSource, ::osl::Mutex& rMutex );
81  virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type& _rType) override;
82 
83 // css::lang::XEventListener
84  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
85 
86 // css::util::XModifyListener
87  virtual void SAL_CALL modified(const css::lang::EventObject& Source) override;
88 
89 // resolve ambiguity : both OWeakObject and OInterfaceContainerHelper2 have these memory operators
90  using OWeakSubObject::operator new;
91  using OWeakSubObject::operator delete;
92 };
93 
94 
95 // FmXUpdateMultiplexer
96 
99  public css::form::XUpdateListener
100 {
101 public:
102  FmXUpdateMultiplexer( ::cppu::OWeakObject& rSource, ::osl::Mutex& rMutex );
104 
105  virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type& _rType) override;
106 
107 // css::lang::XEventListener
108  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
109 
110 // css::form::XUpdateListener
111  virtual sal_Bool SAL_CALL approveUpdate(const css::lang::EventObject &) override;
112  virtual void SAL_CALL updated(const css::lang::EventObject &) override;
113 
114 // resolve ambiguity : both OWeakObject and OInterfaceContainerHelper2 have these memory operators
115  using OWeakSubObject::operator new;
116  using OWeakSubObject::operator delete;
117 };
118 
119 
120 // FmXSelectionMultiplexer
121 
124  ,public css::view::XSelectionChangeListener
125 {
126 public:
127  FmXSelectionMultiplexer( ::cppu::OWeakObject& rSource, ::osl::Mutex& rMutex );
129 
130  virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type& _rType) override;
131 
132 // css::lang::XEventListener
133  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
134 
135 // css::view::XSelectionChangeListener
136  virtual void SAL_CALL selectionChanged( const css::lang::EventObject& aEvent ) override;
137 
138 // resolve ambiguity : both OWeakObject and OInterfaceContainerHelper2 have these memory operators
139  using OWeakSubObject::operator new;
140  using OWeakSubObject::operator delete;
141 };
142 
143 
144 // FmXGridControlMultiplexer
145 
148  ,public css::form::XGridControlListener
149 {
150 public:
151  FmXGridControlMultiplexer( ::cppu::OWeakObject& rSource, ::osl::Mutex& rMutex );
153 
154  virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type& _rType) override;
155 
156 // css::lang::XEventListener
157  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
158 
159 // css::view::XSelectionChangeListener
160  virtual void SAL_CALL columnChanged( const css::lang::EventObject& _event ) override;
161 
162 // resolve ambiguity : both OWeakObject and OInterfaceContainerHelper2 have these memory operators
163  using OWeakSubObject::operator new;
164  using OWeakSubObject::operator delete;
165 };
166 
167 
168 // FmXContainerMultiplexer
169 
172  public css::container::XContainerListener
173 {
174 public:
175  FmXContainerMultiplexer( ::cppu::OWeakObject& rSource, ::osl::Mutex& rMutex);
177  virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type& _rType) override;
178 
179 // css::lang::XEventListener
180  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
181 
182 // css::container::XContainerListener
183  virtual void SAL_CALL elementInserted(const css::container::ContainerEvent& Event) override;
184  virtual void SAL_CALL elementRemoved(const css::container::ContainerEvent& Event) override;
185  virtual void SAL_CALL elementReplaced(const css::container::ContainerEvent& Event) override;
186 
187 // resolve ambiguity : both OWeakObject and OInterfaceContainerHelper2 have these memory operators
188  using OWeakSubObject::operator new;
189  using OWeakSubObject::operator delete;
190 };
191 
192 
193 // FmXGridControl
194 
195 typedef ::cppu::ImplHelper10< css::form::XBoundComponent,
196  css::form::XGridControl,
197  css::util::XModifyBroadcaster,
198  css::container::XIndexAccess,
199  css::container::XEnumerationAccess,
200  css::util::XModeSelector,
201  css::container::XContainer,
202  css::frame::XDispatchProvider,
203  css::frame::XDispatchProviderInterception,
204  css::view::XSelectionSupplier
206 
207 class FmXGridPeer;
209  ,public FmXGridControl_BASE
210 {
216 
217 protected:
218  bool m_bInDraw;
219 
220  css::uno::Reference< css::uno::XComponentContext > m_xContext;
221 
222 public:
223  FmXGridControl(const css::uno::Reference< css::uno::XComponentContext >&);
224  virtual ~FmXGridControl() override;
225 
226  // UNO binding
228  virtual css::uno::Any SAL_CALL queryAggregation(const css::uno::Type& _rType) override;
229 
230 // XTypeProvider
231  virtual css::uno::Sequence< css::uno::Type> SAL_CALL getTypes( ) override;
232  virtual css::uno::Sequence<sal_Int8> SAL_CALL getImplementationId( ) override;
233 
234 // css::lang::XComponent
235  virtual void SAL_CALL dispose() override;
236 
237 // css::lang::XServiceInfo
238  virtual sal_Bool SAL_CALL supportsService(const OUString& ServiceName) override;
239  virtual OUString SAL_CALL getImplementationName() override;
240  virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override;
241 
242 // css::awt::XControl
243  virtual void SAL_CALL createPeer(const css::uno::Reference< css::awt::XToolkit >& _rToolkit, const css::uno::Reference< css::awt::XWindowPeer >& Parent) override;
244  virtual sal_Bool SAL_CALL setModel(const css::uno::Reference< css::awt::XControlModel >& Model) override;
245  virtual void SAL_CALL setDesignMode(sal_Bool bOn) override;
246 
247 // css::awt::XView
248  virtual void SAL_CALL draw( sal_Int32 x, sal_Int32 y ) override;
249 
250 // css::form::XBoundComponent
251  virtual void SAL_CALL addUpdateListener(const css::uno::Reference< css::form::XUpdateListener >& l) override;
252  virtual void SAL_CALL removeUpdateListener(const css::uno::Reference< css::form::XUpdateListener >& l) override;
253  virtual sal_Bool SAL_CALL commit() override;
254 
255 // css::container::XElementAccess
256  virtual css::uno::Type SAL_CALL getElementType( ) override;
257  virtual sal_Bool SAL_CALL hasElements( ) override;
258 
259 // css::container::XEnumerationAccess
260  virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() override;
261 
262 // css::container::XIndexAccess
263  virtual sal_Int32 SAL_CALL getCount() override;
264  virtual css::uno::Any SAL_CALL getByIndex(sal_Int32 _rIndex) override;
265 
266 // css::form::XGridControl
267  virtual void SAL_CALL addGridControlListener( const css::uno::Reference< css::form::XGridControlListener >& _listener ) override;
268  virtual void SAL_CALL removeGridControlListener( const css::uno::Reference< css::form::XGridControlListener >& _listener ) override;
269 
270 // css::form::XGrid (base of XGridControl)
271  virtual sal_Int16 SAL_CALL getCurrentColumnPosition() override;
272  virtual void SAL_CALL setCurrentColumnPosition(sal_Int16 nPos) override;
273 
274 // css::form::XGridFieldDataSupplier (base of XGridControl)
275  virtual css::uno::Sequence< sal_Bool > SAL_CALL queryFieldDataType( const css::uno::Type& xType ) override;
276  virtual css::uno::Sequence< css::uno::Any > SAL_CALL queryFieldData( sal_Int32 nRow, const css::uno::Type& xType ) override;
277 
278 // UnoControl
279  virtual OUString GetComponentServiceName() override;
280 
281 // css::util::XModifyBroadcaster
282  virtual void SAL_CALL addModifyListener(const css::uno::Reference< css::util::XModifyListener >& l) override;
283  virtual void SAL_CALL removeModifyListener(const css::uno::Reference< css::util::XModifyListener >& l) override;
284 
285 // css::util::XModeSelector
286  virtual void SAL_CALL setMode(const OUString& Mode) override;
287  virtual OUString SAL_CALL getMode() override;
288  virtual css::uno::Sequence< OUString> SAL_CALL getSupportedModes() override;
289  virtual sal_Bool SAL_CALL supportsMode(const OUString& Mode) override;
290 
291 // css::container::XContainer
292  virtual void SAL_CALL addContainerListener(const css::uno::Reference< css::container::XContainerListener >& l) override;
293  virtual void SAL_CALL removeContainerListener(const css::uno::Reference< css::container::XContainerListener >& l) override;
294 
295 // css::frame::XDispatchProvider
296  virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch(const css::util::URL& aURL, const OUString& aTargetFrameName, sal_Int32 nSearchFlags) override;
297  virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL queryDispatches(const css::uno::Sequence< css::frame::DispatchDescriptor >& aDescripts) override;
298 
299 // css::frame::XDispatchProviderInterception
300  virtual void SAL_CALL registerDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor >& xInterceptor) override;
301  virtual void SAL_CALL releaseDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor >& xInterceptor) override;
302 
303 // css::view::XSelectionSupplier
304  virtual sal_Bool SAL_CALL select( const css::uno::Any& aSelection ) override;
305  virtual css::uno::Any SAL_CALL getSelection( ) override;
306  virtual void SAL_CALL addSelectionChangeListener( const css::uno::Reference< css::view::XSelectionChangeListener >& xListener ) override;
307  virtual void SAL_CALL removeSelectionChangeListener( const css::uno::Reference< css::view::XSelectionChangeListener >& xListener ) override;
308 
309 protected:
310  virtual FmXGridPeer* imp_CreatePeer(vcl::Window* pParent);
311  // ImplCreatePeer would be better, but doesn't work because it's not exported
312 
313 };
314 
315 
316 // FmXGridPeer -> Peer for the Gridcontrol
317 
318 class FmGridControl;
319 class SAL_WARN_UNUSED SVX_DLLPUBLIC FmXGridPeer:
320  public cppu::ImplInheritanceHelper<
321  VCLXWindow,
322  css::form::XGridPeer,
323  css::form::XBoundComponent,
324  css::form::XGridControl,
325  css::sdb::XRowSetSupplier,
326  css::util::XModifyBroadcaster,
327  css::beans::XPropertyChangeListener,
328  css::container::XContainerListener,
329  css::sdbc::XRowSetListener,
330  css::form::XLoadListener,
331  css::view::XSelectionChangeListener,
332  css::container::XIndexAccess,
333  css::container::XEnumerationAccess,
334  css::util::XModeSelector,
335  css::container::XContainer,
336  css::frame::XStatusListener,
337  css::frame::XDispatchProvider,
338  css::frame::XDispatchProviderInterception,
339  css::form::XResetListener,
340  css::view::XSelectionSupplier>
341 {
342 protected:
343  css::uno::Reference< css::uno::XComponentContext > m_xContext;
344  ::osl::Mutex m_aMutex;
345 
346 private:
347  css::uno::Reference< css::container::XIndexContainer > m_xColumns;
348  css::uno::Reference< css::sdbc::XRowSet > m_xCursor;
351  m_aContainerListeners,
352  m_aSelectionListeners,
353  m_aGridControlListeners;
354 
355  OUString m_aMode;
357 
358  css::uno::Reference< css::frame::XDispatchProviderInterceptor > m_xFirstDispatchInterceptor;
359 
361 
362  std::unique_ptr<bool[]> m_pStateCache;
363  // one bool for each supported url
364  std::unique_ptr<css::uno::Reference< css::frame::XDispatch >[]> m_pDispatchers;
365  // one dispatcher for each supported url
366  // (I would like to have a vector here but including the stl in an exported file seems
367  // very risky to me...)
368 
369  class SAL_DLLPRIVATE GridListenerDelegator;
370  friend class GridListenerDelegator;
371  std::unique_ptr<GridListenerDelegator> m_pGridListener;
372 
373 public:
374  FmXGridPeer(const css::uno::Reference< css::uno::XComponentContext >&);
375  virtual ~FmXGridPeer() override;
376 
377  // late constructor, to always be called after the real constructor!
378  void Create(vcl::Window* pParent, WinBits nStyle);
379 
380 // css::lang::XUnoTunnel
382 
383 // css::form::XGridPeer
384  virtual css::uno::Reference< css::container::XIndexContainer > SAL_CALL getColumns( ) override;
385  virtual void SAL_CALL setColumns( const css::uno::Reference< css::container::XIndexContainer >& aColumns ) override final;
386 
387 // css::lang::XComponent
388  virtual void SAL_CALL dispose() override;
389 
390 // css::lang::XEventListener
391  virtual void SAL_CALL disposing(const css::lang::EventObject& Source) override;
392 
393 // css::form::XBoundComponent
394  virtual void SAL_CALL addUpdateListener(const css::uno::Reference< css::form::XUpdateListener >& l) override;
395  virtual void SAL_CALL removeUpdateListener(const css::uno::Reference< css::form::XUpdateListener >& l) override;
396  virtual sal_Bool SAL_CALL commit() override;
397 
398 // css::container::XElementAccess
399  virtual css::uno::Type SAL_CALL getElementType( ) override;
400  virtual sal_Bool SAL_CALL hasElements( ) override;
401 
402 // css::container::XEnumerationAccess
403  virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() override;
404 
405 // css::container::XIndexAccess
406  virtual sal_Int32 SAL_CALL getCount() override;
407  virtual css::uno::Any SAL_CALL getByIndex(sal_Int32 _rIndex) override;
408 
409 // css::beans::XPropertyChangeListener
410  virtual void SAL_CALL propertyChange(const css::beans::PropertyChangeEvent& evt) override;
411 
412 // css::form::XLoadListener
413  virtual void SAL_CALL loaded(const css::lang::EventObject& rEvent) override;
414  virtual void SAL_CALL unloaded(const css::lang::EventObject& rEvent) override;
415  virtual void SAL_CALL unloading(const css::lang::EventObject& aEvent) override;
416  virtual void SAL_CALL reloading(const css::lang::EventObject& aEvent) override;
417  virtual void SAL_CALL reloaded(const css::lang::EventObject& aEvent) override;
418 
419 // css::sdbc::XRowSetListener
420  virtual void SAL_CALL cursorMoved(const css::lang::EventObject& event) override;
421  virtual void SAL_CALL rowChanged(const css::lang::EventObject& event) override;
422  virtual void SAL_CALL rowSetChanged(const css::lang::EventObject& event) override;
423 
424 // css::container::XContainerListener
425  virtual void SAL_CALL elementInserted(const css::container::ContainerEvent& Event) override;
426  virtual void SAL_CALL elementRemoved(const css::container::ContainerEvent& Event) override;
427  virtual void SAL_CALL elementReplaced(const css::container::ContainerEvent& Event) override;
428 
429 // VCLXWindow
430  virtual void SAL_CALL setProperty( const OUString& PropertyName, const css::uno::Any& Value ) override;
431  virtual css::uno::Any SAL_CALL getProperty( const OUString& PropertyName ) override;
432  virtual css::uno::Reference< css::accessibility::XAccessibleContext >
433  CreateAccessibleContext() override;
434 
435 // css::form::XGridControl
436  virtual void SAL_CALL addGridControlListener( const css::uno::Reference< css::form::XGridControlListener >& _listener ) override;
437  virtual void SAL_CALL removeGridControlListener( const css::uno::Reference< css::form::XGridControlListener >& _listener ) override;
438 
439 // css::form::XGrid (base of XGridControl)
440  virtual sal_Int16 SAL_CALL getCurrentColumnPosition() override;
441  virtual void SAL_CALL setCurrentColumnPosition(sal_Int16 nPos) override;
442 
443 // css::form::XGridFieldDataSupplier (base of XGridControl)
444  virtual css::uno::Sequence< sal_Bool > SAL_CALL queryFieldDataType( const css::uno::Type& xType ) override;
445  virtual css::uno::Sequence< css::uno::Any > SAL_CALL queryFieldData( sal_Int32 nRow, const css::uno::Type& xType ) override;
446 
447 // css::sdb::XRowSetSupplier
448  virtual css::uno::Reference< css::sdbc::XRowSet > SAL_CALL getRowSet() override;
449  virtual void SAL_CALL setRowSet(const css::uno::Reference< css::sdbc::XRowSet >& xDataSource) override final;
450 
451 // css::util::XModifyBroadcaster
452  virtual void SAL_CALL addModifyListener(const css::uno::Reference< css::util::XModifyListener >& l) override;
453  virtual void SAL_CALL removeModifyListener(const css::uno::Reference< css::util::XModifyListener >& l) override;
454 
455 // UnoControl
456  virtual void SAL_CALL setDesignMode(sal_Bool bOn) override;
457  virtual sal_Bool SAL_CALL isDesignMode() override;
458 
459 // css::view::XSelectionChangeListener
460  virtual void SAL_CALL selectionChanged(const css::lang::EventObject& aEvent) override;
461 
462  void CellModified();
463 
464 // PropertyListening
465  void updateGrid(const css::uno::Reference< css::sdbc::XRowSet >& _rDatabaseCursor);
466  void startCursorListening();
467  void stopCursorListening();
468 
469 // css::util::XModeSelector
470  virtual void SAL_CALL setMode(const OUString& Mode) override;
471  virtual OUString SAL_CALL getMode() override;
472  virtual css::uno::Sequence< OUString > SAL_CALL getSupportedModes() override;
473  virtual sal_Bool SAL_CALL supportsMode(const OUString& Mode) override;
474 
475 // css::container::XContainer
476  virtual void SAL_CALL addContainerListener(const css::uno::Reference< css::container::XContainerListener >& l) override;
477  virtual void SAL_CALL removeContainerListener(const css::uno::Reference< css::container::XContainerListener >& l) override;
478 
479  void columnVisible(DbGridColumn const * pColumn);
480  void columnHidden(DbGridColumn const * pColumn);
481 
482 // css::awt::XView
483  virtual void SAL_CALL draw( sal_Int32 x, sal_Int32 y ) override;
484 
485 // css::frame::XDispatchProvider
486  virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch(const css::util::URL& aURL, const OUString& aTargetFrameName, sal_Int32 nSearchFlags) override;
487  virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > SAL_CALL queryDispatches(const css::uno::Sequence< css::frame::DispatchDescriptor >& aDescripts) override;
488 
489 // css::frame::XDispatchProviderInterception
490  virtual void SAL_CALL registerDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor >& xInterceptor) override;
491  virtual void SAL_CALL releaseDispatchProviderInterceptor(const css::uno::Reference< css::frame::XDispatchProviderInterceptor >& xInterceptor) override;
492 
493 // css::frame::XStatusListener
494  virtual void SAL_CALL statusChanged(const css::frame::FeatureStateEvent& Event) override;
495 
496 // css::form::XResetListener
497  virtual sal_Bool SAL_CALL approveReset(const css::lang::EventObject& rEvent) override;
498  virtual void SAL_CALL resetted(const css::lang::EventObject& rEvent) override;
499 
500 // css::view::XSelectionSupplier
501  virtual sal_Bool SAL_CALL select( const css::uno::Any& aSelection ) override;
502  virtual css::uno::Any SAL_CALL getSelection( ) override;
503  virtual void SAL_CALL addSelectionChangeListener( const css::uno::Reference< css::view::XSelectionChangeListener >& xListener ) override;
504  virtual void SAL_CALL removeSelectionChangeListener( const css::uno::Reference< css::view::XSelectionChangeListener >& xListener ) override;
505 
506 protected:
507  virtual VclPtr<FmGridControl> imp_CreateControl(vcl::Window* pParent, WinBits nStyle);
508 
509  static css::uno::Sequence< css::util::URL>& getSupportedURLs();
510  static const std::vector<DbGridControlNavigationBarState>& getSupportedGridSlots();
511  void ConnectToDispatcher();
512  void DisConnectFromDispatcher();
513  void UpdateDispatches(); // will connect if not already connected and just update else
514 
520  void addColumnListeners(const css::uno::Reference< css::beans::XPropertySet >& xCol);
521  void removeColumnListeners(const css::uno::Reference< css::beans::XPropertySet >& xCol);
522 
523  void selectionChanged();
524  void columnChanged();
525 
526  DECL_LINK(OnQueryGridSlotState, DbGridControlNavigationBarState, int);
527  DECL_LINK(OnExecuteGridSlot, DbGridControlNavigationBarState, bool);
528 };
529 
530 
531 #endif // _SVX_FMGRID_HXX
532 
533 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Type
DbGridControlNavigationBarState
Definition: gridctrl.hxx:146
FmXModifyMultiplexer m_aModifyListeners
Definition: fmgridif.hxx:211
void SAL_CALL elementReplaced(const css::container::ContainerEvent &Event) override
signed char sal_Int8
bool m_bInterceptingDispatch
Definition: fmgridif.hxx:360
void Create(SwFormatVertOrient &rItem, SvStream &rStrm, sal_uInt16 nVersionAbusedAsSize)
css::uno::Reference< css::uno::XComponentContext > m_xContext
Definition: fmgridif.hxx:220
sal_Int32 m_nCursorListening
Definition: fmgridif.hxx:356
FmXGridControlMultiplexer m_aGridControlListeners
Definition: fmgridif.hxx:215
#define UNO3_GETIMPLEMENTATION_DECL(classname)
#define SVX_DLLPUBLIC
Definition: svxdllapi.h:28
virtual DECL_LISTENERMULTIPLEXER_END void SAL_CALL selectionChanged(const css::lang::EventObject &aEvent) override
sal_Int64 WinBits
virtual void SAL_CALL acquire() SAL_OVERRIDE
FmXUpdateMultiplexer m_aUpdateListeners
Definition: fmgridif.hxx:212
std::unique_ptr< bool[]> m_pStateCache
Definition: fmgridif.hxx:362
::cppu::OWeakObject & m_rParent
Definition: fmgridif.hxx:62
virtual void SAL_CALL acquire() override
Definition: fmgridif.hxx:67
::osl::Mutex m_aMutex
Definition: fmgridif.hxx:344
std::unique_ptr< css::uno::Reference< css::frame::XDispatch >[]> m_pDispatchers
Definition: fmgridif.hxx:364
virtual void SAL_CALL release() override
Definition: fmgridif.hxx:68
css::uno::Reference< css::frame::XDispatchProviderInterceptor > m_xFirstDispatchInterceptor
Definition: fmgridif.hxx:358
::comphelper::OInterfaceContainerHelper2 m_aUpdateListeners
Definition: fmgridif.hxx:349
class SAL_NO_VTABLE XPropertySet
Definition: xmlexchg.hxx:31
css::uno::Reference< css::container::XIndexContainer > m_xColumns
Definition: fmgridif.hxx:347
unsigned char sal_Bool
void SAL_CALL elementRemoved(const css::container::ContainerEvent &Event) override
DECL_LISTENERMULTIPLEXER_END void SAL_CALL elementInserted(const css::container::ContainerEvent &Event) override
::cppu::ImplHelper10< css::form::XBoundComponent, css::form::XGridControl, css::util::XModifyBroadcaster, css::container::XIndexAccess, css::container::XEnumerationAccess, css::util::XModeSelector, css::container::XContainer, css::frame::XDispatchProvider, css::frame::XDispatchProviderInterception, css::view::XSelectionSupplier > FmXGridControl_BASE
Definition: fmgridif.hxx:205
css::uno::Reference< css::uno::XComponentContext > m_xContext
Definition: fmgridif.hxx:343
FmXContainerMultiplexer m_aContainerListeners
Definition: fmgridif.hxx:213
#define DECLARE_UNO3_AGG_DEFAULTS(classname, baseclass)
std::unique_ptr< GridListenerDelegator > m_pGridListener
Definition: fmgridif.hxx:371
#define SAL_WARN_UNUSED
OWeakSubObject(::cppu::OWeakObject &rParent)
Definition: fmgridif.hxx:65
virtual void SAL_CALL release() SAL_OVERRIDE
FmXSelectionMultiplexer m_aSelectionListeners
Definition: fmgridif.hxx:214
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) SAL_OVERRIDE
OUString m_aMode
Definition: fmgridif.hxx:355
AnyEventRef aEvent
css::uno::Reference< css::sdbc::XRowSet > m_xCursor
Definition: fmgridif.hxx:348
#define DECLARE_UNO3_DEFAULTS(classname, baseclass)