summaryrefslogtreecommitdiff
path: root/svl/source/uno
diff options
context:
space:
mode:
authorMathias Bauer <mba@openoffice.org>2009-10-08 16:48:26 +0200
committerMathias Bauer <mba@openoffice.org>2009-10-08 16:48:26 +0200
commitcf2b56f39d57c62b17c444025f8dfe14e6149cba (patch)
tree4f78ce1a3be92679ad3085b60ff57f4cd30bda37 /svl/source/uno
parente6b4345c7f4026cb9b3e8dee6ecc84b3531e1950 (diff)
#i103496#: make svl buildable
Diffstat (limited to 'svl/source/uno')
-rw-r--r--svl/source/uno/makefile.mk19
-rw-r--r--svl/source/uno/pathservice.cxx106
-rw-r--r--svl/source/uno/registerservices.cxx20
3 files changed, 128 insertions, 17 deletions
diff --git a/svl/source/uno/makefile.mk b/svl/source/uno/makefile.mk
index 51e55a1f9123..af26b20cd8df 100644
--- a/svl/source/uno/makefile.mk
+++ b/svl/source/uno/makefile.mk
@@ -31,33 +31,20 @@
PRJ=..$/..
-PRJNAME=svtools
+PRJNAME=svl
TARGET=unoiface
ENABLE_EXCEPTIONS=TRUE
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
-.INCLUDE : $(PRJ)$/util$/svt.pmk
+.INCLUDE : $(PRJ)$/util$/svl.pmk
# --- Files --------------------------------------------------------
-SRS1NAME= uno
-SRC1FILES= unoifac2.src
-
SLOFILES= \
- $(SLO)$/unoiface.obj \
- $(SLO)$/unoevent.obj \
- $(SLO)$/unoimap.obj \
- $(SLO)$/toolboxcontroller.obj \
- $(SLO)$/framestatuslistener.obj \
- $(SLO)$/statusbarcontroller.obj \
- $(SLO)$/genericunodialog.obj \
- $(SLO)$/generictoolboxcontroller.obj \
- $(SLO)$/treecontrolpeer.obj \
- $(SLO)$/unocontroltablemodel.obj \
$(SLO)$/registerservices.obj\
- $(SLO)$/contextmenuhelper.obj
+ $(SLO)$/pathservice.obj
# --- Targets ------------------------------------------------------
diff --git a/svl/source/uno/pathservice.cxx b/svl/source/uno/pathservice.cxx
new file mode 100644
index 000000000000..e54a96bf30ce
--- /dev/null
+++ b/svl/source/uno/pathservice.cxx
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: pathservice.cxx,v $
+ * $Revision: 1.7 $
+ *
+ * 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_svl.hxx"
+
+#include <unotools/pathoptions.hxx>
+#include "sal/types.h"
+#include "rtl/ustring.hxx"
+#include <cppuhelper/implbase2.hxx>
+#include <com/sun/star/frame/XConfigManager.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+
+namespace css = com::sun::star;
+using rtl::OUString;
+
+// -----------------------------------------------------------------------
+
+class PathService : public ::cppu::WeakImplHelper2< css::frame::XConfigManager, css::lang::XServiceInfo >
+{
+ SvtPathOptions m_aOptions;
+
+public:
+ PathService()
+ {}
+
+ virtual OUString SAL_CALL getImplementationName()
+ throw(css::uno::RuntimeException)
+ {
+ return OUString::createFromAscii("com.sun.star.comp.svtools.PathService");
+ }
+
+ virtual sal_Bool SAL_CALL supportsService (
+ const OUString & rName)
+ throw(css::uno::RuntimeException)
+ {
+ return (rName.compareToAscii("com.sun.star.config.SpecialConfigManager") == 0);
+ }
+
+ virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
+ throw(css::uno::RuntimeException)
+ {
+ css::uno::Sequence< OUString > aRet(1);
+ aRet.getArray()[0] = OUString::createFromAscii("com.sun.star.config.SpecialConfigManager");
+ return aRet;
+ }
+
+ virtual OUString SAL_CALL substituteVariables (
+ const OUString& sText)
+ throw(css::uno::RuntimeException)
+ {
+ return m_aOptions.SubstituteVariable( sText );
+ }
+
+ virtual void SAL_CALL addPropertyChangeListener (
+ const OUString &, const css::uno::Reference< css::beans::XPropertyChangeListener > &)
+ throw(css::uno::RuntimeException)
+ {}
+
+ virtual void SAL_CALL removePropertyChangeListener (
+ const OUString &, const css::uno::Reference< css::beans::XPropertyChangeListener > &)
+ throw(css::uno::RuntimeException)
+ {}
+
+ virtual void SAL_CALL flush()
+ throw(css::uno::RuntimeException)
+ {}
+};
+
+// -----------------------------------------------------------------------
+
+css::uno::Reference< css::uno::XInterface > PathService_CreateInstance (
+ const css::uno::Reference< css::lang::XMultiServiceFactory > &)
+{
+ return css::uno::Reference< css::uno::XInterface >(
+ static_cast< cppu::OWeakObject* >(new PathService()));
+}
+
+// -----------------------------------------------------------------------
diff --git a/svl/source/uno/registerservices.cxx b/svl/source/uno/registerservices.cxx
index a3e9f39c2dba..1f761123ae56 100644
--- a/svl/source/uno/registerservices.cxx
+++ b/svl/source/uno/registerservices.cxx
@@ -29,7 +29,7 @@
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_svtools.hxx"
+#include "precompiled_svl.hxx"
#include "sal/types.h"
#include "rtl/ustring.hxx"
#include <cppuhelper/factory.hxx>
@@ -49,6 +49,7 @@ using rtl::OUString;
DECLARE_CREATEINSTANCE( SvNumberFormatterServiceObj )
DECLARE_CREATEINSTANCE( SvNumberFormatsSupplierServiceObject )
+DECLARE_CREATEINSTANCE( PathService )
// -------------------------------------------------------------------------------------
@@ -82,6 +83,11 @@ SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_writeInfo (
xNewKey->createKey (
OUString::createFromAscii( "com.sun.star.util.NumberFormatter" ) );
+ xNewKey = xRegistryKey->createKey(
+ OUString::createFromAscii( "/com.sun.star.comp.svtools.PathService/UNO/SERVICES" ) );
+ xNewKey->createKey (
+ OUString::createFromAscii( "com.sun.star.config.SpecialConfigManager" ) );
+
return sal_True;
}
return sal_False;
@@ -122,6 +128,18 @@ SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory (
SvNumberFormatterServiceObj_CreateInstance,
aServiceNames);
}
+ else if (rtl_str_compare (
+ pImplementationName, "com.sun.star.comp.svtools.PathService") == 0)
+ {
+ Sequence< OUString > aServiceNames(1);
+ aServiceNames.getArray()[0] =
+ OUString::createFromAscii( "com.sun.star.config.SpecialConfigManager" );
+ xFactory = ::cppu::createSingleFactory (
+ reinterpret_cast< css::lang::XMultiServiceFactory* >( _pServiceManager ),
+ OUString::createFromAscii( pImplementationName ),
+ PathService_CreateInstance,
+ aServiceNames);
+ }
if ( xFactory.is() )
{
xFactory->acquire();