19#ifndef INCLUDED_SVX_SOURCE_INC_FORMCONTROLLER_HXX
20#define INCLUDED_SVX_SOURCE_INC_FORMCONTROLLER_HXX
32#include <com/sun/star/awt/XControl.hpp>
33#include <com/sun/star/awt/XControlModel.hpp>
34#include <com/sun/star/awt/XFocusListener.hpp>
35#include <com/sun/star/awt/XItemListener.hpp>
36#include <com/sun/star/awt/XMouseListener.hpp>
37#include <com/sun/star/awt/XTabController.hpp>
38#include <com/sun/star/awt/XTextComponent.hpp>
39#include <com/sun/star/awt/XWindow.hpp>
40#include <com/sun/star/container/XContainerListener.hpp>
41#include <com/sun/star/form/DatabaseParameterEvent.hpp>
42#include <com/sun/star/form/validation/XFormComponentValidityListener.hpp>
43#include <com/sun/star/form/XConfirmDeleteListener.hpp>
44#include <com/sun/star/form/XDatabaseParameterListener.hpp>
45#include <com/sun/star/form/runtime/XFormController.hpp>
46#include <com/sun/star/form/runtime/XFilterController.hpp>
47#include <com/sun/star/form/XFormControllerListener.hpp>
48#include <com/sun/star/form/XGridControlListener.hpp>
49#include <com/sun/star/form/XLoadListener.hpp>
50#include <com/sun/star/form/XResetListener.hpp>
51#include <com/sun/star/frame/XDispatch.hpp>
52#include <com/sun/star/frame/XDispatchProviderInterception.hpp>
53#include <com/sun/star/frame/XDispatchProviderInterceptor.hpp>
54#include <com/sun/star/lang/XServiceInfo.hpp>
55#include <com/sun/star/script/XEventAttacherManager.hpp>
56#include <com/sun/star/sdb/XRowSetApproveListener.hpp>
57#include <com/sun/star/sdb/XSingleSelectQueryComposer.hpp>
58#include <com/sun/star/sdb/XSQLErrorListener.hpp>
59#include <com/sun/star/sdbc/XRowSetListener.hpp>
60#include <com/sun/star/task/XInteractionHandler.hpp>
61#include <com/sun/star/util/XModifyListener.hpp>
75 bool operator() (
const css::uno::Reference< css::awt::XTextComponent >& x,
const css::uno::Reference< css::awt::XTextComponent >& y)
const
77 return reinterpret_cast<sal_Int64
>(
x.get()) <
reinterpret_cast<sal_Int64
>(
y.get());
86 typedef ::std::vector< css::uno::Reference< css::awt::XTextComponent > >
FilterComponents;
90 typedef cppu::WeakComponentImplHelper < css::form::runtime::XFormController
91 , css::form::runtime::XFilterController
92 , css::awt::XFocusListener
93 , css::form::XLoadListener
94 , css::beans::XPropertyChangeListener
95 , css::awt::XTextListener
96 , css::awt::XItemListener
97 , css::container::XContainerListener
98 , css::util::XModifyListener
99 , css::form::XConfirmDeleteListener
100 , css::sdb::XSQLErrorListener
101 , css::sdbc::XRowSetListener
102 , css::sdb::XRowSetApproveListener
103 , css::form::XDatabaseParameterListener
104 , css::lang::XServiceInfo
105 , css::form::XResetListener
106 , css::frame::XDispatch
107 , css::awt::XMouseListener
108 , css::form::validation::XFormComponentValidityListener
109 , css::task::XInteractionHandler
110 , css::form::XGridControlListener
111 , css::form::runtime::XFeatureInvalidation
120 ,
public ::svxform::OSQLParserClient
122 typedef ::std::map < sal_Int16,
123 css::uno::Reference< css::frame::XDispatch >
134 css::uno::Reference< css::sdb::XSingleSelectQueryComposer >
m_xComposer;
138 css::uno::Sequence< css::uno::Reference< css::awt::XControl> >
m_aControls;
154 std::vector< css::uno::Reference< css::form::runtime::XFormController > >
165 css::uno::Reference< css::form::runtime::XFormOperations >
177 ::std::unique_ptr< ColumnInfoCache >
203 FormController(
const css::uno::Reference< css::uno::XComponentContext > & _rxORB );
206 static css::uno::Reference<css::awt::XWindow>
getDialogParentWindow(css::uno::Reference<css::form::runtime::XFormController> xFormController);
212 virtual css::uno::Any SAL_CALL
queryInterface(
const css::uno::Type& type)
override;
213 virtual void SAL_CALL
acquire() noexcept override;
214 virtual
void SAL_CALL
release() noexcept override;
221 virtual
void SAL_CALL
dispatch( const css::util::URL& _rURL, const css::
uno::Sequence< css::beans::PropertyValue >& _rArgs ) override;
222 virtual
void SAL_CALL
addStatusListener( const css::
uno::Reference< css::frame::XStatusListener >& _rxListener, const css::util::URL& _rURL ) override;
223 virtual
void SAL_CALL
removeStatusListener( const css::
uno::Reference< css::frame::XStatusListener >& _rxListener, const css::util::URL& _rURL ) override;
230 virtual
void SAL_CALL
disposing(const css::lang::EventObject& Source) override;
233 virtual
void SAL_CALL
disposing() override;
237 sal_Int32 nHandle, const css::
uno::Any& rValue ) override;
250 virtual
void SAL_CALL
addFilterControllerListener( const css::
uno::Reference< css::form::runtime::XFilterControllerListener >& Listener ) override;
258 virtual
void SAL_CALL
setActiveTerm( ::sal_Int32 ActiveTerm ) override;
265 virtual css::
uno::Reference< css::container::XEnumeration> SAL_CALL
createEnumeration() override;
268 virtual
void SAL_CALL
elementInserted(const css::container::ContainerEvent& rEvent) override;
269 virtual
void SAL_CALL
elementReplaced(const css::container::ContainerEvent& rEvent) override;
270 virtual
void SAL_CALL
elementRemoved(const css::container::ContainerEvent& rEvent) override;
273 virtual
void SAL_CALL
loaded(const css::lang::EventObject& rEvent) override;
274 virtual
void SAL_CALL
unloaded(const css::lang::EventObject& rEvent) override;
275 virtual
void SAL_CALL
unloading(const css::lang::EventObject& aEvent) override;
276 virtual
void SAL_CALL
reloading(const css::lang::EventObject& aEvent) override;
277 virtual
void SAL_CALL
reloaded(const css::lang::EventObject& aEvent) override;
280 virtual
void SAL_CALL
setMode(const OUString&
Mode) override;
281 virtual OUString SAL_CALL
getMode() override;
286 virtual sal_Int32 SAL_CALL
getCount() override;
290 virtual
void SAL_CALL
addModifyListener(const css::
uno::Reference< css::util::XModifyListener>& l) override;
291 virtual
void SAL_CALL
removeModifyListener(const css::
uno::Reference< css::util::XModifyListener>& l) override;
294 virtual
void SAL_CALL
focusGained(const css::awt::FocusEvent& e) override;
295 virtual
void SAL_CALL
focusLost(const css::awt::FocusEvent& e) override;
307 virtual
void SAL_CALL
handle( const css::
uno::Reference< css::task::XInteractionRequest >& Request ) override;
310 virtual
void SAL_CALL
columnChanged( const css::lang::EventObject& _event ) override;
313 virtual
void SAL_CALL
propertyChange(const css::beans::PropertyChangeEvent& evt) override;
316 virtual
void SAL_CALL
textChanged(const css::awt::TextEvent& rEvent) override;
319 virtual
void SAL_CALL
itemStateChanged(const css::awt::ItemEvent& rEvent) override;
322 virtual
void SAL_CALL
modified(const css::lang::EventObject& rEvent) override;
325 virtual css::
uno::Reference< css::form::runtime::XFormOperations > SAL_CALL
getFormOperations() override;
327 virtual
void SAL_CALL
addActivateListener(const css::
uno::Reference< css::form::XFormControllerListener>& l) override;
328 virtual
void SAL_CALL
removeActivateListener(const css::
uno::Reference< css::form::XFormControllerListener>& l) override;
329 virtual
void SAL_CALL
addChildController( const css::
uno::Reference< css::form::runtime::XFormController >& ChildController ) override;
331 virtual css::
uno::Reference< css::form::runtime::XFormControllerContext > SAL_CALL
getContext() override;
332 virtual
void SAL_CALL
setContext( const css::
uno::Reference< css::form::runtime::XFormControllerContext >& _context ) override;
337 virtual css::
uno::Sequence< css::
uno::Reference< css::awt::XControl> > SAL_CALL
getControls() override;
339 virtual
void SAL_CALL
setModel(const css::
uno::Reference< css::awt::XTabControllerModel>& Model) override;
340 virtual css::
uno::Reference< css::awt::XTabControllerModel> SAL_CALL
getModel() override;
342 virtual
void SAL_CALL
setContainer(const css::
uno::Reference< css::awt::XControlContainer>& Container) override;
343 virtual css::
uno::Reference< css::awt::XControlContainer> SAL_CALL
getContainer() override;
352 virtual
void SAL_CALL
cursorMoved(const css::lang::EventObject& event) override;
353 virtual
void SAL_CALL
rowChanged(const css::lang::EventObject& event) override;
354 virtual
void SAL_CALL
rowSetChanged(const css::lang::EventObject& event) override;
366 virtual
void SAL_CALL
errorOccured(const css::sdb::SQLErrorEvent& aEvent) override;
369 virtual
void SAL_CALL
addSQLErrorListener(const css::
uno::Reference< css::sdb::XSQLErrorListener>& _rListener) override;
370 virtual
void SAL_CALL
removeSQLErrorListener(const css::
uno::Reference< css::sdb::XSQLErrorListener>& _rListener) override;
377 virtual
void SAL_CALL
addParameterListener(const css::
uno::Reference< css::form::XDatabaseParameterListener>& aListener) override;
378 virtual
void SAL_CALL
removeParameterListener(const css::
uno::Reference< css::form::XDatabaseParameterListener>& aListener) override;
397 virtual
void SAL_CALL
resetted(const css::lang::EventObject& rEvent) override;
400 virtual
void SAL_CALL
invalidateFeatures( const css::
uno::Sequence< ::sal_Int16 >& Features ) override;
408 css::
uno::Sequence< css::beans::Property >& _rProps,
409 css::
uno::Sequence< css::beans::Property >& _rAggregateProps
413 virtual css::
uno::Reference< css::frame::XDispatch>
415 const css::util::URL& aURL,
416 const OUString& aTargetFrameName,
417 sal_Int32 nSearchFlags
431 void setFilter(::std::vector<FmFieldInfo>&);
460 const css::uno::Reference< css::awt::XControl >& _rxExistentControl,
461 const css::uno::Reference< css::awt::XControl >& _rxNewControl
469 void setControlLock(
const css::uno::Reference< css::awt::XControl>& xControl);
477 void startFormListening(
const css::uno::Reference< css::beans::XPropertySet >& _rxForm,
bool _bPropertiesOnly );
478 void stopFormListening(
const css::uno::Reference< css::beans::XPropertySet >& _rxForm,
bool _bPropertiesOnly );
480 css::uno::Reference< css::awt::XControl>
findControl( css::uno::Sequence< css::uno::Reference< css::awt::XControl> >& rCtrls,
const css::uno::Reference< css::awt::XControlModel>& rxCtrlModel,
bool _bRemove,
bool _bOverWrite )
const;
482 void insertControl(
const css::uno::Reference< css::awt::XControl>& xControl);
483 void removeControl(
const css::uno::Reference< css::awt::XControl>& xControl);
486 void implControlInserted(
const css::uno::Reference< css::awt::XControl>& _rxControl,
bool _bAddToEventAttacher );
488 void implControlRemoved(
const css::uno::Reference< css::awt::XControl>& _rxControl,
bool _bRemoveFromEventAttacher );
518 css::uno::Reference< css::frame::XDispatchProviderInterceptor>
createInterceptor(
const css::uno::Reference< css::frame::XDispatchProviderInterception>& _xInterception);
520 void deleteInterceptor(
const css::uno::Reference< css::frame::XDispatchProviderInterception>& _xInterception);
542 OUString& _rFirstInvalidityExplanation,
543 css::uno::Reference< css::awt::XControlModel >& _rxFirstInvalidModel
548 css::uno::Reference< css::awt::XControl >
549 locateControl(
const css::uno::Reference< css::awt::XControlModel >& _rxModel );
556 css::uno::Reference< css::awt::XControl>
isInList(
const css::uno::Reference< css::awt::XWindowPeer>& xPeer)
const;
mutable::osl::Mutex m_aMutex
OPropertySetHelper(OBroadcastHelper &rBHelper)
bool operator()(const css::uno::Reference< css::awt::XTextComponent > &x, const css::uno::Reference< css::awt::XTextComponent > &y) const
::std::pair< MetaAction *, int > Component