summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
authorOliver Bolte <obo@openoffice.org>2005-03-15 11:24:10 +0000
committerOliver Bolte <obo@openoffice.org>2005-03-15 11:24:10 +0000
commit9de2a5668e054db67937e72c853894721e47d474 (patch)
tree83570c385233b5e0d7a04d577aef733ef6eee917 /desktop
parent4b27bc464e7c74703d76652e5b35e8d4b18bb4d9 (diff)
#45070# moved 1st star wizard to spl
Diffstat (limited to 'desktop')
-rw-r--r--desktop/prj/build.lst4
-rw-r--r--desktop/source/so_comp/makefile.mk13
-rw-r--r--desktop/source/so_comp/services.cxx9
-rwxr-xr-xdesktop/source/splash/firststart.cxx187
-rwxr-xr-xdesktop/source/splash/firststart.hxx138
-rw-r--r--desktop/source/splash/makefile.mk18
-rwxr-xr-xdesktop/source/splash/services_spl.cxx202
-rw-r--r--desktop/source/splash/splash.cxx16
-rw-r--r--desktop/source/splash/splash.hxx12
9 files changed, 566 insertions, 33 deletions
diff --git a/desktop/prj/build.lst b/desktop/prj/build.lst
index 75ff240a272b..93ed8d61d678 100644
--- a/desktop/prj/build.lst
+++ b/desktop/prj/build.lst
@@ -6,9 +6,9 @@ dt desktop\res get - all dt_res NULL
dt desktop\source\app nmake - all dt_app NULL
dt desktop\source\migration nmake - all dt_migr dt_app NULL
dt desktop\source\migration\services nmake - all dt_services NULL
-dt desktop\source\so_comp nmake - all dt_so_comp dt_migr NULL
+dt desktop\source\so_comp nmake - all dt_so_comp NULL
dt desktop\source\offacc nmake - all dt_offac NULL
-dt desktop\source\splash nmake - all dt_spl NULL
+dt desktop\source\splash nmake - all dt_spl dt_migr NULL
dt desktop\win32\source nmake - w dt_wrapper NULL
dt desktop\win32\source\setup nmake - w dt_setup NULL
dt desktop\win32\source\officeloader nmake - w dt_officeloader NULL
diff --git a/desktop/source/so_comp/makefile.mk b/desktop/source/so_comp/makefile.mk
index e02239c6128e..ba0fcf17f533 100644
--- a/desktop/source/so_comp/makefile.mk
+++ b/desktop/source/so_comp/makefile.mk
@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
-# $Revision: 1.12 $
+# $Revision: 1.13 $
#
-# last change: $Author: vg $ $Date: 2005-03-11 10:51:24 $
+# last change: $Author: obo $ $Date: 2005-03-15 12:23:44 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -81,15 +81,10 @@ CDEFS+=-DTIMEBOMB=20050930
SLOFILES = $(SLO)$/evaluation.obj \
$(SLO)$/oemjob.obj \
- $(SLO)$/services.obj \
- $(SLO)$/firststart.obj
+ $(SLO)$/services.obj
SHL1DEPN= makefile.mk
-SHL1OBJS= $(SLOFILES) \
- $(SLO)$/pages.obj \
- $(SLO)$/wizard.obj \
- $(SLO)$/migration.obj \
- $(SLO)$/cfgfilter.obj
+SHL1OBJS= $(SLOFILES)
SHL1TARGET= $(TARGET)
diff --git a/desktop/source/so_comp/services.cxx b/desktop/source/so_comp/services.cxx
index 0406e1009b36..057060d25f10 100644
--- a/desktop/source/so_comp/services.cxx
+++ b/desktop/source/so_comp/services.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: services.cxx,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: vg $ $Date: 2005-03-11 10:51:38 $
+ * last change: $Author: obo $ $Date: 2005-03-15 12:23:44 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -83,7 +83,6 @@
#include "oemjob.hxx"
#include "evaluation.hxx"
-#include "firststart.hxx"
using namespace rtl;
@@ -97,7 +96,6 @@ static const char* pServices[] =
{
SOEvaluation::serviceName,
OEMPreloadJob::serviceName,
- FirstStart::serviceName,
NULL
};
@@ -105,7 +103,6 @@ static const char* pImplementations[] =
{
SOEvaluation::implementationName,
OEMPreloadJob::implementationName,
- FirstStart::implementationName,
NULL
};
@@ -115,7 +112,6 @@ static const fProvider pInstanceProviders[] =
{
SOEvaluation::CreateInstance,
OEMPreloadJob::CreateInstance,
- FirstStart::CreateInstance,
NULL
};
@@ -124,7 +120,6 @@ static const char** pSupportedServices[] =
{
SOEvaluation::interfaces,
OEMPreloadJob::interfaces,
- FirstStart::interfaces,
NULL
};
diff --git a/desktop/source/splash/firststart.cxx b/desktop/source/splash/firststart.cxx
new file mode 100755
index 000000000000..e08bfec8a596
--- /dev/null
+++ b/desktop/source/splash/firststart.cxx
@@ -0,0 +1,187 @@
+/*************************************************************************
+ *
+ * $RCSfile: firststart.cxx,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: obo $ $Date: 2005-03-15 12:21:49 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#include "firststart.hxx"
+#include "../migration/wizard.hxx"
+
+using namespace rtl;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+
+namespace desktop{
+
+
+const char* FirstStart::interfaces[] =
+{
+ "com.sun.star.task.XJob",
+ NULL,
+};
+const char* FirstStart::implementationName = "com.sun.star.comp.desktop.FirstStart";
+const char* FirstStart::serviceName = "com.sun.star.task.Job";
+
+OUString FirstStart::GetImplementationName()
+{
+ return OUString( RTL_CONSTASCII_USTRINGPARAM( implementationName));
+}
+
+Sequence< OUString > FirstStart::GetSupportedServiceNames()
+{
+ sal_Int32 nSize = (sizeof( interfaces ) / sizeof( const char *)) - 1;
+ Sequence< OUString > aResult( nSize );
+
+ for( sal_Int32 i = 0; i < nSize; i++ )
+ aResult[i] = OUString::createFromAscii( interfaces[i] );
+ return aResult;
+}
+
+Reference< XInterface > SAL_CALL FirstStart::CreateInstance(
+ const Reference< XMultiServiceFactory >& rSMgr )
+{
+ static osl::Mutex aMutex;
+ osl::MutexGuard guard( aMutex );
+ return (XComponent*) ( new FirstStart( rSMgr ) );
+}
+
+FirstStart::FirstStart( const Reference< XMultiServiceFactory >& xFactory ) :
+ m_aListeners( m_aMutex ),
+ m_xServiceManager( xFactory )
+{
+}
+
+FirstStart::~FirstStart()
+{
+}
+
+// XComponent
+void SAL_CALL FirstStart::dispose() throw ( RuntimeException )
+{
+ EventObject aObject;
+ aObject.Source = (XComponent*)this;
+ m_aListeners.disposeAndClear( aObject );
+}
+
+void SAL_CALL FirstStart::addEventListener( const Reference< XEventListener > & aListener) throw ( RuntimeException )
+{
+ m_aListeners.addInterface( aListener );
+}
+
+void SAL_CALL FirstStart::removeEventListener( const Reference< XEventListener > & aListener ) throw ( RuntimeException )
+{
+ m_aListeners.removeInterface( aListener );
+}
+
+// XServiceInfo
+::rtl::OUString SAL_CALL FirstStart::getImplementationName()
+throw ( RuntimeException )
+{
+ return FirstStart::GetImplementationName();
+}
+
+sal_Bool SAL_CALL FirstStart::supportsService( const ::rtl::OUString& rServiceName )
+throw ( RuntimeException )
+{
+ sal_Int32 nSize = sizeof( interfaces ) / sizeof( const char *);
+
+ for( sal_Int32 i = 0; i < nSize; i++ )
+ if ( rServiceName.equalsAscii( interfaces[i] ))
+ return sal_True;
+ return sal_False;
+}
+
+Sequence< ::rtl::OUString > SAL_CALL FirstStart::getSupportedServiceNames()
+throw ( RuntimeException )
+{
+ return FirstStart::GetSupportedServiceNames();
+}
+
+// XJob
+Any SAL_CALL FirstStart::execute(const Sequence<NamedValue>& args)
+throw ( RuntimeException )
+{
+ sal_Bool bOverride = sal_False;
+ if (args.getLength() > 0 && args[0].Name.equalsAscii("Override"))
+ args[0].Value >>= bOverride;
+
+ if(bOverride || FirstStartWizard::isFirstStart() || !FirstStartWizard::isLicenseAccepted())
+ {
+ FirstStartWizard fsw(NULL);
+ return makeAny((sal_Bool)fsw.Execute());
+ }
+ else
+ return makeAny(sal_True);
+}
+
+// XJobExecutor
+void SAL_CALL FirstStart::trigger(const OUString& arg)
+throw ( RuntimeException )
+{
+ // trigger wizard with override, so it gets started regardless of
+ // configuration
+ Sequence<NamedValue> seq(1);
+ seq[0] = NamedValue(
+ OUString::createFromAscii("Override"),
+ makeAny(sal_True));
+ execute(seq);
+}
+
+
+} // namespace desktop
diff --git a/desktop/source/splash/firststart.hxx b/desktop/source/splash/firststart.hxx
new file mode 100755
index 000000000000..4547da168315
--- /dev/null
+++ b/desktop/source/splash/firststart.hxx
@@ -0,0 +1,138 @@
+/*************************************************************************
+ *
+ * $RCSfile: firststart.hxx,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: obo $ $Date: 2005-03-15 12:21:49 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef _SOCOMP_FIRSTSTART_HXX_
+#define _SOCOMP_FIRSTSTART_HXX_
+
+#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#endif
+#ifndef _COM_SUN_STAR_UNO_EXCEPTION_HPP_
+#include <com/sun/star/uno/Exception.hpp>
+#endif
+#ifndef _COM_SUN_STAR_UNO_REFERENCE_H_
+#include <com/sun/star/uno/Reference.h>
+#endif
+#ifndef _COM_SUN_STAR_LANG_XCOMPONENT_HPP_
+#include <com/sun/star/lang/XComponent.hpp>
+#endif
+#ifndef _COM_SUN_STAR_TASK_XJOB_HPP_
+#include <com/sun/star/task/XJob.hpp>
+#endif
+#ifndef _CPPUHELPER_IMPLBASE4_HXX_
+#include <cppuhelper/implbase4.hxx>
+#endif
+#ifndef _CPPUHELPER_INTERFACECONTAINER_H_
+#include <cppuhelper/interfacecontainer.h>
+#endif
+#include <com/sun/star/task/XJobExecutor.hpp>
+#include <com/sun/star/lang/XSingleServiceFactory.hpp>
+#include <osl/mutex.hxx>
+
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::task;
+
+namespace desktop{
+
+class FirstStart : public ::cppu::WeakImplHelper4< XJob, XJobExecutor, XComponent, XServiceInfo >
+{
+
+private:
+ ::osl::Mutex m_aMutex;
+ ::cppu::OInterfaceContainerHelper m_aListeners;
+ Reference< XMultiServiceFactory > m_xServiceManager;
+
+public:
+ FirstStart( const Reference < XMultiServiceFactory >& xFactory );
+ virtual ~FirstStart();
+
+ static ::rtl::OUString GetImplementationName();
+ static Sequence< rtl::OUString > GetSupportedServiceNames();
+
+
+ // XComponent
+ virtual void SAL_CALL dispose() throw ( RuntimeException );
+ virtual void SAL_CALL addEventListener( const Reference< XEventListener > & aListener) throw ( RuntimeException );
+ virtual void SAL_CALL removeEventListener(const Reference< XEventListener > & aListener) throw ( RuntimeException );
+
+ // XServiceInfo
+ virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( RuntimeException );
+ virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw ( RuntimeException );
+ virtual Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw ( RuntimeException );
+
+ //XJob
+ virtual Any SAL_CALL execute(const Sequence<NamedValue>& args)throw ( RuntimeException );
+ //XJobExecutor
+ virtual void SAL_CALL trigger(const rtl::OUString& arg)throw ( RuntimeException );
+
+ static const char* interfaces[];
+ static const char* implementationName;
+ static const char* serviceName;
+ static Reference<XInterface> SAL_CALL CreateInstance(
+ const Reference< XMultiServiceFactory >&);
+
+
+};
+}
+
+#endif // _SOCOMP_FIRSTSTART_HXX_
diff --git a/desktop/source/splash/makefile.mk b/desktop/source/splash/makefile.mk
index 8711a14262f2..f104fc3bc34f 100644
--- a/desktop/source/splash/makefile.mk
+++ b/desktop/source/splash/makefile.mk
@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
-# $Revision: 1.6 $
+# $Revision: 1.7 $
#
-# last change: $Author: hr $ $Date: 2004-12-10 18:40:08 $
+# last change: $Author: obo $ $Date: 2005-03-15 12:21:49 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -74,10 +74,17 @@ ENABLE_EXCEPTIONS=TRUE
# --- Files --------------------------------------------------------
-SLOFILES = $(SLO)$/splash.obj
+SLOFILES = $(SLO)$/splash.obj \
+ $(SLO)$/firststart.obj \
+ $(SLO)$/services_spl.obj
SHL1DEPN= makefile.mk
-SHL1OBJS= $(SLOFILES)
+SHL1OBJS= $(SLOFILES) \
+ $(SLO)$/pages.obj \
+ $(SLO)$/wizard.obj \
+ $(SLO)$/migration.obj \
+ $(SLO)$/cfgfilter.obj
+
SHL1TARGET=$(TARGET)$(UPD)$(DLLPOSTFIX)
SHL1IMPLIB=i$(TARGET)
@@ -88,6 +95,9 @@ DEF1NAME=$(SHL1TARGET)
SHL1STDLIBS= \
$(VCLLIB) \
+ $(SVLLIB) \
+ $(SVTOOLLIB) \
+ $(COMPHELPERLIB) \
$(UNOTOOLSLIB) \
$(TOOLSLIB) \
$(VOSLIB) \
diff --git a/desktop/source/splash/services_spl.cxx b/desktop/source/splash/services_spl.cxx
new file mode 100755
index 000000000000..9dc61bb3c247
--- /dev/null
+++ b/desktop/source/splash/services_spl.cxx
@@ -0,0 +1,202 @@
+/*************************************************************************
+ *
+ * $RCSfile: services_spl.cxx,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: obo $ $Date: 2005-03-15 12:21:50 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef _COM_SUN_STAR_BEANS_NAMEDVALUE_HPP_
+#include <com/sun/star/beans/NamedValue.hpp>
+#endif
+#ifndef _COM_SUN_STAR_REGISTRY_XREGISTRYKEY_HPP_
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#endif
+#ifndef _COM_SUN_STAR_UTIL_DATE_HPP_
+#include <com/sun/star/util/Date.hpp>
+#endif
+
+#ifndef _UNO_ENVIRONMENT_H_
+#include <uno/environment.h>
+#endif
+#ifndef _CPPUHELPER_FACTORY_HXX_
+#include <cppuhelper/factory.hxx>
+#endif
+#ifndef _UTL_CONFIGMGR_HXX_
+#include <unotools/configmgr.hxx>
+#endif
+
+#include "splash.hxx"
+#include "firststart.hxx"
+
+
+using namespace rtl;
+using namespace ::com::sun::star::uno;
+using namespace ::com::sun::star::lang;
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::registry;
+using namespace ::desktop;
+
+static const char* pServices[] =
+{
+ SplashScreen::serviceName,
+ FirstStart::serviceName,
+ NULL
+};
+
+static const char* pImplementations[] =
+{
+ SplashScreen::implementationName,
+ FirstStart::implementationName,
+ NULL
+};
+
+typedef Reference<XInterface>(* fProvider)(const Reference<XMultiServiceFactory>&);
+
+static const fProvider pInstanceProviders[] =
+{
+ SplashScreen::getInstance,
+ FirstStart::CreateInstance,
+ NULL
+};
+
+
+static const char** pSupportedServices[] =
+{
+ SplashScreen::interfaces,
+ FirstStart::interfaces,
+ NULL
+};
+
+static Sequence<OUString>
+getSupportedServiceNames(int p) {
+ const char **names = pSupportedServices[p];
+ Sequence<OUString> aSeq;
+ for(int i = 0; names[i] != NULL; i++) {
+ aSeq.realloc(i+1);
+ aSeq[i] = OUString::createFromAscii(names[i]);
+ }
+ return aSeq;
+}
+
+extern "C"
+{
+void SAL_CALL
+component_getImplementationEnvironment(
+ const sal_Char** ppEnvironmentTypeName,
+ uno_Environment** ppEnvironment)
+{
+ *ppEnvironmentTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME ;
+}
+
+sal_Bool SAL_CALL
+component_writeInfo(
+ void* pServiceManager,
+ void* pRegistryKey)
+{
+ Reference<XMultiServiceFactory> xMan(
+ reinterpret_cast< XMultiServiceFactory* >( pServiceManager ) ) ;
+ Reference<XRegistryKey> xKey(
+ reinterpret_cast< XRegistryKey* >( pRegistryKey ) ) ;
+
+ // iterate over service names and register them...
+ OUString aImpl;
+ const char* pServiceName = NULL;
+ const char* pImplName = NULL;
+ for (int i = 0; (pServices[i]!=NULL)&&(pImplementations[i]!=NULL); i++) {
+ pServiceName= pServices[i];
+ pImplName = pImplementations[i];
+ aImpl = OUString::createFromAscii("/")
+ + OUString::createFromAscii(pImplName)
+ + OUString::createFromAscii("/UNO/SERVICES");
+ Reference<XRegistryKey> xNewKey = xKey->createKey(aImpl);
+ xNewKey->createKey(OUString::createFromAscii(pServiceName));
+ }
+ return sal_True;
+}
+
+void* SAL_CALL
+component_getFactory(
+ const sal_Char* pImplementationName,
+ void* pServiceManager,
+ void* pRegistryKey)
+{
+ // Set default return value for this operation - if it failed.
+ if ( pImplementationName && pServiceManager )
+ {
+ Reference< XSingleServiceFactory > xFactory;
+ Reference< XMultiServiceFactory > xServiceManager(
+ reinterpret_cast< XMultiServiceFactory* >( pServiceManager ) ) ;
+
+ // search implementation
+ for (int i = 0; (pImplementations[i]!=NULL); i++) {
+ if ( strcmp(pImplementations[i], pImplementationName ) == 0 ) {
+ // found implementation
+ xFactory = Reference<XSingleServiceFactory>(cppu::createSingleFactory(
+ xServiceManager, OUString::createFromAscii(pImplementationName),
+ pInstanceProviders[i], getSupportedServiceNames(i)));
+ if ( xFactory.is() ) {
+ // Factory is valid - service was found.
+ xFactory->acquire();
+ return xFactory.get();
+ }
+ }
+ } // for()
+ }
+ // Return with result of this operation.
+ return NULL;
+}
+} // extern "C"
diff --git a/desktop/source/splash/splash.cxx b/desktop/source/splash/splash.cxx
index e1f1e811c5bf..658b4e220f4a 100644
--- a/desktop/source/splash/splash.cxx
+++ b/desktop/source/splash/splash.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: splash.cxx,v $
*
- * $Revision: 1.10 $
+ * $Revision: 1.11 $
*
- * last change: $Author: vg $ $Date: 2005-02-16 16:38:11 $
+ * last change: $Author: obo $ $Date: 2005-03-15 12:21:50 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -79,7 +79,6 @@
#ifndef _SV_SVAPP_HXX
#include <vcl/svapp.hxx>
#endif
-#include <rtl/logfile.hxx>
using namespace ::rtl;
@@ -176,9 +175,6 @@ void SAL_CALL SplashScreen::setText(const OUString& aText)
void SAL_CALL SplashScreen::setValue(sal_Int32 nValue)
throw (RuntimeException)
{
- RTL_LOGFILE_CONTEXT( aLog, "::SplashScreen::setValue (lo119109)" );
- RTL_LOGFILE_CONTEXT_TRACE1( aLog, "value=%d", nValue );
-
::vos::OGuard aSolarGuard( Application::GetSolarMutex() );
if (_bVisible) {
Show();
@@ -336,6 +332,12 @@ Reference< XInterface > SplashScreen::getInstance(const Reference< XMultiService
}
// static service info...
+const char* SplashScreen::interfaces[] =
+{
+ "com.sun.star.task.XStartusIndicator",
+ "com.sun.star.lang.XInitialization",
+ NULL,
+};
const sal_Char *SplashScreen::serviceName = "com.sun.star.office.SplashScreen";
const sal_Char *SplashScreen::implementationName = "com.sun.star.office.comp.SplashScreen";
const sal_Char *SplashScreen::supportedServiceNames[] = {"com.sun.star.office.SplashScreen", NULL};
@@ -355,6 +357,7 @@ Sequence<OUString> SplashScreen::impl_getSupportedServiceNames()
}
+#if 0
// component management stuff...
// ----------------------------------------------------------------------------
extern "C"
@@ -416,3 +419,4 @@ component_getFactory(const sal_Char *pImplementationName, void *pServiceManager,
}
} // extern "C"
+#endif
diff --git a/desktop/source/splash/splash.hxx b/desktop/source/splash/splash.hxx
index 544d461a6b10..4af8ee7dbd5f 100644
--- a/desktop/source/splash/splash.hxx
+++ b/desktop/source/splash/splash.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: splash.hxx,v $
*
- * $Revision: 1.5 $
+ * $Revision: 1.6 $
*
- * last change: $Author: rt $ $Date: 2004-11-26 10:31:16 $
+ * last change: $Author: obo $ $Date: 2005-03-15 12:21:50 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -123,9 +123,6 @@ private:
void updateStatus();
static SplashScreen *_pINSTANCE;
- static const sal_Char *serviceName;
- static const sal_Char *implementationName;
- static const sal_Char *supportedServiceNames[];
static osl::Mutex _aMutex;
Reference< XMultiServiceFactory > _rFactory;
@@ -143,6 +140,11 @@ private:
public:
+ static const char* interfaces[];
+ static const sal_Char *serviceName;
+ static const sal_Char *implementationName;
+ static const sal_Char *supportedServiceNames[];
+
static Reference< XInterface > getInstance(const Reference < XMultiServiceFactory >& xFactory);
// static service info