diff options
author | Frank Schönheit <frank.schoenheit@sun.com> | 2009-10-23 09:46:03 +0200 |
---|---|---|
committer | Frank Schönheit <frank.schoenheit@sun.com> | 2009-10-23 09:46:03 +0200 |
commit | 6fbd976a6a6c281857bdce2cc6c529b275312c9e (patch) | |
tree | fd0a15f2a956180f07092c04eff83a47d5995201 | |
parent | 2b2cfc9d54f7de4bccf8715b00ea083301659cfc (diff) |
step 0 of an UNOization of the css.form.(X)FormController implementation: move the API to css.form.runtime, so we can later add new API chunks without breaking compatibility of the existing API in css.form
24 files changed, 1414 insertions, 1223 deletions
diff --git a/svx/inc/pch/precompiled_svx.hxx b/svx/inc/pch/precompiled_svx.hxx index 8df4139a3d97..b5a092b87eee 100644 --- a/svx/inc/pch/precompiled_svx.hxx +++ b/svx/inc/pch/precompiled_svx.hxx @@ -263,7 +263,7 @@ #include "com/sun/star/form/XDatabaseParameterListener.hpp" #include "com/sun/star/form/XForm.hpp" #include "com/sun/star/form/XFormComponent.hpp" -#include "com/sun/star/form/XFormController.hpp" +#include "com/sun/star/form/runtime/XFormController.hpp" #include "com/sun/star/form/XFormControllerListener.hpp" #include "com/sun/star/form/XFormsSupplier.hpp" #include "com/sun/star/form/XFormsSupplier2.hpp" diff --git a/svx/inc/svx/fmdpage.hxx b/svx/inc/svx/fmdpage.hxx index f71cc4751a63..a9f2783d643a 100644 --- a/svx/inc/svx/fmdpage.hxx +++ b/svx/inc/svx/fmdpage.hxx @@ -31,11 +31,6 @@ #define _SVX_FMDPAGE_HXX #include <com/sun/star/form/XFormsSupplier2.hpp> -#include <com/sun/star/form/XForm.hpp> -#include <com/sun/star/form/XImageProducerSupplier.hpp> -#include <com/sun/star/form/XFormController.hpp> -#include <com/sun/star/form/XFormComponent.hpp> -#include <com/sun/star/form/XFormControllerListener.hpp> #include <svx/unopage.hxx> #include <comphelper/uno3.hxx> #include "svx/svxdllapi.h" diff --git a/svx/inc/svx/fmshell.hxx b/svx/inc/svx/fmshell.hxx index f5d1c7b0c615..9f180156367f 100644 --- a/svx/inc/svx/fmshell.hxx +++ b/svx/inc/svx/fmshell.hxx @@ -58,7 +58,9 @@ class SdrUnoObj; namespace com { namespace sun { namespace star { namespace form { class XForm; - class XFormController; + namespace runtime { + class XFormController; + } } } } } //======================================================================== @@ -147,7 +149,7 @@ public: const OutputDevice& _rDevice, ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _out_rxControl ) const; - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > GetFormController( + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > GetFormController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& _rxForm, const SdrView& _rView, const OutputDevice& _rDevice diff --git a/svx/inc/svx/fmview.hxx b/svx/inc/svx/fmview.hxx index c79748ddb94f..3b965967ed42 100644 --- a/svx/inc/svx/fmview.hxx +++ b/svx/inc/svx/fmview.hxx @@ -54,7 +54,9 @@ namespace svx { class SdrUnoObj; namespace com { namespace sun { namespace star { namespace form { class XForm; - class XFormController; + namespace runtime { + class XFormController; + } } } } } class SVX_DLLPUBLIC FmFormView : public E3dView @@ -125,7 +127,7 @@ public: /** returns the form controller for a given form and a given device */ - SVX_DLLPRIVATE ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > + SVX_DLLPRIVATE ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > GetFormController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& _rxForm, const OutputDevice& _rDevice ) const; // SdrView diff --git a/svx/source/form/filtnav.cxx b/svx/source/form/filtnav.cxx index 7ac8f8afbe29..437b0ff4f88a 100644 --- a/svx/source/form/filtnav.cxx +++ b/svx/source/form/filtnav.cxx @@ -30,50 +30,42 @@ // MARKER(update_precomp.py): autogen include statement, do not remove #include "precompiled_svx.hxx" -#ifndef _SVX_FMRESIDS_HRC -#include "fmresids.hrc" -#endif -#include "fmctrler.hxx" -#include "filtnav.hxx" -#include <com/sun/star/util/XNumberFormatter.hpp> -#include <com/sun/star/form/XFormController.hpp> -#include <fmexch.hxx> -#include "fmitems.hxx" -#ifndef _SVX_SVXIDS_HRC -#include <svx/svxids.hrc> -#endif -#ifndef _SVX_FMPROP_HRC +#include "filtnav.hxx" +#include "fmctrler.hxx" +#include "fmexch.hxx" +#include "fmhelp.hrc" +#include "fmitems.hxx" #include "fmprop.hrc" -#endif +#include "fmresids.hrc" +#include "gridcell.hxx" -#ifndef _SVX_FMHELP_HRC -#include "fmhelp.hrc" -#endif -#include <svx/dialmgr.hxx> -#include <sfx2/dispatch.hxx> -#include <sfx2/objsh.hxx> -#include <sfx2/objitem.hxx> -#include <sfx2/request.hxx> -#include <tools/shl.hxx> +/** === begin UNO includes === **/ +#include <com/sun/star/form/runtime/XFormController.hpp> +#include <com/sun/star/lang/XUnoTunnel.hpp> +#include <com/sun/star/util/XNumberFormatter.hpp> +/** === end UNO includes === **/ -#ifndef _WRKWIN_HXX //autogen -#include <vcl/wrkwin.hxx> -#endif -#include <svx/fmshell.hxx> -#include <fmshimp.hxx> -#include <fmservs.hxx> -#include <fmtools.hxx> -#include <cppuhelper/implbase1.hxx> +#include <comphelper/processfactory.hxx> #include <comphelper/property.hxx> +#include <comphelper/sequence.hxx> #include <comphelper/uno3.hxx> #include <connectivity/dbtools.hxx> -#include <comphelper/processfactory.hxx> -#include <com/sun/star/lang/XUnoTunnel.hpp> -#include <comphelper/sequence.hxx> -#include "gridcell.hxx" +#include <cppuhelper/implbase1.hxx> +#include <fmservs.hxx> +#include <fmshimp.hxx> +#include <fmtools.hxx> #include <rtl/logfile.hxx> +#include <sfx2/dispatch.hxx> +#include <sfx2/objitem.hxx> +#include <sfx2/objsh.hxx> +#include <sfx2/request.hxx> +#include <svx/dialmgr.hxx> +#include <svx/fmshell.hxx> +#include <svx/svxids.hrc> +#include <tools/shl.hxx> +#include <vcl/wrkwin.hxx> #include <functional> @@ -85,11 +77,6 @@ #define DROP_ACTION_TIMER_TICK_BASE 10 // das ist die Basis, mit der beide Angaben multipliziert werden (in ms) -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::lang; -using namespace ::com::sun::star::sdbc; -using namespace ::com::sun::star::sdb; -using namespace ::com::sun::star::beans; using namespace ::svxform; using namespace ::connectivity::simple; using namespace ::connectivity; @@ -100,6 +87,31 @@ namespace svxform { //........................................................................ + /** === begin UNO using === **/ + using ::com::sun::star::awt::XTextComponent; + using ::com::sun::star::uno::Reference; + using ::com::sun::star::lang::XMultiServiceFactory; + using ::com::sun::star::awt::XTextListener; + using ::com::sun::star::awt::TextEvent; + using ::com::sun::star::container::XIndexAccess; + using ::com::sun::star::uno::UNO_QUERY; + using ::com::sun::star::beans::XPropertySet; + using ::com::sun::star::form::runtime::XFormController; + using ::com::sun::star::lang::EventObject; + using ::com::sun::star::uno::RuntimeException; + using ::com::sun::star::form::XForm; + using ::com::sun::star::container::XChild; + using ::com::sun::star::awt::XControl; + using ::com::sun::star::sdbc::XConnection; + using ::com::sun::star::util::XNumberFormatsSupplier; + using ::com::sun::star::beans::XPropertySet; + using ::com::sun::star::util::XNumberFormatter; + using ::com::sun::star::sdbc::XRowSet; + using ::com::sun::star::lang::Locale; + using ::com::sun::star::sdb::SQLContext; + using ::com::sun::star::uno::XInterface; + /** === end UNO using === **/ + //======================================================================== OFilterItemExchange::OFilterItemExchange() { @@ -168,7 +180,7 @@ Image FmFormItem::GetImage( BmpColorMode _eMode ) const //======================================================================== TYPEINIT1(FmFilterItems, FmParentData); //------------------------------------------------------------------------ -FmFilterItem* FmFilterItems::Find(const Reference< ::com::sun::star::awt::XTextComponent > & _xText) const +FmFilterItem* FmFilterItems::Find(const Reference< XTextComponent > & _xText) const { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterItems::Find" ); for (::std::vector<FmFilterData*>::const_iterator i = m_aChilds.begin(); @@ -203,11 +215,11 @@ Image FmFilterItems::GetImage( BmpColorMode _eMode ) const //======================================================================== TYPEINIT1(FmFilterItem, FmFilterData); //------------------------------------------------------------------------ -FmFilterItem::FmFilterItem(const Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory, +FmFilterItem::FmFilterItem(const Reference< XMultiServiceFactory >& _rxFactory, FmFilterItems* pParent, const ::rtl::OUString& aFieldName, const ::rtl::OUString& aText, - const Reference< ::com::sun::star::awt::XTextComponent > & _xText) + const Reference< XTextComponent > & _xText) :FmFilterData(_rxFactory,pParent, aText) ,m_aFieldName(aFieldName) ,m_xText(_xText) @@ -315,36 +327,36 @@ TYPEINIT1( FmFilterCurrentChangedHint, SfxHint ); //======================================================================== // class FmFilterAdapter, Listener an den FilterControls //======================================================================== -class FmFilterAdapter : public ::cppu::WeakImplHelper1< ::com::sun::star::awt::XTextListener > +class FmFilterAdapter : public ::cppu::WeakImplHelper1< XTextListener > { FmFilterControls m_aFilterControls; FmFilterModel* m_pModel; public: - FmFilterAdapter(FmFilterModel* pModel, const Reference< ::com::sun::star::container::XIndexAccess >& xControllers); + FmFilterAdapter(FmFilterModel* pModel, const Reference< XIndexAccess >& xControllers); -// ::com::sun::star::lang::XEventListener - virtual void SAL_CALL disposing(const ::com::sun::star::lang::EventObject& Source) throw( RuntimeException ); +// XEventListener + virtual void SAL_CALL disposing(const EventObject& Source) throw( RuntimeException ); -// ::com::sun::star::awt::XTextListener - virtual void SAL_CALL textChanged(const ::com::sun::star::awt::TextEvent& e) throw( ::com::sun::star::uno::RuntimeException ); +// XTextListener + virtual void SAL_CALL textChanged(const TextEvent& e) throw( RuntimeException ); // helpers void dispose() throw( RuntimeException ); - void InsertElements(const Reference< ::com::sun::star::container::XIndexAccess >& xControllers); - void RemoveElement(const Reference< ::com::sun::star::awt::XTextComponent > & xText); + void InsertElements(const Reference< XIndexAccess >& xControllers); + void RemoveElement(const Reference< XTextComponent > & xText); - Reference< ::com::sun::star::beans::XPropertySet > getField(const Reference< ::com::sun::star::awt::XTextComponent > & xText) const; + Reference< XPropertySet > getField(const Reference< XTextComponent > & xText) const; void setText(sal_Int32 nPos, const FmFilterItem* pFilterItem, const ::rtl::OUString& rText); - void DeleteItemsByText(::std::vector<FmFilterData*>& rItems, const Reference< ::com::sun::star::awt::XTextComponent > & xText); - Reference< ::com::sun::star::form::XForm > findForm(const Reference< ::com::sun::star::container::XChild >& xChild); + void DeleteItemsByText(::std::vector<FmFilterData*>& rItems, const Reference< XTextComponent > & xText); + Reference< XForm > findForm(const Reference< XChild >& xChild); }; //------------------------------------------------------------------------ -FmFilterAdapter::FmFilterAdapter(FmFilterModel* pModel, const Reference< ::com::sun::star::container::XIndexAccess >& xControllers) +FmFilterAdapter::FmFilterAdapter(FmFilterModel* pModel, const Reference< XIndexAccess >& xControllers) :m_pModel(pModel) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::FmFilterAdapter" ); @@ -371,7 +383,7 @@ void FmFilterAdapter::dispose() throw( RuntimeException ) //------------------------------------------------------------------------------ // delete all items relate to the control void FmFilterAdapter::DeleteItemsByText(::std::vector<FmFilterData*>& _rItems, - const Reference< ::com::sun::star::awt::XTextComponent > & xText) + const Reference< XTextComponent > & xText) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::DeleteItemsByText" ); for (::std::vector<FmFilterData*>::reverse_iterator i = _rItems.rbegin(); @@ -399,19 +411,19 @@ void FmFilterAdapter::DeleteItemsByText(::std::vector<FmFilterData*>& _rItems, } //------------------------------------------------------------------------ -void FmFilterAdapter::InsertElements(const Reference< ::com::sun::star::container::XIndexAccess >& xControllers) +void FmFilterAdapter::InsertElements(const Reference< XIndexAccess >& xControllers) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::InsertElements" ); for (sal_Int32 i = 0, nLen = xControllers->getCount(); i < nLen; ++i) { - Reference< ::com::sun::star::container::XIndexAccess > xElement; + Reference< XIndexAccess > xElement; xControllers->getByIndex(i) >>= xElement; // Insert the Elements of the controller InsertElements(xElement); // store the filter controls - FmXFormController* pController = FmXFormController::getImplementation( xElement.get() ); + FormController* pController = FormController::getImplementation( xElement ); DBG_ASSERT( pController, "FmFilterAdapter::InsertElements: no controller!" ); const FmFilterControls& rControls = pController->getFilterControls(); @@ -421,7 +433,7 @@ void FmFilterAdapter::InsertElements(const Reference< ::com::sun::star::containe } //------------------------------------------------------------------------------ -void FmFilterAdapter::RemoveElement(const Reference< ::com::sun::star::awt::XTextComponent > & xText) +void FmFilterAdapter::RemoveElement(const Reference< XTextComponent > & xText) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::RemoveElement" ); if (xText.is()) @@ -437,10 +449,10 @@ void FmFilterAdapter::RemoveElement(const Reference< ::com::sun::star::awt::XTex } //------------------------------------------------------------------------ -Reference< ::com::sun::star::beans::XPropertySet > FmFilterAdapter::getField(const Reference< ::com::sun::star::awt::XTextComponent > & xText) const +Reference< XPropertySet > FmFilterAdapter::getField(const Reference< XTextComponent > & xText) const { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::getField" ); - Reference< ::com::sun::star::beans::XPropertySet > xField; + Reference< XPropertySet > xField; FmFilterControls::const_iterator i = m_aFilterControls.find(xText); if (i != m_aFilterControls.end()) xField = (*i).second; @@ -455,12 +467,12 @@ void FmFilterAdapter::setText(sal_Int32 nRowPos, { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::setText" ); // set the text for the text component - Reference< ::com::sun::star::awt::XTextComponent > xText(pFilterItem->GetTextComponent()); + Reference< XTextComponent > xText(pFilterItem->GetTextComponent()); xText->setText(rText); // get the controller of the text component and its filter rows FmFormItem* pFormItem = PTR_CAST(FmFormItem,pFilterItem->GetParent()->GetParent()); - FmXFormController* pController = FmXFormController::getImplementation( pFormItem->GetController().get() ); + FormController* pController = FormController::getImplementation( pFormItem->GetController() ); DBG_ASSERT( pController, "FmFilterAdapter::setText: no controller!" ); FmFilterRows& rRows = pController->getFilterRows(); @@ -482,49 +494,49 @@ void FmFilterAdapter::setText(sal_Int32 nRowPos, } -// ::com::sun::star::lang::XEventListener +// XEventListener //------------------------------------------------------------------------ -void SAL_CALL FmFilterAdapter::disposing(const ::com::sun::star::lang::EventObject& e) throw( RuntimeException ) +void SAL_CALL FmFilterAdapter::disposing(const EventObject& e) throw( RuntimeException ) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::disposing" ); - Reference< ::com::sun::star::awt::XTextComponent > xText(e.Source,UNO_QUERY); + Reference< XTextComponent > xText(e.Source,UNO_QUERY); if (xText.is()) RemoveElement(xText); } // XTextListener //------------------------------------------------------------------------ -Reference< ::com::sun::star::form::XForm > FmFilterAdapter::findForm(const Reference< ::com::sun::star::container::XChild >& xChild) +Reference< XForm > FmFilterAdapter::findForm(const Reference< XChild >& xChild) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::findForm" ); - Reference< ::com::sun::star::form::XForm > xForm; + Reference< XForm > xForm; if (xChild.is()) { - xForm = Reference< ::com::sun::star::form::XForm >(xChild->getParent(), UNO_QUERY); + xForm = Reference< XForm >(xChild->getParent(), UNO_QUERY); if (!xForm.is()) - xForm = findForm(Reference< ::com::sun::star::container::XChild >(xChild->getParent(), UNO_QUERY)); + xForm = findForm(Reference< XChild >(xChild->getParent(), UNO_QUERY)); } return xForm; } // XTextListener //------------------------------------------------------------------------ -void FmFilterAdapter::textChanged(const ::com::sun::star::awt::TextEvent& e) throw( ::com::sun::star::uno::RuntimeException ) +void FmFilterAdapter::textChanged(const TextEvent& e) throw( RuntimeException ) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterAdapter::textChanged" ); // Find the according formitem in the - Reference< ::com::sun::star::awt::XControl > xControl(e.Source, UNO_QUERY); + Reference< XControl > xControl(e.Source, UNO_QUERY); if (!m_pModel || !xControl.is()) return; - Reference< ::com::sun::star::form::XForm > xForm(findForm(Reference< ::com::sun::star::container::XChild >(xControl->getModel(), UNO_QUERY))); + Reference< XForm > xForm(findForm(Reference< XChild >(xControl->getModel(), UNO_QUERY))); if (!xForm.is()) return; FmFormItem* pFormItem = m_pModel->Find(m_pModel->m_aChilds, xForm); if (pFormItem) { - Reference< ::com::sun::star::awt::XTextComponent > xText(e.Source, UNO_QUERY); + Reference< XTextComponent > xText(e.Source, UNO_QUERY); FmFilterItems* pFilter = PTR_CAST(FmFilterItems, pFormItem->GetChilds()[pFormItem->GetCurrentPosition()]); FmFilterItem* pFilterItem = pFilter->Find(xText); if (pFilterItem) @@ -545,7 +557,7 @@ void FmFilterAdapter::textChanged(const ::com::sun::star::awt::TextEvent& e) thr else { // searching the component by field name - ::rtl::OUString aFieldName = getLabelName(Reference< ::com::sun::star::beans::XPropertySet > (Reference< ::com::sun::star::awt::XControl > (xText, UNO_QUERY)->getModel(),UNO_QUERY)); + ::rtl::OUString aFieldName = getLabelName(Reference< XPropertySet > (Reference< XControl > (xText, UNO_QUERY)->getModel(),UNO_QUERY)); pFilterItem = new FmFilterItem(m_pModel->getORB(),pFilter, aFieldName, xText->getText(), xText); m_pModel->Insert(pFilter->GetChilds().end(), pFilterItem); @@ -559,7 +571,7 @@ void FmFilterAdapter::textChanged(const ::com::sun::star::awt::TextEvent& e) thr //======================================================================== TYPEINIT1(FmFilterModel, FmParentData); //------------------------------------------------------------------------ -FmFilterModel::FmFilterModel(const Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory) +FmFilterModel::FmFilterModel(const Reference< XMultiServiceFactory >& _rxFactory) :FmParentData(_rxFactory,NULL, ::rtl::OUString()) ,OSQLParserClient(_rxFactory) ,m_xORB(_rxFactory) @@ -603,10 +615,10 @@ void FmFilterModel::Clear() } //------------------------------------------------------------------------ -void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexAccess > & xControllers, const Reference< ::com::sun::star::form::XFormController > & xCurrent) +void FmFilterModel::Update(const Reference< XIndexAccess > & xControllers, const Reference< XFormController > & xCurrent) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterModel::Update" ); - if ((::com::sun::star::form::XFormController*) xCurrent.get() == (::com::sun::star::form::XFormController*) m_xController.get()) + if ((XFormController*) xCurrent.get() == (XFormController*) m_xController.get()) return; if (!xControllers.is()) @@ -616,7 +628,7 @@ void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexA } // there is only a new current controller - if ((::com::sun::star::container::XIndexAccess*)m_xControllers.get() != (::com::sun::star::container::XIndexAccess*)xControllers.get()) + if ((XIndexAccess*)m_xControllers.get() != (XIndexAccess*)xControllers.get()) { Clear(); @@ -637,15 +649,15 @@ void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexA } //------------------------------------------------------------------------ -void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexAccess > & xControllers, FmParentData* pParent) +void FmFilterModel::Update(const Reference< XIndexAccess > & xControllers, FmParentData* pParent) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterModel::Update" ); sal_Int32 nCount = xControllers->getCount(); for (sal_Int32 i = 0; i < nCount; i++) { - Reference< ::com::sun::star::form::XFormController > xController; + Reference< XFormController > xController; xControllers->getByIndex(i) >>= xController; - Reference< ::com::sun::star::beans::XPropertySet > xModelAsSet(xController->getModel(), UNO_QUERY); + Reference< XPropertySet > xModelAsSet(xController->getModel(), UNO_QUERY); ::rtl::OUString aName = ::comphelper::getString(xModelAsSet->getPropertyValue(FM_PROP_NAME)); // Insert a new ::com::sun::star::form @@ -653,7 +665,7 @@ void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexA Insert(pParent->GetChilds().end(), pFormItem); // And now insert the filters for the form - FmXFormController* pController = FmXFormController::getImplementation( pFormItem->GetController().get() ); + FormController* pController = FormController::getImplementation( pFormItem->GetController() ); DBG_ASSERT( pController, "FmFilterAdapter::Update: no controller!" ); INT32 nPos = pController->getCurrentFilterPosition(); @@ -672,7 +684,7 @@ void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexA for (FmFilterRow::const_iterator iter1 = rRow.begin(); iter1 != rRow.end(); ++iter1) { // insert new and conditons - ::rtl::OUString aFieldName = getLabelName(Reference< ::com::sun::star::beans::XPropertySet > (Reference< ::com::sun::star::awt::XControl > ((*iter1).first, UNO_QUERY)->getModel(),UNO_QUERY)); + ::rtl::OUString aFieldName = getLabelName(Reference< XPropertySet > (Reference< XControl > ((*iter1).first, UNO_QUERY)->getModel(),UNO_QUERY)); FmFilterItem* pANDCondition = new FmFilterItem(m_xORB,pFilterItems, aFieldName, (*iter1).second, (*iter1).first); Insert(pFilterItems->GetChilds().end(), pANDCondition); } @@ -681,13 +693,13 @@ void FmFilterModel::Update(const Reference< ::com::sun::star::container::XIndexA } // now add dependent controllers - Reference< ::com::sun::star::container::XIndexAccess > xControllerAsIndex(xController, UNO_QUERY); + Reference< XIndexAccess > xControllerAsIndex(xController, UNO_QUERY); Update(xControllerAsIndex, pFormItem); } } //------------------------------------------------------------------------ -FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, const Reference< ::com::sun::star::form::XFormController > & xController) const +FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, const Reference< XFormController > & xController) const { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterModel::Find" ); for (::std::vector<FmFilterData*>::const_iterator i = rItems.begin(); @@ -696,7 +708,7 @@ FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, cons FmFormItem* pForm = PTR_CAST(FmFormItem,*i); if (pForm) { - if ((::com::sun::star::form::XFormController*)xController.get() == (::com::sun::star::form::XFormController*)pForm->GetController().get()) + if ((XFormController*)xController.get() == (XFormController*)pForm->GetController().get()) return pForm; else { @@ -710,7 +722,7 @@ FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, cons } //------------------------------------------------------------------------ -FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, const Reference< ::com::sun::star::form::XForm >& xForm) const +FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, const Reference< XForm >& xForm) const { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterModel::Find" ); for (::std::vector<FmFilterData*>::const_iterator i = rItems.begin(); @@ -733,10 +745,10 @@ FmFormItem* FmFilterModel::Find(const ::std::vector<FmFilterData*>& rItems, cons } //------------------------------------------------------------------------ -void FmFilterModel::SetCurrentController(const Reference< ::com::sun::star::form::XFormController > & xCurrent) +void FmFilterModel::SetCurrentController(const Reference< XFormController > & xCurrent) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterModel::SetCurrentController" ); - if ((::com::sun::star::form::XFormController*) xCurrent.get() == (::com::sun::star::form::XFormController*) m_xController.get()) + if ((XFormController*) xCurrent.get() == (XFormController*) m_xController.get()) return; m_xController = xCurrent; @@ -771,7 +783,7 @@ void FmFilterModel::AppendFilterItems(FmFormItem* pFormItem) Insert(i, pFilterItems); // do we need a new row - FmXFormController* pController = FmXFormController::getImplementation( pFormItem->GetController().get() ); + FormController* pController = FormController::getImplementation( pFormItem->GetController() ); DBG_ASSERT( pController, "FmFilterAdapter::AppendFilterItems: no controller!" ); FmFilterRows& rRows = pController->getFilterRows(); @@ -808,7 +820,7 @@ void FmFilterModel::Remove(FmFilterData* pData) if (pData->ISA(FmFilterItems)) { FmFormItem* pFormItem = (FmFormItem*)pParent; - FmXFormController* pController = FmXFormController::getImplementation( pFormItem->GetController().get() ); + FormController* pController = FormController::getImplementation( pFormItem->GetController() ); DBG_ASSERT( pController, "FmFilterAdapter::Remove: no controller!" ); FmFilterRows& rRows = pController->getFilterRows(); @@ -929,9 +941,9 @@ sal_Bool FmFilterModel::ValidateText(FmFilterItem* pItem, UniString& rText, UniS OStaticDataAccessTools aStaticTools; Reference< XConnection > xConnection(aStaticTools.getRowSetConnection(Reference< XRowSet > (m_xController->getModel(), UNO_QUERY))); - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xFormatSupplier = aStaticTools.getNumberFormats(xConnection, sal_True); + Reference< XNumberFormatsSupplier > xFormatSupplier = aStaticTools.getNumberFormats(xConnection, sal_True); - Reference< ::com::sun::star::util::XNumberFormatter > xFormatter(m_xORB->createInstance(FM_NUMBER_FORMATTER), UNO_QUERY); + Reference< XNumberFormatter > xFormatter(m_xORB->createInstance(FM_NUMBER_FORMATTER), UNO_QUERY); xFormatter->attachNumberFormatsSupplier(xFormatSupplier); ::rtl::OUString aErr, aTxt(rText); @@ -941,7 +953,7 @@ sal_Bool FmFilterModel::ValidateText(FmFilterItem* pItem, UniString& rText, UniS if (xParseNode.is()) { ::rtl::OUString aPreparedText; - ::com::sun::star::lang::Locale aAppLocale = Application::GetSettings().GetUILocale(); + Locale aAppLocale = Application::GetSettings().GetUILocale(); xParseNode->parseNodeToPredicateStr( aPreparedText, xConnection, xFormatter, xField, aAppLocale, '.', getParseContext() ); rText = aPreparedText; @@ -997,12 +1009,12 @@ void FmFilterModel::SetCurrentItems(FmFilterItems* pCurrent) { // determine the filter position sal_Int32 nPos = i - rItems.begin(); - FmXFormController* pController = FmXFormController::getImplementation( pFormItem->GetController().get() ); + FormController* pController = FormController::getImplementation( pFormItem->GetController() ); DBG_ASSERT( pController, "FmFilterAdapter::SetCurrentItems: no controller!" ); pController->setCurrentFilterPosition(nPos); pFormItem->SetCurrentPosition(nPos); - if ((::com::sun::star::form::XFormController*)m_xController.get() != (::com::sun::star::form::XFormController*)pFormItem->GetController().get()) + if ((XFormController*)m_xController.get() != (XFormController*)pFormItem->GetController().get()) // calls SetCurrentItems again SetCurrentController(pFormItem->GetController()); else @@ -1216,7 +1228,7 @@ void FmFilterNavigator::Clear() } //------------------------------------------------------------------------ -void FmFilterNavigator::UpdateContent(const Reference< ::com::sun::star::container::XIndexAccess > & xControllers, const Reference< ::com::sun::star::form::XFormController > & xCurrent) +void FmFilterNavigator::UpdateContent(const Reference< XIndexAccess > & xControllers, const Reference< XFormController > & xCurrent) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFilterNavigator::UpdateContent" ); if (xCurrent == m_pModel->GetCurrentController()) @@ -1293,7 +1305,6 @@ sal_Bool FmFilterNavigator::EditedEntry( SvLBoxEntry* pEntry, const XubString& r else { // display the error and return sal_False - SQLContext aError; aError.Message = String(SVX_RES(RID_STR_SYNTAXERROR)); aError.Details = aErrorMsg; @@ -1972,17 +1983,17 @@ void FmFilterNavigatorWin::UpdateContent(FmFormShell* pFormShell) m_pNavigator->UpdateContent( NULL, NULL ); else { - Reference< ::com::sun::star::form::XFormController > xController(pFormShell->GetImpl()->getActiveInternalController()); - Reference< ::com::sun::star::container::XIndexAccess > xContainer; + Reference< XFormController > xController(pFormShell->GetImpl()->getActiveInternalController()); + Reference< XIndexAccess > xContainer; if (xController.is()) { - Reference< ::com::sun::star::container::XChild > xChild(xController, UNO_QUERY); + Reference< XChild > xChild(xController, UNO_QUERY); for (Reference< XInterface > xParent(xChild->getParent()); xParent.is(); xParent = xChild.is() ? xChild->getParent() : Reference< XInterface > ()) { - xContainer = Reference< ::com::sun::star::container::XIndexAccess > (xParent, UNO_QUERY); - xChild = Reference< ::com::sun::star::container::XChild > (xParent, UNO_QUERY); + xContainer = Reference< XIndexAccess > (xParent, UNO_QUERY); + xChild = Reference< XChild > (xParent, UNO_QUERY); } } m_pNavigator->UpdateContent(xContainer, xController); diff --git a/svx/source/form/fmctrler.cxx b/svx/source/form/fmctrler.cxx index 63cdd049ad89..d0bff4ea83b0 100644 --- a/svx/source/form/fmctrler.cxx +++ b/svx/source/form/fmctrler.cxx @@ -100,26 +100,112 @@ #include <functional> using namespace ::com::sun::star; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::awt; -using namespace ::com::sun::star::sdb; -using namespace ::com::sun::star::sdbc; -using namespace ::com::sun::star::sdbcx; -using namespace ::com::sun::star::task; -using namespace ::com::sun::star::lang; -using namespace ::com::sun::star::util; -using namespace ::com::sun::star::form; -using namespace ::com::sun::star::form::validation; -using namespace ::com::sun::star::form::runtime; -using namespace ::com::sun::star::frame; -using namespace ::com::sun::star::beans; -using namespace ::com::sun::star::script; -using namespace ::com::sun::star::container; using namespace ::comphelper; using namespace ::connectivity; -using namespace ::svxform; using namespace ::connectivity::simple; +//------------------------------------------------------------------ +::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL + FormController_NewInstance_Impl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & _rxORB ) +{ + return *( new ::svxform::FormController( _rxORB ) ); +} + +namespace svxform +{ + + /** === begin UNO using === **/ + using ::com::sun::star::sdb::XColumn; + using ::com::sun::star::awt::XControl; + using ::com::sun::star::awt::XTabController; + using ::com::sun::star::awt::XToolkit; + using ::com::sun::star::awt::XWindowPeer; + using ::com::sun::star::form::XGrid; + using ::com::sun::star::beans::XPropertySet; + using ::com::sun::star::uno::UNO_SET_THROW; + using ::com::sun::star::uno::UNO_QUERY_THROW; + using ::com::sun::star::sdbcx::XColumnsSupplier; + using ::com::sun::star::container::XIndexAccess; + using ::com::sun::star::uno::Exception; + using ::com::sun::star::uno::XInterface; + using ::com::sun::star::uno::UNO_QUERY; + using ::com::sun::star::uno::Sequence; + using ::com::sun::star::uno::Reference; + using ::com::sun::star::beans::XPropertySetInfo; + using ::com::sun::star::beans::PropertyValue; + using ::com::sun::star::uno::RuntimeException; + using ::com::sun::star::lang::IndexOutOfBoundsException; + using ::com::sun::star::sdb::XInteractionSupplyParameters; + using ::com::sun::star::awt::XTextComponent; + using ::com::sun::star::uno::Any; + using ::com::sun::star::frame::XDispatch; + using ::com::sun::star::lang::XMultiServiceFactory; + using ::com::sun::star::uno::XAggregation; + using ::com::sun::star::uno::Type; + using ::com::sun::star::lang::IllegalArgumentException; + using ::com::sun::star::sdbc::XConnection; + using ::com::sun::star::sdbc::XRowSet; + using ::com::sun::star::sdbc::XDatabaseMetaData; + using ::com::sun::star::util::XNumberFormatsSupplier; + using ::com::sun::star::util::XNumberFormatter; + using ::com::sun::star::sdbcx::XColumnsSupplier; + using ::com::sun::star::container::XNameAccess; + using ::com::sun::star::lang::EventObject; + using ::com::sun::star::beans::Property; + using ::com::sun::star::container::XEnumeration; + using ::com::sun::star::form::XFormComponent; + using ::com::sun::star::form::runtime::XFormOperations; + using ::com::sun::star::awt::XControlContainer; + using ::com::sun::star::container::XIdentifierReplace; + using ::com::sun::star::lang::WrappedTargetException; + using ::com::sun::star::form::XFormControllerListener; + using ::com::sun::star::awt::XWindow; + using ::com::sun::star::sdbc::XResultSet; + using ::com::sun::star::awt::XControlModel; + using ::com::sun::star::awt::XTabControllerModel; + using ::com::sun::star::beans::PropertyChangeEvent; + using ::com::sun::star::form::validation::XValidatableFormComponent; + using ::com::sun::star::form::XLoadable; + using ::com::sun::star::script::XEventAttacherManager; + using ::com::sun::star::container::XContainer; + using ::com::sun::star::form::XBoundControl; + using ::com::sun::star::beans::XPropertyChangeListener; + using ::com::sun::star::awt::TextEvent; + using ::com::sun::star::form::XBoundComponent; + using ::com::sun::star::awt::XCheckBox; + using ::com::sun::star::awt::XComboBox; + using ::com::sun::star::awt::XListBox; + using ::com::sun::star::awt::ItemEvent; + using ::com::sun::star::util::XModifyListener; + using ::com::sun::star::form::XReset; + using ::com::sun::star::frame::XDispatchProviderInterception; + using ::com::sun::star::form::XGridControl; + using ::com::sun::star::awt::XVclWindowPeer; + using ::com::sun::star::form::validation::XValidator; + using ::com::sun::star::awt::FocusEvent; + using ::com::sun::star::sdb::SQLContext; + using ::com::sun::star::container::XChild; + using ::com::sun::star::form::TabulatorCycle_RECORDS; + using ::com::sun::star::container::ContainerEvent; + using ::com::sun::star::lang::DisposedException; + using ::com::sun::star::lang::Locale; + using ::com::sun::star::beans::NamedValue; + using ::com::sun::star::lang::NoSupportException; + using ::com::sun::star::sdb::RowChangeEvent; + using ::com::sun::star::frame::XStatusListener; + using ::com::sun::star::frame::XDispatchProviderInterceptor; + using ::com::sun::star::sdb::SQLErrorEvent; + using ::com::sun::star::form::DatabaseParameterEvent; + using ::com::sun::star::sdb::ParametersRequest; + using ::com::sun::star::task::XInteractionRequest; + using ::com::sun::star::util::URL; + using ::com::sun::star::frame::FeatureStateEvent; + /** === end UNO using === **/ + namespace ColumnValue = ::com::sun::star::sdbc::ColumnValue; + namespace PropertyAttribute = ::com::sun::star::beans::PropertyAttribute; + namespace FocusChangeReason = ::com::sun::star::awt::FocusChangeReason; + namespace RowChangeAction = ::com::sun::star::sdb::RowChangeAction; + //============================================================================== // ColumnInfo //============================================================================== @@ -184,7 +270,6 @@ ColumnInfoCache::ColumnInfoCache( const Reference< XColumnsSupplier >& _rxColSup :m_aColumns() ,m_bControlsInitialized( false ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "ColumnInfoCache::ColumnInfoCache" ); try { m_aColumns.clear(); @@ -242,7 +327,6 @@ namespace //------------------------------------------------------------------------------ void ColumnInfoCache::deinitializeControls() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "ColumnInfoCache::deinitializeControls" ); for ( ColumnInfos::iterator col = m_aColumns.begin(); col != m_aColumns.end(); ++col @@ -255,7 +339,6 @@ void ColumnInfoCache::deinitializeControls() //------------------------------------------------------------------------------ void ColumnInfoCache::initializeControls( const Sequence< Reference< XControl > >& _rControls ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "ColumnInfoCache::initializeControls" ); try { // for every of our known columns, find the controls which are bound to this column @@ -338,7 +421,6 @@ void ColumnInfoCache::initializeControls( const Sequence< Reference< XControl > //------------------------------------------------------------------------------ const ColumnInfo& ColumnInfoCache::getColumnInfo( size_t _pos ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "ColumnInfoCache::getColumnInfo" ); if ( _pos >= m_aColumns.size() ) throw IndexOutOfBoundsException(); @@ -424,7 +506,7 @@ void FmXAutoControl::ImplSetPeerProperty( const ::rtl::OUString& rPropName, cons } //------------------------------------------------------------------------------ -IMPL_LINK( FmXFormController, OnActivateTabOrder, void*, /*EMPTYTAG*/ ) +IMPL_LINK( FormController, OnActivateTabOrder, void*, /*EMPTYTAG*/ ) { activateTabOrder(); return 1; @@ -441,7 +523,7 @@ struct UpdateAllListeners : public ::std::unary_function< Reference< XDispatch > } }; //.............................................................................. -IMPL_LINK( FmXFormController, OnInvalidateFeatures, void*, /*_pNotInterestedInThisParam*/ ) +IMPL_LINK( FormController, OnInvalidateFeatures, void*, /*_pNotInterestedInThisParam*/ ) { ::osl::MutexGuard aGuard( m_aMutex ); for ( ::std::set< sal_Int32 >::const_iterator aLoop = m_aInvalidFeatures.begin(); @@ -462,30 +544,12 @@ IMPL_LINK( FmXFormController, OnInvalidateFeatures, void*, /*_pNotInterestedInTh /*************************************************************************/ +DBG_NAME( FormController ) //------------------------------------------------------------------ -Reference< XInterface > SAL_CALL - FmXFormController_NewInstance_Impl(const Reference< XMultiServiceFactory > & _rxORB) -{ - return *(new FmXFormController(_rxORB)); -} - -//------------------------------------------------------------------ -namespace fmctrlr -{ - const ::rtl::OUString& getDataModeIdentifier() - { - static ::rtl::OUString s_sDataModeIdentifier = DATA_MODE; - return s_sDataModeIdentifier; - } -} -using namespace fmctrlr; - -DBG_NAME( FmXFormController ) -//------------------------------------------------------------------ -FmXFormController::FmXFormController(const Reference< XMultiServiceFactory > & _rxORB, +FormController::FormController(const Reference< XMultiServiceFactory > & _rxORB, FmFormView* _pView, Window* _pWindow ) - :FmXFormController_BASE( m_aMutex ) - ,OPropertySetHelper( FmXFormController_BASE::rBHelper ) + :FormController_BASE( m_aMutex ) + ,OPropertySetHelper( FormController_BASE::rBHelper ) ,OSQLParserClient(_rxORB) ,m_xORB(_rxORB) ,m_aActivateListeners(m_aMutex) @@ -498,11 +562,11 @@ FmXFormController::FmXFormController(const Reference< XMultiServiceFactory > & _ ,m_pWindow(_pWindow) ,m_pControlBorderManager( new ::svxform::ControlBorderManager ) ,m_aControllerFeatures( _rxORB, this ) - ,m_aMode(getDataModeIdentifier()) - ,m_aLoadEvent( LINK( this, FmXFormController, OnLoad ) ) - ,m_aToggleEvent( LINK( this, FmXFormController, OnToggleAutoFields ) ) - ,m_aActivationEvent( LINK( this, FmXFormController, OnActivated ) ) - ,m_aDeactivationEvent( LINK( this, FmXFormController, OnDeactivated ) ) + ,m_aMode( DATA_MODE ) + ,m_aLoadEvent( LINK( this, FormController, OnLoad ) ) + ,m_aToggleEvent( LINK( this, FormController, OnToggleAutoFields ) ) + ,m_aActivationEvent( LINK( this, FormController, OnActivated ) ) + ,m_aDeactivationEvent( LINK( this, FormController, OnDeactivated ) ) ,m_nCurrentFilterPosition(0) ,m_bCurrentRecordModified(sal_False) ,m_bCurrentRecordNew(sal_False) @@ -519,8 +583,7 @@ FmXFormController::FmXFormController(const Reference< XMultiServiceFactory > & _ ,m_bDetachEvents(sal_True) ,m_bAttemptedHandlerCreation( false ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::FmXFormController" ); - DBG_CTOR( FmXFormController, NULL ); + DBG_CTOR( FormController, NULL ); ::comphelper::increment(m_refCount); { @@ -529,7 +592,7 @@ FmXFormController::FmXFormController(const Reference< XMultiServiceFactory > & _ m_xORB->createInstance( ::rtl::OUString::createFromAscii( "com.sun.star.awt.TabController" ) ), UNO_QUERY ); - DBG_ASSERT( m_xAggregate.is(), "FmXFormController::FmXFormController : could not create my aggregate !" ); + DBG_ASSERT( m_xAggregate.is(), "FormController::FormController : could not create my aggregate !" ); m_xTabController = Reference< XTabController >( m_xAggregate, UNO_QUERY ); } @@ -539,14 +602,14 @@ FmXFormController::FmXFormController(const Reference< XMultiServiceFactory > & _ ::comphelper::decrement(m_refCount); m_aTabActivationTimer.SetTimeout( 500 ); - m_aTabActivationTimer.SetTimeoutHdl( LINK( this, FmXFormController, OnActivateTabOrder ) ); + m_aTabActivationTimer.SetTimeoutHdl( LINK( this, FormController, OnActivateTabOrder ) ); m_aFeatureInvalidationTimer.SetTimeout( 200 ); - m_aFeatureInvalidationTimer.SetTimeoutHdl( LINK( this, FmXFormController, OnInvalidateFeatures ) ); + m_aFeatureInvalidationTimer.SetTimeoutHdl( LINK( this, FormController, OnInvalidateFeatures ) ); } //------------------------------------------------------------------ -FmXFormController::~FmXFormController() +FormController::~FormController() { { ::osl::MutexGuard aGuard( m_aMutex ); @@ -574,28 +637,25 @@ FmXFormController::~FmXFormController() DELETEZ( m_pControlBorderManager ); - DBG_DTOR( FmXFormController, NULL ); + DBG_DTOR( FormController, NULL ); } // ----------------------------------------------------------------------------- -void SAL_CALL FmXFormController::acquire() throw () +void SAL_CALL FormController::acquire() throw () { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::acquire" ); - FmXFormController_BASE::acquire(); + FormController_BASE::acquire(); } // ----------------------------------------------------------------------------- -void SAL_CALL FmXFormController::release() throw () +void SAL_CALL FormController::release() throw () { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::release" ); - FmXFormController_BASE::release(); + FormController_BASE::release(); } //------------------------------------------------------------------ -Any SAL_CALL FmXFormController::queryInterface( const Type& _rType ) throw(RuntimeException) +Any SAL_CALL FormController::queryInterface( const Type& _rType ) throw(RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::queryInterface" ); - Any aRet = FmXFormController_BASE::queryInterface( _rType ); + Any aRet = FormController_BASE::queryInterface( _rType ); if ( !aRet.hasValue() ) aRet = OPropertySetHelper::queryInterface( _rType ); if ( !aRet.hasValue() ) @@ -604,9 +664,8 @@ Any SAL_CALL FmXFormController::queryInterface( const Type& _rType ) throw(Runti } //------------------------------------------------------------------------------ -Sequence< sal_Int8 > SAL_CALL FmXFormController::getImplementationId() throw( RuntimeException ) +Sequence< sal_Int8 > SAL_CALL FormController::getImplementationId() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getImplementationId" ); static ::cppu::OImplementationId* pId = NULL; if ( !pId ) { @@ -621,20 +680,18 @@ Sequence< sal_Int8 > SAL_CALL FmXFormController::getImplementationId() throw( Ru } //------------------------------------------------------------------------------ -Sequence< Type > SAL_CALL FmXFormController::getTypes( ) throw(RuntimeException) +Sequence< Type > SAL_CALL FormController::getTypes( ) throw(RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getTypes" ); return comphelper::concatSequences( - FmXFormController_BASE::getTypes(), + FormController_BASE::getTypes(), ::cppu::OPropertySetHelper::getTypes() ); } // ----------------------------------------------------------------------------- // XUnoTunnel -Sequence< sal_Int8 > FmXFormController::getUnoTunnelImplementationId() +Sequence< sal_Int8 > FormController::getUnoTunnelImplementationId() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getUnoTunnelImplementationId" ); static ::cppu::OImplementationId * pId = NULL; if ( !pId ) { @@ -648,18 +705,16 @@ Sequence< sal_Int8 > FmXFormController::getUnoTunnelImplementationId() return pId->getImplementationId(); } //------------------------------------------------------------------------------ -FmXFormController* FmXFormController::getImplementation( const Reference< XInterface >& _rxComponent ) +FormController* FormController::getImplementation( const Reference< XInterface >& _rxComponent ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getImplementation" ); Reference< XUnoTunnel > xTunnel( _rxComponent, UNO_QUERY ); if ( xTunnel.is() ) - return reinterpret_cast< FmXFormController* >( xTunnel->getSomething( getUnoTunnelImplementationId() ) ); + return reinterpret_cast< FormController* >( xTunnel->getSomething( getUnoTunnelImplementationId() ) ); return NULL; } //------------------------------------------------------------------------------ -sal_Int64 SAL_CALL FmXFormController::getSomething(Sequence<sal_Int8> const& rId)throw( RuntimeException ) +sal_Int64 SAL_CALL FormController::getSomething(Sequence<sal_Int8> const& rId)throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getSomething" ); if (rId.getLength() == 16 && 0 == rtl_compareMemory(getUnoTunnelImplementationId().getConstArray(), rId.getConstArray(), 16 ) ) return reinterpret_cast< sal_Int64 >( this ); @@ -668,9 +723,8 @@ sal_Int64 SAL_CALL FmXFormController::getSomething(Sequence<sal_Int8> const& rId // XServiceInfo //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::supportsService(const ::rtl::OUString& ServiceName) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::supportsService(const ::rtl::OUString& ServiceName) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::supportsService" ); Sequence< ::rtl::OUString> aSNL(getSupportedServiceNames()); const ::rtl::OUString * pArray = aSNL.getConstArray(); for( sal_Int32 i = 0; i < aSNL.getLength(); i++ ) @@ -680,16 +734,14 @@ sal_Bool SAL_CALL FmXFormController::supportsService(const ::rtl::OUString& Serv } //------------------------------------------------------------------------------ -::rtl::OUString SAL_CALL FmXFormController::getImplementationName() throw( RuntimeException ) +::rtl::OUString SAL_CALL FormController::getImplementationName() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getImplementationName" ); - return ::rtl::OUString::createFromAscii("com.sun.star.form.FmXFormController"); + return ::rtl::OUString::createFromAscii( "org.openoffice.comp.svx.FormController" ); } //------------------------------------------------------------------------------ -Sequence< ::rtl::OUString> SAL_CALL FmXFormController::getSupportedServiceNames(void) throw( RuntimeException ) +Sequence< ::rtl::OUString> SAL_CALL FormController::getSupportedServiceNames(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getSupportedServiceNames" ); // service names which are supported only, but cannot be used to created an // instance at a service factory Sequence< ::rtl::OUString > aNonCreatableServiceNames( 1 ); @@ -701,39 +753,35 @@ Sequence< ::rtl::OUString> SAL_CALL FmXFormController::getSupportedServiceNames( } //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::approveReset(const EventObject& /*rEvent*/) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::approveReset(const EventObject& /*rEvent*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::approveReset" ); return sal_True; } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::resetted(const EventObject& rEvent) throw( RuntimeException ) +void SAL_CALL FormController::resetted(const EventObject& rEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::resetted" ); ::osl::MutexGuard aGuard(m_aMutex); if (getCurrentControl().is() && (getCurrentControl()->getModel() == rEvent.Source)) m_bModified = sal_False; } //------------------------------------------------------------------------------ -Sequence< ::rtl::OUString> FmXFormController::getSupportedServiceNames_Static(void) +Sequence< ::rtl::OUString> FormController::getSupportedServiceNames_Static(void) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getSupportedServiceNames_Static" ); static Sequence< ::rtl::OUString> aServices; if (!aServices.getLength()) { aServices.realloc(2); - aServices.getArray()[0] = ::rtl::OUString::createFromAscii("com.sun.star.form.FormController"); + aServices.getArray()[0] = FM_FORM_CONTROLLER; aServices.getArray()[1] = ::rtl::OUString::createFromAscii("com.sun.star.awt.control.TabController"); } return aServices; } //------------------------------------------------------------------------------ -void FmXFormController::setCurrentFilterPosition( sal_Int32 nPos ) +void FormController::setCurrentFilterPosition( sal_Int32 nPos ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setCurrentFilterPosition" ); DBG_ASSERT(nPos < (sal_Int32)m_aFilters.size(), "Invalid Position"); if (nPos != m_nCurrentFilterPosition) @@ -752,11 +800,11 @@ void FmXFormController::setCurrentFilterPosition( sal_Int32 nPos ) } } // ----------------------------------------------------------------------------- -void FmXFormController::impl_setTextOnAllFilter_throw() +void FormController::impl_setTextOnAllFilter_throw() { // set the text for all filters OSL_ENSURE( ( m_aFilters.size() > (size_t)m_nCurrentFilterPosition ) && ( m_nCurrentFilterPosition >= 0 ), - "FmXFormController::setCurrentFilterPosition: m_nCurrentFilterPosition too big" ); + "FormController::setCurrentFilterPosition: m_nCurrentFilterPosition too big" ); if ( ( m_nCurrentFilterPosition >= 0 ) && ( (size_t)m_nCurrentFilterPosition < m_aFilters.size() ) ) { @@ -770,25 +818,22 @@ void FmXFormController::impl_setTextOnAllFilter_throw() } // OPropertySetHelper //------------------------------------------------------------------------------ -sal_Bool FmXFormController::convertFastPropertyValue( Any & /*rConvertedValue*/, Any & /*rOldValue*/, +sal_Bool FormController::convertFastPropertyValue( Any & /*rConvertedValue*/, Any & /*rOldValue*/, sal_Int32 /*nHandle*/, const Any& /*rValue*/ ) throw( IllegalArgumentException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::convertFastPropertyValue" ); return sal_False; } //------------------------------------------------------------------------------ -void FmXFormController::setFastPropertyValue_NoBroadcast( sal_Int32 /*nHandle*/, const Any& /*rValue*/ ) +void FormController::setFastPropertyValue_NoBroadcast( sal_Int32 /*nHandle*/, const Any& /*rValue*/ ) throw( Exception ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setFastPropertyValue_NoBroadcast" ); } //------------------------------------------------------------------------------ -void FmXFormController::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) const +void FormController::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getFastPropertyValue" ); switch (nHandle) { case FM_ATTR_FILTER: @@ -826,7 +871,7 @@ void FmXFormController::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) c // get the field of the controls map Reference< XTextComponent > xText = condition->first; Reference< XPropertySet > xField = m_aFilterControls.find( xText )->second; - DBG_ASSERT( xField.is(), "FmXFormController::getFastPropertyValue: no field found!" ); + DBG_ASSERT( xField.is(), "FormController::getFastPropertyValue: no field found!" ); if ( condition != rRow.begin() ) aFilter.appendAscii( " AND " ); @@ -834,7 +879,7 @@ void FmXFormController::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) c ::rtl::OUString sErrorMsg, sCriteria; ::rtl::Reference< ISQLParseNode > xParseNode = predicateTree( sErrorMsg, sFilterValue, xFormatter, xField ); - OSL_ENSURE( xParseNode.is(), "FmXFormController::getFastPropertyValue: could not parse the field value predicate!" ); + OSL_ENSURE( xParseNode.is(), "FormController::getFastPropertyValue: could not parse the field value predicate!" ); if ( xParseNode.is() ) { // don't use a parse context here, we need it unlocalized @@ -856,9 +901,8 @@ void FmXFormController::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) c } //------------------------------------------------------------------------------ -Reference< XPropertySetInfo > FmXFormController::getPropertySetInfo() throw( RuntimeException ) +Reference< XPropertySetInfo > FormController::getPropertySetInfo() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getPropertySetInfo" ); static Reference< XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) ); return xInfo; } @@ -872,12 +916,11 @@ pDesc[nPos++] = Property(FM_PROP_##varname, FM_ATTR_##varname, ::getCppuType((co DECL_PROP_CORE(varname, type) PropertyAttribute::attrib1) //------------------------------------------------------------------------------ -void FmXFormController::fillProperties( +void FormController::fillProperties( Sequence< Property >& /* [out] */ _rProps, Sequence< Property >& /* [out] */ /*_rAggregateProps*/ ) const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::fillProperties" ); _rProps.realloc(2); sal_Int32 nPos = 0; Property* pDesc = _rProps.getArray(); @@ -886,51 +929,45 @@ void FmXFormController::fillProperties( } //------------------------------------------------------------------------------ -::cppu::IPropertyArrayHelper& FmXFormController::getInfoHelper() +::cppu::IPropertyArrayHelper& FormController::getInfoHelper() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getInfoHelper" ); return *getArrayHelper(); } // XElementAccess //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::hasElements(void) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::hasElements(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::hasElements" ); ::osl::MutexGuard aGuard( m_aMutex ); return !m_aChilds.empty(); } //------------------------------------------------------------------------------ -Type SAL_CALL FmXFormController::getElementType(void) throw( RuntimeException ) +Type SAL_CALL FormController::getElementType(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getElementType" ); return ::getCppuType((const Reference< XFormController>*)0); } // XEnumerationAccess //------------------------------------------------------------------------------ -Reference< XEnumeration > SAL_CALL FmXFormController::createEnumeration(void) throw( RuntimeException ) +Reference< XEnumeration > SAL_CALL FormController::createEnumeration(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::createEnumeration" ); ::osl::MutexGuard aGuard( m_aMutex ); return new ::comphelper::OEnumerationByIndex(this); } // XIndexAccess //------------------------------------------------------------------------------ -sal_Int32 SAL_CALL FmXFormController::getCount(void) throw( RuntimeException ) +sal_Int32 SAL_CALL FormController::getCount(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getCount" ); ::osl::MutexGuard aGuard( m_aMutex ); return m_aChilds.size(); } //------------------------------------------------------------------------------ -Any SAL_CALL FmXFormController::getByIndex(sal_Int32 Index) throw( IndexOutOfBoundsException, WrappedTargetException, RuntimeException ) +Any SAL_CALL FormController::getByIndex(sal_Int32 Index) throw( IndexOutOfBoundsException, WrappedTargetException, RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getByIndex" ); ::osl::MutexGuard aGuard( m_aMutex ); if (Index < 0 || Index >= (sal_Int32)m_aChilds.size()) @@ -941,12 +978,11 @@ Any SAL_CALL FmXFormController::getByIndex(sal_Int32 Index) throw( IndexOutOfBou } //----------------------------------------------------------------------------- -void FmXFormController::addChild(FmXFormController* pChild) +void FormController::addChild(FormController* pChild) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addChild" ); Reference< XFormController > xController(pChild); m_aChilds.push_back(xController); - pChild->setParent(static_cast< XFormController* >(this)); + pChild->setParent( *this ); Reference< XFormComponent > xForm(pChild->getModel(), UNO_QUERY); @@ -967,9 +1003,8 @@ void FmXFormController::addChild(FmXFormController* pChild) // EventListener //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::disposing(const EventObject& e) throw( RuntimeException ) +void SAL_CALL FormController::disposing(const EventObject& e) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::disposing" ); // Ist der Container disposed worden ::osl::MutexGuard aGuard( m_aMutex ); Reference< XControlContainer > xContainer(e.Source, UNO_QUERY); @@ -991,9 +1026,8 @@ void SAL_CALL FmXFormController::disposing(const EventObject& e) throw( RuntimeE // OComponentHelper //----------------------------------------------------------------------------- -void FmXFormController::disposeAllFeaturesAndDispatchers() SAL_THROW(()) +void FormController::disposeAllFeaturesAndDispatchers() SAL_THROW(()) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::disposeAllFeaturesAndDispatchers" ); for ( DispatcherContainer::iterator aDispatcher = m_aFeatureDispatchers.begin(); aDispatcher != m_aFeatureDispatchers.end(); ++aDispatcher @@ -1005,7 +1039,7 @@ void FmXFormController::disposeAllFeaturesAndDispatchers() SAL_THROW(()) } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::disposeAllFeaturesAndDispatchers: caught an exception while disposing a dispatcher!" ); + OSL_ENSURE( sal_False, "FormController::disposeAllFeaturesAndDispatchers: caught an exception while disposing a dispatcher!" ); } } m_aFeatureDispatchers.clear(); @@ -1013,10 +1047,9 @@ void FmXFormController::disposeAllFeaturesAndDispatchers() SAL_THROW(()) } //----------------------------------------------------------------------------- -void FmXFormController::disposing(void) +void FormController::disposing(void) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::disposing" ); - EventObject aEvt(static_cast< XFormController* >(this)); + EventObject aEvt( *this ); // if we're still active, simulate a "deactivated" event if ( m_xActiveControl.is() ) @@ -1096,10 +1129,9 @@ namespace } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::propertyChange(const PropertyChangeEvent& evt) throw( RuntimeException ) +void SAL_CALL FormController::propertyChange(const PropertyChangeEvent& evt) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::propertyChange" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); if ( evt.PropertyName == FM_PROP_BOUNDFIELD ) { Reference<XPropertySet> xOldBound; @@ -1164,14 +1196,13 @@ void SAL_CALL FmXFormController::propertyChange(const PropertyChangeEvent& evt) } //------------------------------------------------------------------------------ -bool FmXFormController::replaceControl( const Reference< XControl >& _rxExistentControl, const Reference< XControl >& _rxNewControl ) +bool FormController::replaceControl( const Reference< XControl >& _rxExistentControl, const Reference< XControl >& _rxNewControl ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::replaceControl" ); bool bSuccess = false; try { Reference< XIdentifierReplace > xContainer( getContainer(), UNO_QUERY ); - DBG_ASSERT( xContainer.is(), "FmXFormController::replaceControl: yes, it's not required by the service description, but XItentifierReplaces would be nice!" ); + DBG_ASSERT( xContainer.is(), "FormController::replaceControl: yes, it's not required by the service description, but XItentifierReplaces would be nice!" ); if ( xContainer.is() ) { // look up the ID of _rxExistentControl @@ -1184,7 +1215,7 @@ bool FmXFormController::replaceControl( const Reference< XControl >& _rxExistent if ( xCheck == _rxExistentControl ) break; } - DBG_ASSERT( pIdentifiers != pIdentifiersEnd, "FmXFormController::replaceControl: did not find the control in the container!" ); + DBG_ASSERT( pIdentifiers != pIdentifiersEnd, "FormController::replaceControl: did not find the control in the container!" ); if ( pIdentifiers != pIdentifiersEnd ) { bool bReplacedWasActive = ( m_xActiveControl.get() == _rxExistentControl.get() ); @@ -1217,7 +1248,7 @@ bool FmXFormController::replaceControl( const Reference< XControl >& _rxExistent } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::replaceControl: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::replaceControl: caught an exception!" ); } Reference< XControl > xDisposeIt( bSuccess ? _rxExistentControl : _rxNewControl ); @@ -1226,10 +1257,9 @@ bool FmXFormController::replaceControl( const Reference< XControl >& _rxExistent } //------------------------------------------------------------------------------ -void FmXFormController::toggleAutoFields(sal_Bool bAutoFields) +void FormController::toggleAutoFields(sal_Bool bAutoFields) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::toggleAutoFields" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Sequence< Reference< XControl > > aControlsCopy( m_aControls ); @@ -1300,9 +1330,9 @@ void FmXFormController::toggleAutoFields(sal_Bool bAutoFields) } //------------------------------------------------------------------------------ -IMPL_LINK(FmXFormController, OnToggleAutoFields, void*, EMPTYARG) +IMPL_LINK(FormController, OnToggleAutoFields, void*, EMPTYARG) { - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); toggleAutoFields(m_bCurrentRecordNew); return 1L; @@ -1310,10 +1340,9 @@ IMPL_LINK(FmXFormController, OnToggleAutoFields, void*, EMPTYARG) // XTextListener //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::textChanged(const TextEvent& e) throw( RuntimeException ) +void SAL_CALL FormController::textChanged(const TextEvent& e) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::textChanged" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); if (m_bFiltering) { Reference< XTextComponent > xText(e.Source,UNO_QUERY); @@ -1321,7 +1350,7 @@ void SAL_CALL FmXFormController::textChanged(const TextEvent& e) throw( RuntimeE // Suchen der aktuellen Row OSL_ENSURE( ( m_aFilters.size() > (size_t)m_nCurrentFilterPosition ) && ( m_nCurrentFilterPosition >= 0 ), - "FmXFormController::textChanged: m_nCurrentFilterPosition too big" ); + "FormController::textChanged: m_nCurrentFilterPosition too big" ); if ( ( m_nCurrentFilterPosition >= 0 ) && ( (size_t)m_nCurrentFilterPosition < m_aFilters.size() ) ) { @@ -1346,36 +1375,32 @@ void SAL_CALL FmXFormController::textChanged(const TextEvent& e) throw( RuntimeE // XItemListener //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::itemStateChanged(const ItemEvent& /*rEvent*/) throw( RuntimeException ) +void SAL_CALL FormController::itemStateChanged(const ItemEvent& /*rEvent*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::itemStateChanged" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); impl_onModify(); } // XModificationBroadcaster //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addModifyListener(const Reference< XModifyListener > & l) throw( RuntimeException ) +void SAL_CALL FormController::addModifyListener(const Reference< XModifyListener > & l) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addModifyListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aModifyListeners.addInterface( l ); } //------------------------------------------------------------------------------ -void FmXFormController::removeModifyListener(const Reference< XModifyListener > & l) throw( RuntimeException ) +void FormController::removeModifyListener(const Reference< XModifyListener > & l) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeModifyListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aModifyListeners.removeInterface( l ); } // XModificationListener //------------------------------------------------------------------------------ -void FmXFormController::modified( const EventObject& _rEvent ) throw( RuntimeException ) +void FormController::modified( const EventObject& _rEvent ) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::modified" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); try { @@ -1400,10 +1425,9 @@ void FmXFormController::modified( const EventObject& _rEvent ) throw( RuntimeExc } //------------------------------------------------------------------------------ -void FmXFormController::impl_onModify() +void FormController::impl_onModify() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::onModify" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); { ::osl::MutexGuard aGuard( m_aMutex ); @@ -1416,10 +1440,9 @@ void FmXFormController::impl_onModify() } //------------------------------------------------------------------------------ -sal_Bool FmXFormController::determineLockState() const +sal_Bool FormController::determineLockState() const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::determineLockState" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); // a.) in filter mode we are always locked // b.) if we have no valid model or our model (a result set) is not alive -> we're locked // c.) if we are inserting everything is OK and we are not locked @@ -1434,12 +1457,11 @@ sal_Bool FmXFormController::determineLockState() const // FocusListener //------------------------------------------------------------------------------ -void FmXFormController::focusGained(const FocusEvent& e) throw( RuntimeException ) +void FormController::focusGained(const FocusEvent& e) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::focusGained" ); - TRACE_RANGE( "FmXFormController::focusGained" ); + TRACE_RANGE( "FormController::focusGained" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); Reference< XControl > xControl(e.Source, UNO_QUERY); @@ -1473,7 +1495,7 @@ void FmXFormController::focusGained(const FocusEvent& e) throw( RuntimeException #if (OSL_DEBUG_LEVEL > 1) || defined DBG_UTIL Reference< XBoundControl > xLockingTest(m_xCurrentControl, UNO_QUERY); sal_Bool bControlIsLocked = xLockingTest.is() && xLockingTest->getLock(); - OSL_ENSURE(!bControlIsLocked, "FmXFormController::Gained: I'm modified and the current control is locked ? How this ?"); + OSL_ENSURE(!bControlIsLocked, "FormController::Gained: I'm modified and the current control is locked ? How this ?"); // normalerweise sollte ein gelocktes Control nicht modified sein, also muss wohl mein bModified aus einem anderen Kontext // gesetzt worden sein, was ich nicht verstehen wuerde ... #endif @@ -1563,7 +1585,7 @@ void FmXFormController::focusGained(const FocusEvent& e) throw( RuntimeException } //------------------------------------------------------------------------------ -IMPL_LINK( FmXFormController, OnActivated, void*, /**/ ) +IMPL_LINK( FormController, OnActivated, void*, /**/ ) { EventObject aEvent; aEvent.Source = *this; @@ -1573,7 +1595,7 @@ IMPL_LINK( FmXFormController, OnActivated, void*, /**/ ) } //------------------------------------------------------------------------------ -IMPL_LINK( FmXFormController, OnDeactivated, void*, /**/ ) +IMPL_LINK( FormController, OnDeactivated, void*, /**/ ) { EventObject aEvent; aEvent.Source = *this; @@ -1583,10 +1605,9 @@ IMPL_LINK( FmXFormController, OnDeactivated, void*, /**/ ) } //------------------------------------------------------------------------------ -void FmXFormController::focusLost(const FocusEvent& e) throw( RuntimeException ) +void FormController::focusLost(const FocusEvent& e) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::focusLost" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_pControlBorderManager->focusLost( e.Source ); @@ -1601,53 +1622,47 @@ void FmXFormController::focusLost(const FocusEvent& e) throw( RuntimeException ) } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::mousePressed( const awt::MouseEvent& /*_rEvent*/ ) throw (RuntimeException) +void SAL_CALL FormController::mousePressed( const awt::MouseEvent& /*_rEvent*/ ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::mousePressed" ); // not interested in } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::mouseReleased( const awt::MouseEvent& /*_rEvent*/ ) throw (RuntimeException) +void SAL_CALL FormController::mouseReleased( const awt::MouseEvent& /*_rEvent*/ ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::mouseReleased" ); // not interested in } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::mouseEntered( const awt::MouseEvent& _rEvent ) throw (RuntimeException) +void SAL_CALL FormController::mouseEntered( const awt::MouseEvent& _rEvent ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::mouseEntered" ); m_pControlBorderManager->mouseEntered( _rEvent.Source ); } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::mouseExited( const awt::MouseEvent& _rEvent ) throw (RuntimeException) +void SAL_CALL FormController::mouseExited( const awt::MouseEvent& _rEvent ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::mouseExited" ); m_pControlBorderManager->mouseExited( _rEvent.Source ); } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::componentValidityChanged( const EventObject& _rSource ) throw (RuntimeException) +void SAL_CALL FormController::componentValidityChanged( const EventObject& _rSource ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::componentValidityChanged" ); Reference< XControl > xControl( findControl( m_aControls, Reference< XControlModel >( _rSource.Source, UNO_QUERY ), sal_False, sal_False ) ); Reference< XValidatableFormComponent > xValidatable( _rSource.Source, UNO_QUERY ); - OSL_ENSURE( xControl.is() && xValidatable.is(), "FmXFormController::componentValidityChanged: huh?" ); + OSL_ENSURE( xControl.is() && xValidatable.is(), "FormController::componentValidityChanged: huh?" ); if ( xControl.is() && xValidatable.is() ) m_pControlBorderManager->validityChanged( xControl, xValidatable ); } //-------------------------------------------------------------------- -void FmXFormController::setModel(const Reference< XTabControllerModel > & Model) throw( RuntimeException ) +void FormController::setModel(const Reference< XTabControllerModel > & Model) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setModel" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::setModel : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::setModel : invalid aggregate !"); try { @@ -1743,27 +1758,25 @@ void FmXFormController::setModel(const Reference< XTabControllerModel > & Model) } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::setModel: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::setModel: caught an exception!" ); } } //------------------------------------------------------------------------------ -Reference< XTabControllerModel > FmXFormController::getModel() throw( RuntimeException ) +Reference< XTabControllerModel > FormController::getModel() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getModel" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::getModel : invalid aggregate !"); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); + DBG_ASSERT(m_xTabController.is(), "FormController::getModel : invalid aggregate !"); if (!m_xTabController.is()) return Reference< XTabControllerModel > (); return m_xTabController->getModel(); } //------------------------------------------------------------------------------ -void FmXFormController::addToEventAttacher(const Reference< XControl > & xControl) +void FormController::addToEventAttacher(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addToEventAttacher" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); - OSL_ENSURE( xControl.is(), "FmXFormController::addToEventAttacher: invalid control - how did you reach this?" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); + OSL_ENSURE( xControl.is(), "FormController::addToEventAttacher: invalid control - how did you reach this?" ); if ( !xControl.is() ) return; /* throw IllegalArgumentException(); */ @@ -1788,11 +1801,10 @@ void FmXFormController::addToEventAttacher(const Reference< XControl > & xContro } //------------------------------------------------------------------------------ -void FmXFormController::removeFromEventAttacher(const Reference< XControl > & xControl) +void FormController::removeFromEventAttacher(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeFromEventAttacher" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); - OSL_ENSURE( xControl.is(), "FmXFormController::removeFromEventAttacher: invalid control - how did you reach this?" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); + OSL_ENSURE( xControl.is(), "FormController::removeFromEventAttacher: invalid control - how did you reach this?" ); if ( !xControl.is() ) return; /* throw IllegalArgumentException(); */ @@ -1817,14 +1829,13 @@ void FmXFormController::removeFromEventAttacher(const Reference< XControl > & xC } //------------------------------------------------------------------------------ -void FmXFormController::setContainer(const Reference< XControlContainer > & xContainer) throw( RuntimeException ) +void FormController::setContainer(const Reference< XControlContainer > & xContainer) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setContainer" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Reference< XTabControllerModel > xTabModel(getModel()); DBG_ASSERT(xTabModel.is() || !xContainer.is(), "No Model defined"); // if we have a new container we need a model - DBG_ASSERT(m_xTabController.is(), "FmXFormController::setContainer : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::setContainer : invalid aggregate !"); ::osl::MutexGuard aGuard( m_aMutex ); Reference< XContainer > xCurrentContainer; @@ -1906,22 +1917,20 @@ void FmXFormController::setContainer(const Reference< XControlContainer > & xCon } //------------------------------------------------------------------------------ -Reference< XControlContainer > FmXFormController::getContainer() throw( RuntimeException ) +Reference< XControlContainer > FormController::getContainer() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getContainer" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::getContainer : invalid aggregate !"); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); + DBG_ASSERT(m_xTabController.is(), "FormController::getContainer : invalid aggregate !"); if (!m_xTabController.is()) return Reference< XControlContainer > (); return m_xTabController->getContainer(); } //------------------------------------------------------------------------------ -Sequence< Reference< XControl > > FmXFormController::getControls(void) throw( RuntimeException ) +Sequence< Reference< XControl > > FormController::getControls(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getControls" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); if (!m_bControlsSorted) { @@ -1958,32 +1967,29 @@ Sequence< Reference< XControl > > FmXFormController::getControls(void) throw( Ru } //------------------------------------------------------------------------------ -void FmXFormController::autoTabOrder() throw( RuntimeException ) +void FormController::autoTabOrder() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::autoTabOrder" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::autoTabOrder : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::autoTabOrder : invalid aggregate !"); if (m_xTabController.is()) m_xTabController->autoTabOrder(); } //------------------------------------------------------------------------------ -void FmXFormController::activateTabOrder() throw( RuntimeException ) +void FormController::activateTabOrder() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::activateTabOrder" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::activateTabOrder : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::activateTabOrder : invalid aggregate !"); if (m_xTabController.is()) m_xTabController->activateTabOrder(); } //------------------------------------------------------------------------------ -void FmXFormController::setControlLock(const Reference< XControl > & xControl) +void FormController::setControlLock(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setControlLock" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); sal_Bool bLocked = isLocked(); // es wird gelockt @@ -2022,8 +2028,9 @@ void FmXFormController::setControlLock(const Reference< XControl > & xControl) else xBound->setLock(bLocked); } - catch(...) + catch( const Exception& ) { + DBG_UNHANDLED_EXCEPTION(); } } @@ -2034,10 +2041,9 @@ void FmXFormController::setControlLock(const Reference< XControl > & xControl) } //------------------------------------------------------------------------------ -void FmXFormController::setLocks() +void FormController::setLocks() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setLocks" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); // alle Controls, die mit einer Datenquelle verbunden sind locken/unlocken const Reference< XControl >* pControls = m_aControls.getConstArray(); const Reference< XControl >* pControlsEnd = pControls + m_aControls.getLength(); @@ -2076,10 +2082,9 @@ namespace } //------------------------------------------------------------------------------ -void FmXFormController::startControlModifyListening(const Reference< XControl > & xControl) +void FormController::startControlModifyListening(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::startControlModifyListening" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); bool bModifyListening = lcl_shouldListenForModifications( xControl, this ); @@ -2126,10 +2131,9 @@ void FmXFormController::startControlModifyListening(const Reference< XControl > } //------------------------------------------------------------------------------ -void FmXFormController::stopControlModifyListening(const Reference< XControl > & xControl) +void FormController::stopControlModifyListening(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::stopControlModifyListening" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); bool bModifyListening = lcl_shouldListenForModifications( xControl, NULL ); @@ -2175,10 +2179,9 @@ void FmXFormController::stopControlModifyListening(const Reference< XControl > & } //------------------------------------------------------------------------------ -void FmXFormController::startListening() +void FormController::startListening() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::startListening" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_bModified = sal_False; // jetzt anmelden bei gebundenen feldern @@ -2189,10 +2192,9 @@ void FmXFormController::startListening() } //------------------------------------------------------------------------------ -void FmXFormController::stopListening() +void FormController::stopListening() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::stopListening" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_bModified = sal_False; // jetzt anmelden bei gebundenen feldern @@ -2204,10 +2206,9 @@ void FmXFormController::stopListening() //------------------------------------------------------------------------------ -Reference< XControl > FmXFormController::findControl(Sequence< Reference< XControl > >& _rControls, const Reference< XControlModel > & xCtrlModel ,sal_Bool _bRemove,sal_Bool _bOverWrite) const +Reference< XControl > FormController::findControl(Sequence< Reference< XControl > >& _rControls, const Reference< XControlModel > & xCtrlModel ,sal_Bool _bRemove,sal_Bool _bOverWrite) const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::findControl" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); DBG_ASSERT( xCtrlModel.is(), "findControl - welches ?!" ); Reference< XControl >* pControls = _rControls.getArray(); @@ -2232,9 +2233,8 @@ Reference< XControl > FmXFormController::findControl(Sequence< Reference< XCont } //------------------------------------------------------------------------------ -void FmXFormController::implControlInserted( const Reference< XControl>& _rxControl, bool _bAddToEventAttacher ) +void FormController::implControlInserted( const Reference< XControl>& _rxControl, bool _bAddToEventAttacher ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::implControlInserted" ); Reference< XWindow > xWindow( _rxControl, UNO_QUERY ); if ( xWindow.is() ) { @@ -2272,9 +2272,8 @@ void FmXFormController::implControlInserted( const Reference< XControl>& _rxCont } //------------------------------------------------------------------------------ -void FmXFormController::implControlRemoved( const Reference< XControl>& _rxControl, bool _bRemoveFromEventAttacher ) +void FormController::implControlRemoved( const Reference< XControl>& _rxControl, bool _bRemoveFromEventAttacher ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::implControlRemoved" ); Reference< XWindow > xWindow( _rxControl, UNO_QUERY ); if ( xWindow.is() ) { @@ -2304,9 +2303,8 @@ void FmXFormController::implControlRemoved( const Reference< XControl>& _rxContr } //------------------------------------------------------------------------------ -void FmXFormController::implSetCurrentControl( const Reference< XControl >& _rxControl ) +void FormController::implSetCurrentControl( const Reference< XControl >& _rxControl ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::implSetCurrentControl" ); if ( m_xCurrentControl.get() == _rxControl.get() ) return; @@ -2322,10 +2320,9 @@ void FmXFormController::implSetCurrentControl( const Reference< XControl >& _rxC } //------------------------------------------------------------------------------ -void FmXFormController::insertControl(const Reference< XControl > & xControl) +void FormController::insertControl(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::insertControl" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_bControlsSorted = sal_False; m_aControls.realloc(m_aControls.getLength() + 1); m_aControls.getArray()[m_aControls.getLength() - 1] = xControl; @@ -2343,10 +2340,9 @@ void FmXFormController::insertControl(const Reference< XControl > & xControl) } //------------------------------------------------------------------------------ -void FmXFormController::removeControl(const Reference< XControl > & xControl) +void FormController::removeControl(const Reference< XControl > & xControl) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeControl" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); const Reference< XControl >* pControls = m_aControls.getConstArray(); const Reference< XControl >* pControlsEnd = pControls + m_aControls.getLength(); while ( pControls != pControlsEnd ) @@ -2374,12 +2370,11 @@ void FmXFormController::removeControl(const Reference< XControl > & xControl) // XLoadListener //------------------------------------------------------------------------------ -void FmXFormController::loaded(const EventObject& rEvent) throw( RuntimeException ) +void FormController::loaded(const EventObject& rEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::loaded" ); - OSL_ENSURE( rEvent.Source == m_xModelAsIndex, "FmXFormController::loaded: where did this come from?" ); + OSL_ENSURE( rEvent.Source == m_xModelAsIndex, "FormController::loaded: where did this come from?" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); Reference< XRowSet > xForm(rEvent.Source, UNO_QUERY); // do we have a connected data source @@ -2431,9 +2426,8 @@ void FmXFormController::loaded(const EventObject& rEvent) throw( RuntimeExceptio } //------------------------------------------------------------------------------ -void FmXFormController::updateAllDispatchers() const +void FormController::updateAllDispatchers() const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::updateAllDispatchers" ); ::std::for_each( m_aFeatureDispatchers.begin(), m_aFeatureDispatchers.end(), @@ -2445,9 +2439,9 @@ void FmXFormController::updateAllDispatchers() const } //------------------------------------------------------------------------------ -IMPL_LINK(FmXFormController, OnLoad, void*, EMPTYARG) +IMPL_LINK(FormController, OnLoad, void*, EMPTYARG) { - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_bLocked = determineLockState(); setLocks(); @@ -2463,18 +2457,16 @@ IMPL_LINK(FmXFormController, OnLoad, void*, EMPTYARG) } //------------------------------------------------------------------------------ -void FmXFormController::unloaded(const EventObject& /*rEvent*/) throw( RuntimeException ) +void FormController::unloaded(const EventObject& /*rEvent*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::unloaded" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); updateAllDispatchers(); } //------------------------------------------------------------------------------ -void FmXFormController::reloading(const EventObject& /*aEvent*/) throw( RuntimeException ) +void FormController::reloading(const EventObject& /*aEvent*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::reloading" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); // do the same like in unloading // just one exception toggle the auto values @@ -2483,26 +2475,23 @@ void FmXFormController::reloading(const EventObject& /*aEvent*/) throw( RuntimeE } //------------------------------------------------------------------------------ -void FmXFormController::reloaded(const EventObject& aEvent) throw( RuntimeException ) +void FormController::reloaded(const EventObject& aEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::reloaded" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); loaded(aEvent); } //------------------------------------------------------------------------------ -void FmXFormController::unloading(const EventObject& /*aEvent*/) throw( RuntimeException ) +void FormController::unloading(const EventObject& /*aEvent*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::unloading" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); unload(); } //------------------------------------------------------------------------------ -void FmXFormController::unload() throw( RuntimeException ) +void FormController::unload() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::unload" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); m_aLoadEvent.CancelPendingCall(); @@ -2529,9 +2518,8 @@ void FmXFormController::unload() throw( RuntimeException ) } // ----------------------------------------------------------------------------- -void FmXFormController::removeBoundFieldListener() +void FormController::removeBoundFieldListener() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeBoundFieldListener" ); const Reference< XControl >* pControls = m_aControls.getConstArray(); const Reference< XControl >* pControlsEnd = pControls + m_aControls.getLength(); while ( pControls != pControlsEnd ) @@ -2543,9 +2531,8 @@ void FmXFormController::removeBoundFieldListener() } //------------------------------------------------------------------------------ -void FmXFormController::startFormListening( const Reference< XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ) +void FormController::startFormListening( const Reference< XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::startFormListening" ); try { if ( m_bCanInsert || m_bCanUpdate ) // form can be modified @@ -2573,14 +2560,13 @@ void FmXFormController::startFormListening( const Reference< XPropertySet >& _rx } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::startFormListening: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::startFormListening: caught an exception!" ); } } //------------------------------------------------------------------------------ -void FmXFormController::stopFormListening( const Reference< XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ) +void FormController::stopFormListening( const Reference< XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::stopFormListening" ); try { if ( m_bCanInsert || m_bCanUpdate ) @@ -2606,16 +2592,15 @@ void FmXFormController::stopFormListening( const Reference< XPropertySet >& _rxF } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::stopFormListening: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::stopFormListening: caught an exception!" ); } } // com::sun::star::sdbc::XRowSetListener //------------------------------------------------------------------------------ -void FmXFormController::cursorMoved(const EventObject& /*event*/) throw( RuntimeException ) +void FormController::cursorMoved(const EventObject& /*event*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::cursorMoved" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); // toggle the locking ? if (m_bLocked != determineLockState()) { @@ -2633,25 +2618,22 @@ void FmXFormController::cursorMoved(const EventObject& /*event*/) throw( Runtime } //------------------------------------------------------------------------------ -void FmXFormController::rowChanged(const EventObject& /*event*/) throw( RuntimeException ) +void FormController::rowChanged(const EventObject& /*event*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::rowChanged" ); // not interested in ... } //------------------------------------------------------------------------------ -void FmXFormController::rowSetChanged(const EventObject& /*event*/) throw( RuntimeException ) +void FormController::rowSetChanged(const EventObject& /*event*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::rowSetChanged" ); // not interested in ... } // XContainerListener //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::elementInserted(const ContainerEvent& evt) throw( RuntimeException ) +void SAL_CALL FormController::elementInserted(const ContainerEvent& evt) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::elementInserted" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Reference< XControl > xControl; evt.Element >>= xControl; if (!xControl.is()) @@ -2695,9 +2677,8 @@ void SAL_CALL FmXFormController::elementInserted(const ContainerEvent& evt) thro } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::elementReplaced(const ContainerEvent& evt) throw( RuntimeException ) +void SAL_CALL FormController::elementReplaced(const ContainerEvent& evt) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::elementReplaced" ); // simulate an elementRemoved ContainerEvent aRemoveEvent( evt ); aRemoveEvent.Element = evt.ReplacedElement; @@ -2711,10 +2692,9 @@ void SAL_CALL FmXFormController::elementReplaced(const ContainerEvent& evt) thro } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::elementRemoved(const ContainerEvent& evt) throw( RuntimeException ) +void SAL_CALL FormController::elementRemoved(const ContainerEvent& evt) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::elementRemoved" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); Reference< XControl > xControl; @@ -2739,10 +2719,9 @@ void SAL_CALL FmXFormController::elementRemoved(const ContainerEvent& evt) throw } //------------------------------------------------------------------------------ -Reference< XControl > FmXFormController::isInList(const Reference< XWindowPeer > & xPeer) const +Reference< XControl > FormController::isInList(const Reference< XWindowPeer > & xPeer) const { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::isInList" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); const Reference< XControl >* pControls = m_aControls.getConstArray(); sal_uInt32 nCtrls = m_aControls.getLength(); @@ -2759,58 +2738,62 @@ Reference< XControl > FmXFormController::isInList(const Reference< XWindowPeer } //------------------------------------------------------------------------------ -void FmXFormController::activateFirst() throw( RuntimeException ) +void FormController::activateFirst() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::activateFirst" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::activateFirst : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::activateFirst : invalid aggregate !"); if (m_xTabController.is()) m_xTabController->activateFirst(); } //------------------------------------------------------------------------------ -void FmXFormController::activateLast() throw( RuntimeException ) +void FormController::activateLast() throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::activateLast" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::osl::MutexGuard aGuard( m_aMutex ); - DBG_ASSERT(m_xTabController.is(), "FmXFormController::activateLast : invalid aggregate !"); + DBG_ASSERT(m_xTabController.is(), "FormController::activateLast : invalid aggregate !"); if (m_xTabController.is()) m_xTabController->activateLast(); } // XFormController //------------------------------------------------------------------------------ -Reference< XControl> SAL_CALL FmXFormController::getCurrentControl(void) throw( RuntimeException ) +Reference< XFormOperations > SAL_CALL FormController::getFormOperations() throw (RuntimeException) +{ + ::osl::MutexGuard aGuard( m_aMutex ); + if ( impl_isDisposed_nofail() ) + throw DisposedException( ::rtl::OUString(), *this ); + + return m_aControllerFeatures->getFormOperations(); +} + +//------------------------------------------------------------------------------ +Reference< XControl> SAL_CALL FormController::getCurrentControl(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getCurrentControl" ); ::osl::MutexGuard aGuard( m_aMutex ); return m_xCurrentControl; } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addActivateListener(const Reference< XFormControllerListener > & l) throw( RuntimeException ) +void SAL_CALL FormController::addActivateListener(const Reference< XFormControllerListener > & l) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addActivateListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aActivateListeners.addInterface(l); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeActivateListener(const Reference< XFormControllerListener > & l) throw( RuntimeException ) +void SAL_CALL FormController::removeActivateListener(const Reference< XFormControllerListener > & l) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeActivateListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aActivateListeners.removeInterface(l); } //------------------------------------------------------------------------------ -void FmXFormController::setFilter(::std::vector<FmFieldInfo>& rFieldInfos) +void FormController::setFilter(::std::vector<FmFieldInfo>& rFieldInfos) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setFilter" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); // create the composer Reference< XRowSet > xForm(m_xModelAsIndex, UNO_QUERY); Reference< XConnection > xConnection(OStaticDataAccessTools().getRowSetConnection(xForm)); @@ -2983,10 +2966,9 @@ void FmXFormController::setFilter(::std::vector<FmFieldInfo>& rFieldInfos) } //------------------------------------------------------------------------------ -void FmXFormController::startFiltering() +void FormController::startFiltering() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::startFiltering" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); OStaticDataAccessTools aStaticTools; Reference< XConnection > xConnection( aStaticTools.getRowSetConnection( Reference< XRowSet >( m_xModelAsIndex, UNO_QUERY ) ) ); @@ -3098,7 +3080,7 @@ void FmXFormController::startFiltering() ), UNO_QUERY ); - DBG_ASSERT( xFilterControl.is(), "FmXFormController::startFiltering: could not create a filter control!" ); + DBG_ASSERT( xFilterControl.is(), "FormController::startFiltering: could not create a filter control!" ); if ( replaceControl( xControl, xFilterControl ) ) { @@ -3132,10 +3114,9 @@ void FmXFormController::startFiltering() } //------------------------------------------------------------------------------ -void FmXFormController::stopFiltering() +void FormController::stopFiltering() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::stopFiltering" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); if ( !m_bFiltering ) // #104693# OJ { // nothing to do return; @@ -3221,12 +3202,11 @@ void FmXFormController::stopFiltering() // XModeSelector //------------------------------------------------------------------------------ -void FmXFormController::setMode(const ::rtl::OUString& Mode) throw( NoSupportException, RuntimeException ) +void FormController::setMode(const ::rtl::OUString& Mode) throw( NoSupportException, RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::setMode" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); if (!supportsMode(Mode)) throw NoSupportException(); @@ -3250,19 +3230,17 @@ void FmXFormController::setMode(const ::rtl::OUString& Mode) throw( NoSupportExc } //------------------------------------------------------------------------------ -::rtl::OUString SAL_CALL FmXFormController::getMode(void) throw( RuntimeException ) +::rtl::OUString SAL_CALL FormController::getMode(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getMode" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); return m_aMode; } //------------------------------------------------------------------------------ -Sequence< ::rtl::OUString > SAL_CALL FmXFormController::getSupportedModes(void) throw( RuntimeException ) +Sequence< ::rtl::OUString > SAL_CALL FormController::getSupportedModes(void) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getSupportedModes" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); static Sequence< ::rtl::OUString > aModes; if (!aModes.getLength()) { @@ -3275,10 +3253,9 @@ Sequence< ::rtl::OUString > SAL_CALL FmXFormController::getSupportedModes(void) } //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::supportsMode(const ::rtl::OUString& Mode) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::supportsMode(const ::rtl::OUString& Mode) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::supportsMode" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Sequence< ::rtl::OUString > aModes(getSupportedModes()); const ::rtl::OUString* pModes = aModes.getConstArray(); for (sal_Int32 i = aModes.getLength(); i > 0; ) @@ -3290,10 +3267,9 @@ sal_Bool SAL_CALL FmXFormController::supportsMode(const ::rtl::OUString& Mode) t } //------------------------------------------------------------------------------ -Window* FmXFormController::getDialogParentWindow() +Window* FormController::getDialogParentWindow() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::getDialogParentWindow" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Window* pParent = m_pWindow; if ( !pParent ) { @@ -3305,22 +3281,21 @@ Window* FmXFormController::getDialogParentWindow() } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::getDialogParentWindow: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::getDialogParentWindow: caught an exception!" ); } } return pParent; } //------------------------------------------------------------------------------ -bool FmXFormController::checkFormComponentValidity( ::rtl::OUString& /* [out] */ _rFirstInvalidityExplanation, Reference< XControlModel >& /* [out] */ _rxFirstInvalidModel ) SAL_THROW(()) +bool FormController::checkFormComponentValidity( ::rtl::OUString& /* [out] */ _rFirstInvalidityExplanation, Reference< XControlModel >& /* [out] */ _rxFirstInvalidModel ) SAL_THROW(()) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::checkFormComponentValidity" ); try { Reference< XEnumerationAccess > xControlEnumAcc( getModel(), UNO_QUERY ); Reference< XEnumeration > xControlEnumeration; if ( xControlEnumAcc.is() ) xControlEnumeration = xControlEnumAcc->createEnumeration(); - OSL_ENSURE( xControlEnumeration.is(), "FmXFormController::checkFormComponentValidity: cannot enumerate the controls!" ); + OSL_ENSURE( xControlEnumeration.is(), "FormController::checkFormComponentValidity: cannot enumerate the controls!" ); if ( !xControlEnumeration.is() ) // assume all valid return true; @@ -3336,7 +3311,7 @@ bool FmXFormController::checkFormComponentValidity( ::rtl::OUString& /* [out] */ continue; Reference< XValidator > xValidator( xValidatable->getValidator() ); - OSL_ENSURE( xValidator.is(), "FmXFormController::checkFormComponentValidity: invalid, but no validator?" ); + OSL_ENSURE( xValidator.is(), "FormController::checkFormComponentValidity: invalid, but no validator?" ); if ( !xValidator.is() ) // this violates the interface definition of css.form.validation.XValidatableFormComponent ... continue; @@ -3348,15 +3323,14 @@ bool FmXFormController::checkFormComponentValidity( ::rtl::OUString& /* [out] */ } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::checkFormComponentValidity: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::checkFormComponentValidity: caught an exception!" ); } return true; } //------------------------------------------------------------------------------ -Reference< XControl > FmXFormController::locateControl( const Reference< XControlModel >& _rxModel ) SAL_THROW(()) +Reference< XControl > FormController::locateControl( const Reference< XControlModel >& _rxModel ) SAL_THROW(()) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::locateControl" ); try { Sequence< Reference< XControl > > aControls( getControls() ); @@ -3365,18 +3339,18 @@ Reference< XControl > FmXFormController::locateControl( const Reference< XContro for ( ; pControls != pControlsEnd; ++pControls ) { - OSL_ENSURE( pControls->is(), "FmXFormController::locateControl: NULL-control?" ); + OSL_ENSURE( pControls->is(), "FormController::locateControl: NULL-control?" ); if ( pControls->is() ) { if ( ( *pControls)->getModel() == _rxModel ) return *pControls; } } - OSL_ENSURE( sal_False, "FmXFormController::locateControl: did not find a control for this model!" ); + OSL_ENSURE( sal_False, "FormController::locateControl: did not find a control for this model!" ); } catch( const Exception& ) { - OSL_ENSURE( sal_False, "FmXFormController::locateControl: caught an exception!" ); + OSL_ENSURE( sal_False, "FormController::locateControl: caught an exception!" ); } return NULL; } @@ -3444,12 +3418,11 @@ namespace // XRowSetApproveListener //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::approveRowChange(const RowChangeEvent& _rEvent) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::approveRowChange(const RowChangeEvent& _rEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::approveRowChange" ); ::osl::ClearableMutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aRowSetApproveListeners); sal_Bool bValid = sal_True; if (aIter.hasMoreElements()) @@ -3482,7 +3455,7 @@ sal_Bool SAL_CALL FmXFormController::approveRowChange(const RowChangeEvent& _rEv if ( !lcl_shouldValidateRequiredFields_nothrow( _rEvent.Source ) ) return sal_True; - OSL_ENSURE( m_pColumnInfoCache.get(), "FmXFormController::approveRowChange: no column infos!" ); + OSL_ENSURE( m_pColumnInfoCache.get(), "FormController::approveRowChange: no column infos!" ); if ( !m_pColumnInfoCache.get() ) return sal_True; @@ -3533,11 +3506,10 @@ sal_Bool SAL_CALL FmXFormController::approveRowChange(const RowChangeEvent& _rEv } //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::approveCursorMove(const EventObject& event) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::approveCursorMove(const EventObject& event) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::approveCursorMove" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aRowSetApproveListeners); if (aIter.hasMoreElements()) { @@ -3550,11 +3522,10 @@ sal_Bool SAL_CALL FmXFormController::approveCursorMove(const EventObject& event) } //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::approveRowSetChange(const EventObject& event) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::approveRowSetChange(const EventObject& event) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::approveRowSetChange" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aRowSetApproveListeners); if (aIter.hasMoreElements()) { @@ -3568,30 +3539,27 @@ sal_Bool SAL_CALL FmXFormController::approveRowSetChange(const EventObject& even // XRowSetApproveBroadcaster //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addRowSetApproveListener(const Reference< XRowSetApproveListener > & _rxListener) throw( RuntimeException ) +void SAL_CALL FormController::addRowSetApproveListener(const Reference< XRowSetApproveListener > & _rxListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addRowSetApproveListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aRowSetApproveListeners.addInterface(_rxListener); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeRowSetApproveListener(const Reference< XRowSetApproveListener > & _rxListener) throw( RuntimeException ) +void SAL_CALL FormController::removeRowSetApproveListener(const Reference< XRowSetApproveListener > & _rxListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeRowSetApproveListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aRowSetApproveListeners.removeInterface(_rxListener); } // XErrorListener //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::errorOccured(const SQLErrorEvent& aEvent) throw( RuntimeException ) +void SAL_CALL FormController::errorOccured(const SQLErrorEvent& aEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::errorOccured" ); ::osl::ClearableMutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aErrorListeners); if (aIter.hasMoreElements()) @@ -3609,61 +3577,54 @@ void SAL_CALL FmXFormController::errorOccured(const SQLErrorEvent& aEvent) throw // XErrorBroadcaster //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addSQLErrorListener(const Reference< XSQLErrorListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::addSQLErrorListener(const Reference< XSQLErrorListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addSQLErrorListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aErrorListeners.addInterface(aListener); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeSQLErrorListener(const Reference< XSQLErrorListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::removeSQLErrorListener(const Reference< XSQLErrorListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeSQLErrorListener" ); ::osl::MutexGuard aGuard( m_aMutex ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aErrorListeners.removeInterface(aListener); } // XDatabaseParameterBroadcaster2 //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addDatabaseParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::addDatabaseParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addDatabaseParameterListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aParameterListeners.addInterface(aListener); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeDatabaseParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::removeDatabaseParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeDatabaseParameterListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aParameterListeners.removeInterface(aListener); } // XDatabaseParameterBroadcaster //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::addParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addParameterListener" ); - FmXFormController::addDatabaseParameterListener( aListener ); + FormController::addDatabaseParameterListener( aListener ); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::removeParameterListener(const Reference< XDatabaseParameterListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeParameterListener" ); - FmXFormController::removeDatabaseParameterListener( aListener ); + FormController::removeDatabaseParameterListener( aListener ); } // XDatabaseParameterListener //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::approveParameter(const DatabaseParameterEvent& aEvent) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::approveParameter(const DatabaseParameterEvent& aEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::approveParameter" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aParameterListeners); if (aIter.hasMoreElements()) @@ -3707,7 +3668,7 @@ sal_Bool SAL_CALL FmXFormController::approveParameter(const DatabaseParameterEve Sequence< PropertyValue > aFinalValues = pParamValues->getValues(); if (aFinalValues.getLength() != aRequest.Parameters->getCount()) { - DBG_ERROR("FmXFormController::approveParameter: the InteractionHandler returned nonsense!"); + DBG_ERROR("FormController::approveParameter: the InteractionHandler returned nonsense!"); return sal_False; } const PropertyValue* pFinalValues = aFinalValues.getConstArray(); @@ -3720,19 +3681,19 @@ sal_Bool SAL_CALL FmXFormController::approveParameter(const DatabaseParameterEve #ifdef DBG_UTIL ::rtl::OUString sName; xParam->getPropertyValue(FM_PROP_NAME) >>= sName; - DBG_ASSERT(sName.equals(pFinalValues->Name), "FmXFormController::approveParameter: suspicious value names!"); + DBG_ASSERT(sName.equals(pFinalValues->Name), "FormController::approveParameter: suspicious value names!"); #endif try { xParam->setPropertyValue(FM_PROP_VALUE, pFinalValues->Value); } catch(Exception&) { - DBG_ERROR("FmXFormController::approveParameter: setting one of the properties failed!"); + DBG_ERROR("FormController::approveParameter: setting one of the properties failed!"); } } } } catch(Exception&) { - DBG_ERROR("FmXFormController::approveParameter: caught an Exception (tried to let the InteractionHandler handle it)!"); + DBG_ERROR("FormController::approveParameter: caught an Exception (tried to let the InteractionHandler handle it)!"); } } return sal_True; @@ -3740,27 +3701,24 @@ sal_Bool SAL_CALL FmXFormController::approveParameter(const DatabaseParameterEve // XConfirmDeleteBroadcaster //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addConfirmDeleteListener(const Reference< XConfirmDeleteListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::addConfirmDeleteListener(const Reference< XConfirmDeleteListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addConfirmDeleteListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aDeleteListeners.addInterface(aListener); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeConfirmDeleteListener(const Reference< XConfirmDeleteListener > & aListener) throw( RuntimeException ) +void SAL_CALL FormController::removeConfirmDeleteListener(const Reference< XConfirmDeleteListener > & aListener) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeConfirmDeleteListener" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); m_aDeleteListeners.removeInterface(aListener); } // XConfirmDeleteListener //------------------------------------------------------------------------------ -sal_Bool SAL_CALL FmXFormController::confirmDelete(const RowChangeEvent& aEvent) throw( RuntimeException ) +sal_Bool SAL_CALL FormController::confirmDelete(const RowChangeEvent& aEvent) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::confirmDelete" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); ::cppu::OInterfaceIteratorHelper aIter(m_aDeleteListeners); if (aIter.hasMoreElements()) @@ -3788,9 +3746,8 @@ sal_Bool SAL_CALL FmXFormController::confirmDelete(const RowChangeEvent& aEvent) } //------------------------------------------------------------------------------ -void FmXFormController::invalidateFeatures( const ::std::vector< sal_Int32 >& _rFeatures ) +void FormController::invalidateFeatures( const ::std::vector< sal_Int32 >& _rFeatures ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::invalidateFeatures" ); ::osl::MutexGuard aGuard( m_aMutex ); // for now, just copy the ids of the features, because .... ::std::copy( _rFeatures.begin(), _rFeatures.end(), @@ -3804,12 +3761,11 @@ void FmXFormController::invalidateFeatures( const ::std::vector< sal_Int32 >& _r //------------------------------------------------------------------------------ Reference< XDispatch > -FmXFormController::interceptedQueryDispatch(sal_uInt16 /*_nId*/, const URL& aURL, +FormController::interceptedQueryDispatch(sal_uInt16 /*_nId*/, const URL& aURL, const ::rtl::OUString& /*aTargetFrameName*/, sal_Int32 /*nSearchFlags*/) throw( RuntimeException ) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::interceptedQueryDispatch" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); Reference< XDispatch > xReturn; // dispatches handled by ourself if ( ( aURL.Complete == FMURL_CONFIRM_DELETION ) @@ -3835,7 +3791,7 @@ FmXFormController::interceptedQueryDispatch(sal_uInt16 /*_nId*/, const URL& aURL ).first; } - OSL_ENSURE( aDispatcherPos->second.is(), "FmXFormController::interceptedQueryDispatch: should have a dispatcher by now!" ); + OSL_ENSURE( aDispatcherPos->second.is(), "FormController::interceptedQueryDispatch: should have a dispatcher by now!" ); return aDispatcherPos->second; } } @@ -3845,12 +3801,11 @@ FmXFormController::interceptedQueryDispatch(sal_uInt16 /*_nId*/, const URL& aURL } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::dispatch( const URL& _rURL, const Sequence< PropertyValue >& _rArgs ) throw (RuntimeException) +void SAL_CALL FormController::dispatch( const URL& _rURL, const Sequence< PropertyValue >& _rArgs ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::dispatch" ); if ( _rArgs.getLength() != 1 ) { - DBG_ERROR( "FmXFormController::dispatch: no arguments -> no dispatch!" ); + DBG_ERROR( "FormController::dispatch: no arguments -> no dispatch!" ); return; } @@ -3865,18 +3820,17 @@ void SAL_CALL FmXFormController::dispatch( const URL& _rURL, const Sequence< Pro if ( _rURL.Complete == FMURL_CONFIRM_DELETION ) { - DBG_ERROR( "FmXFormController::dispatch: How do you expect me to return something via this call?" ); + DBG_ERROR( "FormController::dispatch: How do you expect me to return something via this call?" ); // confirmDelete has a return value - dispatch hasn't return; } - DBG_ERROR( "FmXFormController::dispatch: unknown URL!" ); + DBG_ERROR( "FormController::dispatch: unknown URL!" ); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::addStatusListener( const Reference< XStatusListener >& _rxListener, const URL& _rURL ) throw (RuntimeException) +void SAL_CALL FormController::addStatusListener( const Reference< XStatusListener >& _rxListener, const URL& _rURL ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::addStatusListener" ); if (_rURL.Complete == FMURL_CONFIRM_DELETION) { if (_rxListener.is()) @@ -3889,23 +3843,21 @@ void SAL_CALL FmXFormController::addStatusListener( const Reference< XStatusList } } else - OSL_ENSURE(sal_False, "FmXFormController::addStatusListener: invalid (unsupported) URL!"); + OSL_ENSURE(sal_False, "FormController::addStatusListener: invalid (unsupported) URL!"); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::removeStatusListener( const Reference< XStatusListener >& /*_rxListener*/, const URL& _rURL ) throw (RuntimeException) +void SAL_CALL FormController::removeStatusListener( const Reference< XStatusListener >& /*_rxListener*/, const URL& _rURL ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::removeStatusListener" ); (void)_rURL; - OSL_ENSURE(_rURL.Complete == FMURL_CONFIRM_DELETION, "FmXFormController::removeStatusListener: invalid (unsupported) URL!"); + OSL_ENSURE(_rURL.Complete == FMURL_CONFIRM_DELETION, "FormController::removeStatusListener: invalid (unsupported) URL!"); // we never really added the listener, so we don't need to remove it } //------------------------------------------------------------------------------ -Reference< XDispatchProviderInterceptor > FmXFormController::createInterceptor(const Reference< XDispatchProviderInterception > & _xInterception) +Reference< XDispatchProviderInterceptor > FormController::createInterceptor(const Reference< XDispatchProviderInterception > & _xInterception) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::createInterceptor" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); #ifdef DBG_UTIL // check if we already have a interceptor for the given object for ( ConstInterceptorsIterator aIter = m_aControlDispatchInterceptors.begin(); @@ -3914,7 +3866,7 @@ Reference< XDispatchProviderInterceptor > FmXFormController::createInterceptor( ) { if ((*aIter)->getIntercepted() == _xInterception) - DBG_ERROR("FmXFormController::createInterceptor : we already do intercept this objects dispatches !"); + DBG_ERROR("FormController::createInterceptor : we already do intercept this objects dispatches !"); } #endif @@ -3927,9 +3879,8 @@ Reference< XDispatchProviderInterceptor > FmXFormController::createInterceptor( } //------------------------------------------------------------------------------ -bool FmXFormController::ensureInteractionHandler() +bool FormController::ensureInteractionHandler() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::ensureInteractionHandler" ); if ( m_xInteractionHandler.is() ) return true; if ( m_bAttemptedHandlerCreation ) @@ -3939,24 +3890,22 @@ bool FmXFormController::ensureInteractionHandler() return false; m_xInteractionHandler.set( m_xORB->createInstance( SRV_SDB_INTERACTION_HANDLER ), UNO_QUERY ); - OSL_ENSURE( m_xInteractionHandler.is(), "FmXFormController::ensureInteractionHandler: could not create an interaction handler!" ); + OSL_ENSURE( m_xInteractionHandler.is(), "FormController::ensureInteractionHandler: could not create an interaction handler!" ); return m_xInteractionHandler.is(); } //------------------------------------------------------------------------------ -void SAL_CALL FmXFormController::handle( const Reference< XInteractionRequest >& _rRequest ) throw (RuntimeException) +void SAL_CALL FormController::handle( const Reference< XInteractionRequest >& _rRequest ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::handle" ); if ( !ensureInteractionHandler() ) return; m_xInteractionHandler->handle( _rRequest ); } //------------------------------------------------------------------------------ -void FmXFormController::deleteInterceptor(const Reference< XDispatchProviderInterception > & _xInterception) +void FormController::deleteInterceptor(const Reference< XDispatchProviderInterception > & _xInterception) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::deleteInterceptor" ); - OSL_ENSURE( !impl_isDisposed_nofail(), "FmXFormController: already disposed!" ); + OSL_ENSURE( !impl_isDisposed_nofail(), "FormController: already disposed!" ); // search the interceptor responsible for the given object InterceptorsIterator aIter; for ( aIter = m_aControlDispatchInterceptors.begin(); @@ -3982,10 +3931,9 @@ void FmXFormController::deleteInterceptor(const Reference< XDispatchProviderInte } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::initialize( const Sequence< Any >& aArguments ) throw (Exception, RuntimeException) +void SAL_CALL FormController::initialize( const Sequence< Any >& aArguments ) throw (Exception, RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::initialize" ); - DBG_ASSERT( !m_xInteractionHandler.is(), "FmXFormController::initialize: already initialized!" ); + DBG_ASSERT( !m_xInteractionHandler.is(), "FormController::initialize: already initialized!" ); // currently, we only initialize our interaction handler here, so it's sufficient to assert this ::comphelper::NamedValueCollection aArgs( aArguments ); @@ -3993,9 +3941,8 @@ void SAL_CALL FmXFormController::initialize( const Sequence< Any >& aArguments ) } //-------------------------------------------------------------------- -void FmXFormController::implInvalidateCurrentControlDependentFeatures() +void FormController::implInvalidateCurrentControlDependentFeatures() { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::implInvalidateCurrentControlDependentFeatures" ); ::std::vector< sal_Int32 > aCurrentControlDependentFeatures; aCurrentControlDependentFeatures.push_back( SID_FM_SORTUP ); @@ -4007,8 +3954,9 @@ void FmXFormController::implInvalidateCurrentControlDependentFeatures() } //-------------------------------------------------------------------- -void SAL_CALL FmXFormController::columnChanged( const EventObject& /*_event*/ ) throw (RuntimeException) +void SAL_CALL FormController::columnChanged( const EventObject& /*_event*/ ) throw (RuntimeException) { - RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormController::columnChanged" ); implInvalidateCurrentControlDependentFeatures(); } + +} // namespace svxform diff --git a/svx/source/form/fmservs.cxx b/svx/source/form/fmservs.cxx index b9f40b6ddda2..feef02baa555 100644 --- a/svx/source/form/fmservs.cxx +++ b/svx/source/form/fmservs.cxx @@ -49,7 +49,8 @@ DECL_SERVICE( FmXGridControl ) - DECL_SERVICE( FmXFormController ) + DECL_SERVICE( FormController ) + DECL_SERVICE( LegacyFormController ); // ------------------------------------------------------------------------ @@ -91,7 +92,8 @@ namespace svxform // ------------------------------------------------------------------------ // FormController - REGISTER_SERVICE(FmXFormController, FM_FORM_CONTROLLER); + REGISTER_SERVICE( FormController, FM_FORM_CONTROLLER ); + REGISTER_SERVICE( LegacyFormController, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.FormController" ) ) ); // ------------------------------------------------------------------------ // FormController @@ -102,9 +104,6 @@ namespace svxform REGISTER_SERVICE(FmXGridControl, FM_CONTROL_GRID); // compatibility REGISTER_SERVICE(FmXGridControl, FM_CONTROL_GRIDCONTROL); REGISTER_SERVICE(FmXGridControl, FM_SUN_CONTROL_GRIDCONTROL); - - }; - } // namespace svxform diff --git a/svx/source/form/fmshell.cxx b/svx/source/form/fmshell.cxx index ccdfb2b1af39..c7e810e48f36 100644 --- a/svx/source/form/fmshell.cxx +++ b/svx/source/form/fmshell.cxx @@ -827,7 +827,7 @@ void FmFormShell::Execute(SfxRequest &rReq) bReopenNavigator = sal_True; } - Reference< XFormController > xController( GetImpl()->getActiveController() ); + Reference< runtime::XFormController > xController( GetImpl()->getActiveController() ); if ( GetViewShell()->GetViewFrame()->HasChildWindow( SID_FM_FILTER_NAVIGATOR ) // closing the window was denied, for instance because of a invalid criterion @@ -1400,7 +1400,7 @@ SdrUnoObj* FmFormShell::GetFormControl( const Reference< XControlModel >& _rxMod } //------------------------------------------------------------------------ -Reference< XFormController > FmFormShell::GetFormController( const Reference< XForm >& _rxForm, const SdrView& _rView, const OutputDevice& _rDevice ) const +Reference< runtime::XFormController > FmFormShell::GetFormController( const Reference< XForm >& _rxForm, const SdrView& _rView, const OutputDevice& _rDevice ) const { const FmFormView* pFormView = dynamic_cast< const FmFormView* >( &_rView ); if ( !pFormView ) diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx index 8c5ca61f6691..139b9c23b374 100644 --- a/svx/source/form/fmshimp.cxx +++ b/svx/source/form/fmshimp.cxx @@ -30,89 +30,87 @@ // MARKER(update_precomp.py): autogen include statement, do not remove #include "precompiled_svx.hxx" -#include "gridcols.hxx" -#include <svx/obj3d.hxx> -#include "fmvwimp.hxx" -#include "fmshimp.hxx" -#include "fmtextcontrolshell.hxx" -#include <svx/svdpagv.hxx> -#include <svx/fmpage.hxx> -#include <svx/dialmgr.hxx> -#ifndef _SVX_FMRESIDS_HRC -#include "fmresids.hrc" -#endif + #include "fmitems.hxx" #include "fmobj.hxx" -#include "formtoolbars.hxx" -#include <svx/fmglob.hxx> -#include "svditer.hxx" -#include "fmservs.hxx" #include "fmpgeimp.hxx" -#include "fmtools.hxx" -#ifndef _SVX_FMPROP_HRC #include "fmprop.hrc" -#endif -#include <svx/fmshell.hxx> -#ifndef _SVX_SVXIDS_HRC -#include <svx/svxids.hrc> -#endif -#include <svx/fmmodel.hxx> +#include "fmresids.hrc" +#include "fmservs.hxx" +#include "fmshimp.hxx" +#include "fmtextcontrolshell.hxx" +#include "fmtools.hxx" #include "fmundo.hxx" #include "fmurl.hxx" +#include "fmvwimp.hxx" #include "formcontrolling.hxx" -#include <svx/svxdlg.hxx> -#include <svx/dialogs.hrc> -#include <com/sun/star/frame/FrameSearchFlag.hpp> -#include <com/sun/star/form/XLoadable.hpp> -#include <com/sun/star/container/XNamed.hpp> +#include "formtoolbars.hxx" +#include "gridcols.hxx" +#include "svditer.hxx" +#include "svx/dialmgr.hxx" +#include "svx/dialogs.hrc" +#include "svx/fmglob.hxx" +#include "svx/fmmodel.hxx" +#include "svx/fmpage.hxx" +#include "svx/fmshell.hxx" +#include "svx/obj3d.hxx" +#include "svx/sdrpagewindow.hxx" +#include "svx/svdpagv.hxx" +#include "svx/svxdlg.hxx" +#include "svx/svxids.hrc" + +/** === begin UNO includes === **/ +#include <com/sun/star/awt/XCheckBox.hpp> +#include <com/sun/star/awt/XListBox.hpp> +#include <com/sun/star/awt/XTextComponent.hpp> +#include <com/sun/star/beans/NamedValue.hpp> +#include <com/sun/star/beans/PropertyAttribute.hpp> +#include <com/sun/star/beans/XPropertyState.hpp> #include <com/sun/star/container/XContainer.hpp> #include <com/sun/star/container/XEnumeration.hpp> -#include <com/sun/star/container/XIndexAccess.hpp> #include <com/sun/star/container/XEnumerationAccess.hpp> -#include <com/sun/star/frame/FrameSearchFlag.hpp> -#include <com/sun/star/awt/XTextComponent.hpp> -#include <com/sun/star/awt/XListBox.hpp> -#include <com/sun/star/awt/XCheckBox.hpp> -#include <com/sun/star/form/XBoundComponent.hpp> +#include <com/sun/star/container/XIndexAccess.hpp> +#include <com/sun/star/container/XNamed.hpp> #include <com/sun/star/form/ListSourceType.hpp> -#include <com/sun/star/view/XSelectionSupplier.hpp> -#include <com/sun/star/script/XEventAttacherManager.hpp> +#include <com/sun/star/form/XBoundComponent.hpp> #include <com/sun/star/form/XBoundControl.hpp> -#include <com/sun/star/form/XReset.hpp> #include <com/sun/star/form/XGrid.hpp> #include <com/sun/star/form/XGridPeer.hpp> -#include <com/sun/star/util/XNumberFormatter.hpp> -#include <com/sun/star/util/XModeSelector.hpp> -#include <com/sun/star/util/XModifyBroadcaster.hpp> -#include <com/sun/star/util/XCancellable.hpp> -#include <com/sun/star/beans/PropertyAttribute.hpp> -#include <com/sun/star/beans/XPropertyState.hpp> +#include <com/sun/star/form/XLoadable.hpp> +#include <com/sun/star/form/XReset.hpp> #include <com/sun/star/form/binding/XBindableValue.hpp> -#include <com/sun/star/beans/NamedValue.hpp> #include <com/sun/star/form/binding/XListEntrySink.hpp> +#include <com/sun/star/frame/FrameSearchFlag.hpp> +#include <com/sun/star/script/XEventAttacherManager.hpp> #include <com/sun/star/ui/dialogs/XExecutableDialog.hpp> +#include <com/sun/star/util/XCancellable.hpp> +#include <com/sun/star/util/XModeSelector.hpp> +#include <com/sun/star/util/XModifyBroadcaster.hpp> +#include <com/sun/star/util/XNumberFormatter.hpp> +#include <com/sun/star/view/XSelectionSupplier.hpp> +/** === end UNO includes === **/ + +#include <comphelper/extract.hxx> +#include <comphelper/processfactory.hxx> +#include <comphelper/property.hxx> +#include <comphelper/stl_types.hxx> +#include <connectivity/dbtools.hxx> +#include <cppuhelper/servicefactory.hxx> #include <osl/mutex.hxx> -#include <sfx2/viewsh.hxx> -#include <sfx2/viewfrm.hxx> -#include <sfx2/frame.hxx> -#include <vcl/waitobj.hxx> -#include <tools/shl.hxx> -#include <tools/diagnose_ex.h> -#include <vcl/msgbox.hxx> +#include <rtl/logfile.hxx> #include <sfx2/dispatch.hxx> -#include <sfx2/objsh.hxx> #include <sfx2/docfile.hxx> +#include <sfx2/frame.hxx> +#include <sfx2/objsh.hxx> +#include <sfx2/viewfrm.hxx> +#include <sfx2/viewsh.hxx> +#include <toolkit/helper/vclunohelper.hxx> #include <tools/color.hxx> +#include <tools/diagnose_ex.h> +#include <tools/shl.hxx> #include <tools/urlobj.hxx> -#include <comphelper/property.hxx> -#include <connectivity/dbtools.hxx> -#include <comphelper/stl_types.hxx> -#include <comphelper/processfactory.hxx> -#include <cppuhelper/servicefactory.hxx> -#include <comphelper/extract.hxx> -#include <toolkit/helper/vclunohelper.hxx> -#include <svx/sdrpagewindow.hxx> -#include <rtl/logfile.hxx> +#include <vcl/msgbox.hxx> +#include <vcl/waitobj.hxx> #include <algorithm> #include <functional> @@ -675,7 +673,8 @@ void SAL_CALL FmXFormShell::disposing(const EventObject& e) throw( RuntimeExcept if (e.Source == m_xExternalViewController) { - Reference< XFormController> xFormController(m_xExternalViewController, UNO_QUERY); + Reference< runtime::XFormController > xFormController( m_xExternalViewController, UNO_QUERY ); + OSL_ENSURE( xFormController.is(), "FmXFormShell::disposing: invalid external view controller!" ); if (xFormController.is()) xFormController->removeActivateListener((XFormControllerListener*)this); @@ -765,7 +764,7 @@ void SAL_CALL FmXFormShell::formActivated(const EventObject& rEvent) throw( Runt if ( impl_checkDisposed() ) return; - Reference< XFormController > xController( rEvent.Source, UNO_QUERY_THROW ); + Reference< runtime::XFormController > xController( rEvent.Source, UNO_QUERY_THROW ); m_pTextShell->formActivated( xController ); setActiveController( xController ); } @@ -777,7 +776,7 @@ void SAL_CALL FmXFormShell::formDeactivated(const EventObject& rEvent) throw( Ru if ( impl_checkDisposed() ) return; - Reference< XFormController > xController( rEvent.Source, UNO_QUERY_THROW ); + Reference< runtime::XFormController > xController( rEvent.Source, UNO_QUERY_THROW ); m_pTextShell->formDeactivated( xController ); } @@ -1703,7 +1702,7 @@ Reference< XResultSet> FmXFormShell::getInternalForm(const Reference< XResultSet if ( impl_checkDisposed() ) return NULL; - Reference< XFormController> xExternalCtrlr(m_xExternalViewController, UNO_QUERY); + Reference< runtime::XFormController> xExternalCtrlr(m_xExternalViewController, UNO_QUERY); if (xExternalCtrlr.is() && (_xForm == xExternalCtrlr->getModel())) { DBG_ASSERT(m_xExternalDisplayedForm.is(), "FmXFormShell::getInternalForm : invalid external form !"); @@ -1719,7 +1718,7 @@ Reference< XForm> FmXFormShell::getInternalForm(const Reference< XForm>& _xForm) if ( impl_checkDisposed() ) return NULL; - Reference< XFormController> xExternalCtrlr(m_xExternalViewController, UNO_QUERY); + Reference< runtime::XFormController > xExternalCtrlr(m_xExternalViewController, UNO_QUERY); if (xExternalCtrlr.is() && (_xForm == xExternalCtrlr->getModel())) { DBG_ASSERT(m_xExternalDisplayedForm.is(), "FmXFormShell::getInternalForm : invalid external form !"); @@ -1808,7 +1807,7 @@ void FmXFormShell::impl_switchActiveControllerListening( const bool _bListen ) } //------------------------------------------------------------------------------ -void FmXFormShell::setActiveController( const Reference< XFormController>& xController, sal_Bool _bNoSaveOldContent ) +void FmXFormShell::setActiveController( const Reference< runtime::XFormController >& xController, sal_Bool _bNoSaveOldContent ) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormShell::setActiveController" ); if ( impl_checkDisposed() ) @@ -2103,11 +2102,11 @@ void FmXFormShell::startListening() { // suchen des Controllers, ueber den eine Navigation moeglich ist Reference< XChild> xChild(m_xActiveController, UNO_QUERY); - Reference< XFormController> xParent; + Reference< runtime::XFormController > xParent; while (xChild.is()) { xChild = Reference< XChild>(xChild->getParent(), UNO_QUERY); - xParent = Reference< XFormController>(xChild, UNO_QUERY); + xParent = Reference< runtime::XFormController >(xChild, UNO_QUERY); Reference< XPropertySet> xParentSet; if (xParent.is()) xParentSet = Reference< XPropertySet>(xParent->getModel(), UNO_QUERY); @@ -2936,8 +2935,8 @@ void FmXFormShell::startFiltering() FmWinRecList::iterator i = pXView->findWindow(xContainer); if (i != pXView->getWindowList().end()) { - const ::std::vector< Reference< XFormController> >& rControllerList = (*i)->GetList(); - for (::std::vector< Reference< XFormController> >::const_iterator j = rControllerList.begin(); + const ::std::vector< Reference< runtime::XFormController> >& rControllerList = (*i)->GetList(); + for (::std::vector< Reference< runtime::XFormController> >::const_iterator j = rControllerList.begin(); j != rControllerList.end(); ++j) { Reference< XModeSelector> xModeSelector(*j, UNO_QUERY); @@ -2953,14 +2952,14 @@ void FmXFormShell::startFiltering() } //------------------------------------------------------------------------------ -void saveFilter(const Reference< XFormController>& _rxController) +void saveFilter(const Reference< runtime::XFormController >& _rxController) { Reference< XPropertySet> xFormAsSet(_rxController->getModel(), UNO_QUERY); Reference< XPropertySet> xControllerAsSet(_rxController, UNO_QUERY); Reference< XIndexAccess> xControllerAsIndex(_rxController, UNO_QUERY); // call the subcontroller - Reference< XFormController> xController; + Reference< runtime::XFormController > xController; for (sal_Int32 i = 0, nCount = xControllerAsIndex->getCount(); i < nCount; ++i) { xControllerAsIndex->getByIndex(i) >>= xController; @@ -3004,13 +3003,13 @@ void FmXFormShell::stopFiltering(sal_Bool bSave) FmWinRecList::iterator i = pXView->findWindow(xContainer); if (i != pXView->getWindowList().end()) { - const ::std::vector< Reference< XFormController> >& rControllerList = (*i)->GetList(); + const ::std::vector< Reference< runtime::XFormController > >& rControllerList = (*i)->GetList(); ::std::vector < ::rtl::OUString > aOriginalFilters; ::std::vector < sal_Bool > aOriginalApplyFlags; if (bSave) { - for (::std::vector< Reference< XFormController> > ::const_iterator j = rControllerList.begin(); + for (::std::vector< Reference< runtime::XFormController > > ::const_iterator j = rControllerList.begin(); j != rControllerList.end(); ++j) { if (bSave) @@ -3035,7 +3034,7 @@ void FmXFormShell::stopFiltering(sal_Bool bSave) saveFilter(*j); } } - for (::std::vector< Reference< XFormController> > ::const_iterator j = rControllerList.begin(); + for (::std::vector< Reference< runtime::XFormController > > ::const_iterator j = rControllerList.begin(); j != rControllerList.end(); ++j) { @@ -3045,8 +3044,8 @@ void FmXFormShell::stopFiltering(sal_Bool bSave) } if (bSave) // execute the filter { - const ::std::vector< Reference< XFormController> > & rControllers = (*i)->GetList(); - for (::std::vector< Reference< XFormController> > ::const_iterator j = rControllers.begin(); + const ::std::vector< Reference< runtime::XFormController > > & rControllers = (*i)->GetList(); + for (::std::vector< Reference< runtime::XFormController > > ::const_iterator j = rControllers.begin(); j != rControllers.end(); ++j) { Reference< XLoadable> xReload((*j)->getModel(), UNO_QUERY); @@ -3087,13 +3086,13 @@ void FmXFormShell::stopFiltering(sal_Bool bSave) } //------------------------------------------------------------------------------ -void clearFilter(const Reference< XFormController>& _rxController) +void clearFilter(const Reference< runtime::XFormController >& _rxController) { Reference< XPropertySet> xControllerAsSet(_rxController, UNO_QUERY); Reference< XIndexAccess> xControllerAsIndex(_rxController, UNO_QUERY); // call the subcontroller - Reference< XFormController> xController; + Reference< runtime::XFormController > xController; for (sal_Int32 i = 0, nCount = xControllerAsIndex->getCount(); i < nCount; i++) { @@ -3141,8 +3140,8 @@ void FmXFormShell::clearFilter() FmWinRecList::iterator i = pXView->findWindow(xContainer); if (i != pXView->getWindowList().end()) { - const ::std::vector< Reference< XFormController> > & rControllerList = (*i)->GetList(); - for (::std::vector< Reference< XFormController> > ::const_iterator j = rControllerList.begin(); + const ::std::vector< Reference< runtime::XFormController > > & rControllerList = (*i)->GetList(); + for (::std::vector< Reference< runtime::XFormController > > ::const_iterator j = rControllerList.begin(); j != rControllerList.end(); ++j) { ::clearFilter(*j); @@ -3253,7 +3252,7 @@ void FmXFormShell::restoreControlLocks() } //------------------------------------------------------------------------------ -void FmXFormShell::DoAsyncCursorAction(const Reference< XFormController>& _xController, CURSOR_ACTION _eWhat) +void FmXFormShell::DoAsyncCursorAction(const Reference< runtime::XFormController >& _xController, CURSOR_ACTION _eWhat) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormShell::DoAsyncCursorAction" ); if ( impl_checkDisposed() ) @@ -3329,7 +3328,7 @@ sal_Bool FmXFormShell::HasPendingCursorAction(const Reference< XResultSet>& _xFo } //------------------------------------------------------------------------------ -sal_Bool FmXFormShell::HasPendingCursorAction(const Reference< XFormController>& xController) const +sal_Bool FmXFormShell::HasPendingCursorAction(const Reference< runtime::XFormController >& xController) const { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXFormShell::HasPendingCursorAction" ); if ( impl_checkDisposed() ) @@ -3471,7 +3470,7 @@ void FmXFormShell::CreateExternalView() ::rtl::OUString sFrameName = ::rtl::OUString::createFromAscii("_beamer"); sal_Int32 nSearchFlags = ::com::sun::star::frame::FrameSearchFlag::CHILDREN | ::com::sun::star::frame::FrameSearchFlag::CREATE; - Reference< XFormController> xCurrentNavController( getNavController()); + Reference< runtime::XFormController > xCurrentNavController( getNavController()); // the creation of the "partwindow" may cause a deactivate of the document which will result in our nav controller to be set to NULL // _first_ check if we have any valid fields we can use for the grid view @@ -3538,12 +3537,12 @@ void FmXFormShell::CreateExternalView() { if ( m_xExternalViewController == getActiveController() ) { - Reference< XFormController > xAsFormController( m_xExternalViewController, UNO_QUERY ); + Reference< runtime::XFormController > xAsFormController( m_xExternalViewController, UNO_QUERY ); ControllerFeatures aHelper( ::comphelper::getProcessServiceFactory(), xAsFormController, NULL ); aHelper->commitCurrentControl(); } - Reference< XFormController> xNewController(m_xExtViewTriggerController); + Reference< runtime::XFormController > xNewController(m_xExtViewTriggerController); CloseExternalFormViewer(); setActiveController(xNewController); return; @@ -3876,7 +3875,8 @@ void FmXFormShell::CreateExternalView() // we want to know modifications done in the external view // if the external controller is a XFormController we can use all our default handlings for it - Reference< XFormController> xFormController(m_xExternalViewController, UNO_QUERY); + Reference< runtime::XFormController > xFormController( m_xExternalViewController, UNO_QUERY ); + OSL_ENSURE( xFormController.is(), "FmXFormShell::CreateExternalView:: invalid external view controller!" ); if (xFormController.is()) xFormController->addActivateListener((XFormControllerListener*)this); } diff --git a/svx/source/form/fmtextcontrolshell.cxx b/svx/source/form/fmtextcontrolshell.cxx index 10c0978288a6..166b09f8a1c1 100644 --- a/svx/source/form/fmtextcontrolshell.cxx +++ b/svx/source/form/fmtextcontrolshell.cxx @@ -89,6 +89,7 @@ namespace svx using namespace ::com::sun::star::uno; using namespace ::com::sun::star::awt; using namespace ::com::sun::star::form; + using namespace ::com::sun::star::form::runtime; using namespace ::com::sun::star::lang; using namespace ::com::sun::star::frame; using namespace ::com::sun::star::util; diff --git a/svx/source/form/fmundo.cxx b/svx/source/form/fmundo.cxx index 2436113312cc..ed8a4a382ed3 100644 --- a/svx/source/form/fmundo.cxx +++ b/svx/source/form/fmundo.cxx @@ -35,7 +35,6 @@ /** === begin UNO includes === **/ #include <com/sun/star/util/XModifyBroadcaster.hpp> #include <com/sun/star/beans/PropertyAttribute.hpp> -#include <com/sun/star/form/XFormController.hpp> #include <com/sun/star/container/XContainer.hpp> #include <com/sun/star/container/XContainerListener.hpp> #include <com/sun/star/script/XEventAttacherManager.hpp> diff --git a/svx/source/form/fmview.cxx b/svx/source/form/fmview.cxx index 222407a36021..1c16a092ad18 100644 --- a/svx/source/form/fmview.cxx +++ b/svx/source/form/fmview.cxx @@ -626,7 +626,7 @@ void FmFormView::createControlLabelPair( OutputDevice* _pOutDev, sal_Int32 _nXOf ); } // ----------------------------------------------------------------------------- -Reference< XFormController > FmFormView::GetFormController( const Reference< XForm >& _rxForm, const OutputDevice& _rDevice ) const +Reference< runtime::XFormController > FmFormView::GetFormController( const Reference< XForm >& _rxForm, const OutputDevice& _rDevice ) const { return pImpl->getFormController( _rxForm, _rDevice ); } diff --git a/svx/source/form/fmvwimp.cxx b/svx/source/form/fmvwimp.cxx index 46750d524a4d..d88ecf0e5052 100644 --- a/svx/source/form/fmvwimp.cxx +++ b/svx/source/form/fmvwimp.cxx @@ -88,8 +88,10 @@ #include <comphelper/enumhelper.hxx> #include <comphelper/extract.hxx> +#include <comphelper/namedvaluecollection.hxx> #include <comphelper/numbers.hxx> #include <comphelper/property.hxx> +#include <cppuhelper/exc_hlp.hxx> #include <svtools/moduleoptions.hxx> #include <tools/diagnose_ex.h> #include <vcl/msgbox.hxx> @@ -98,54 +100,70 @@ #include <algorithm> -using namespace ::com::sun::star; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::beans; -using namespace ::com::sun::star::sdbcx; -using namespace ::com::sun::star::sdbc; -using namespace ::com::sun::star::sdb; -using namespace ::com::sun::star::container; -using namespace ::com::sun::star::form; -using namespace ::com::sun::star::awt; -using namespace ::com::sun::star::lang; -using namespace ::com::sun::star::util; -using namespace ::com::sun::star::script; -using namespace ::com::sun::star::style; -using namespace ::com::sun::star::task; -using namespace ::com::sun::star::ui::dialogs; using namespace ::comphelper; -using namespace ::svxform; using namespace ::svx; -using com::sun::star::style::VerticalAlignment_MIDDLE; -using ::com::sun::star::form::binding::XValueBinding; -using ::com::sun::star::form::binding::XBindableValue; - -namespace svxform -{ - //======================================================================== - class OAutoDispose - { - protected: - Reference< XComponent > m_xComp; - - public: - OAutoDispose( const Reference< XInterface > _rxObject ); - ~OAutoDispose(); - }; +using namespace ::svxform; - //------------------------------------------------------------------------ - OAutoDispose::OAutoDispose( const Reference< XInterface > _rxObject ) - :m_xComp(_rxObject, UNO_QUERY) - { - } - - //------------------------------------------------------------------------ - OAutoDispose::~OAutoDispose() - { - if (m_xComp.is()) - m_xComp->dispose(); - } -} + using namespace ::com::sun::star; + /** === begin UNO using === **/ + using ::com::sun::star::uno::Exception; + using ::com::sun::star::uno::RuntimeException; + using ::com::sun::star::uno::XInterface; + using ::com::sun::star::uno::Sequence; + using ::com::sun::star::uno::UNO_QUERY; + using ::com::sun::star::uno::UNO_QUERY_THROW; + using ::com::sun::star::uno::UNO_SET_THROW; + using ::com::sun::star::uno::Type; + using ::com::sun::star::uno::Reference; + using ::com::sun::star::uno::Any; + using ::com::sun::star::uno::makeAny; + using ::com::sun::star::style::VerticalAlignment_MIDDLE; + using ::com::sun::star::form::FormButtonType_SUBMIT; + using ::com::sun::star::form::binding::XValueBinding; + using ::com::sun::star::form::binding::XBindableValue; + using ::com::sun::star::lang::XComponent; + using ::com::sun::star::container::XIndexAccess; + using ::com::sun::star::form::XForm; + using ::com::sun::star::form::runtime::XFormController; + using ::com::sun::star::script::XEventAttacherManager; + using ::com::sun::star::awt::XTabControllerModel; + using ::com::sun::star::container::XChild; + using ::com::sun::star::container::XEnumeration; + using ::com::sun::star::task::XInteractionHandler; + using ::com::sun::star::lang::XInitialization; + using ::com::sun::star::awt::XTabController; + using ::com::sun::star::lang::XUnoTunnel; + using ::com::sun::star::awt::XControlContainer; + using ::com::sun::star::awt::XControl; + using ::com::sun::star::form::XFormComponent; + using ::com::sun::star::form::XForm; + using ::com::sun::star::lang::IndexOutOfBoundsException; + using ::com::sun::star::lang::WrappedTargetException; + using ::com::sun::star::container::XContainer; + using ::com::sun::star::container::ContainerEvent; + using ::com::sun::star::lang::EventObject; + using ::com::sun::star::beans::NamedValue; + using ::com::sun::star::sdb::SQLErrorEvent; + using ::com::sun::star::sdbc::XRowSet; + using ::com::sun::star::beans::XPropertySet; + using ::com::sun::star::container::XElementAccess; + using ::com::sun::star::awt::XWindow; + using ::com::sun::star::awt::FocusEvent; + using ::com::sun::star::ui::dialogs::XExecutableDialog; + using ::com::sun::star::sdbc::XDataSource; + using ::com::sun::star::container::XIndexContainer; + using ::com::sun::star::sdbc::XConnection; + using ::com::sun::star::container::XNameAccess; + using ::com::sun::star::sdb::SQLContext; + using ::com::sun::star::sdbc::SQLWarning; + using ::com::sun::star::sdbc::SQLException; + using ::com::sun::star::util::XNumberFormatsSupplier; + using ::com::sun::star::util::XNumberFormats; + using ::com::sun::star::beans::XPropertySetInfo; + /** === end UNO using === **/ + namespace FormComponentType = ::com::sun::star::form::FormComponentType; + namespace CommandType = ::com::sun::star::sdb::CommandType; + namespace DataType = ::com::sun::star::sdbc::DataType; //------------------------------------------------------------------------------ class FmXFormView::ObjectRemoveListener : public SfxListener @@ -207,7 +225,7 @@ void FmXPageViewWinRec::dispose() { try { - Reference< XFormController > xController( *i, UNO_SET_THROW ); + Reference< XFormController > xController( *i, UNO_QUERY_THROW ); // detaching the events Reference< XChild > xControllerModel( xController->getModel(), UNO_QUERY ); @@ -319,7 +337,7 @@ Reference< XFormController > FmXPageViewWinRec::getController( const Reference< } //------------------------------------------------------------------------ -void FmXPageViewWinRec::setController(const Reference< XForm > & xForm, FmXFormController* _pParent ) +void FmXPageViewWinRec::setController(const Reference< XForm > & xForm, FormController* _pParent ) { RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmXPageViewWinRec::setController" ); DBG_ASSERT( xForm.is(), "FmXPageViewWinRec::setController: there should be a form!" ); @@ -330,7 +348,7 @@ void FmXPageViewWinRec::setController(const Reference< XForm > & xForm, FmXForm Reference< XTabControllerModel > xTabOrder(xForm, UNO_QUERY); // create a form controller - FmXFormController* pController = new FmXFormController( m_aContext.getLegacyServiceFactory(), m_pViewImpl->getView(), m_pWindow ); + FormController* pController = new FormController( m_aContext.getLegacyServiceFactory(), m_pViewImpl->getView(), m_pWindow ); Reference< XFormController > xController( pController ); Reference< XInteractionHandler > xHandler; @@ -406,7 +424,7 @@ void FmXPageViewWinRec::updateTabOrder( const Reference< XForm >& _rxForm ) // if it's a sub form, then we must ensure there exist TabControllers // for all its ancestors, too Reference< XForm > xParentForm( _rxForm->getParent(), UNO_QUERY ); - FmXFormController* pFormController = NULL; + FormController* pFormController = NULL; // there is a parent form -> look for the respective controller if ( xParentForm.is() ) xTabCtrl = Reference< XTabController >( getController( xParentForm ), UNO_QUERY ); @@ -414,7 +432,7 @@ void FmXPageViewWinRec::updateTabOrder( const Reference< XForm >& _rxForm ) if ( xTabCtrl.is() ) { Reference< XUnoTunnel > xTunnel( xTabCtrl, UNO_QUERY_THROW ); - pFormController = reinterpret_cast< FmXFormController* >( xTunnel->getSomething( FmXFormController::getUnoTunnelImplementationId() ) ); + pFormController = reinterpret_cast< FormController* >( xTunnel->getSomething( FormController::getUnoTunnelImplementationId() ) ); } setController( _rxForm, pFormController ); @@ -1068,20 +1086,14 @@ IMPL_LINK( FmXFormView, OnStartControlWizard, void*, /**/ ) if ( pWizardAsciiName ) { // build the argument list - Sequence< Any > aWizardArgs(1); - // the object affected - aWizardArgs[0] = makeAny( PropertyValue( - ::rtl::OUString::createFromAscii("ObjectModel"), - 0, - makeAny( m_xLastCreatedControlModel ), - PropertyState_DIRECT_VALUE - ) ); + ::comphelper::NamedValueCollection aWizardArgs; + aWizardArgs.put( "ObjectModel", m_xLastCreatedControlModel ); // create the wizard object Reference< XExecutableDialog > xWizard; try { - m_aContext.createComponentWithArguments( pWizardAsciiName, aWizardArgs, xWizard ); + m_aContext.createComponentWithArguments( pWizardAsciiName, aWizardArgs.getWrappedPropertyValues(), xWizard ); } catch( const Exception& ) { @@ -1187,9 +1199,10 @@ SdrObject* FmXFormView::implCreateFieldControl( const ::svx::ODataAccessDescript m_aContext.getLegacyServiceFactory() ) ); } - catch(const SQLContext& e) { aError.Reason <<= e; } - catch(const SQLWarning& e) { aError.Reason <<= e; } - catch(const SQLException& e) { aError.Reason <<= e; } + catch ( const SQLException& ) + { + aError.Reason = ::cppu::getCaughtException(); + } catch( const Exception& ) { /* will be asserted below */ } if (aError.Reason.hasValue()) { @@ -1217,14 +1230,11 @@ SdrObject* FmXFormView::implCreateFieldControl( const ::svx::ODataAccessDescript if (xFields.is() && xFields->hasByName(sFieldName)) xFields->getByName(sFieldName) >>= xField; - - Reference< XNumberFormatsSupplier > xSupplier = aDBATools.getNumberFormats(xConnection, sal_False); - if (!xSupplier.is() || !xField.is()) + if ( !xField.is() ) return NULL; - Reference< XNumberFormats > xNumberFormats(xSupplier->getNumberFormats()); - if (!xNumberFormats.is()) - return NULL; + Reference< XNumberFormatsSupplier > xSupplier( aDBATools.getNumberFormats( xConnection, sal_False ), UNO_SET_THROW ); + Reference< XNumberFormats > xNumberFormats( xSupplier->getNumberFormats(), UNO_SET_THROW ); ::rtl::OUString sLabelPostfix; diff --git a/svx/source/form/formcontrolling.cxx b/svx/source/form/formcontrolling.cxx index 104d2f423eb5..5485763904ce 100644 --- a/svx/source/form/formcontrolling.cxx +++ b/svx/source/form/formcontrolling.cxx @@ -60,7 +60,7 @@ namespace svx /** === begin UNO using === **/ using ::com::sun::star::uno::Reference; using ::com::sun::star::lang::XMultiServiceFactory; - using ::com::sun::star::form::XFormController; + using ::com::sun::star::form::runtime::XFormController; using ::com::sun::star::form::XForm; using ::com::sun::star::form::runtime::FormOperations; using ::com::sun::star::uno::Exception; diff --git a/svx/source/form/legacyformcontroller.cxx b/svx/source/form/legacyformcontroller.cxx new file mode 100644 index 000000000000..47805a8d6ee1 --- /dev/null +++ b/svx/source/form/legacyformcontroller.cxx @@ -0,0 +1,225 @@ +/************************************************************************* +* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +* +* Copyright 2009 by Sun Microsystems, Inc. +* +* OpenOffice.org - a multi-platform office productivity suite +* +* This file is part of OpenOffice.org. +* +* OpenOffice.org is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License version 3 +* only, as published by the Free Software Foundation. +* +* OpenOffice.org is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License version 3 for more details +* (a copy is included in the LICENSE file that accompanied this code). +* +* You should have received a copy of the GNU Lesser General Public License +* version 3 along with OpenOffice.org. If not, see +* <http://www.openoffice.org/license.html> +* for a copy of the LGPLv3 License. +************************************************************************/ +
+// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_svx.hxx" + +#include "fmservs.hxx" + +/** === begin UNO includes === **/ +#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> +#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +/** === end UNO includes === **/ + +#include <cppuhelper/implbase2.hxx> + +//........................................................................ +namespace svxform +{ +//........................................................................ + + /** === begin UNO using === **/ + using ::com::sun::star::uno::Reference; + using ::com::sun::star::uno::XInterface; + using ::com::sun::star::uno::UNO_QUERY; + using ::com::sun::star::uno::UNO_QUERY_THROW; + using ::com::sun::star::uno::UNO_SET_THROW; + using ::com::sun::star::uno::Exception; + using ::com::sun::star::uno::RuntimeException; + using ::com::sun::star::uno::Any; + using ::com::sun::star::uno::makeAny; + using ::com::sun::star::uno::Sequence; + using ::com::sun::star::uno::Type; + using ::com::sun::star::lang::XMultiServiceFactory; + using ::com::sun::star::awt::XControl; + using ::com::sun::star::awt::XTabControllerModel; + using ::com::sun::star::awt::XControlContainer; + using ::com::sun::star::lang::XServiceInfo; + /** === end UNO using === **/ + + using namespace ::com::sun::star; + + //==================================================================== + //= LegacyFormController + //==================================================================== + typedef ::cppu::WeakImplHelper2 < form::XFormController + , XServiceInfo + > LegacyFormController_Base; + /** is an implementation of the legacy form controller service, namely css.form.FormController, supporting the + css.form.XFormController interface. + + This legacy API is superseded by css.form.runtime.(X)FormController, and though we migrated all OOo-internal + usage of this old API, their might be clients external to OOo still using it (though this is rather unlikely). + */ + class LegacyFormController : public LegacyFormController_Base + { + public: + static Reference< XInterface > Create( const Reference< XMultiServiceFactory >& _rxFactory ) + { + return *( new LegacyFormController( _rxFactory ) ); + } + + protected: + LegacyFormController( const Reference< XMultiServiceFactory >& _rxFactory ) + :m_xDelegator( _rxFactory->createInstance( FM_FORM_CONTROLLER ), UNO_QUERY_THROW ) + { + } + + // form::XFormController + virtual Reference< XControl > SAL_CALL getCurrentControl( ) throw (RuntimeException); + virtual void SAL_CALL addActivateListener( const Reference< form::XFormControllerListener >& l ) throw (RuntimeException); + virtual void SAL_CALL removeActivateListener( const Reference< form::XFormControllerListener >& l ) throw (RuntimeException); + + // awt::XTabController + virtual void SAL_CALL setModel( const Reference< XTabControllerModel >& Model ) throw (RuntimeException); + virtual Reference< XTabControllerModel > SAL_CALL getModel( ) throw (RuntimeException); + virtual void SAL_CALL setContainer( const Reference< XControlContainer >& Container ) throw (RuntimeException); + virtual Reference< XControlContainer > SAL_CALL getContainer( ) throw (RuntimeException); + virtual Sequence< Reference< XControl > > SAL_CALL getControls( ) throw (RuntimeException); + virtual void SAL_CALL autoTabOrder( ) throw (RuntimeException); + virtual void SAL_CALL activateTabOrder( ) throw (RuntimeException); + virtual void SAL_CALL activateFirst( ) throw (RuntimeException); + virtual void SAL_CALL activateLast( ) throw (RuntimeException); + + // XServiceInfo + virtual ::rtl::OUString SAL_CALL getImplementationName( ) throw (RuntimeException); + virtual ::sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (RuntimeException); + virtual Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames( ) throw (RuntimeException); + + private: + const Reference< form::runtime::XFormController > m_xDelegator; + }; + + //-------------------------------------------------------------------- + Reference< XControl > SAL_CALL LegacyFormController::getCurrentControl( ) throw (RuntimeException) + { + return m_xDelegator->getCurrentControl(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::addActivateListener( const Reference< form::XFormControllerListener >& _listener ) throw (RuntimeException) + { + m_xDelegator->addActivateListener( _listener ); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::removeActivateListener( const Reference< form::XFormControllerListener >& _listener ) throw (RuntimeException) + { + m_xDelegator->removeActivateListener( _listener ); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::setModel( const Reference< XTabControllerModel >& _model ) throw (RuntimeException) + { + m_xDelegator->setModel( _model ); + } + + //-------------------------------------------------------------------- + Reference< XTabControllerModel > SAL_CALL LegacyFormController::getModel( ) throw (RuntimeException) + { + return m_xDelegator->getModel(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::setContainer( const Reference< XControlContainer >& _container ) throw (RuntimeException) + { + m_xDelegator->setContainer( _container ); + } + + //-------------------------------------------------------------------- + Reference< XControlContainer > SAL_CALL LegacyFormController::getContainer( ) throw (RuntimeException) + { + return m_xDelegator->getContainer(); + } + + //-------------------------------------------------------------------- + Sequence< Reference< XControl > > SAL_CALL LegacyFormController::getControls( ) throw (RuntimeException) + { + return m_xDelegator->getControls(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::autoTabOrder( ) throw (RuntimeException) + { + m_xDelegator->autoTabOrder(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::activateTabOrder( ) throw (RuntimeException) + { + m_xDelegator->activateTabOrder(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::activateFirst( ) throw (RuntimeException) + { + m_xDelegator->activateFirst(); + } + + //-------------------------------------------------------------------- + void SAL_CALL LegacyFormController::activateLast( ) throw (RuntimeException) + { + m_xDelegator->activateLast(); + } + + //-------------------------------------------------------------------- + ::rtl::OUString SAL_CALL LegacyFormController::getImplementationName( ) throw (RuntimeException) + { + return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "org.openoffice.comp.svx.LegacyFormController" ) ); + } + + //-------------------------------------------------------------------- + ::sal_Bool SAL_CALL LegacyFormController::supportsService( const ::rtl::OUString& _serviceName ) throw (RuntimeException) + { + Sequence< ::rtl::OUString > aServices( getSupportedServiceNames() ); + const ::rtl::OUString* pServices = aServices.getConstArray(); + for ( sal_Int32 i = 0; i < aServices.getLength(); ++i, ++pServices ) + if( pServices->equals( _serviceName ) ) + return sal_True; + return sal_False; + } + + //-------------------------------------------------------------------- + Sequence< ::rtl::OUString > SAL_CALL LegacyFormController::getSupportedServiceNames( ) throw (RuntimeException) + { + Sequence< ::rtl::OUString > aServices(2); + aServices.getArray()[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.FormController" ) ); + aServices.getArray()[1] = ::rtl::OUString::createFromAscii("com.sun.star.awt.control.TabController"); + return aServices; + } + +//........................................................................ +} // namespace svxform +//........................................................................ + +//------------------------------------------------------------------ +::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL + LegacyFormController_NewInstance_Impl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & _rxORB ) +{ + return ::svxform::LegacyFormController::Create( _rxORB ); +} + diff --git a/svx/source/form/makefile.mk b/svx/source/form/makefile.mk index b649be94d106..fc6963d22b74 100644 --- a/svx/source/form/makefile.mk +++ b/svx/source/form/makefile.mk @@ -98,7 +98,8 @@ LIB1OBJFILES= \ $(SLO)$/fmscriptingenv.obj \ $(SLO)$/stringlistresource.obj \ $(SLO)$/delayedevent.obj \ - $(SLO)$/formcontrolfactory.obj + $(SLO)$/formcontrolfactory.obj \ + $(SLO)$/legacyformcontroller.obj LIB2TARGET= $(SLB)$/$(TARGET).lib LIB2OBJFILES= \ diff --git a/svx/source/inc/filtnav.hxx b/svx/source/inc/filtnav.hxx index 2bb298836d02..56cf6d428c2e 100644 --- a/svx/source/inc/filtnav.hxx +++ b/svx/source/inc/filtnav.hxx @@ -32,6 +32,8 @@ #include <com/sun/star/awt/XTextComponent.hpp> #include <com/sun/star/form/XForm.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> + #include <svtools/lstner.hxx> #include <svtools/brdcst.hxx> #include <vcl/window.hxx> @@ -110,19 +112,19 @@ public: // Item representing the forms and subforms class FmFormItem : public FmParentData { - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > m_xController; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xController; sal_Int32 m_nCurrent; public: TYPEINFO(); FmFormItem(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory):FmParentData(_rxFactory,NULL, ::rtl::OUString()){} FmFormItem(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory,FmParentData* _pParent, - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & _xController, + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & _xController, const ::rtl::OUString& _rText):FmParentData(_rxFactory,_pParent, _rText) ,m_xController(_xController) ,m_nCurrent(0){} - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & GetController(){return m_xController;} + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & GetController(){return m_xController;} void SetCurrentPosition(sal_Int32 nCurrent){m_nCurrent = nCurrent;} sal_Int32 GetCurrentPosition() const {return m_nCurrent;} virtual Image GetImage( BmpColorMode _eMode = BMP_COLOR_NORMAL ) const; @@ -167,9 +169,9 @@ class FmFilterModel : public FmParentData { friend class FmFilterAdapter; - ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > m_xControllers; - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > m_xController; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xORB; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > m_xControllers; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xController; + ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xORB; FmFilterAdapter* m_pAdapter; FmFilterItems* m_pCurrentItems; @@ -178,7 +180,7 @@ public: FmFilterModel(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory); virtual ~FmFilterModel(); - void Update(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & xControllers, const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & xCurrent); + void Update(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & xControllers, const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & xCurrent); void Clear(); sal_Bool ValidateText(FmFilterItem* pItem, UniString& rText, UniString& rErrorMsg) const; void Append(FmFilterItems* pItems, FmFilterItem* pFilterItem); @@ -190,8 +192,8 @@ public: ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > getORB() const { return m_xORB; } const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & GetControllers() const {return m_xControllers;} - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & GetCurrentController() const {return m_xController;} - void SetCurrentController(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & xController); + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & GetCurrentController() const {return m_xController;} + void SetCurrentController(const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & xController); void Remove(FmFilterData* pFilterItem); void AppendFilterItems(FmFormItem* pItem); @@ -200,7 +202,7 @@ public: protected: void Insert(const ::std::vector<FmFilterData*>::iterator& rPos, FmFilterData* pFilterItem); void Remove(const ::std::vector<FmFilterData*>::iterator& rPos, FmFilterData* pFilterItem); - FmFormItem* Find(const ::std::vector<FmFilterData*>& rItems, const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & xController) const; + FmFormItem* Find(const ::std::vector<FmFilterData*>& rItems, const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & xController) const; FmFormItem* Find(const ::std::vector<FmFilterData*>& rItems, const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& xForm) const; void Update(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & xControllers, FmParentData* pParent); }; @@ -267,7 +269,10 @@ public: FmFilterNavigator( Window* pParent ); virtual ~FmFilterNavigator(); - void UpdateContent(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & xControllers, const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > & xCurrent); + void UpdateContent( + const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & xControllers, + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > & xCurrent + ); const FmFilterModel* GetFilterModel() const {return m_pModel;} protected: diff --git a/svx/source/inc/fmcontrolbordermanager.hxx b/svx/source/inc/fmcontrolbordermanager.hxx index c08907026585..34dc8d86fb0b 100644 --- a/svx/source/inc/fmcontrolbordermanager.hxx +++ b/svx/source/inc/fmcontrolbordermanager.hxx @@ -132,7 +132,7 @@ namespace svxform //==================================================================== /** manages the dynamic border color for form controls - Used by the <type>FmXFormController</type>, this class manages the dynamic changes in the + Used by the <type>FormController</type>, this class manages the dynamic changes in the border color of form controls. For this a set of events have to be forwarded to the manager instance, which then will switch the border color depending on the mouse and focus status of the controls. diff --git a/svx/source/inc/fmctrler.hxx b/svx/source/inc/fmctrler.hxx index 7a973e129280..b455c6c4f2ca 100644 --- a/svx/source/inc/fmctrler.hxx +++ b/svx/source/inc/fmctrler.hxx @@ -65,7 +65,7 @@ #include <com/sun/star/form/XConfirmDeleteListener.hpp> #include <com/sun/star/form/XDatabaseParameterBroadcaster2.hpp> #include <com/sun/star/form/XDatabaseParameterListener.hpp> -#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> #include <com/sun/star/form/XFormControllerListener.hpp> #include <com/sun/star/form/XGridControlListener.hpp> #include <com/sun/star/form/XLoadListener.hpp> @@ -101,9 +101,9 @@ #include <tools/debug.hxx> #include <vcl/timer.hxx> -#if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_31) -#define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_31 -#define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 31 +#if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_22) +#define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_22 +#define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 22 #include <comphelper/implbase_var.hxx> #endif @@ -118,500 +118,491 @@ struct FmXTextComponentLess : public ::std::binary_function< ::com::sun::star::u typedef ::std::map< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent >, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >, FmXTextComponentLess> FmFilterControls; typedef ::std::map< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent >, ::rtl::OUString, FmXTextComponentLess> FmFilterRow; typedef ::std::vector< FmFilterRow > FmFilterRows; -typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > > FmFormControllers; +typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > > FmFormControllers; -struct FmFieldInfo; class FmFormView; class Window; namespace svxform { class ControlBorderManager; -} - -typedef ::comphelper::WeakComponentImplHelper31 < ::com::sun::star::form::XFormController - , ::com::sun::star::container::XChild - , ::com::sun::star::container::XIndexAccess - , ::com::sun::star::container::XEnumerationAccess - , ::com::sun::star::awt::XFocusListener - , ::com::sun::star::form::XLoadListener - , ::com::sun::star::beans::XPropertyChangeListener - , ::com::sun::star::awt::XTextListener - , ::com::sun::star::awt::XItemListener - , ::com::sun::star::container::XContainerListener - , ::com::sun::star::util::XModifyListener - , ::com::sun::star::util::XModifyBroadcaster - , ::com::sun::star::util::XModeSelector - , ::com::sun::star::form::XConfirmDeleteListener - , ::com::sun::star::form::XConfirmDeleteBroadcaster - , ::com::sun::star::sdb::XSQLErrorListener - , ::com::sun::star::sdb::XSQLErrorBroadcaster - , ::com::sun::star::sdbc::XRowSetListener - , ::com::sun::star::sdb::XRowSetApproveListener - , ::com::sun::star::sdb::XRowSetApproveBroadcaster - , ::com::sun::star::form::XDatabaseParameterListener - , ::com::sun::star::form::XDatabaseParameterBroadcaster - , ::com::sun::star::lang::XServiceInfo - , ::com::sun::star::form::XResetListener - , ::com::sun::star::lang::XUnoTunnel - , ::com::sun::star::frame::XDispatch - , ::com::sun::star::awt::XMouseListener - , ::com::sun::star::form::validation::XFormComponentValidityListener - , ::com::sun::star::task::XInteractionHandler - , ::com::sun::star::lang::XInitialization - , ::com::sun::star::form::XGridControlListener - > FmXFormController_BASE; - -//================================================================== -// FmXFormController -//================================================================== -class ColumnInfoCache; -class SAL_DLLPRIVATE FmXFormController :public ::comphelper::OBaseMutex - ,public FmXFormController_BASE + struct FmFieldInfo; + + typedef ::comphelper::WeakComponentImplHelper22 < ::com::sun::star::form::runtime::XFormController + , ::com::sun::star::awt::XFocusListener + , ::com::sun::star::form::XLoadListener + , ::com::sun::star::beans::XPropertyChangeListener + , ::com::sun::star::awt::XTextListener + , ::com::sun::star::awt::XItemListener + , ::com::sun::star::container::XContainerListener + , ::com::sun::star::util::XModifyListener + , ::com::sun::star::form::XConfirmDeleteListener + , ::com::sun::star::sdb::XSQLErrorListener + , ::com::sun::star::sdbc::XRowSetListener + , ::com::sun::star::sdb::XRowSetApproveListener + , ::com::sun::star::form::XDatabaseParameterListener + , ::com::sun::star::lang::XServiceInfo + , ::com::sun::star::form::XResetListener + , ::com::sun::star::lang::XUnoTunnel + , ::com::sun::star::frame::XDispatch + , ::com::sun::star::awt::XMouseListener + , ::com::sun::star::form::validation::XFormComponentValidityListener + , ::com::sun::star::task::XInteractionHandler + , ::com::sun::star::lang::XInitialization + , ::com::sun::star::form::XGridControlListener + > FormController_BASE; + + //================================================================== + // FormController + //================================================================== + class ColumnInfoCache; + class SAL_DLLPRIVATE FormController :public ::comphelper::OBaseMutex + ,public FormController_BASE ,public ::cppu::OPropertySetHelper ,public FmDispatchInterceptor - ,public ::comphelper::OAggregationArrayUsageHelper< FmXFormController > + ,public ::comphelper::OAggregationArrayUsageHelper< FormController > ,public ::svxform::OSQLParserClient ,public ::svx::IControllerFeatureInvalidation -{ - typedef ::std::map < sal_Int32, - ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > - > DispatcherContainer; - - friend class FmXPageViewWinRec; - - ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation> m_xAggregate; - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabController> m_xTabController; - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> m_xActiveControl, m_xCurrentControl; - ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess> m_xModelAsIndex; - ::com::sun::star::uno::Reference< ::com::sun::star::script::XEventAttacherManager> m_xModelAsManager; - ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> m_xParent; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xORB; - // Composer used for checking filter conditions - ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSingleSelectQueryComposer > m_xComposer; - ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler > m_xInteractionHandler; - - ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> > m_aControls; - ::cppu::OInterfaceContainerHelper - m_aActivateListeners, - m_aModifyListeners, - m_aErrorListeners, - m_aDeleteListeners, - m_aRowSetApproveListeners, - m_aParameterListeners; - - FmFormControllers m_aChilds; - FmFilterControls m_aFilterControls; - FmFilterRows m_aFilters; - - Timer m_aTabActivationTimer; - Timer m_aFeatureInvalidationTimer; - - FmFormView* m_pView; - Window* m_pWindow; - ::svxform::ControlBorderManager* - m_pControlBorderManager; - - ::svx::ControllerFeatures m_aControllerFeatures; - DispatcherContainer m_aFeatureDispatchers; - ::std::set< sal_Int32 > m_aInvalidFeatures; // for asynchronous feature invalidation - - ::rtl::OUString m_aMode; - - ::svxform::DelayedEvent m_aLoadEvent; - ::svxform::DelayedEvent m_aToggleEvent; - ::svxform::DelayedEvent m_aActivationEvent; - ::svxform::DelayedEvent m_aDeactivationEvent; - - ::std::auto_ptr< ColumnInfoCache > - m_pColumnInfoCache; - - sal_Int32 m_nCurrentFilterPosition; // current level for filtering (or-criteria) - - sal_Bool m_bCurrentRecordModified : 1; - sal_Bool m_bCurrentRecordNew : 1; - sal_Bool m_bLocked : 1; - sal_Bool m_bDBConnection : 1; // Focuslistener nur fuer Datenbankformulare - sal_Bool m_bCycle : 1; - sal_Bool m_bCanInsert : 1; - sal_Bool m_bCanUpdate : 1; - sal_Bool m_bCommitLock : 1; // lock the committing of controls see focusGained - sal_Bool m_bModified : 1; // ist der Inhalt eines Controls modifiziert ? - sal_Bool m_bControlsSorted : 1; - sal_Bool m_bFiltering : 1; - sal_Bool m_bAttachEvents : 1; - sal_Bool m_bDetachEvents : 1; - sal_Bool m_bAttemptedHandlerCreation : 1; - - // as we want to intercept dispatches of _all_ controls we're responsible for, and an object implementing - // the ::com::sun::star::frame::XDispatchProviderInterceptor interface can intercept only _one_ objects dispatches, we need a helper class - DECLARE_STL_VECTOR(FmXDispatchInterceptorImpl*, Interceptors); - Interceptors m_aControlDispatchInterceptors; - -public: - inline const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& - getInteractionHandler() const { - const_cast< FmXFormController* >( this )->ensureInteractionHandler(); - return m_xInteractionHandler; - } - -public: - FmXFormController(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & _rxORB, - FmFormView* _pView = NULL, Window* _pWindow = NULL ); - ~FmXFormController(); - -// XInterface - virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& type) throw ( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL acquire() throw (); - virtual void SAL_CALL release() throw (); - -// XTypeProvider - virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException); - virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); - -// XUnoTunnel - virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); - static ::com::sun::star::uno::Sequence< sal_Int8 > getUnoTunnelImplementationId(); - SVX_DLLPUBLIC static FmXFormController* getImplementation( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxComponent ); - -// XDispatch - virtual void SAL_CALL dispatch( const ::com::sun::star::util::URL& _rURL, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& _rArgs ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL addStatusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XStatusListener >& _rxListener, const ::com::sun::star::util::URL& _rURL ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL removeStatusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XStatusListener >& _rxListener, const ::com::sun::star::util::URL& _rURL ) throw (::com::sun::star::uno::RuntimeException); - -// ::com::sun::star::container::XChild - virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> SAL_CALL getParent(void) throw( ::com::sun::star::uno::RuntimeException ) {return m_xParent;} - virtual void SAL_CALL setParent(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& Parent) throw( ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException ) - {m_xParent = Parent;} - -// ::com::sun::star::lang::XEventListener - virtual void SAL_CALL disposing(const ::com::sun::star::lang::EventObject& Source) throw( ::com::sun::star::uno::RuntimeException ); - -// OComponentHelper - virtual void SAL_CALL disposing(); - -// OPropertySetHelper - virtual sal_Bool SAL_CALL convertFastPropertyValue( ::com::sun::star::uno::Any & rConvertedValue, ::com::sun::star::uno::Any & rOldValue, - sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) - throw( ::com::sun::star::lang::IllegalArgumentException ); - - virtual void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) throw( ::com::sun::star::uno::Exception ); - virtual void SAL_CALL getFastPropertyValue( ::com::sun::star::uno::Any& rValue, sal_Int32 nHandle ) const; - - virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo> SAL_CALL getPropertySetInfo() throw( ::com::sun::star::uno::RuntimeException ); - virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper(); - - using OPropertySetHelper::getFastPropertyValue; + typedef ::std::map < sal_Int32, + ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > + > DispatcherContainer; + + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation> m_xAggregate; + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabController> m_xTabController; + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> m_xActiveControl, m_xCurrentControl; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess> m_xModelAsIndex; + ::com::sun::star::uno::Reference< ::com::sun::star::script::XEventAttacherManager> m_xModelAsManager; + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> m_xParent; + ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xORB; + // Composer used for checking filter conditions + ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSingleSelectQueryComposer > m_xComposer; + ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler > m_xInteractionHandler; + + ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> > m_aControls; + ::cppu::OInterfaceContainerHelper + m_aActivateListeners, + m_aModifyListeners, + m_aErrorListeners, + m_aDeleteListeners, + m_aRowSetApproveListeners, + m_aParameterListeners; + + FmFormControllers m_aChilds; + FmFilterControls m_aFilterControls; + FmFilterRows m_aFilters; + + Timer m_aTabActivationTimer; + Timer m_aFeatureInvalidationTimer; + + FmFormView* m_pView; + Window* m_pWindow; + ::svxform::ControlBorderManager* + m_pControlBorderManager; + + ::svx::ControllerFeatures m_aControllerFeatures; + DispatcherContainer m_aFeatureDispatchers; + ::std::set< sal_Int32 > m_aInvalidFeatures; // for asynchronous feature invalidation + + ::rtl::OUString m_aMode; + + ::svxform::DelayedEvent m_aLoadEvent; + ::svxform::DelayedEvent m_aToggleEvent; + ::svxform::DelayedEvent m_aActivationEvent; + ::svxform::DelayedEvent m_aDeactivationEvent; + + ::std::auto_ptr< ColumnInfoCache > + m_pColumnInfoCache; + + sal_Int32 m_nCurrentFilterPosition; // current level for filtering (or-criteria) + + sal_Bool m_bCurrentRecordModified : 1; + sal_Bool m_bCurrentRecordNew : 1; + sal_Bool m_bLocked : 1; + sal_Bool m_bDBConnection : 1; // Focuslistener nur fuer Datenbankformulare + sal_Bool m_bCycle : 1; + sal_Bool m_bCanInsert : 1; + sal_Bool m_bCanUpdate : 1; + sal_Bool m_bCommitLock : 1; // lock the committing of controls see focusGained + sal_Bool m_bModified : 1; // ist der Inhalt eines Controls modifiziert ? + sal_Bool m_bControlsSorted : 1; + sal_Bool m_bFiltering : 1; + sal_Bool m_bAttachEvents : 1; + sal_Bool m_bDetachEvents : 1; + sal_Bool m_bAttemptedHandlerCreation : 1; + + // as we want to intercept dispatches of _all_ controls we're responsible for, and an object implementing + // the ::com::sun::star::frame::XDispatchProviderInterceptor interface can intercept only _one_ objects dispatches, we need a helper class + DECLARE_STL_VECTOR(FmXDispatchInterceptorImpl*, Interceptors); + Interceptors m_aControlDispatchInterceptors; + + public: + inline const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& + getInteractionHandler() const + { + const_cast< FormController* >( this )->ensureInteractionHandler(); + return m_xInteractionHandler; + } + + public: + FormController(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & _rxORB, + FmFormView* _pView = NULL, Window* _pWindow = NULL ); + ~FormController(); + + // XInterface + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& type) throw ( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL acquire() throw (); + virtual void SAL_CALL release() throw (); + + // XTypeProvider + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + + // XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + static ::com::sun::star::uno::Sequence< sal_Int8 > getUnoTunnelImplementationId(); + SVX_DLLPUBLIC static FormController* getImplementation( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxComponent ); + + // XDispatch + virtual void SAL_CALL dispatch( const ::com::sun::star::util::URL& _rURL, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& _rArgs ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addStatusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XStatusListener >& _rxListener, const ::com::sun::star::util::URL& _rURL ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeStatusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XStatusListener >& _rxListener, const ::com::sun::star::util::URL& _rURL ) throw (::com::sun::star::uno::RuntimeException); + + // ::com::sun::star::container::XChild + virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> SAL_CALL getParent(void) throw( ::com::sun::star::uno::RuntimeException ) {return m_xParent;} + virtual void SAL_CALL setParent(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>& Parent) throw( ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException ) + {m_xParent = Parent;} + + // ::com::sun::star::lang::XEventListener + virtual void SAL_CALL disposing(const ::com::sun::star::lang::EventObject& Source) throw( ::com::sun::star::uno::RuntimeException ); + + // OComponentHelper + virtual void SAL_CALL disposing(); + + // OPropertySetHelper + virtual sal_Bool SAL_CALL convertFastPropertyValue( ::com::sun::star::uno::Any & rConvertedValue, ::com::sun::star::uno::Any & rOldValue, + sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) + throw( ::com::sun::star::lang::IllegalArgumentException ); + + virtual void SAL_CALL setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, const ::com::sun::star::uno::Any& rValue ) throw( ::com::sun::star::uno::Exception ); + virtual void SAL_CALL getFastPropertyValue( ::com::sun::star::uno::Any& rValue, sal_Int32 nHandle ) const; + + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo> SAL_CALL getPropertySetInfo() throw( ::com::sun::star::uno::RuntimeException ); + virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper(); + + using OPropertySetHelper::getFastPropertyValue; + + // XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasElements(void) throw( ::com::sun::star::uno::RuntimeException ); + + // ::com::sun::star::container::XEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration> SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + // ::com::sun::star::container::XContainerListener + virtual void SAL_CALL elementInserted(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL elementReplaced(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL elementRemoved(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + + // XLoadListener + virtual void SAL_CALL loaded(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL unloaded(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL unloading(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL reloading(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL reloaded(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + + // XModeSelector + virtual void SAL_CALL setMode(const ::rtl::OUString& Mode) throw( ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException ); + virtual ::rtl::OUString SAL_CALL getMode(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedModes(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL supportsMode(const ::rtl::OUString& Mode) throw( ::com::sun::star::uno::RuntimeException ); + + // ::com::sun::star::container::XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 Index) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + // XModifyBroadcaster + virtual void SAL_CALL addModifyListener(const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener>& l) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeModifyListener(const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener>& l) throw( ::com::sun::star::uno::RuntimeException ); + + // XFocusListener + virtual void SAL_CALL focusGained(const ::com::sun::star::awt::FocusEvent& e) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL focusLost(const ::com::sun::star::awt::FocusEvent& e) throw( ::com::sun::star::uno::RuntimeException ); -// XElementAccess - virtual ::com::sun::star::uno::Type SAL_CALL getElementType(void) throw( ::com::sun::star::uno::RuntimeException ); - virtual sal_Bool SAL_CALL hasElements(void) throw( ::com::sun::star::uno::RuntimeException ); + // XMouseListener + virtual void SAL_CALL mousePressed( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL mouseReleased( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL mouseEntered( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL mouseExited( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); -// ::com::sun::star::container::XEnumerationAccess - virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration> SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + // XFormComponentValidityListener + virtual void SAL_CALL componentValidityChanged( const ::com::sun::star::lang::EventObject& _rSource ) throw (::com::sun::star::uno::RuntimeException); -// ::com::sun::star::container::XContainerListener - virtual void SAL_CALL elementInserted(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL elementReplaced(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL elementRemoved(const ::com::sun::star::container::ContainerEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + // XInteractionHandler + virtual void SAL_CALL handle( const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionRequest >& Request ) throw (::com::sun::star::uno::RuntimeException); -// XLoadListener - virtual void SAL_CALL loaded(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL unloaded(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL unloading(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL reloading(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL reloaded(const ::com::sun::star::lang::EventObject& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + // XInitialization + virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); -// XModeSelector - virtual void SAL_CALL setMode(const ::rtl::OUString& Mode) throw( ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException ); - virtual ::rtl::OUString SAL_CALL getMode(void) throw( ::com::sun::star::uno::RuntimeException ); - virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedModes(void) throw( ::com::sun::star::uno::RuntimeException ); - virtual sal_Bool SAL_CALL supportsMode(const ::rtl::OUString& Mode) throw( ::com::sun::star::uno::RuntimeException ); + // XGridControlListener + virtual void SAL_CALL columnChanged( const ::com::sun::star::lang::EventObject& _event ) throw (::com::sun::star::uno::RuntimeException); -// ::com::sun::star::container::XIndexAccess - virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); - virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 Index) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + // ::com::sun::star::beans::XPropertyChangeListener -> aenderung der stati + virtual void SAL_CALL propertyChange(const ::com::sun::star::beans::PropertyChangeEvent& evt) throw( ::com::sun::star::uno::RuntimeException ); -// XModifyBroadcaster - virtual void SAL_CALL addModifyListener(const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener>& l) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeModifyListener(const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener>& l) throw( ::com::sun::star::uno::RuntimeException ); + // XTextListener -> modify setzen + virtual void SAL_CALL textChanged(const ::com::sun::star::awt::TextEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); -// XFocusListener - virtual void SAL_CALL focusGained(const ::com::sun::star::awt::FocusEvent& e) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL focusLost(const ::com::sun::star::awt::FocusEvent& e) throw( ::com::sun::star::uno::RuntimeException ); + // XItemListener -> modify setzen + virtual void SAL_CALL itemStateChanged(const ::com::sun::star::awt::ItemEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); -// XMouseListener - virtual void SAL_CALL mousePressed( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL mouseReleased( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL mouseEntered( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL mouseExited( const ::com::sun::star::awt::MouseEvent& _rEvent ) throw (::com::sun::star::uno::RuntimeException); + // XModifyListener -> modify setzen + virtual void SAL_CALL modified(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); -// XFormComponentValidityListener - virtual void SAL_CALL componentValidityChanged( const ::com::sun::star::lang::EventObject& _rSource ) throw (::com::sun::star::uno::RuntimeException); + // XFormController + virtual ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormOperations > SAL_CALL getFormOperations() throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> SAL_CALL getCurrentControl(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addActivateListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormControllerListener>& l) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeActivateListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormControllerListener>& l) throw( ::com::sun::star::uno::RuntimeException ); -// XInteractionHandler - virtual void SAL_CALL handle( const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionRequest >& Request ) throw (::com::sun::star::uno::RuntimeException); + // XTabController + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> > SAL_CALL getControls(void) throw( ::com::sun::star::uno::RuntimeException ); -// XInitialization - virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setModel(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabControllerModel>& Model) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabControllerModel> SAL_CALL getModel() throw( ::com::sun::star::uno::RuntimeException ); -// XGridControlListener - virtual void SAL_CALL columnChanged( const ::com::sun::star::lang::EventObject& _event ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setContainer(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer>& Container) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer> SAL_CALL getContainer() throw( ::com::sun::star::uno::RuntimeException ); -// ::com::sun::star::beans::XPropertyChangeListener -> aenderung der stati - virtual void SAL_CALL propertyChange(const ::com::sun::star::beans::PropertyChangeEvent& evt) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL autoTabOrder() throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL activateTabOrder() throw( ::com::sun::star::uno::RuntimeException ); -// XTextListener -> modify setzen - virtual void SAL_CALL textChanged(const ::com::sun::star::awt::TextEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL activateFirst() throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL activateLast() throw( ::com::sun::star::uno::RuntimeException ); -// XItemListener -> modify setzen - virtual void SAL_CALL itemStateChanged(const ::com::sun::star::awt::ItemEvent& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + // com::sun::star::sdbc::XRowSetListener + virtual void SAL_CALL cursorMoved(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL rowChanged(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL rowSetChanged(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); -// XModifyListener -> modify setzen - virtual void SAL_CALL modified(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + // XRowSetApproveListener + virtual sal_Bool SAL_CALL approveCursorMove(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL approveRowChange(const ::com::sun::star::sdb::RowChangeEvent& event) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL approveRowSetChange(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); -// XFormController - virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> SAL_CALL getCurrentControl(void) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL addActivateListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormControllerListener>& l) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeActivateListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormControllerListener>& l) throw( ::com::sun::star::uno::RuntimeException ); + // XRowSetApproveBroadcaster + virtual void SAL_CALL addRowSetApproveListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XRowSetApproveListener>& listener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeRowSetApproveListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XRowSetApproveListener>& listener) throw( ::com::sun::star::uno::RuntimeException ); -// XTabController - virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> > SAL_CALL getControls(void) throw( ::com::sun::star::uno::RuntimeException ); + // XSQLErrorBroadcaster + virtual void SAL_CALL errorOccured(const ::com::sun::star::sdb::SQLErrorEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL setModel(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabControllerModel>& Model) throw( ::com::sun::star::uno::RuntimeException ); - virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabControllerModel> SAL_CALL getModel() throw( ::com::sun::star::uno::RuntimeException ); + // XSQLErrorListener + virtual void SAL_CALL addSQLErrorListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSQLErrorListener>& _rListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeSQLErrorListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSQLErrorListener>& _rListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL setContainer(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer>& Container) throw( ::com::sun::star::uno::RuntimeException ); - virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer> SAL_CALL getContainer() throw( ::com::sun::star::uno::RuntimeException ); + // XDatabaseParameterBroadcaster2 + virtual void SAL_CALL addDatabaseParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeDatabaseParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL autoTabOrder() throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL activateTabOrder() throw( ::com::sun::star::uno::RuntimeException ); + // XDatabaseParameterBroadcaster + virtual void SAL_CALL addParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL activateFirst() throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL activateLast() throw( ::com::sun::star::uno::RuntimeException ); + // XDatabaseParameterListener + virtual sal_Bool SAL_CALL approveParameter(const ::com::sun::star::form::DatabaseParameterEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); -// com::sun::star::sdbc::XRowSetListener - virtual void SAL_CALL cursorMoved(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL rowChanged(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL rowSetChanged(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); + // XConfirmDeleteBroadcaster + virtual void SAL_CALL addConfirmDeleteListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XConfirmDeleteListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeConfirmDeleteListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XConfirmDeleteListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); -// XRowSetApproveListener - virtual sal_Bool SAL_CALL approveCursorMove(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); - virtual sal_Bool SAL_CALL approveRowChange(const ::com::sun::star::sdb::RowChangeEvent& event) throw( ::com::sun::star::uno::RuntimeException ); - virtual sal_Bool SAL_CALL approveRowSetChange(const ::com::sun::star::lang::EventObject& event) throw( ::com::sun::star::uno::RuntimeException ); + // XConfirmDeleteListener + virtual sal_Bool SAL_CALL confirmDelete(const ::com::sun::star::sdb::RowChangeEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); -// XRowSetApproveBroadcaster - virtual void SAL_CALL addRowSetApproveListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XRowSetApproveListener>& listener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeRowSetApproveListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XRowSetApproveListener>& listener) throw( ::com::sun::star::uno::RuntimeException ); + // XServiceInfo + virtual sal_Bool SAL_CALL supportsService(const ::rtl::OUString& ServiceName) throw(::com::sun::star::uno::RuntimeException); + virtual ::rtl::OUString SAL_CALL getImplementationName() throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw(::com::sun::star::uno::RuntimeException); -// XSQLErrorBroadcaster - virtual void SAL_CALL errorOccured(const ::com::sun::star::sdb::SQLErrorEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + // XResetListener + virtual sal_Bool SAL_CALL approveReset(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL resetted(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); -// XSQLErrorListener - virtual void SAL_CALL addSQLErrorListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSQLErrorListener>& _rListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeSQLErrorListener(const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSQLErrorListener>& _rListener) throw( ::com::sun::star::uno::RuntimeException ); + // method for registration + static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void); -// XDatabaseParameterBroadcaster2 - virtual void SAL_CALL addDatabaseParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeDatabaseParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + // comphelper::OPropertyArrayUsageHelper + virtual void fillProperties( + ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rProps, + ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rAggregateProps + ) const; -// XDatabaseParameterBroadcaster - virtual void SAL_CALL addParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeParameterListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XDatabaseParameterListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + // access to the controls for filtering + const FmFilterControls& getFilterControls() const {return m_aFilterControls;} -// XDatabaseParameterListener - virtual sal_Bool SAL_CALL approveParameter(const ::com::sun::star::form::DatabaseParameterEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + // access to the current filter rows + const FmFilterRows& getFilterRows() const {return m_aFilters;} + FmFilterRows& getFilterRows() {return m_aFilters;} -// XConfirmDeleteBroadcaster - virtual void SAL_CALL addConfirmDeleteListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XConfirmDeleteListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL removeConfirmDeleteListener(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XConfirmDeleteListener>& aListener) throw( ::com::sun::star::uno::RuntimeException ); + // just decr. the positions no notifications for the view + void decrementCurrentFilterPosition() + { + DBG_ASSERT(m_nCurrentFilterPosition, "Invalid Position"); + --m_nCurrentFilterPosition; + } -// XConfirmDeleteListener - virtual sal_Bool SAL_CALL confirmDelete(const ::com::sun::star::sdb::RowChangeEvent& aEvent) throw( ::com::sun::star::uno::RuntimeException ); + SVX_DLLPUBLIC void setCurrentFilterPosition(sal_Int32 nPos); + sal_Int32 getCurrentFilterPosition() const {return m_nCurrentFilterPosition;} -// XServiceInfo - virtual sal_Bool SAL_CALL supportsService(const ::rtl::OUString& ServiceName) throw(::com::sun::star::uno::RuntimeException); - virtual ::rtl::OUString SAL_CALL getImplementationName() throw(::com::sun::star::uno::RuntimeException); - virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw(::com::sun::star::uno::RuntimeException); + void addChild( FormController* pChild ); -// XResetListener - virtual sal_Bool SAL_CALL approveReset(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); - virtual void SAL_CALL resetted(const ::com::sun::star::lang::EventObject& rEvent) throw( ::com::sun::star::uno::RuntimeException ); + protected: + // FmDispatchInterceptor + virtual ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch> + interceptedQueryDispatch(sal_uInt16 _nId,const ::com::sun::star::util::URL& aURL, + const ::rtl::OUString& aTargetFrameName, sal_Int32 nSearchFlags) + throw( ::com::sun::star::uno::RuntimeException ); -// method for registration - static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void); + // IControllerFeatureInvalidation + virtual void invalidateFeatures( const ::std::vector< sal_Int32 >& _rFeatures ); - // comphelper::OPropertyArrayUsageHelper - virtual void fillProperties( - ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rProps, - ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& /* [out] */ _rAggregateProps - ) const; + virtual ::osl::Mutex* getInterceptorMutex() { return &m_aMutex; } -// access to the controls for filtering - const FmFilterControls& getFilterControls() const {return m_aFilterControls;} + /// update all our dispatchers + void updateAllDispatchers() const; -// access to the current filter rows - const FmFilterRows& getFilterRows() const {return m_aFilters;} - FmFilterRows& getFilterRows() {return m_aFilters;} - - // just decr. the positions no notifications for the view - void decrementCurrentFilterPosition() - { - DBG_ASSERT(m_nCurrentFilterPosition, "Invalid Position"); - --m_nCurrentFilterPosition; - } - - SVX_DLLPUBLIC void setCurrentFilterPosition(sal_Int32 nPos); - sal_Int32 getCurrentFilterPosition() const {return m_nCurrentFilterPosition;} - -protected: - // FmDispatchInterceptor - virtual ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch> - interceptedQueryDispatch(sal_uInt16 _nId,const ::com::sun::star::util::URL& aURL, - const ::rtl::OUString& aTargetFrameName, sal_Int32 nSearchFlags) - throw( ::com::sun::star::uno::RuntimeException ); - - // IControllerFeatureInvalidation - virtual void invalidateFeatures( const ::std::vector< sal_Int32 >& _rFeatures ); - - virtual ::osl::Mutex* getInterceptorMutex() { return &m_aMutex; } - - /// update all our dispatchers - void updateAllDispatchers() const; - - /** disposes all dispatchers in m_aFeatureDispatchers, empties m_aFeatureDispatchers, - and disposes m_aControllerFeatures - */ - void disposeAllFeaturesAndDispatchers() SAL_THROW(()); - - void startFiltering(); - void stopFiltering(); - void setFilter(::std::vector<FmFieldInfo>&); - void startListening(); - void stopListening(); - - /** ensures that we have an interaction handler, if possible - - If an interaction handler was provided at creation time (<member>initialize</member>), this - one will be used. Else, an attempt is made to create an <type scope="com::sun::star::sdb">InteractionHandler</type> - is made. - - @return <TRUE/> - if and only if <member>m_xInteractionHandler</member> is valid when the method returns - */ - bool ensureInteractionHandler(); - - /** replaces one of our controls with another one - - Upon successful replacing, the old control will be disposed. Also, internal members pointing - to the current or active control will be adjusted. Yet more, if the replaced control was - the active control, the new control will be made active. - - @param _rxExistentControl - The control to replace. Must be one of the controls in our ControlContainer. - @param _rxNewControl - The control which should replace the existent control. - @return - <TRUE/> if and only if the control was successfully replaced - */ - bool replaceControl( - const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxExistentControl, - const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxNewControl - ); - - // we're listening at all bound controls for modifications - void startControlModifyListening(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - void stopControlModifyListening(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - - void setLocks(); - void setControlLock(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - void addToEventAttacher(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - void removeFromEventAttacher(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - void toggleAutoFields(sal_Bool bAutoFields); - void unload() throw( ::com::sun::star::uno::RuntimeException ); - void removeBoundFieldListener(); - - void startFormListening( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ); - void stopFormListening( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ); - - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> findControl( ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> >& rCtrls, const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel>& rxCtrlModel, sal_Bool _bRemove, sal_Bool _bOverWrite ) const; - - void insertControl(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - void removeControl(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); - - /// called when a new control is to be handled by the controller - void implControlInserted( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& _rxControl, bool _bAddToEventAttacher ); - /// called when a control is not to be handled by the controller anymore - void implControlRemoved( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& _rxControl, bool _bRemoveFromEventAttacher ); - - /** sets m_xCurrentControl, plus does administrative tasks depending on it - */ - void implSetCurrentControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxControl ); - - /** invalidates the FormFeatures which depend on the current control - */ - void implInvalidateCurrentControlDependentFeatures(); - - bool impl_isDisposed_nofail() const { return FmXFormController_BASE::rBHelper.bDisposed; } - - void impl_onModify(); - - sal_Bool isLocked() const {return m_bLocked;} - sal_Bool determineLockState() const; - - Window* getDialogParentWindow(); - // returns m_pWindow or - if m_pWindow is NULL - the window of the currently set container - - ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterceptor> createInterceptor(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterception>& _xInterception); - // create a new interceptor, register it on the given object - void deleteInterceptor(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterception>& _xInterception); - // if createInterceptor was called for the given object the according interceptor will be removed - // from the objects interceptor chain and released - - /** checks all form controls belonging to our form for validity - - If a form control supports the XValidatableFormComponent interface, this is used to determine - the validity of the control. If the interface is not supported, the control is supposed to be - valid. - - @param _rFirstInvalidityExplanation - if the method returns <FALSE/> (i.e. if there is an invalid control), this string contains - the explanation for the invalidity, as obtained from the validator. - - @param _rxFirstInvalidModel - if the method returns <FALSE/> (i.e. if there is an invalid control), this contains - the control model - - @return - <TRUE/> if and only if all controls belonging to our form are valid - */ - bool checkFormComponentValidity( - ::rtl::OUString& /* [out] */ _rFirstInvalidityExplanation, - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& /* [out] */ _rxFirstInvalidModel - ) SAL_THROW(()); - - /** locates the control which belongs to a given model - */ - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl > - locateControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxModel ) SAL_THROW(()); - - // set the text for all filters - void impl_setTextOnAllFilter_throw(); - - // in filter mode we do not listen for changes - sal_Bool isListeningForChanges() const {return m_bDBConnection && !m_bFiltering && !isLocked();} - void addChild(FmXFormController* pChild); - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> isInList(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer>& xPeer) const; - - DECL_LINK( OnActivateTabOrder, void* ); - DECL_LINK( OnInvalidateFeatures, void* ); - DECL_LINK( OnLoad, void* ); - DECL_LINK( OnToggleAutoFields, void* ); - DECL_LINK( OnActivated, void* ); - DECL_LINK( OnDeactivated, void* ); -}; + /** disposes all dispatchers in m_aFeatureDispatchers, empties m_aFeatureDispatchers, + and disposes m_aControllerFeatures + */ + void disposeAllFeaturesAndDispatchers() SAL_THROW(()); + void startFiltering(); + void stopFiltering(); + void setFilter(::std::vector<FmFieldInfo>&); + void startListening(); + void stopListening(); + + /** ensures that we have an interaction handler, if possible + + If an interaction handler was provided at creation time (<member>initialize</member>), this + one will be used. Else, an attempt is made to create an <type scope="com::sun::star::sdb">InteractionHandler</type> + is made. + + @return <TRUE/> + if and only if <member>m_xInteractionHandler</member> is valid when the method returns + */ + bool ensureInteractionHandler(); + + /** replaces one of our controls with another one + + Upon successful replacing, the old control will be disposed. Also, internal members pointing + to the current or active control will be adjusted. Yet more, if the replaced control was + the active control, the new control will be made active. + + @param _rxExistentControl + The control to replace. Must be one of the controls in our ControlContainer. + @param _rxNewControl + The control which should replace the existent control. + @return + <TRUE/> if and only if the control was successfully replaced + */ + bool replaceControl( + const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxExistentControl, + const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxNewControl + ); + + // we're listening at all bound controls for modifications + void startControlModifyListening(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + void stopControlModifyListening(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + + void setLocks(); + void setControlLock(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + void addToEventAttacher(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + void removeFromEventAttacher(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + void toggleAutoFields(sal_Bool bAutoFields); + void unload() throw( ::com::sun::star::uno::RuntimeException ); + void removeBoundFieldListener(); + + void startFormListening( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ); + void stopFormListening( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxForm, sal_Bool _bPropertiesOnly ); + + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> findControl( ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> >& rCtrls, const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel>& rxCtrlModel, sal_Bool _bRemove, sal_Bool _bOverWrite ) const; + + void insertControl(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + void removeControl(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& xControl); + + /// called when a new control is to be handled by the controller + void implControlInserted( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& _rxControl, bool _bAddToEventAttacher ); + /// called when a control is not to be handled by the controller anymore + void implControlRemoved( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl>& _rxControl, bool _bRemoveFromEventAttacher ); + + /** sets m_xCurrentControl, plus does administrative tasks depending on it + */ + void implSetCurrentControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxControl ); + + /** invalidates the FormFeatures which depend on the current control + */ + void implInvalidateCurrentControlDependentFeatures(); + + bool impl_isDisposed_nofail() const { return FormController_BASE::rBHelper.bDisposed; } + + void impl_onModify(); + + sal_Bool isLocked() const {return m_bLocked;} + sal_Bool determineLockState() const; + + Window* getDialogParentWindow(); + // returns m_pWindow or - if m_pWindow is NULL - the window of the currently set container + + ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterceptor> createInterceptor(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterception>& _xInterception); + // create a new interceptor, register it on the given object + void deleteInterceptor(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProviderInterception>& _xInterception); + // if createInterceptor was called for the given object the according interceptor will be removed + // from the objects interceptor chain and released + + /** checks all form controls belonging to our form for validity + + If a form control supports the XValidatableFormComponent interface, this is used to determine + the validity of the control. If the interface is not supported, the control is supposed to be + valid. + + @param _rFirstInvalidityExplanation + if the method returns <FALSE/> (i.e. if there is an invalid control), this string contains + the explanation for the invalidity, as obtained from the validator. + + @param _rxFirstInvalidModel + if the method returns <FALSE/> (i.e. if there is an invalid control), this contains + the control model + + @return + <TRUE/> if and only if all controls belonging to our form are valid + */ + bool checkFormComponentValidity( + ::rtl::OUString& /* [out] */ _rFirstInvalidityExplanation, + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& /* [out] */ _rxFirstInvalidModel + ) SAL_THROW(()); + + /** locates the control which belongs to a given model + */ + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl > + locateControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxModel ) SAL_THROW(()); + + // set the text for all filters + void impl_setTextOnAllFilter_throw(); + + // in filter mode we do not listen for changes + sal_Bool isListeningForChanges() const {return m_bDBConnection && !m_bFiltering && !isLocked();} + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl> isInList(const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer>& xPeer) const; + + DECL_LINK( OnActivateTabOrder, void* ); + DECL_LINK( OnInvalidateFeatures, void* ); + DECL_LINK( OnLoad, void* ); + DECL_LINK( OnToggleAutoFields, void* ); + DECL_LINK( OnActivated, void* ); + DECL_LINK( OnDeactivated, void* ); + }; + +} // namespace svxform #endif // _SVX_FMCTRLER_HXX diff --git a/svx/source/inc/fmservs.hxx b/svx/source/inc/fmservs.hxx index 201a5a351224..62d9654858a3 100644 --- a/svx/source/inc/fmservs.hxx +++ b/svx/source/inc/fmservs.hxx @@ -57,7 +57,7 @@ #define FM_COMPONENT_IMAGECONTROL rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "stardiv.one.form.component.ImageControl" ) ) #define FM_CONTROL_GRID rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "stardiv.one.form.control.Grid" ) ) #define FM_CONTROL_GRIDCONTROL rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "stardiv.one.form.control.GridControl" ) ) -#define FM_FORM_CONTROLLER rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.FormController" ) ) +#define FM_FORM_CONTROLLER rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.runtime.FormController" ) ) #define SRV_SDB_CONNECTION rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdb.Connection" ) ) #define SRV_SDB_INTERACTION_HANDLER rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.sdb.InteractionHandler" ) ) #define FM_SUN_COMPONENT_FORM rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.Form" ) ) diff --git a/svx/source/inc/fmshimp.hxx b/svx/source/inc/fmshimp.hxx index 85644ea5daba..7d60e60f6d0e 100644 --- a/svx/source/inc/fmshimp.hxx +++ b/svx/source/inc/fmshimp.hxx @@ -40,7 +40,7 @@ #include <com/sun/star/awt/XControlContainer.hpp> #include <com/sun/star/util/XModifyListener.hpp> #include <com/sun/star/form/XForm.hpp> -#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> #include <com/sun/star/form/XFormComponent.hpp> #include <com/sun/star/form/NavigationBarMode.hpp> #include <com/sun/star/frame/XFrame.hpp> @@ -243,9 +243,9 @@ class SAL_DLLPRIVATE FmXFormShell :public FmXFormShell_BASE // aktuelle Form, Controller // nur im alive mode verfuegbar - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController> m_xActiveController; - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController> m_xNavigationController; - ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm> m_xActiveForm; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xActiveController; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xNavigationController; + ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm > m_xActiveForm; // Aktueller container einer Page // nur im designmode verfuegbar @@ -266,9 +266,9 @@ class SAL_DLLPRIVATE FmXFormShell :public FmXFormShell_BASE // the frame we live in ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame> m_xAttachedFrame; // Administration of external form views (see the SID_FM_VIEW_AS_GRID-slot) - ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController> m_xExternalViewController; // the controller for the external form view - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController> m_xExtViewTriggerController; // the nav controller at the time the external display was triggered - ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet> m_xExternalDisplayedForm; // the form which the external view is based on + ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > m_xExternalViewController; // the controller for the external form view + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xExtViewTriggerController; // the nav controller at the time the external display was triggered + ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet > m_xExternalDisplayedForm; // the form which the external view is based on FmXDispatchInterceptorImpl* m_pExternalViewInterceptor; @@ -399,11 +399,11 @@ protected: public: // methode fuer nicht designmode (alive mode) - void setActiveController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& _xController, sal_Bool _bNoSaveOldContent = sal_False ); - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& getActiveController() const {return m_xActiveController;} - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& getActiveInternalController() const { return m_xActiveController == m_xExternalViewController ? m_xExtViewTriggerController : m_xActiveController; } + void setActiveController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& _xController, sal_Bool _bNoSaveOldContent = sal_False ); + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& getActiveController() const {return m_xActiveController;} + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& getActiveInternalController() const { return m_xActiveController == m_xExternalViewController ? m_xExtViewTriggerController : m_xActiveController; } const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm>& getActiveForm() const {return m_xActiveForm;} - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& getNavController() const {return m_xNavigationController;} + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& getNavController() const {return m_xNavigationController;} inline const ::svx::ControllerFeatures& getActiveControllerFeatures() const { return m_aActiveControllerFeatures; } @@ -568,13 +568,13 @@ private: public: enum CURSOR_ACTION { CA_MOVE_TO_LAST, CA_MOVE_ABSOLUTE }; - void DoAsyncCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& _xController, CURSOR_ACTION _eWhat); + void DoAsyncCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& _xController, CURSOR_ACTION _eWhat); void DoAsyncCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet>& _xForm, CURSOR_ACTION _eWhat); sal_Bool HasAnyPendingCursorAction() const; void CancelAnyPendingCursorAction(); - sal_Bool HasPendingCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController>& _xController) const; + sal_Bool HasPendingCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController>& _xController) const; sal_Bool HasPendingCursorAction(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XResultSet>& _xForm) const; /** execute the given form slot diff --git a/svx/source/inc/fmtextcontrolshell.hxx b/svx/source/inc/fmtextcontrolshell.hxx index 17ba06d5513b..a67520f89ed8 100644 --- a/svx/source/inc/fmtextcontrolshell.hxx +++ b/svx/source/inc/fmtextcontrolshell.hxx @@ -36,7 +36,7 @@ #include <com/sun/star/frame/XStatusListener.hpp> #include <com/sun/star/awt/XFocusListener.hpp> #include <com/sun/star/awt/XMouseListener.hpp> -#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> #include <com/sun/star/awt/XControl.hpp> #include <com/sun/star/util/XURLTransformer.hpp> /** === end UNO includes === **/ @@ -92,10 +92,10 @@ namespace svx ,public IContextRequestObserver { private: - ::com::sun::star::uno::Reference< ::com::sun::star::util::XURLTransformer > m_xURLTransformer; - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl > m_xActiveControl; - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent > m_xActiveTextComponent; - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > m_xActiveController; + ::com::sun::star::uno::Reference< ::com::sun::star::util::XURLTransformer > m_xURLTransformer; + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl > m_xActiveControl; + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextComponent > m_xActiveTextComponent; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > m_xActiveController; #ifndef DONT_REMEMBER_LAST_CONTROL // without this define, m_xActiveControl remembers the *last* active control, even // if it, in the meantime, already lost the focus @@ -144,10 +144,10 @@ namespace svx /** to be called when a form in our document has been activated */ - void formActivated( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController ); + void formActivated( const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController ); /** to be called when a form in our document has been deactivated */ - void formDeactivated( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController ); + void formDeactivated( const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController ); /** notifies the instance that the design mode has changed */ @@ -205,7 +205,7 @@ namespace svx @precond we don't have an active controller currently */ - void startControllerListening( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController ); + void startControllerListening( const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController ); /** stops listening at the active controller @precond we have an active controller currently diff --git a/svx/source/inc/fmvwimp.hxx b/svx/source/inc/fmvwimp.hxx index 12965c07ad3b..b6e1c74e9375 100644 --- a/svx/source/inc/fmvwimp.hxx +++ b/svx/source/inc/fmvwimp.hxx @@ -37,7 +37,7 @@ #include <com/sun/star/form/XForm.hpp> #include <com/sun/star/container/XIndexAccess.hpp> #include <com/sun/star/container/XEnumeration.hpp> -#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> #include <com/sun/star/container/XContainerListener.hpp> #include <com/sun/star/container/ContainerEvent.hpp> #include <com/sun/star/lang/XMultiServiceFactory.hpp> @@ -73,7 +73,9 @@ FORWARD_DECLARE_INTERFACE(awt,XWindow) FORWARD_DECLARE_INTERFACE(beans,XPropertySet) FORWARD_DECLARE_INTERFACE(util,XNumberFormats) -class FmXFormController; +namespace svxform { + class FormController; +} class FmXFormView; namespace svx { @@ -88,9 +90,9 @@ class FmXPageViewWinRec : public ::cppu::WeakImplHelper1< ::com::sun::star::cont { friend class FmXFormView; - ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > > m_aControllerList; - ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer > m_xControlContainer; - ::comphelper::ComponentContext m_aContext; + ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > > m_aControllerList; + ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer > m_xControlContainer; + ::comphelper::ComponentContext m_aContext; FmXFormView* m_pViewImpl; Window* m_pWindow; @@ -113,12 +115,12 @@ public: virtual sal_Int32 SAL_CALL getCount() throw(::com::sun::star::uno::RuntimeException); virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 _Index) throw(::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); - const ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > >& GetList() {return m_aControllerList;} + const ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > >& GetList() {return m_aControllerList;} protected: - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > getController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& xForm ) const; + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > getController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& xForm ) const; void setController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& xForm, - FmXFormController* pParent = NULL); + ::svxform::FormController* pParent = NULL); ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer > getControlContainer() const { return m_xControlContainer; } void updateTabOrder( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& _rxForm ); void dispose(); @@ -213,7 +215,7 @@ public: FmWinRecList::const_iterator findWindow( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlContainer >& _rxCC ) const; const FmWinRecList& getWindowList() const {return m_aWinList;} - ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController > + ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController > getFormController( const ::com::sun::star::uno::Reference< ::com::sun::star::form::XForm >& _rxForm, const OutputDevice& _rDevice ) const; // activation handling diff --git a/svx/source/inc/formcontrolling.hxx b/svx/source/inc/formcontrolling.hxx index d082bd889804..2b5b64db262d 100644 --- a/svx/source/inc/formcontrolling.hxx +++ b/svx/source/inc/formcontrolling.hxx @@ -31,7 +31,7 @@ #ifndef SVX_FORMCONTROLLING_HXX #define SVX_FORMCONTROLLING_HXX -#include <com/sun/star/form/XFormController.hpp> +#include <com/sun/star/form/runtime/XFormController.hpp> #include <com/sun/star/form/XForm.hpp> #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/form/runtime/FeatureState.hpp> @@ -117,7 +117,7 @@ namespace svx IControllerFeatureInvalidation* _pInvalidationCallback ); - /** constructs the instance from a <type scope="com::sun::star::form">XFormController<type> instance + /** constructs the instance from a <type scope="com::sun::star::form::runtime">XFormController<type> instance @param _rxORB a multi service factory for creating various needed components @@ -131,7 +131,7 @@ namespace svx */ ControllerFeatures( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB, - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController, + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController, IControllerFeatureInvalidation* _pInvalidationCallback ); @@ -163,7 +163,7 @@ namespace svx /** assign to a controller */ void assign( - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController ); /** assign to a controller @@ -206,7 +206,7 @@ namespace svx ::com::sun::star::uno::Any m_aOperationError; public: - /** constructs the helper from a <type scope="com::sun::star::form">XFormController<type> instance + /** constructs the helper from a <type scope="com::sun::star::form::runtime">XFormController<type> instance @param _rContext the context the component lives in @@ -218,7 +218,7 @@ namespace svx */ FormControllerHelper( const ::comphelper::ComponentContext& _rContext, - const ::com::sun::star::uno::Reference< ::com::sun::star::form::XFormController >& _rxController, + const ::com::sun::star::uno::Reference< ::com::sun::star::form::runtime::XFormController >& _rxController, IControllerFeatureInvalidation* _pInvalidationCallback ); |