summaryrefslogtreecommitdiff
path: root/svx/source/form
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/form')
-rw-r--r--svx/source/form/fmdpage.cxx2
-rw-r--r--svx/source/form/fmmodel.cxx4
-rw-r--r--svx/source/form/fmobj.cxx42
-rw-r--r--svx/source/form/fmpage.cxx16
-rw-r--r--svx/source/form/fmpgeimp.cxx41
-rw-r--r--svx/source/form/fmundo.cxx8
-rw-r--r--svx/source/form/navigatortreemodel.cxx14
7 files changed, 48 insertions, 79 deletions
diff --git a/svx/source/form/fmdpage.cxx b/svx/source/form/fmdpage.cxx
index 5d239f5b6042..76d1c97f930f 100644
--- a/svx/source/form/fmdpage.cxx
+++ b/svx/source/form/fmdpage.cxx
@@ -112,7 +112,7 @@ SdrObject *SvxFmDrawPage::_CreateSdrObject( const ::com::sun::star::uno::Referen
FmFormPage *pFmPage = PTR_CAST( FmFormPage, GetSdrPage() );
if( pFmPage )
- xForms = pFmPage->GetForms();
+ xForms.set( pFmPage->GetForms(), css::uno::UNO_QUERY_THROW );
return xForms;
}
diff --git a/svx/source/form/fmmodel.cxx b/svx/source/form/fmmodel.cxx
index 474f8abfa1a2..b84f8b6912c4 100644
--- a/svx/source/form/fmmodel.cxx
+++ b/svx/source/form/fmmodel.cxx
@@ -175,7 +175,7 @@ SdrPage* FmFormModel::RemovePage(sal_uInt16 nPgNum)
if ( pToBeRemovedPage )
{
- Reference< XNameContainer > xForms( pToBeRemovedPage->GetForms( false ) );
+ Reference< XNameContainer > xForms( pToBeRemovedPage->GetForms( false ), css::uno::UNO_QUERY );
if ( xForms.is() )
m_pImpl->pUndoEnv->RemoveForms( xForms );
}
@@ -210,7 +210,7 @@ SdrPage* FmFormModel::RemoveMasterPage(sal_uInt16 nPgNum)
if ( pPage )
{
- Reference< XNameContainer > xForms( pPage->GetForms( false ) );
+ Reference< XNameContainer > xForms( pPage->GetForms( false ), css::uno::UNO_QUERY );
if ( xForms.is() )
m_pImpl->pUndoEnv->RemoveForms( xForms );
}
diff --git a/svx/source/form/fmobj.cxx b/svx/source/form/fmobj.cxx
index 5f0641a9910d..34949302dc9f 100644
--- a/svx/source/form/fmobj.cxx
+++ b/svx/source/form/fmobj.cxx
@@ -31,9 +31,10 @@
#include "svx/dialmgr.hxx"
#include <com/sun/star/awt/XDevice.hpp>
-#include <com/sun/star/script/XEventAttacherManager.hpp>
-#include <com/sun/star/io/XPersistObject.hpp>
#include <com/sun/star/awt/XControlContainer.hpp>
+#include <com/sun/star/form/Forms.hpp>
+#include <com/sun/star/io/XPersistObject.hpp>
+#include <com/sun/star/script/XEventAttacherManager.hpp>
#include <com/sun/star/util/XCloneable.hpp>
#include "svx/fmtools.hxx"
@@ -84,9 +85,8 @@ FmFormObj::~FmFormObj()
{
DBG_DTOR(FmFormObj, NULL);
- Reference< XComponent> xHistory(m_xEnvironmentHistory, UNO_QUERY);
- if (xHistory.is())
- xHistory->dispose();
+ if (m_xEnvironmentHistory.is())
+ m_xEnvironmentHistory->dispose();
m_xEnvironmentHistory = NULL;
m_aEventsHistory.realloc(0);
@@ -194,7 +194,7 @@ void FmFormObj::SetPage(SdrPage* _pNewPage)
return;
}
- Reference< XIndexContainer > xNewPageForms( pNewFormPage->GetForms( true ), UNO_QUERY );
+ Reference< css::form::XForms > xNewPageForms = pNewFormPage->GetForms( true );
Reference< XIndexContainer > xNewParent;
Sequence< ScriptEventDescriptor> aNewEvents;
@@ -204,7 +204,7 @@ void FmFormObj::SetPage(SdrPage* _pNewPage)
{
// the element in m_xEnvironmentHistory which is equivalent to my new parent (which (perhaps) has to be created within _pNewPage->GetForms)
// is the right-most element in the tree.
- Reference< XIndexContainer > xRightMostLeaf = m_xEnvironmentHistory;
+ Reference< XIndexContainer > xRightMostLeaf( m_xEnvironmentHistory, UNO_QUERY_THROW );
try
{
while ( xRightMostLeaf->getCount() )
@@ -318,9 +318,8 @@ void FmFormObj::SetPage(SdrPage* _pNewPage)
}
// delete my history
- Reference< XComponent> xHistory(m_xEnvironmentHistory, UNO_QUERY);
- if (xHistory.is())
- xHistory->dispose();
+ if (m_xEnvironmentHistory.is())
+ m_xEnvironmentHistory->dispose();
m_xEnvironmentHistory = NULL;
m_aEventsHistory.realloc(0);
@@ -345,9 +344,8 @@ sal_uInt16 FmFormObj::GetObjIdentifier() const
void FmFormObj::clonedFrom(const FmFormObj* _pSource)
{
DBG_ASSERT(_pSource != NULL, "FmFormObj::clonedFrom : invalid source !");
- Reference< XComponent> xHistory(m_xEnvironmentHistory, UNO_QUERY);
- if (xHistory.is())
- xHistory->dispose();
+ if (m_xEnvironmentHistory.is())
+ m_xEnvironmentHistory->dispose();
m_xEnvironmentHistory = NULL;
m_aEventsHistory.realloc(0);
@@ -358,17 +356,11 @@ void FmFormObj::clonedFrom(const FmFormObj* _pSource)
Reference< XInterface > xSourceContainer = xSourceAsChild->getParent();
- m_xEnvironmentHistory = Reference< XIndexContainer >(
- ::comphelper::getProcessServiceFactory()->createInstance(OUString("com.sun.star.form.Forms") ),
- UNO_QUERY);
- DBG_ASSERT(m_xEnvironmentHistory.is(), "FmFormObj::clonedFrom : could not create a forms collection !");
+ m_xEnvironmentHistory = css::form::Forms::create( comphelper::getProcessComponentContext() );
- if (m_xEnvironmentHistory.is())
- {
- ensureModelEnv(xSourceContainer, m_xEnvironmentHistory);
- m_aEventsHistory = aEvts;
- // if we we're clone there was a call to operator=, so aEvts are excatly the events we need here ...
- }
+ ensureModelEnv(xSourceContainer, m_xEnvironmentHistory);
+ m_aEventsHistory = aEvts;
+ // if we we're clone there was a call to operator=, so aEvts are excatly the events we need here ...
}
//------------------------------------------------------------------
@@ -454,7 +446,7 @@ namespace
}
//------------------------------------------------------------------
-Reference< XInterface > FmFormObj::ensureModelEnv(const Reference< XInterface > & _rSourceContainer, const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer > _rTopLevelDestContainer)
+Reference< XInterface > FmFormObj::ensureModelEnv(const Reference< XInterface > & _rSourceContainer, const Reference<css::form::XForms>& _rTopLevelDestContainer)
{
Reference< XInterface > xTopLevelSouce;
OUString sAccessPath = lcl_getFormComponentAccessPath(_rSourceContainer, xTopLevelSouce);
@@ -462,7 +454,7 @@ Reference< XInterface > FmFormObj::ensureModelEnv(const Reference< XInterface >
// something went wrong, maybe _rSourceContainer isn't part of a valid forms hierarchy
return Reference< XInterface > ();
- Reference< XIndexContainer > xDestContainer(_rTopLevelDestContainer);
+ Reference< XIndexContainer > xDestContainer(_rTopLevelDestContainer, UNO_QUERY_THROW);
Reference< XIndexContainer > xSourceContainer(xTopLevelSouce, UNO_QUERY);
DBG_ASSERT(xSourceContainer.is(), "FmFormObj::ensureModelEnv : the top level source is invalid !");
diff --git a/svx/source/form/fmpage.cxx b/svx/source/form/fmpage.cxx
index 3243c2314a68..507e2294712f 100644
--- a/svx/source/form/fmpage.cxx
+++ b/svx/source/form/fmpage.cxx
@@ -99,19 +99,15 @@ void FmFormPage::SetModel(SdrModel* pNewModel)
{
try
{
- Reference< XNameContainer > xForms( m_pImpl->getForms( false ) );
+ Reference< css::form::XForms > xForms( m_pImpl->getForms( false ) );
if ( xForms.is() )
{
// we want to keep the current collection, just reset the model
// with which it's associated.
- Reference< XChild > xAsChild( xForms, UNO_QUERY );
- if ( xAsChild.is() )
- {
- FmFormModel* pDrawModel = (FmFormModel*) GetModel();
- SfxObjectShell* pObjShell = pDrawModel->GetObjectShell();
- if ( pObjShell )
- xAsChild->setParent( pObjShell->GetModel() );
- }
+ FmFormModel* pDrawModel = (FmFormModel*) GetModel();
+ SfxObjectShell* pObjShell = pDrawModel->GetObjectShell();
+ if ( pObjShell )
+ xForms->setParent( pObjShell->GetModel() );
}
}
catch( ::com::sun::star::uno::Exception const& )
@@ -140,7 +136,7 @@ void FmFormPage::InsertObject(SdrObject* pObj, sal_uLong nPos,
}
//------------------------------------------------------------------
-const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > & FmFormPage::GetForms( bool _bForceCreate ) const
+const Reference< css::form::XForms > & FmFormPage::GetForms( bool _bForceCreate ) const
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFormPage::GetForms" );
const SdrPage& rMasterPage( *this );
diff --git a/svx/source/form/fmpgeimp.cxx b/svx/source/form/fmpgeimp.cxx
index 6d46e64d705d..ab7c9d597989 100644
--- a/svx/source/form/fmpgeimp.cxx
+++ b/svx/source/form/fmpgeimp.cxx
@@ -35,6 +35,7 @@
#include <com/sun/star/util/XCloneable.hpp>
#include <com/sun/star/container/EnumerableMap.hpp>
#include <com/sun/star/drawing/XControlShape.hpp>
+#include <com/sun/star/form/Forms.hpp>
#include <sfx2/objsh.hxx>
#include <svx/fmglob.hxx>
@@ -159,18 +160,11 @@ namespace
void FmFormPageImpl::initFrom( FmFormPageImpl& i_foreignImpl )
{
// clone the Forms collection
- const Reference< XNameContainer > xForeignForms( const_cast< FmFormPageImpl& >( i_foreignImpl ).getForms( false ) );
- const Reference< XCloneable > xCloneable( xForeignForms, UNO_QUERY );
- if ( !xCloneable.is() )
- {
- // great, nothing to do
- OSL_ENSURE( !xForeignForms.is(), "FmFormPageImpl::FmFormPageImpl: a non-cloneable forms container!?" );
- return;
- }
+ const Reference< css::form::XForms > xForeignForms( const_cast< FmFormPageImpl& >( i_foreignImpl ).getForms( false ) );
try
{
- m_xForms.set( xCloneable->createClone(), UNO_QUERY_THROW );
+ m_xForms.set( xForeignForms->createClone(), UNO_QUERY_THROW );
// create a mapping between the original control models and their clones
MapControlModels aModelAssignment;
@@ -179,7 +173,7 @@ void FmFormPageImpl::initFrom( FmFormPageImpl& i_foreignImpl )
FormComponentVisitor aVisitor = FormComponentVisitor( FormHierarchyComparator() );
FormComponentAssignment aAssignmentProcessor( aModelAssignment );
- aVisitor.process( FormComponentPair( xCloneable, m_xForms ), aAssignmentProcessor );
+ aVisitor.process( FormComponentPair( xForeignForms, m_xForms ), aAssignmentProcessor );
// assign the cloned models to their SdrObjects
SdrObjListIter aForeignIter( i_foreignImpl.m_rPage );
@@ -318,7 +312,7 @@ Reference< XMap > FmFormPageImpl::impl_createControlShapeMap_nothrow()
}
//------------------------------------------------------------------------------
-const Reference< XNameContainer >& FmFormPageImpl::getForms( bool _bForceCreate )
+const Reference< css::form::XForms >& FmFormPageImpl::getForms( bool _bForceCreate )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFormPageImpl::getForms" );
if ( m_xForms.is() || !_bForceCreate )
@@ -328,12 +322,8 @@ const Reference< XNameContainer >& FmFormPageImpl::getForms( bool _bForceCreate
{
m_bAttemptedFormCreation = true;
- const OUString sFormsCollectionServiceName("com.sun.star.form.Forms");
Reference<XComponentContext> xContext = comphelper::getProcessComponentContext();
- m_xForms.set(
- xContext->getServiceManager()->createInstanceWithContext( sFormsCollectionServiceName, xContext),
- UNO_QUERY_THROW
- );
+ m_xForms = css::form::Forms::create( xContext );
if ( m_aFormsCreationHdl.IsSet() )
{
@@ -343,17 +333,13 @@ const Reference< XNameContainer >& FmFormPageImpl::getForms( bool _bForceCreate
FmFormModel* pFormsModel = PTR_CAST( FmFormModel, m_rPage.GetModel() );
// give the newly created collection a place in the universe
- Reference< XChild > xAsChild( m_xForms, UNO_QUERY );
- if ( xAsChild.is() )
- {
- SfxObjectShell* pObjShell = pFormsModel ? pFormsModel->GetObjectShell() : NULL;
- if ( pObjShell )
- xAsChild->setParent( pObjShell->GetModel() );
- }
+ SfxObjectShell* pObjShell = pFormsModel ? pFormsModel->GetObjectShell() : NULL;
+ if ( pObjShell )
+ m_xForms->setParent( pObjShell->GetModel() );
// tell the UNDO environment that we have a new forms collection
if ( pFormsModel )
- pFormsModel->GetUndoEnv().AddForms( m_xForms );
+ pFormsModel->GetUndoEnv().AddForms( Reference<XNameContainer>(m_xForms,UNO_QUERY_THROW) );
}
return m_xForms;
}
@@ -395,13 +381,13 @@ Reference< XForm > FmFormPageImpl::getDefaultForm()
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "FmFormPageImpl::getDefaultForm" );
Reference< XForm > xForm;
- Reference< XNameContainer > xForms( getForms() );
+ Reference< XForms > xForms( getForms() );
// by default, we use our "current form"
if ( !validateCurForm() )
{
// check whether there is a "standard" form
- if ( xForms->hasElements() )
+ if ( Reference<XNameAccess>(xForms,UNO_QUERY_THROW)->hasElements() )
{
// suche die Standardform
OUString sStandardFormname = String( SVX_RES( RID_STR_STDFORMNAME ) );
@@ -412,8 +398,7 @@ Reference< XForm > FmFormPageImpl::getDefaultForm()
xForm.set( xForms->getByName( sStandardFormname ), UNO_QUERY_THROW );
else
{
- Reference< XIndexAccess > xFormsByIndex( xForms, UNO_QUERY_THROW );
- xForm.set( xFormsByIndex->getByIndex(0), UNO_QUERY_THROW );
+ xForm.set( xForms->getByIndex(0), UNO_QUERY_THROW );
}
}
catch( const Exception& )
diff --git a/svx/source/form/fmundo.cxx b/svx/source/form/fmundo.cxx
index 20b924b28f66..29ef91a77aa5 100644
--- a/svx/source/form/fmundo.cxx
+++ b/svx/source/form/fmundo.cxx
@@ -214,7 +214,7 @@ void FmXUndoEnvironment::dispose()
FmFormPage* pPage = PTR_CAST( FmFormPage, rModel.GetPage(i) );
if ( pPage )
{
- Reference< XInterface > xForms = pPage->GetForms( false ).get();
+ Reference< css::form::XForms > xForms = pPage->GetForms( false ).get();
if ( xForms.is() )
RemoveElement( xForms );
}
@@ -226,7 +226,7 @@ void FmXUndoEnvironment::dispose()
FmFormPage* pPage = PTR_CAST( FmFormPage, rModel.GetMasterPage(i) );
if ( pPage )
{
- Reference< XInterface > xForms = pPage->GetForms( false ).get();
+ Reference< css::form::XForms > xForms = pPage->GetForms( false ).get();
if ( xForms.is() )
RemoveElement( xForms );
}
@@ -265,7 +265,7 @@ void FmXUndoEnvironment::ModeChanged()
FmFormPage* pPage = PTR_CAST( FmFormPage, rModel.GetPage(i) );
if ( pPage )
{
- Reference< XInterface > xForms = pPage->GetForms( false ).get();
+ Reference< css::form::XForms > xForms = pPage->GetForms( false ).get();
if ( xForms.is() )
TogglePropertyListening( xForms );
}
@@ -277,7 +277,7 @@ void FmXUndoEnvironment::ModeChanged()
FmFormPage* pPage = PTR_CAST( FmFormPage, rModel.GetMasterPage(i) );
if ( pPage )
{
- Reference< XInterface > xForms = pPage->GetForms( false ).get();
+ Reference< css::form::XForms > xForms = pPage->GetForms( false ).get();
if ( xForms.is() )
TogglePropertyListening( xForms );
}
diff --git a/svx/source/form/navigatortreemodel.cxx b/svx/source/form/navigatortreemodel.cxx
index 4187473ef9b3..a5c7d96c99f8 100644
--- a/svx/source/form/navigatortreemodel.cxx
+++ b/svx/source/form/navigatortreemodel.cxx
@@ -253,10 +253,8 @@ namespace svxform
void NavigatorTreeModel::Clear()
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "NavigatorTreeModel::Clear" );
- Reference< XNameContainer > xForms( GetForms());
- Reference< XContainer > xContainer(xForms, UNO_QUERY);
- if (xContainer.is())
- xContainer->removeContainerListener((XContainerListener*)m_pPropChangeList);
+ Reference< css::form::XForms > xForms( GetForms());
+ xForms->removeContainerListener((XContainerListener*)m_pPropChangeList);
//////////////////////////////////////////////////////////////////////
// RootList loeschen
@@ -269,7 +267,7 @@ namespace svxform
}
//------------------------------------------------------------------------
- Reference< XNameContainer > NavigatorTreeModel::GetForms() const
+ Reference< css::form::XForms > NavigatorTreeModel::GetForms() const
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "NavigatorTreeModel::GetForms" );
if( !m_pFormShell || !m_pFormShell->GetCurPage())
@@ -869,7 +867,7 @@ namespace svxform
}
//------------------------------------------------------------------------
- void NavigatorTreeModel::UpdateContent( const Reference< XNameContainer > & xForms )
+ void NavigatorTreeModel::UpdateContent( const Reference< css::form::XForms > & xForms )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "svx", "Ocke.Janssen@sun.com", "NavigatorTreeModel::UpdateContent" );
//////////////////////////////////////////////////////////////////////
@@ -877,9 +875,7 @@ namespace svxform
Clear();
if (xForms.is())
{
- Reference< XContainer > xFormContainer(xForms, UNO_QUERY);
- if (xFormContainer.is())
- xFormContainer->addContainerListener((XContainerListener*)m_pPropChangeList);
+ xForms->addContainerListener((XContainerListener*)m_pPropChangeList);
FillBranch(NULL);