diff options
author | Noel Grandin <noel@peralex.com> | 2012-12-04 13:18:35 +0200 |
---|---|---|
committer | Noel Grandin <noel@peralex.com> | 2012-12-06 13:20:31 +0200 |
commit | 773ad75b0dbc4dac1cae704c726b5a2d67ae1146 (patch) | |
tree | b95386a6639835d7751a6b3aa7bcdfb114f026f8 | |
parent | 584cd8d1c23d47becb776e382f853ffe77ce9fc2 (diff) |
fdo#46808, Adapt util::NumberFormatsSupplier UNO service to new style
Change-Id: I58436d9eea0c38d14cde2dc01aa463d5d71912e9
40 files changed, 112 insertions, 139 deletions
diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx index d56814fcd7d9..1e1b92732810 100644 --- a/basctl/source/dlged/dlged.cxx +++ b/basctl/source/dlged/dlged.cxx @@ -35,6 +35,7 @@ #include <com/sun/star/awt/XDialog.hpp> #include <com/sun/star/resource/XStringResourcePersistence.hpp> #include <com/sun/star/util/XCloneable.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <comphelper/types.hxx> #include <sfx2/viewfrm.hxx> #include <svl/itempool.hxx> @@ -434,9 +435,8 @@ Reference< util::XNumberFormatsSupplier > const & DlgEditor::GetNumberFormatsSup { if ( !m_xSupplier.is() ) { - Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory(); - Reference< util::XNumberFormatsSupplier > xSupplier( xMSF->createInstance( - "com.sun.star.util.NumberFormatsSupplier" ), UNO_QUERY ); + Reference< uno::XComponentContext > xContext = ::comphelper::getProcessComponentContext(); + Reference< util::XNumberFormatsSupplier > xSupplier( util::NumberFormatsSupplier::createWithDefaultLocale(xContext) ); ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); if ( !m_xSupplier.is() ) diff --git a/connectivity/inc/connectivity/dbtools.hxx b/connectivity/inc/connectivity/dbtools.hxx index 18fd291f397d..a3956b967a1e 100644 --- a/connectivity/inc/connectivity/dbtools.hxx +++ b/connectivity/inc/connectivity/dbtools.hxx @@ -410,7 +410,7 @@ namespace dbtools OOO_DLLPUBLIC_DBTOOLS ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier> getNumberFormats( const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& _rxConn, sal_Bool _bAllowDefault = sal_False, - const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory = ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>() + const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& _rxContext = ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>() ); /** create an <type scope="com::sun::star::sdb">XSingleSelectQueryComposer</type> which represents diff --git a/connectivity/source/commontools/dbtools.cxx b/connectivity/source/commontools/dbtools.cxx index 065fa84d306f..a5420fcc6ea1 100644 --- a/connectivity/source/commontools/dbtools.cxx +++ b/connectivity/source/commontools/dbtools.cxx @@ -61,7 +61,7 @@ #include <com/sun/star/ui/dialogs/XExecutableDialog.hpp> #include <com/sun/star/uno/XNamingService.hpp> #include <com/sun/star/util/NumberFormat.hpp> -#include <com/sun/star/util/XNumberFormatsSupplier.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <com/sun/star/util/XNumberFormatTypes.hpp> #include <comphelper/extract.hxx> @@ -948,7 +948,7 @@ void qualifiedNameComponents(const Reference< XDatabaseMetaData >& _rxConnMetaDa Reference< XNumberFormatsSupplier> getNumberFormats( const Reference< XConnection>& _rxConn, sal_Bool _bAlloweDefault, - const Reference< XMultiServiceFactory>& _rxFactory) + const Reference< XComponentContext>& _rxContext) { // ask the parent of the connection (should be an DatabaseAccess) Reference< XNumberFormatsSupplier> xReturn; @@ -960,9 +960,9 @@ Reference< XNumberFormatsSupplier> getNumberFormats( if (xConnParentProps.is() && hasProperty(sPropFormatsSupplier, xConnParentProps)) xConnParentProps->getPropertyValue(sPropFormatsSupplier) >>= xReturn; } - else if(_bAlloweDefault && _rxFactory.is()) + else if(_bAlloweDefault && _rxContext.is()) { - xReturn = Reference< XNumberFormatsSupplier>(_rxFactory->createInstance(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.util.NumberFormatsSupplier"))),UNO_QUERY); + xReturn = NumberFormatsSupplier::createWithDefaultLocale( _rxContext ); } return xReturn; } diff --git a/connectivity/source/commontools/formattedcolumnvalue.cxx b/connectivity/source/commontools/formattedcolumnvalue.cxx index 2a34ca29ef2d..756e55cc6bf8 100644 --- a/connectivity/source/commontools/formattedcolumnvalue.cxx +++ b/connectivity/source/commontools/formattedcolumnvalue.cxx @@ -197,7 +197,7 @@ namespace dbtools { // get the number formats supplier of the connection of the form Reference< XConnection > xConnection( getConnection( i_rRowSet ), UNO_QUERY_THROW ); - Reference< XNumberFormatsSupplier > xSupplier( getNumberFormats( xConnection, sal_True, i_rContext.getLegacyServiceFactory() ), UNO_SET_THROW ); + Reference< XNumberFormatsSupplier > xSupplier( getNumberFormats( xConnection, sal_True, i_rContext.getUNOContext() ), UNO_SET_THROW ); // create a number formatter for it xNumberFormatter.set( NumberFormatter::create(i_rContext.getUNOContext()), UNO_QUERY_THROW ); diff --git a/connectivity/source/drivers/flat/ETable.cxx b/connectivity/source/drivers/flat/ETable.cxx index 9fe48f0abe24..87e2d6679581 100644 --- a/connectivity/source/drivers/flat/ETable.cxx +++ b/connectivity/source/drivers/flat/ETable.cxx @@ -38,6 +38,7 @@ #include "flat/EDriver.hxx" #include <com/sun/star/util/NumberFormat.hpp> #include <com/sun/star/util/NumberFormatter.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <unotools/configmgr.hxx> #include <i18npool/languagetag.hxx> #include "connectivity/dbconversion.hxx" @@ -58,6 +59,7 @@ using namespace ::com::sun::star::sdbcx; using namespace ::com::sun::star::sdbc; using namespace ::com::sun::star::container; using namespace ::com::sun::star::lang; +using namespace ::com::sun::star::util; // ------------------------------------------------------------------------- void OFlatTable::fillColumns(const ::com::sun::star::lang::Locale& _aLocale) @@ -419,12 +421,9 @@ void OFlatTable::construct() RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "flat", "Ocke.Janssen@sun.com", "OFlatTable::construct" ); SvtSysLocale aLocale; ::com::sun::star::lang::Locale aAppLocale(aLocale.GetLanguageTag().getLocale()); - Sequence< ::com::sun::star::uno::Any > aArg(1); - aArg[0] <<= aAppLocale; - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier(m_pConnection->getDriver()->getFactory()->createInstanceWithArguments(::rtl::OUString("com.sun.star.util.NumberFormatsSupplier"),aArg),UNO_QUERY); - m_xNumberFormatter = Reference< ::com::sun::star::util::XNumberFormatter >( - ::com::sun::star::util::NumberFormatter::create( + Reference< XNumberFormatsSupplier > xSupplier = NumberFormatsSupplier::createWithLocale( getComponentContext(m_pConnection->getDriver()->getFactory()), aAppLocale ); + m_xNumberFormatter = Reference< XNumberFormatter >( NumberFormatter::create( comphelper::getComponentContext(m_pConnection->getDriver()->getFactory())), UNO_QUERY_THROW); m_xNumberFormatter->attachNumberFormatsSupplier(xSupplier); diff --git a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx index 837836d311f9..6f1c57f4cccc 100644 --- a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx +++ b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx @@ -257,7 +257,7 @@ OSingleSelectQueryComposer::OSingleSelectQueryComposer(const Reference< XNameAcc m_aCurrentColumns.resize(4); m_aLocale = SvtSysLocale().GetLanguageTag().getLocale(); - m_xNumberFormatsSupplier = dbtools::getNumberFormats( m_xConnection, sal_True, m_aContext.getLegacyServiceFactory() ); + m_xNumberFormatsSupplier = dbtools::getNumberFormats( m_xConnection, sal_True, m_aContext.getUNOContext() ); Reference< XLocaleData4 > xLocaleData( LocaleData::create(m_aContext.getUNOContext()) ); LocaleDataItem aData = xLocaleData->getLocaleItem(m_aLocale); m_sDecimalSep = aData.decimalSeparator; diff --git a/dbaccess/source/core/dataaccess/ModelImpl.cxx b/dbaccess/source/core/dataaccess/ModelImpl.cxx index 543237590687..de74b4fc9648 100644 --- a/dbaccess/source/core/dataaccess/ModelImpl.cxx +++ b/dbaccess/source/core/dataaccess/ModelImpl.cxx @@ -40,6 +40,7 @@ #include <com/sun/star/script/DocumentDialogLibraryContainer.hpp> #include <com/sun/star/lang/WrappedTargetRuntimeException.hpp> #include <com/sun/star/form/XLoadable.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <comphelper/interaction.hxx> #include <comphelper/mediadescriptor.hxx> @@ -760,12 +761,9 @@ const Reference< XNumberFormatsSupplier > & ODatabaseModelImpl::getNumberFormats { // the arguments : the locale of the current user UserInformation aUserInfo; - Sequence< Any > aArguments(1); - aArguments.getArray()[0] <<= aUserInfo.getUserLanguage(); + Locale aLocale = aUserInfo.getUserLanguage(); - m_xNumberFormatsSupplier.set( - m_aContext.createComponentWithArguments( "com.sun.star.util.NumberFormatsSupplier", aArguments ), UNO_QUERY_THROW ); - OSL_ENSURE(m_xNumberFormatsSupplier.is(), "ODatabaseModelImpl::getNumberFormatsSupplier : could not instantiate the formats supplier !"); + m_xNumberFormatsSupplier.set( NumberFormatsSupplier::createWithLocale( m_aContext.getUNOContext(), aLocale ) ); } return m_xNumberFormatsSupplier; } diff --git a/dbaccess/source/ui/app/AppControllerDnD.cxx b/dbaccess/source/ui/app/AppControllerDnD.cxx index 6ed5db02d53f..763c9789aafb 100644 --- a/dbaccess/source/ui/app/AppControllerDnD.cxx +++ b/dbaccess/source/ui/app/AppControllerDnD.cxx @@ -21,6 +21,7 @@ #include "AppController.hxx" #include <comphelper/sequence.hxx> #include <comphelper/property.hxx> +#include <comphelper/processfactory.hxx> #include "dbustrings.hrc" #include <com/sun/star/sdbcx/XDataDescriptorFactory.hpp> #include <com/sun/star/sdbcx/XAppend.hpp> @@ -505,11 +506,11 @@ TransferableHelper* OApplicationController::copyObject() if ( eType == E_TABLE ) { - pData = new ODataClipboard(sDataSource, CommandType::TABLE, sName, xConnection, getNumberFormatter(xConnection,getORB()), getORB()); + pData = new ODataClipboard(sDataSource, CommandType::TABLE, sName, xConnection, getNumberFormatter(xConnection, comphelper::getComponentContext(getORB())), getORB()); } else { - pData = new ODataClipboard(sDataSource, CommandType::QUERY, sName, getNumberFormatter(xConnection,getORB()), getORB()); + pData = new ODataClipboard(sDataSource, CommandType::QUERY, sName, getNumberFormatter(xConnection, comphelper::getComponentContext(getORB())), getORB()); } } } diff --git a/dbaccess/source/ui/browser/brwctrlr.cxx b/dbaccess/source/ui/browser/brwctrlr.cxx index 8fec4ff329c1..ccd75ae01d0d 100644 --- a/dbaccess/source/ui/browser/brwctrlr.cxx +++ b/dbaccess/source/ui/browser/brwctrlr.cxx @@ -773,7 +773,7 @@ void SbaXDataBrowserController::initFormatter() RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbaui", "Ocke.Janssen@sun.com", "SbaXDataBrowserController::initFormatter" ); // --------------------------------------------------------------- // create a formatter working with the connections format supplier - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(::dbtools::getConnection(m_xRowSet), sal_True,getORB())); + Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(::dbtools::getConnection(m_xRowSet), sal_True, comphelper::getComponentContext(getORB()))); if(xSupplier.is()) { @@ -2004,7 +2004,7 @@ void SbaXDataBrowserController::ExecuteSearch() xModelSet->setPropertyValue(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("AlwaysShowCursor")), ::comphelper::makeBoolAny(sal_Bool(sal_True))); xModelSet->setPropertyValue(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CursorColor")), makeAny(sal_Int32(COL_LIGHTRED))); - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xNFS(::dbtools::getNumberFormats(::dbtools::getConnection(m_xRowSet), sal_True,getORB())); + Reference< ::com::sun::star::util::XNumberFormatsSupplier > xNFS(::dbtools::getNumberFormats(::dbtools::getConnection(m_xRowSet), sal_True, comphelper::getComponentContext(getORB()))); SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); AbstractFmSearchDialog* pDialog = NULL; diff --git a/dbaccess/source/ui/browser/dbexchange.cxx b/dbaccess/source/ui/browser/dbexchange.cxx index fa2abaa9906d..6bf1451b9760 100644 --- a/dbaccess/source/ui/browser/dbexchange.cxx +++ b/dbaccess/source/ui/browser/dbexchange.cxx @@ -29,6 +29,7 @@ #include <comphelper/uno3.hxx> #include <svx/dataaccessdescriptor.hxx> #include "UITools.hxx" +#include <comphelper/processfactory.hxx> namespace dbaui @@ -128,7 +129,7 @@ namespace dbaui if ( xConnection.is() && i_rORB.is() ) { - Reference< XNumberFormatter > xFormatter( getNumberFormatter( xConnection, i_rORB ) ); + Reference< XNumberFormatter > xFormatter( getNumberFormatter( xConnection, comphelper::getComponentContext(i_rORB) ) ); if ( xFormatter.is() ) { m_pHtml.set( new OHTMLImportExport( getDescriptor(), i_rORB, xFormatter ) ); diff --git a/dbaccess/source/ui/browser/sbagrid.cxx b/dbaccess/source/ui/browser/sbagrid.cxx index 3a8ac73c81bb..d98a67147926 100644 --- a/dbaccess/source/ui/browser/sbagrid.cxx +++ b/dbaccess/source/ui/browser/sbagrid.cxx @@ -836,7 +836,7 @@ void SbaGridControl::PreExecuteRowContextMenu(sal_uInt16 nRow, PopupMenu& rMenu) //------------------------------------------------------------------------------ SvNumberFormatter* SbaGridControl::GetDatasourceFormatter() { - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier = ::dbtools::getNumberFormats(::dbtools::getConnection(Reference< XRowSet > (getDataSource(),UNO_QUERY)), sal_True,getServiceManager()); + Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier = ::dbtools::getNumberFormats(::dbtools::getConnection(Reference< XRowSet > (getDataSource(),UNO_QUERY)), sal_True, comphelper::getComponentContext(getServiceManager())); SvNumberFormatsSupplierObj* pSupplierImpl = SvNumberFormatsSupplierObj::getImplementation( xSupplier ); if ( !pSupplierImpl ) diff --git a/dbaccess/source/ui/control/ColumnControlWindow.cxx b/dbaccess/source/ui/control/ColumnControlWindow.cxx index 2c12e84d07ba..873ba4d2ccea 100644 --- a/dbaccess/source/ui/control/ColumnControlWindow.cxx +++ b/dbaccess/source/ui/control/ColumnControlWindow.cxx @@ -41,9 +41,9 @@ using namespace ::com::sun::star::lang; DBG_NAME(OColumnControlWindow) //======================================================================== OColumnControlWindow::OColumnControlWindow(Window* pParent - ,const Reference<XMultiServiceFactory>& _rxFactory) + ,const Reference<XComponentContext>& _rxContext) : OFieldDescControl(pParent,NULL) - , m_xORB(_rxFactory) + , m_xContext(_rxContext) , m_sTypeNames(ModuleRes(STR_TABLEDESIGN_DBFIELDTYPES)) , m_bAutoIncrementEnabled(sal_True) { @@ -100,12 +100,12 @@ Reference< XNumberFormatter > OColumnControlWindow::GetFormatter() const if ( !m_xFormatter.is() ) try { - Reference< XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(m_xConnection, sal_True,m_xORB)); + Reference< XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(m_xConnection, sal_True, m_xContext)); if ( xSupplier.is() ) { // create a new formatter - m_xFormatter.set( NumberFormatter::create(comphelper::getComponentContext(m_xORB)), UNO_QUERY_THROW); + m_xFormatter.set( NumberFormatter::create(m_xContext), UNO_QUERY_THROW); m_xFormatter->attachNumberFormatsSupplier(xSupplier); } } diff --git a/dbaccess/source/ui/inc/ColumnControlWindow.hxx b/dbaccess/source/ui/inc/ColumnControlWindow.hxx index 6e5637a68fc1..81c7d8e20f23 100644 --- a/dbaccess/source/ui/inc/ColumnControlWindow.hxx +++ b/dbaccess/source/ui/inc/ColumnControlWindow.hxx @@ -21,7 +21,7 @@ #include "FieldDescControl.hxx" #include "TypeInfo.hxx" -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/uno/XComponentContext.hpp> #include <com/sun/star/util/XNumberFormatter.hpp> //......................................................................... @@ -34,7 +34,7 @@ namespace dbaui class OColumnControlWindow : public OFieldDescControl { ::com::sun::star::lang::Locale m_aLocale; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory> m_xORB; + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> m_xContext; ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> m_xConnection; mutable ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > m_xFormatter; // a number formatter working with the connection's NumberFormatsSupplier @@ -58,7 +58,7 @@ namespace dbaui public: OColumnControlWindow(Window* pParent - ,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory); + ,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& _rxContext); virtual ~OColumnControlWindow(); void setConnection(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& _xCon); diff --git a/dbaccess/source/ui/inc/UITools.hxx b/dbaccess/source/ui/inc/UITools.hxx index df0c4b18b675..9b30fce17ce5 100644 --- a/dbaccess/source/ui/inc/UITools.hxx +++ b/dbaccess/source/ui/inc/UITools.hxx @@ -415,7 +415,7 @@ namespace dbaui @param _rMF The multi service factory */ - ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > getNumberFormatter(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rMF ); + ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > getNumberFormatter(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext ); // this completes a help url with the system parameters "Language" and "System" // detect installed locale diff --git a/dbaccess/source/ui/inc/WCopyTable.hxx b/dbaccess/source/ui/inc/WCopyTable.hxx index bc0e07b1c60b..87098f600e27 100644 --- a/dbaccess/source/ui/inc/WCopyTable.hxx +++ b/dbaccess/source/ui/inc/WCopyTable.hxx @@ -25,6 +25,7 @@ #include <com/sun/star/sdbc/XResultSet.hpp> #include <com/sun/star/sdbc/XResultSetMetaData.hpp> #include <com/sun/star/sdbc/XDatabaseMetaData.hpp> +#include <com/sun/star/uno/XComponentContext.hpp> #include <com/sun/star/beans/XPropertySet.hpp> #include <comphelper/stl_types.hxx> #include "TypeInfo.hxx" @@ -264,7 +265,7 @@ namespace dbaui const ICopyTableSourceObject& m_rSourceObject; ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > m_xFormatter; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory> m_xFactory; + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> m_xContext; ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler> m_xInteractionHandler; String m_sTypeNames; // these type names are the ones out of the resource file @@ -310,7 +311,7 @@ namespace dbaui const ICopyTableSourceObject& _rSourceObject, const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _xSourceConnection, const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _xConnection, - const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB, + const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext, const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler>& _xInteractionHandler ); @@ -325,7 +326,7 @@ namespace dbaui const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter >& _xFormatter, TypeSelectionPageFactory _pTypeSelectionPageFactory, SvStream& _rTypeSelectionPageArg, - const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rM + const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext ); virtual ~OCopyTableWizard(); @@ -382,7 +383,7 @@ namespace dbaui ::com::sun::star::lang::Locale GetLocale() const { return m_aLocale; } ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter > GetFormatter() const { return m_xFormatter; } - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory> GetFactory() const { return m_xFactory; } + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> GetComponentContext() const { return m_xContext; } const ODatabaseExport::TColumns* getSourceColumns() const{ return &m_vSourceColumns; } const ODatabaseExport::TColumnVector* getSrcVector() const { return &m_vSourceVec; } diff --git a/dbaccess/source/ui/misc/DExport.cxx b/dbaccess/source/ui/misc/DExport.cxx index eb3a755d7115..1599bed21890 100644 --- a/dbaccess/source/ui/misc/DExport.cxx +++ b/dbaccess/source/ui/misc/DExport.cxx @@ -715,7 +715,7 @@ sal_Bool ODatabaseExport::executeWizard(const ::rtl::OUString& _rTableName,const m_xFormatter, getTypeSelectionPageFactory(), m_rInputStream, - m_xFactory + comphelper::getComponentContext(m_xFactory) ); sal_Bool bError = sal_False; diff --git a/dbaccess/source/ui/misc/TableCopyHelper.cxx b/dbaccess/source/ui/misc/TableCopyHelper.cxx index 83b73a894d04..b57bf8e0072f 100644 --- a/dbaccess/source/ui/misc/TableCopyHelper.cxx +++ b/dbaccess/source/ui/misc/TableCopyHelper.cxx @@ -40,6 +40,7 @@ #include <tools/urlobj.hxx> #include <tools/diagnose_ex.h> #include <comphelper/componentcontext.hxx> +#include <comphelper/processfactory.hxx> #include <com/sun/star/sdbcx/XTablesSupplier.hpp> #include <com/sun/star/sdbcx/XViewsSupplier.hpp> #include <com/sun/star/sdb/XQueryDefinitionsSupplier.hpp> @@ -246,9 +247,9 @@ sal_Bool OTableCopyHelper::copyTagTable(OTableCopyHelper::DropDescriptor& _rDesc Reference<XEventListener> xEvt; ODatabaseImportExport* pImport = NULL; if ( _rDesc.bHtml ) - pImport = new OHTMLImportExport(_xConnection,getNumberFormatter(_xConnection,m_pController->getORB()),m_pController->getORB()); + pImport = new OHTMLImportExport(_xConnection,getNumberFormatter(_xConnection, comphelper::getComponentContext(m_pController->getORB())),m_pController->getORB()); else - pImport = new ORTFImportExport(_xConnection,getNumberFormatter(_xConnection,m_pController->getORB()),m_pController->getORB()); + pImport = new ORTFImportExport(_xConnection,getNumberFormatter(_xConnection, comphelper::getComponentContext(m_pController->getORB())),m_pController->getORB()); xEvt = pImport; SvStream* pStream = (SvStream*)(SotStorageStream*)_rDesc.aHtmlRtfStorage; diff --git a/dbaccess/source/ui/misc/UITools.cxx b/dbaccess/source/ui/misc/UITools.cxx index e28ad805f397..b781a71f96ba 100644 --- a/dbaccess/source/ui/misc/UITools.cxx +++ b/dbaccess/source/ui/misc/UITools.cxx @@ -1604,7 +1604,7 @@ sal_Bool insertHierachyElement( Window* _pParent, const Reference< XMultiService return sal_True; } // ----------------------------------------------------------------------------- -Reference< XNumberFormatter > getNumberFormatter(const Reference< XConnection >& _rxConnection,const Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rMF ) +Reference< XNumberFormatter > getNumberFormatter(const Reference< XConnection >& _rxConnection, const Reference< ::com::sun::star::uno::XComponentContext >& _rxContext ) { // --------------------------------------------------------------- // create a formatter working with the connections format supplier @@ -1612,13 +1612,13 @@ Reference< XNumberFormatter > getNumberFormatter(const Reference< XConnection >& try { - Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(_rxConnection, sal_True,_rMF)); + Reference< ::com::sun::star::util::XNumberFormatsSupplier > xSupplier(::dbtools::getNumberFormats(_rxConnection, sal_True, _rxContext)); if ( xSupplier.is() ) { // create a new formatter xFormatter = Reference< util::XNumberFormatter > ( - util::NumberFormatter::create(comphelper::getComponentContext(_rMF)), UNO_QUERY_THROW); + util::NumberFormatter::create( _rxContext ), UNO_QUERY_THROW); xFormatter->attachNumberFormatsSupplier(xSupplier); } } diff --git a/dbaccess/source/ui/misc/WCopyTable.cxx b/dbaccess/source/ui/misc/WCopyTable.cxx index b468478b5d50..5edb86e1b2b4 100644 --- a/dbaccess/source/ui/misc/WCopyTable.cxx +++ b/dbaccess/source/ui/misc/WCopyTable.cxx @@ -548,7 +548,7 @@ namespace //------------------------------------------------------------------------ OCopyTableWizard::OCopyTableWizard( Window * pParent, const ::rtl::OUString& _rDefaultName, sal_Int16 _nOperation, const ICopyTableSourceObject& _rSourceObject, const Reference< XConnection >& _xSourceConnection, - const Reference< XConnection >& _xConnection, const Reference< XMultiServiceFactory >& _rxORB, + const Reference< XConnection >& _xConnection, const Reference< XComponentContext >& _rxContext, const Reference< XInteractionHandler>& _xInteractionHandler) : WizardDialog( pParent, ModuleRes(WIZ_RTFCOPYTABLE)) ,m_pbHelp( this , ModuleRes(PB_HELP)) @@ -559,8 +559,8 @@ OCopyTableWizard::OCopyTableWizard( Window * pParent, const ::rtl::OUString& _rD ,m_mNameMapping(_xConnection->getMetaData().is() && _xConnection->getMetaData()->supportsMixedCaseQuotedIdentifiers()) ,m_xDestConnection( _xConnection ) ,m_rSourceObject( _rSourceObject ) - ,m_xFormatter( getNumberFormatter( _xConnection, _rxORB ) ) - ,m_xFactory(_rxORB) + ,m_xFormatter( getNumberFormatter( _xConnection, _rxContext ) ) + ,m_xContext(_rxContext) ,m_xInteractionHandler(_xInteractionHandler) ,m_sTypeNames(ModuleRes(STR_TABLEDESIGN_DBFIELDTYPES)) ,m_nPageCount(0) @@ -649,7 +649,7 @@ OCopyTableWizard::OCopyTableWizard( Window * pParent, const ::rtl::OUString& _rD OCopyTableWizard::OCopyTableWizard( Window* pParent, const ::rtl::OUString& _rDefaultName, sal_Int16 _nOperation, const ODatabaseExport::TColumns& _rSourceColumns, const ODatabaseExport::TColumnVector& _rSourceColVec, const Reference< XConnection >& _xConnection, const Reference< XNumberFormatter >& _xFormatter, - TypeSelectionPageFactory _pTypeSelectionPageFactory, SvStream& _rTypeSelectionPageArg, const Reference< XMultiServiceFactory >& _rM ) + TypeSelectionPageFactory _pTypeSelectionPageFactory, SvStream& _rTypeSelectionPageArg, const Reference< XComponentContext >& _rxContext ) :WizardDialog( pParent, ModuleRes(WIZ_RTFCOPYTABLE)) ,m_vSourceColumns(_rSourceColumns) ,m_pbHelp( this , ModuleRes(PB_HELP)) @@ -661,7 +661,7 @@ OCopyTableWizard::OCopyTableWizard( Window* pParent, const ::rtl::OUString& _rDe ,m_xDestConnection( _xConnection ) ,m_rSourceObject( DummyCopySource::Instance() ) ,m_xFormatter(_xFormatter) - ,m_xFactory(_rM) + ,m_xContext(_rxContext) ,m_sTypeNames(ModuleRes(STR_TABLEDESIGN_DBFIELDTYPES)) ,m_nPageCount(0) ,m_bDeleteSourceColumns(sal_False) @@ -684,7 +684,7 @@ OCopyTableWizard::OCopyTableWizard( Window* pParent, const ::rtl::OUString& _rDe ::dbaui::fillTypeInfo( _xConnection, m_sTypeNames, m_aTypeInfo, m_aTypeInfoIndex ); ::dbaui::fillTypeInfo( _xConnection, m_sTypeNames, m_aDestTypeInfo, m_aDestTypeInfoIndex ); - m_xInteractionHandler.set( InteractionHandler::createWithParent(comphelper::getComponentContext(m_xFactory), 0), UNO_QUERY ); + m_xInteractionHandler.set( InteractionHandler::createWithParent(m_xContext, 0), UNO_QUERY ); OCopyTable* pPage1( new OCopyTable( this ) ); pPage1->disallowViews(); @@ -1339,7 +1339,7 @@ Reference< XPropertySet > OCopyTableWizard::createTable() { xSuppDestinationColumns.set( xTable, UNO_QUERY_THROW ); // insert new table name into table filter - ::dbaui::appendToFilter( m_xDestConnection, m_sName, comphelper::getComponentContext(GetFactory()), this ); + ::dbaui::appendToFilter( m_xDestConnection, m_sName, GetComponentContext(), this ); // copy ui settings m_rSourceObject.copyUISettingsTo( xTable ); diff --git a/dbaccess/source/ui/misc/WExtendPages.cxx b/dbaccess/source/ui/misc/WExtendPages.cxx index c1ccaf8eb541..e8e84a2a6270 100644 --- a/dbaccess/source/ui/misc/WExtendPages.cxx +++ b/dbaccess/source/ui/misc/WExtendPages.cxx @@ -23,6 +23,7 @@ #include "WCopyTable.hxx" using namespace dbaui; +using namespace com::sun::star; //======================================================================== SvParser* OWizHTMLExtend::createReader(sal_Int32 _nRows) { @@ -30,7 +31,7 @@ SvParser* OWizHTMLExtend::createReader(sal_Int32 _nRows) _nRows, m_pParent->GetColumnPositions(), m_pParent->GetFormatter(), - m_pParent->GetFactory(), + uno::Reference<lang::XMultiServiceFactory>(m_pParent->GetComponentContext()->getServiceManager(), uno::UNO_QUERY_THROW), m_pParent->getDestVector(), m_pParent->getTypeInfo(), m_pParent->shouldCreatePrimaryKey()); @@ -42,7 +43,7 @@ SvParser* OWizRTFExtend::createReader(sal_Int32 _nRows) _nRows, m_pParent->GetColumnPositions(), m_pParent->GetFormatter(), - m_pParent->GetFactory(), + uno::Reference<lang::XMultiServiceFactory>(m_pParent->GetComponentContext()->getServiceManager(), uno::UNO_QUERY_THROW), m_pParent->getDestVector(), m_pParent->getTypeInfo(), m_pParent->shouldCreatePrimaryKey()); diff --git a/dbaccess/source/ui/uno/ColumnControl.cxx b/dbaccess/source/ui/uno/ColumnControl.cxx index 999c5f33a079..2a71d359931d 100644 --- a/dbaccess/source/ui/uno/ColumnControl.cxx +++ b/dbaccess/source/ui/uno/ColumnControl.cxx @@ -65,7 +65,7 @@ void SAL_CALL OColumnControl::createPeer(const Reference< XToolkit >& /*rToolkit pParentWin = pParent->GetWindow(); } - OColumnPeer* pPeer = new OColumnPeer( pParentWin, maContext.getLegacyServiceFactory() ); + OColumnPeer* pPeer = new OColumnPeer( pParentWin, maContext.getUNOContext() ); OSL_ENSURE(pPeer != NULL, "FmXGridControl::createPeer : imp_CreatePeer didn't return a peer !"); setPeer( pPeer ); diff --git a/dbaccess/source/ui/uno/ColumnPeer.cxx b/dbaccess/source/ui/uno/ColumnPeer.cxx index c5613a75f767..a4c1ea19e060 100644 --- a/dbaccess/source/ui/uno/ColumnPeer.cxx +++ b/dbaccess/source/ui/uno/ColumnPeer.cxx @@ -33,13 +33,12 @@ using namespace ::com::sun::star::beans; using namespace ::com::sun::star::lang; using namespace ::com::sun::star::sdbc; -OColumnPeer::OColumnPeer(Window* _pParent,const Reference<XMultiServiceFactory>& _rxFactory) - :m_xORB(_rxFactory) - ,m_pActFieldDescr(NULL) +OColumnPeer::OColumnPeer(Window* _pParent,const Reference<XComponentContext>& _rxContext) + :m_pActFieldDescr(NULL) { osl_atomic_increment( &m_refCount ); { - OColumnControlWindow* pFieldControl = new OColumnControlWindow(_pParent,m_xORB); + OColumnControlWindow* pFieldControl = new OColumnControlWindow(_pParent, _rxContext); pFieldControl->SetComponentInterface(this); pFieldControl->Show(); } diff --git a/dbaccess/source/ui/uno/ColumnPeer.hxx b/dbaccess/source/ui/uno/ColumnPeer.hxx index a5a2562b2c3b..3b97a6d6acf0 100644 --- a/dbaccess/source/ui/uno/ColumnPeer.hxx +++ b/dbaccess/source/ui/uno/ColumnPeer.hxx @@ -22,7 +22,7 @@ #include <toolkit/awt/vclxwindow.hxx> #include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/sdbc/XConnection.hpp> -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/uno/XComponentContext.hpp> //......................................................................... namespace dbaui @@ -31,13 +31,12 @@ namespace dbaui class OFieldDescription; class OColumnPeer : public VCLXWindow { - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory> m_xORB; OFieldDescription* m_pActFieldDescr; ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> m_xColumn; public: OColumnPeer(Window* _pParent - ,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory); + ,const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& _rxContext); void setColumn(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _xColumn); void setConnection(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& _xCon); diff --git a/dbaccess/source/ui/uno/copytablewizard.cxx b/dbaccess/source/ui/uno/copytablewizard.cxx index e06f91e1f1a2..7618f336e35c 100644 --- a/dbaccess/source/ui/uno/copytablewizard.cxx +++ b/dbaccess/source/ui/uno/copytablewizard.cxx @@ -1610,7 +1610,7 @@ Dialog* CopyTableWizard::createDialog( Window* _pParent ) *m_pSourceObject, m_xSourceConnection.getTyped(), m_xDestConnection.getTyped(), - m_aContext.getLegacyServiceFactory(), + m_aContext.getUNOContext(), m_xInteractionHandler ); diff --git a/forms/source/component/Date.cxx b/forms/source/component/Date.cxx index 5355b1176356..bc59971729f6 100644 --- a/forms/source/component/Date.cxx +++ b/forms/source/component/Date.cxx @@ -22,6 +22,7 @@ #include <tools/date.hxx> #include <connectivity/dbconversion.hxx> #include <com/sun/star/sdbc/DataType.hpp> +#include <comphelper/processfactory.hxx> using namespace dbtools; @@ -91,7 +92,7 @@ DBG_NAME( ODateModel ) ODateModel::ODateModel(const Reference<XMultiServiceFactory>& _rxFactory) :OEditBaseModel( _rxFactory, VCL_CONTROLMODEL_DATEFIELD, FRM_SUN_CONTROL_DATEFIELD, sal_True, sal_True ) // use the old control name for compytibility reasons - ,OLimitedFormats( _rxFactory, FormComponentType::DATEFIELD ) + ,OLimitedFormats( comphelper::getComponentContext(_rxFactory), FormComponentType::DATEFIELD ) { DBG_CTOR( ODateModel, NULL ); @@ -116,7 +117,7 @@ ODateModel::ODateModel(const Reference<XMultiServiceFactory>& _rxFactory) //------------------------------------------------------------------------------ ODateModel::ODateModel( const ODateModel* _pOriginal, const Reference<XMultiServiceFactory>& _rxFactory ) :OEditBaseModel( _pOriginal, _rxFactory ) - ,OLimitedFormats( _rxFactory, FormComponentType::DATEFIELD ) + ,OLimitedFormats( comphelper::getComponentContext(_rxFactory), FormComponentType::DATEFIELD ) { DBG_CTOR( ODateModel, NULL ); diff --git a/forms/source/component/Filter.cxx b/forms/source/component/Filter.cxx index 948bdcc4cff3..6d92e77df421 100644 --- a/forms/source/component/Filter.cxx +++ b/forms/source/component/Filter.cxx @@ -120,7 +120,8 @@ namespace frm if ( !m_xFormatter.is() ) { // we can create one from the connection, if it's an SDB connection - Reference< XNumberFormatsSupplier > xFormatSupplier = ::dbtools::getNumberFormats( m_xConnection, sal_True, maContext.getLegacyServiceFactory() ); + + Reference< XNumberFormatsSupplier > xFormatSupplier = ::dbtools::getNumberFormats( m_xConnection, sal_True, maContext.getUNOContext() ); if ( xFormatSupplier.is() ) { diff --git a/forms/source/component/FormattedField.cxx b/forms/source/component/FormattedField.cxx index dc33b2c8dff0..cc6e967f0855 100644 --- a/forms/source/component/FormattedField.cxx +++ b/forms/source/component/FormattedField.cxx @@ -654,7 +654,7 @@ Reference<XNumberFormatsSupplier> OFormattedModel::calcFormFormatsSupplier() co Reference< XRowSet > xRowSet( xNextParentForm, UNO_QUERY ); Reference< XNumberFormatsSupplier > xSupplier; if (xRowSet.is()) - xSupplier = getNumberFormats( getConnection(xRowSet), sal_True, getContext().getLegacyServiceFactory() ); + xSupplier = getNumberFormats( getConnection(xRowSet), sal_True, getContext().getUNOContext() ); return xSupplier; } diff --git a/forms/source/component/Time.cxx b/forms/source/component/Time.cxx index 7cd51c188dcf..346f09695089 100644 --- a/forms/source/component/Time.cxx +++ b/forms/source/component/Time.cxx @@ -22,6 +22,7 @@ #include <tools/time.hxx> #include <connectivity/dbconversion.hxx> #include <com/sun/star/sdbc/DataType.hpp> +#include <comphelper/processfactory.hxx> using namespace dbtools; @@ -124,7 +125,7 @@ DBG_NAME( OTimeModel ) OTimeModel::OTimeModel(const Reference<XMultiServiceFactory>& _rxFactory) :OEditBaseModel( _rxFactory, VCL_CONTROLMODEL_TIMEFIELD, FRM_SUN_CONTROL_TIMEFIELD, sal_True, sal_True ) // use the old control name for compytibility reasons - ,OLimitedFormats(_rxFactory, FormComponentType::TIMEFIELD) + ,OLimitedFormats( comphelper::getComponentContext(_rxFactory), FormComponentType::TIMEFIELD) { DBG_CTOR( OTimeModel, NULL ); @@ -137,7 +138,7 @@ OTimeModel::OTimeModel(const Reference<XMultiServiceFactory>& _rxFactory) //------------------------------------------------------------------------------ OTimeModel::OTimeModel( const OTimeModel* _pOriginal, const Reference<XMultiServiceFactory>& _rxFactory ) :OEditBaseModel( _pOriginal, _rxFactory ) - ,OLimitedFormats( _rxFactory, FormComponentType::TIMEFIELD ) + ,OLimitedFormats( comphelper::getComponentContext(_rxFactory), FormComponentType::TIMEFIELD ) { DBG_CTOR( OTimeModel, NULL ); diff --git a/forms/source/inc/limitedformats.hxx b/forms/source/inc/limitedformats.hxx index 814f4920eb5c..9f22b1832bb6 100644 --- a/forms/source/inc/limitedformats.hxx +++ b/forms/source/inc/limitedformats.hxx @@ -22,7 +22,7 @@ #include <osl/mutex.hxx> #include <com/sun/star/util/XNumberFormatsSupplier.hpp> -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/uno/XComponentContext.hpp> #include <com/sun/star/beans/XFastPropertySet.hpp> //......................................................................... @@ -57,7 +57,7 @@ namespace frm pass the same value here share one table.</p> */ OLimitedFormats( - const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB, + const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext, const sal_Int16 _nClassId ); ~OLimitedFormats(); @@ -82,7 +82,7 @@ namespace frm getFormatsSupplier() const { return s_xStandardFormats; } private: - void acquireSupplier(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB); + void acquireSupplier(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxContext); void releaseSupplier(); static void ensureTableInitialized(const sal_Int16 _nTableId); diff --git a/forms/source/inc/services.hxx b/forms/source/inc/services.hxx index 4c2ae6bc4413..c8f3ffb5a845 100644 --- a/forms/source/inc/services.hxx +++ b/forms/source/inc/services.hxx @@ -210,7 +210,6 @@ namespace frm // ----------------------- FORMS_CONSTASCII_STRING( SRV_AWT_POINTER, "com.sun.star.awt.Pointer" ); FORMS_CONSTASCII_STRING( SRV_AWT_IMAGEPRODUCER, "com.sun.star.awt.ImageProducer" ); - FORMS_CONSTASCII_STRING( FRM_NUMBER_FORMATS_SUPPLIER, "com.sun.star.util.NumberFormatsSupplier" ); FORMS_CONSTASCII_STRING( SRV_SDB_ROWSET, "com.sun.star.sdb.RowSet" ); FORMS_CONSTASCII_STRING( SRV_SDB_CONNECTION, "com.sun.star.sdb.Connection" ); diff --git a/forms/source/misc/limitedformats.cxx b/forms/source/misc/limitedformats.cxx index 82e4fe2b88ea..06bba11583b7 100644 --- a/forms/source/misc/limitedformats.cxx +++ b/forms/source/misc/limitedformats.cxx @@ -23,6 +23,7 @@ #include <comphelper/types.hxx> #include <comphelper/extract.hxx> #include <com/sun/star/form/FormComponentType.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> //......................................................................... namespace frm @@ -132,12 +133,12 @@ namespace frm //= OLimitedFormats //===================================================================== //--------------------------------------------------------------------- - OLimitedFormats::OLimitedFormats(const Reference< XMultiServiceFactory >& _rxORB, const sal_Int16 _nClassId) + OLimitedFormats::OLimitedFormats(const Reference< XComponentContext >& _rxContext, const sal_Int16 _nClassId) :m_nFormatEnumPropertyHandle(-1) ,m_nTableId(_nClassId) { - OSL_ENSURE(_rxORB.is(), "OLimitedFormats::OLimitedFormats: invalid service factory!"); - acquireSupplier(_rxORB); + OSL_ENSURE(_rxContext.is(), "OLimitedFormats::OLimitedFormats: invalid service factory!"); + acquireSupplier(_rxContext); ensureTableInitialized(m_nTableId); } @@ -355,20 +356,12 @@ namespace frm } //--------------------------------------------------------------------- - void OLimitedFormats::acquireSupplier(const Reference< XMultiServiceFactory >& _rxORB) + void OLimitedFormats::acquireSupplier(const Reference< XComponentContext >& _rxContext) { ::osl::MutexGuard aGuard(s_aMutex); - if ((1 == ++s_nInstanceCount) && _rxORB.is()) + if (1 == ++s_nInstanceCount) { // create the standard formatter - - Sequence< Any > aInit(1); - aInit[0] <<= getLocale(ltEnglishUS); - - Reference< XInterface > xSupplier = _rxORB->createInstanceWithArguments(FRM_NUMBER_FORMATS_SUPPLIER, aInit); - OSL_ENSURE(xSupplier.is(), "OLimitedFormats::OLimitedFormats: could not create a formats supplier!"); - - s_xStandardFormats = Reference< XNumberFormatsSupplier >(xSupplier, UNO_QUERY); - OSL_ENSURE(s_xStandardFormats.is() || !xSupplier.is(), "OLimitedFormats::OLimitedFormats: missing an interface!"); + s_xStandardFormats = NumberFormatsSupplier::createWithLocale(_rxContext, getLocale(ltEnglishUS)); } } diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk index 487a94c43eb8..5692dc9e8c51 100644 --- a/offapi/UnoApi_offapi.mk +++ b/offapi/UnoApi_offapi.mk @@ -311,6 +311,7 @@ $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/ui/dialogs $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/util,\ JobManager \ NumberFormatter \ + NumberFormatsSupplier \ PathSubstitution \ TextSearch \ UriAbbreviation \ @@ -1457,7 +1458,6 @@ $(eval $(call gb_UnoApi_add_idlfiles_noheader,offapi,offapi/com/sun/star/util,\ NumberFormatProperties \ NumberFormatSettings \ NumberFormats \ - NumberFormatsSupplier \ OfficeInstallationDirectories \ PathSettings \ ReplaceDescriptor \ diff --git a/offapi/com/sun/star/util/NumberFormatsSupplier.idl b/offapi/com/sun/star/util/NumberFormatsSupplier.idl index 9640cd2d2817..683d2a3a6746 100644 --- a/offapi/com/sun/star/util/NumberFormatsSupplier.idl +++ b/offapi/com/sun/star/util/NumberFormatsSupplier.idl @@ -21,10 +21,10 @@ #define __com_sun_star_util_NumberFormatsSupplier_idl__ #include <com/sun/star/util/XNumberFormatsSupplier.idl> -#include <com/sun/star/lang/XInitialization.idl> +#include <com/sun/star/lang/Locale.idl> - module com { module sun { module star { module util { +module com { module sun { module star { module util { /** provides an supplier of number formats @@ -34,24 +34,20 @@ @since OOo 1.1.2 */ -published service NumberFormatsSupplier +published service NumberFormatsSupplier : XNumberFormatsSupplier { - /** used to initialize the component when instantiating. - <p>In the <member scope="com::sun::star::lang">XInitialization::initialize</member> method, you can - pass a <type scope="com::sun::star::lang">Locale</type> to specify the default locale of the - number formats supplier.</p> + /** + Create using specific locale. - <p>The component should be initialized only once, after it has been instantiated, and before it - has been used.<br/> - If you initialize it a second time (or after you used it), it is up to implementation - how this is handled.</p> + @param aLocale the locale of the number formats supplier */ - interface com::sun::star::lang::XInitialization; + createWithLocale([in] com::sun::star::lang::Locale locale); - /** allows access to the number formats supplied by the component. + /** + Create using default locale. */ - interface XNumberFormatsSupplier; + createWithDefaultLocale(); }; diff --git a/offapi/type_reference/types.rdb b/offapi/type_reference/types.rdb Binary files differindex dee384c556f7..c178bb1f0daf 100644 --- a/offapi/type_reference/types.rdb +++ b/offapi/type_reference/types.rdb diff --git a/reportdesign/source/core/api/ReportDefinition.cxx b/reportdesign/source/core/api/ReportDefinition.cxx index 1ae1719956e4..3fc9edba8c70 100644 --- a/reportdesign/source/core/api/ReportDefinition.cxx +++ b/reportdesign/source/core/api/ReportDefinition.cxx @@ -72,6 +72,7 @@ #include <com/sun/star/task/XStatusIndicator.hpp> #include <com/sun/star/task/XStatusIndicatorFactory.hpp> #include <com/sun/star/ui/XUIConfigurationStorage.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <com/sun/star/xml/AttributeData.hpp> #include <com/sun/star/xml/sax/Writer.hpp> @@ -1300,11 +1301,7 @@ void OReportDefinition::fillArgs(::comphelper::MediaDescriptor& _aDescriptor) } if ( !m_pImpl->m_xNumberFormatsSupplier.is() ) { - m_pImpl->m_xNumberFormatsSupplier.set( - m_aProps->m_xContext->getServiceManager()->createInstanceWithContext( - ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.util.NumberFormatsSupplier")) ,m_aProps->m_xContext), - uno::UNO_QUERY_THROW - ); + m_pImpl->m_xNumberFormatsSupplier.set( util::NumberFormatsSupplier::createWithDefaultLocale( m_aProps->m_xContext ) ); } lcl_stripLoadArguments( _aDescriptor, m_pImpl->m_aArgs ); ::rtl::OUString sCaption; diff --git a/svtools/source/table/cellvalueconversion.cxx b/svtools/source/table/cellvalueconversion.cxx index d47210bb9edf..86a84bdb1246 100644 --- a/svtools/source/table/cellvalueconversion.cxx +++ b/svtools/source/table/cellvalueconversion.cxx @@ -20,7 +20,7 @@ #include "cellvalueconversion.hxx" #include <com/sun/star/util/NumberFormatter.hpp> -#include <com/sun/star/util/XNumberFormatsSupplier.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/util/Date.hpp> #include <com/sun/star/util/Time.hpp> @@ -50,7 +50,9 @@ namespace svt using ::com::sun::star::util::NumberFormatter; using ::com::sun::star::uno::UNO_QUERY_THROW; using ::com::sun::star::util::XNumberFormatsSupplier; + using ::com::sun::star::util::NumberFormatsSupplier; using ::com::sun::star::beans::XPropertySet; + using ::com::sun::star::lang::Locale; using ::com::sun::star::uno::UNO_SET_THROW; using ::com::sun::star::uno::Exception; using ::com::sun::star::util::DateTime; @@ -340,13 +342,10 @@ namespace svt Reference< XNumberFormatter > const xFormatter( NumberFormatter::create( io_data.aContext.getUNOContext() ), UNO_QUERY_THROW ); // a supplier of number formats - Sequence< Any > aInitArgs(1); - aInitArgs[0] <<= SvtSysLocale().GetLanguageTag().getLocale(); + Locale aLocale = SvtSysLocale().GetLanguageTag().getLocale(); - Reference< XNumberFormatsSupplier > const xSupplier( - io_data.aContext.createComponentWithArguments( "com.sun.star.util.NumberFormatsSupplier", aInitArgs ), - UNO_QUERY_THROW - ); + Reference< XNumberFormatsSupplier > const xSupplier = + NumberFormatsSupplier::createWithLocale( io_data.aContext.getUNOContext(), aLocale ); // ensure a NullDate we will assume later on UnoDate const aNullDate( 1, 1, 1900 ); diff --git a/toolkit/source/controls/formattedcontrol.cxx b/toolkit/source/controls/formattedcontrol.cxx index e08957dc924d..79e905bbe11e 100644 --- a/toolkit/source/controls/formattedcontrol.cxx +++ b/toolkit/source/controls/formattedcontrol.cxx @@ -23,7 +23,7 @@ #include <com/sun/star/awt/XVclWindowPeer.hpp> #include <com/sun/star/util/NumberFormatter.hpp> -#include <com/sun/star/util/XNumberFormatsSupplier.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <tools/diagnose_ex.h> #include <comphelper/processfactory.hxx> @@ -74,11 +74,7 @@ namespace toolkit if ( !rDefaultFormats.is() && !rbTriedCreation ) { rbTriedCreation = true; - rDefaultFormats = Reference< XNumberFormatsSupplier >( - ::comphelper::getProcessServiceFactory()->createInstance( - ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.util.NumberFormatsSupplier" ) ) ), - UNO_QUERY_THROW - ); + rDefaultFormats = NumberFormatsSupplier::createWithDefaultLocale( ::comphelper::getProcessComponentContext() ); } if ( !rDefaultFormats.is() ) throw RuntimeException(); diff --git a/xmloff/source/forms/layerexport.cxx b/xmloff/source/forms/layerexport.cxx index fbee65728127..bb3838102f8d 100644 --- a/xmloff/source/forms/layerexport.cxx +++ b/xmloff/source/forms/layerexport.cxx @@ -40,11 +40,13 @@ #include <com/sun/star/lang/XServiceInfo.hpp> #include <com/sun/star/container/XChild.hpp> #include <com/sun/star/script/XEventAttacherManager.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include "eventexport.hxx" #include <xmloff/XMLEventExport.hxx> #include "formevents.hxx" #include <xmloff/xmlnumfe.hxx> #include "xmloff/xformsexport.hxx" +#include "comphelper/processfactory.hxx" #include <com/sun/star/text/XText.hpp> @@ -760,22 +762,12 @@ namespace xmloff { // create it for en-US (does not really matter, as we will specify a locale for every // concrete language to use) - Sequence< Any > aSupplierArgs(1); - aSupplierArgs[0] <<= Locale ( ::rtl::OUString("en"), - ::rtl::OUString("US"), - ::rtl::OUString() - ); - - Reference< XInterface > xFormatsSupplierUntyped = - m_rContext.getServiceFactory()->createInstanceWithArguments( - SERVICE_NUMBERFORMATSSUPPLIER, - aSupplierArgs - ); - OSL_ENSURE(xFormatsSupplierUntyped.is(), "OFormLayerXMLExport_Impl::getControlNumberStyleExport: could not instantiate a number formats supplier!"); - - xFormatsSupplier = Reference< XNumberFormatsSupplier >(xFormatsSupplierUntyped, UNO_QUERY); - if (xFormatsSupplier.is()) - m_xControlNumberFormats = xFormatsSupplier->getNumberFormats(); + Locale aLocale ( ::rtl::OUString("en"), + ::rtl::OUString("US"), + ::rtl::OUString() + ); + xFormatsSupplier = NumberFormatsSupplier::createWithLocale( comphelper::getComponentContext(m_rContext.getServiceFactory()), aLocale ); + m_xControlNumberFormats = xFormatsSupplier->getNumberFormats(); } catch(const Exception&) { diff --git a/xmloff/source/forms/strings.hxx b/xmloff/source/forms/strings.hxx index 1840a6f52c59..3d273649b58f 100644 --- a/xmloff/source/forms/strings.hxx +++ b/xmloff/source/forms/strings.hxx @@ -158,7 +158,6 @@ namespace xmloff // services XMLFORM_CONSTASCII_STRING( SERVICE_FORMSCOLLECTION, "com.sun.star.form.Forms" ); - XMLFORM_CONSTASCII_STRING( SERVICE_NUMBERFORMATSSUPPLIER, "com.sun.star.util.NumberFormatsSupplier" ); XMLFORM_CONSTASCII_STRING( SERVICE_SPREADSHEET_DOCUMENT, "com.sun.star.sheet.SpreadsheetDocument"); XMLFORM_CONSTASCII_STRING( SERVICE_CELLVALUEBINDING, "com.sun.star.table.CellValueBinding" ); XMLFORM_CONSTASCII_STRING( SERVICE_LISTINDEXCELLBINDING, "com.sun.star.table.ListPositionCellBinding" ); diff --git a/xmlscript/source/xmldlg_imexp/xmldlg_import.cxx b/xmlscript/source/xmldlg_imexp/xmldlg_import.cxx index d1dad5fcf498..98fe378ab9a9 100644 --- a/xmlscript/source/xmldlg_imexp/xmldlg_import.cxx +++ b/xmlscript/source/xmldlg_imexp/xmldlg_import.cxx @@ -50,6 +50,7 @@ #include <com/sun/star/document/XStorageBasedDocument.hpp> #include <com/sun/star/script/DocumentScriptLibraryContainer.hpp> #include <com/sun/star/script/vba/XVBACompatibility.hpp> +#include <com/sun/star/util/NumberFormatsSupplier.hpp> #include <comphelper/componentcontext.hxx> @@ -1752,9 +1753,7 @@ Reference< util::XNumberFormatsSupplier > const & DialogImport::getNumberFormats { if (! _xSupplier.is()) { - Reference< XComponentContext > xContext( getComponentContext() ); - Reference< util::XNumberFormatsSupplier > xSupplier( - xContext->getServiceManager()->createInstanceWithContext( "com.sun.star.util.NumberFormatsSupplier", xContext ), UNO_QUERY ); + Reference< util::XNumberFormatsSupplier > xSupplier = util::NumberFormatsSupplier::createWithDefaultLocale( getComponentContext() ); ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); if (! _xSupplier.is()) |