diff options
Diffstat (limited to 'desktop/source/migration/wizard.cxx')
-rw-r--r-- | desktop/source/migration/wizard.cxx | 654 |
1 files changed, 0 insertions, 654 deletions
diff --git a/desktop/source/migration/wizard.cxx b/desktop/source/migration/wizard.cxx deleted file mode 100644 index 81a789a613b9..000000000000 --- a/desktop/source/migration/wizard.cxx +++ /dev/null @@ -1,654 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_desktop.hxx" - -#include <migration.hxx> -#include "wizard.hxx" -#include "wizard.hrc" -#include "pages.hxx" -#include "app.hxx" - -#include <rtl/ustring.hxx> -#include <rtl/ustrbuf.hxx> -#include <rtl/string.hxx> -#include <rtl/strbuf.hxx> -#include <rtl/bootstrap.hxx> - -#include <comphelper/processfactory.hxx> -#include <tools/date.hxx> -#include <tools/time.hxx> -#include <tools/datetime.hxx> -#include <osl/file.hxx> -#include <osl/time.h> -#include <osl/module.hxx> -#include <unotools/bootstrap.hxx> -#include <vcl/msgbox.hxx> - -#include <com/sun/star/uno/Any.hxx> -#include <com/sun/star/uno/Sequence.hxx> -#include <com/sun/star/beans/NamedValue.hpp> -#include <com/sun/star/beans/XPropertySet.hpp> -#include <com/sun/star/beans/XPropertyState.hpp> -#include <com/sun/star/frame/XDesktop.hpp> -#include <com/sun/star/lang/XMultiServiceFactory.hpp> -#include <com/sun/star/lang/XInitialization.hpp> -#include <com/sun/star/lang/XComponent.hpp> -#include <com/sun/star/util/XChangesBatch.hpp> -#include <com/sun/star/container/XNameReplace.hpp> -#include <com/sun/star/awt/WindowDescriptor.hpp> -#include <com/sun/star/awt/WindowAttribute.hpp> - -using namespace svt; -using namespace rtl; -using namespace osl; -using namespace utl; -using namespace com::sun::star; -using namespace com::sun::star::uno; -using namespace com::sun::star::lang; -using namespace com::sun::star::beans; -using namespace com::sun::star::util; -using namespace com::sun::star::container; - -#define UNISTRING(s) rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(s)) - -namespace desktop -{ - -const FirstStartWizard::WizardState FirstStartWizard::STATE_WELCOME = 0; -const FirstStartWizard::WizardState FirstStartWizard::STATE_LICENSE = 1; -const FirstStartWizard::WizardState FirstStartWizard::STATE_MIGRATION = 2; -const FirstStartWizard::WizardState FirstStartWizard::STATE_USER = 3; -const FirstStartWizard::WizardState FirstStartWizard::STATE_UPDATE_CHECK = 4; -const FirstStartWizard::WizardState FirstStartWizard::STATE_REGISTRATION = 5; - -static uno::Reference< uno::XComponentContext > getComponentContext( const uno::Reference< lang::XMultiServiceFactory >& rFactory ) -{ - uno::Reference< uno::XComponentContext > rContext; - uno::Reference< beans::XPropertySet > rPropSet( rFactory, uno::UNO_QUERY ); - uno::Any a = rPropSet->getPropertyValue( - ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DefaultContext" ) ) ); - a >>= rContext; - return rContext; -} - -static sal_Int32 getBuildId() -{ - ::rtl::OUString aDefault; - ::rtl::OUString aBuildIdData = utl::Bootstrap::getBuildIdData( aDefault ); - sal_Int32 nBuildId( 0 ); - sal_Int32 nIndex1 = aBuildIdData.indexOf(':'); - sal_Int32 nIndex2 = aBuildIdData.indexOf(')'); - if (( nIndex1 > 0 ) && ( nIndex2 > 0 ) && ( nIndex2-1 > nIndex1+1 )) - { - ::rtl::OUString aBuildId = aBuildIdData.copy( nIndex1+1, nIndex2-nIndex1-1 ); - nBuildId = aBuildId.toInt32(); - } - return nBuildId; -} - -WizardResId::WizardResId( USHORT nId ) : - ResId( nId, *FirstStartWizard::GetResManager() ) -{ -} - -ResMgr *FirstStartWizard::pResMgr = 0; - -ResMgr *FirstStartWizard::GetResManager() -{ - if ( !FirstStartWizard::pResMgr ) - { - String aMgrName = String::CreateFromAscii( "dkt" ); - FirstStartWizard::pResMgr = ResMgr::CreateResMgr( OUStringToOString( aMgrName, RTL_TEXTENCODING_UTF8 )); - } - return FirstStartWizard::pResMgr; -} - -FirstStartWizard::FirstStartWizard( Window* pParent, sal_Bool bLicenseNeedsAcceptance, const rtl::OUString &rLicensePath ) - :RoadmapWizard( pParent, WizardResId(DLG_FIRSTSTART_WIZARD), - WZB_NEXT|WZB_PREVIOUS|WZB_FINISH|WZB_CANCEL|WZB_HELP) - ,m_bOverride(sal_False) - ,m_aDefaultPath(0) - ,m_aMigrationPath(0) - ,m_bDone(sal_False) - ,m_bLicenseNeedsAcceptance( bLicenseNeedsAcceptance ) - ,m_bLicenseWasAccepted(sal_False) - ,m_bAutomaticUpdChk(sal_True) - ,m_aLicensePath( rLicensePath ) -{ - // --- - // FreeResource(); -// enableState(STATE_USER, sal_False); -// enableState(STATE_REGISTRATION, sal_False); - - try - { - Point pos(5, 210 ); - Size size(11, 11 ); - - pos = LogicToPixel( pos, MAP_APPFONT ); - size = LogicToPixel( size, MAP_APPFONT ); - - uno::Reference< lang::XMultiServiceFactory > xFactory = ::comphelper::getProcessServiceFactory(); - uno::Reference< awt::XToolkit > xToolkit( - uno::Reference< lang::XMultiComponentFactory >( - xFactory, uno::UNO_QUERY_THROW)-> - createInstanceWithContext( - rtl::OUString( - RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.Toolkit")), - getComponentContext(xFactory)), - uno::UNO_QUERY_THROW); - - m_xThrobber = uno::Reference< awt::XThrobber >( - xToolkit->createWindow( - awt::WindowDescriptor( - awt::WindowClass_SIMPLE, - rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Throbber")), - GetComponentInterface(), 0, - awt::Rectangle( - pos.X(), pos.Y(), size.Width(), size.Height()), - awt::WindowAttribute::SHOW)), - uno::UNO_QUERY_THROW); - } - catch (uno::RuntimeException &) - { - throw; - } - catch (Exception& ) - { - } - - uno::Reference< awt::XWindow > xThrobberWin( m_xThrobber, uno::UNO_QUERY ); - if ( xThrobberWin.is() ) - xThrobberWin->setVisible( false ); - - Size aTPSize(TP_WIDTH, TP_HEIGHT); - SetPageSizePixel(LogicToPixel(aTPSize, MAP_APPFONT)); - - //set help id - m_pPrevPage->SetHelpId(HID_FIRSTSTART_PREV); - m_pNextPage->SetHelpId(HID_FIRSTSTART_NEXT); - m_pCancel->SetHelpId(HID_FIRSTSTART_CANCEL); - m_pFinish->SetHelpId(HID_FIRSTSTART_FINISH); - // m_pHelp->SetUniqueId(UID_FIRSTSTART_HELP); - m_pHelp->Hide(); - m_pHelp->Disable(); - - // save button lables - m_sNext = m_pNextPage->GetText(); - m_sCancel = m_pCancel->GetText(); - - // save cancel click handler - m_lnkCancel = m_pCancel->GetClickHdl(); - - m_aDefaultPath = defineWizardPagesDependingFromContext(); - activatePath(m_aDefaultPath, sal_True); - - enterState(STATE_WELCOME); - ActivatePage(); - - // set text of finish putton: - m_pFinish->SetText(String(WizardResId(STR_FINISH))); - // disable "finish button" - enableButtons(WZB_FINISH, sal_False); - defaultButton(WZB_NEXT); -} - -void FirstStartWizard::DisableButtonsWhileMigration() -{ - enableButtons(0xff, sal_False); -} - -::svt::RoadmapWizardTypes::PathId FirstStartWizard::defineWizardPagesDependingFromContext() -{ - ::svt::RoadmapWizardTypes::PathId aDefaultPath = 0; - - sal_Bool bPage_Welcome = sal_True; - sal_Bool bPage_License = sal_True; - sal_Bool bPage_Migration = sal_True; - sal_Bool bPage_User = sal_True; - sal_Bool bPage_UpdateCheck = sal_True; - sal_Bool bPage_Registration = sal_True; - - bPage_License = m_bLicenseNeedsAcceptance; - bPage_Migration = Migration::checkMigration(); - bPage_UpdateCheck = showOnlineUpdatePage(); - - WizardPath aPath; - if (bPage_Welcome) - aPath.push_back(STATE_WELCOME); - if (bPage_License) - aPath.push_back(STATE_LICENSE); - if (bPage_Migration) - aPath.push_back(STATE_MIGRATION); - if (bPage_User) - aPath.push_back(STATE_USER); - if (bPage_UpdateCheck) - aPath.push_back(STATE_UPDATE_CHECK); - if (bPage_Registration) - aPath.push_back(STATE_REGISTRATION); - - declarePath(aDefaultPath, aPath); - - // a) If license must be accepted by the user, all direct links - // to wizard tab pages must be disabled. Because such pages - // should be accessible only in case license was accepted ! - // b) But if no license should be shown at all ... - // such direct links can be enabled by default. - sal_Bool bAllowDirectLink = ( ! bPage_License); - - if (bPage_User) - enableState(STATE_USER, bAllowDirectLink); - if (bPage_UpdateCheck) - enableState(STATE_UPDATE_CHECK, bAllowDirectLink); - if (bPage_Migration) - enableState(STATE_MIGRATION, bAllowDirectLink); - if (bPage_Registration) - enableState(STATE_REGISTRATION, bAllowDirectLink); - - return aDefaultPath; -} - -// catch F1 and disable help -long FirstStartWizard::PreNotify( NotifyEvent& rNEvt ) -{ - if( rNEvt.GetType() == EVENT_KEYINPUT ) - { - const KeyCode& rKey = rNEvt.GetKeyEvent()->GetKeyCode(); - if( rKey.GetCode() == KEY_F1 && ! rKey.GetModifier() ) - return TRUE; - } - return RoadmapWizard::PreNotify(rNEvt); -} - - -void FirstStartWizard::enterState(WizardState _nState) -{ - RoadmapWizard::enterState(_nState); - // default state - // all on - enableButtons(0xff, sal_True); - // finish off - enableButtons(WZB_FINISH, sal_False); - // default text - m_pCancel->SetText(m_sCancel); - m_pCancel->SetClickHdl(m_lnkCancel); - m_pNextPage->SetText(m_sNext); - - // default - defaultButton(WZB_NEXT); - - // specialized state - switch (_nState) - { - case STATE_WELCOME: - enableButtons(WZB_PREVIOUS, sal_False); - break; - case STATE_LICENSE: - m_pCancel->SetText(String(WizardResId(STR_LICENSE_DECLINE))); - m_pNextPage->SetText(String(WizardResId(STR_LICENSE_ACCEPT))); - enableButtons(WZB_NEXT, sal_False); - // attach warning dialog to cancel/decline button - m_pCancel->SetClickHdl( LINK(this, FirstStartWizard, DeclineHdl) ); - break; - case STATE_REGISTRATION: - enableButtons(WZB_NEXT, sal_False); - enableButtons(WZB_FINISH, sal_True); - defaultButton(WZB_FINISH); - break; - } - - // focus - -} - -IMPL_LINK( FirstStartWizard, DeclineHdl, PushButton *, EMPTYARG ) -{ - QueryBox aBox(this, WizardResId(QB_ASK_DECLINE)); - sal_Int32 ret = aBox.Execute(); - if ( ret == BUTTON_OK || ret == BUTTON_YES) - { - Close(); - return sal_False; - } - else - return sal_True; -} - - -TabPage* FirstStartWizard::createPage(WizardState _nState) -{ - TabPage *pTabPage = 0; - switch (_nState) - { - case STATE_WELCOME: - pTabPage = new WelcomePage(this, WizardResId(TP_WELCOME), m_bLicenseNeedsAcceptance); - break; - case STATE_LICENSE: - pTabPage = new LicensePage(this, WizardResId(TP_LICENSE), m_aLicensePath); - break; - case STATE_MIGRATION: - pTabPage = new MigrationPage(this, WizardResId(TP_MIGRATION), m_xThrobber ); - break; - case STATE_USER: - pTabPage = new UserPage(this, WizardResId(TP_USER)); - break; - case STATE_UPDATE_CHECK: - pTabPage = new UpdateCheckPage(this, WizardResId(TP_UPDATE_CHECK)); - break; - case STATE_REGISTRATION: - pTabPage = new RegistrationPage(this, WizardResId(TP_REGISTRATION)); - break; - } - pTabPage->Show(); - - return pTabPage; -} - -String FirstStartWizard::getStateDisplayName( WizardState _nState ) const -{ - String sName; - switch(_nState) - { - case STATE_WELCOME: - sName = String(WizardResId(STR_STATE_WELCOME)); - break; - case STATE_LICENSE: - sName = String(WizardResId(STR_STATE_LICENSE)); - break; - case STATE_MIGRATION: - sName = String(WizardResId(STR_STATE_MIGRATION)); - break; - case STATE_USER: - sName = String(WizardResId(STR_STATE_USER)); - break; - case STATE_UPDATE_CHECK: - sName = String(WizardResId(STR_STATE_UPDATE_CHECK)); - break; - case STATE_REGISTRATION: - sName = String(WizardResId(STR_STATE_REGISTRATION)); - break; - } - return sName; -} - -sal_Bool FirstStartWizard::prepareLeaveCurrentState( CommitPageReason _eReason ) -{ - // the license acceptance is handled here, because it needs to change the state - // of the roadmap wizard which the page implementation does not know. - if ( - (_eReason == eTravelForward) && - (getCurrentState() == STATE_LICENSE ) && - (m_bLicenseWasAccepted == sal_False ) - ) - { - if (Migration::checkMigration()) - enableState(FirstStartWizard::STATE_MIGRATION, sal_True); - if ( showOnlineUpdatePage() ) - enableState(FirstStartWizard::STATE_UPDATE_CHECK, sal_True); - enableState(FirstStartWizard::STATE_USER, sal_True); - enableState(FirstStartWizard::STATE_REGISTRATION, sal_True); - - storeAcceptDate(); - m_bLicenseWasAccepted = sal_True; - } - - return svt::RoadmapWizard::prepareLeaveCurrentState(_eReason); -} - -sal_Bool FirstStartWizard::leaveState(WizardState) -{ - if (( getCurrentState() == STATE_MIGRATION ) && m_bLicenseWasAccepted ) - { - // Store accept date and patch level now as it has been - // overwritten by the migration process! - storeAcceptDate(); - setPatchLevel(); - } - - return sal_True; -} - -sal_Bool FirstStartWizard::onFinish() -{ - // return sal_True; - if ( svt::RoadmapWizard::onFinish() ) - { -#ifndef OS2 // cannot enable quickstart on first startup, see shutdownicon.cxx comments. - enableQuickstart(); -#endif - disableWizard(); - return sal_True; - } - else - return sal_False; -} - -short FirstStartWizard::Execute() -{ - return svt::RoadmapWizard::Execute(); -} - -static OUString _makeDateTimeString (const DateTime& aDateTime, sal_Bool bUTC = sal_False) -{ - OStringBuffer aDateTimeString; - aDateTimeString.append((sal_Int32)aDateTime.GetYear()); - aDateTimeString.append("-"); - if (aDateTime.GetMonth()<10) aDateTimeString.append("0"); - aDateTimeString.append((sal_Int32)aDateTime.GetMonth()); - aDateTimeString.append("-"); - if (aDateTime.GetDay()<10) aDateTimeString.append("0"); - aDateTimeString.append((sal_Int32)aDateTime.GetDay()); - aDateTimeString.append("T"); - if (aDateTime.GetHour()<10) aDateTimeString.append("0"); - aDateTimeString.append((sal_Int32)aDateTime.GetHour()); - aDateTimeString.append(":"); - if (aDateTime.GetMin()<10) aDateTimeString.append("0"); - aDateTimeString.append((sal_Int32)aDateTime.GetMin()); - aDateTimeString.append(":"); - if (aDateTime.GetSec()<10) aDateTimeString.append("0"); - aDateTimeString.append((sal_Int32)aDateTime.GetSec()); - if (bUTC) aDateTimeString.append("Z"); - - return OStringToOUString(aDateTimeString.makeStringAndClear(), RTL_TEXTENCODING_ASCII_US); -} - -static OUString _getCurrentDateString() -{ - OUString aString; - return _makeDateTimeString(DateTime()); -} - - -static const OUString sConfigSrvc( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.configuration.ConfigurationProvider" ) ); -static const OUString sAccessSrvc( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.configuration.ConfigurationUpdateAccess" ) ); -static const OUString sReadSrvc ( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.configuration.ConfigurationAccess" ) ); - -void FirstStartWizard::storeAcceptDate() -{ - - try { - Reference < XMultiServiceFactory > xFactory = ::comphelper::getProcessServiceFactory(); - // get configuration provider - Reference< XMultiServiceFactory > theConfigProvider = Reference< XMultiServiceFactory >( - xFactory->createInstance(sConfigSrvc), UNO_QUERY_THROW); - Sequence< Any > theArgs(1); - NamedValue v(OUString::createFromAscii("NodePath"), - makeAny(OUString::createFromAscii("org.openoffice.Setup/Office"))); - theArgs[0] <<= v; - Reference< XPropertySet > pset = Reference< XPropertySet >( - theConfigProvider->createInstanceWithArguments(sAccessSrvc, theArgs), UNO_QUERY_THROW); - Any result = pset->getPropertyValue(OUString::createFromAscii("LicenseAcceptDate")); - - OUString aAcceptDate = _getCurrentDateString(); - pset->setPropertyValue(OUString::createFromAscii("LicenseAcceptDate"), makeAny(aAcceptDate)); - Reference< XChangesBatch >(pset, UNO_QUERY_THROW)->commitChanges(); - - // since the license is accepted the local user registry can be cleaned if required - cleanOldOfficeRegKeys(); - } catch (const Exception&) - { - } - -} - -void FirstStartWizard::setPatchLevel() -{ - try { - Reference < XMultiServiceFactory > xFactory = ::comphelper::getProcessServiceFactory(); - // get configuration provider - Reference< XMultiServiceFactory > theConfigProvider = Reference< XMultiServiceFactory >( - xFactory->createInstance(sConfigSrvc), UNO_QUERY_THROW); - Sequence< Any > theArgs(1); - NamedValue v(OUString::createFromAscii("NodePath"), - makeAny(OUString::createFromAscii("org.openoffice.Office.Common/Help/Registration"))); - theArgs[0] <<= v; - Reference< XPropertySet > pset = Reference< XPropertySet >( - theConfigProvider->createInstanceWithArguments(sAccessSrvc, theArgs), UNO_QUERY_THROW); - Any result = pset->getPropertyValue(OUString::createFromAscii("ReminderDate")); - - OUString aPatchLevel( RTL_CONSTASCII_USTRINGPARAM( "Patch" )); - aPatchLevel += OUString::valueOf( getBuildId(), 10 ); - pset->setPropertyValue(OUString::createFromAscii("ReminderDate"), makeAny(aPatchLevel)); - Reference< XChangesBatch >(pset, UNO_QUERY_THROW)->commitChanges(); - } catch (const Exception&) - { - } -} - -#ifdef WNT -typedef int ( __stdcall * CleanCurUserRegProc ) ( wchar_t* ); -#endif - -void FirstStartWizard::cleanOldOfficeRegKeys() -{ -#ifdef WNT - // after the wizard is completed clean OOo1.1.x entries in the current user registry if required - // issue i47658 - - OUString aBaseLocationPath; - OUString aSharedLocationPath; - OUString aInstallMode; - - ::utl::Bootstrap::PathStatus aBaseLocateResult = - ::utl::Bootstrap::locateBaseInstallation( aBaseLocationPath ); - ::utl::Bootstrap::PathStatus aSharedLocateResult = - ::utl::Bootstrap::locateSharedData( aSharedLocationPath ); - aInstallMode = ::utl::Bootstrap::getAllUsersValue( ::rtl::OUString() ); - - // TODO: replace the checking for install mode - if ( aBaseLocateResult == ::utl::Bootstrap::PATH_EXISTS && aSharedLocateResult == ::utl::Bootstrap::PATH_EXISTS - && aInstallMode.equals( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "1" ) ) ) ) - { - ::rtl::OUString aDeregCompletePath = - aBaseLocationPath + ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/program/regcleanold.dll" ) ); - ::rtl::OUString aExecCompletePath = - aSharedLocationPath + ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/regdeinstall/userdeinst.exe" ) ); - - osl::Module aCleanModule( aDeregCompletePath ); - CleanCurUserRegProc pNativeProc = ( CleanCurUserRegProc )( - aCleanModule.getFunctionSymbol( - ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CleanCurUserOldSystemRegistry" ) ) ) ); - - if( pNativeProc!=NULL ) - { - ::rtl::OUString aExecCompleteSysPath; - if ( osl::File::getSystemPathFromFileURL( aExecCompletePath, aExecCompleteSysPath ) == FileBase::E_None - && aExecCompleteSysPath.getLength() ) - { - ( *pNativeProc )( (wchar_t*)( aExecCompleteSysPath.getStr() ) ); - } - } - } -#endif -} - -void FirstStartWizard::disableWizard() -{ - - try { - Reference < XMultiServiceFactory > xFactory = ::comphelper::getProcessServiceFactory(); - // get configuration provider - Reference< XMultiServiceFactory > theConfigProvider = Reference< XMultiServiceFactory >( - xFactory->createInstance(sConfigSrvc), UNO_QUERY_THROW); - Sequence< Any > theArgs(1); - NamedValue v(OUString::createFromAscii("NodePath"), - makeAny(OUString::createFromAscii("org.openoffice.Setup/Office"))); - theArgs[0] <<= v; - Reference< XPropertySet > pset = Reference< XPropertySet >( - theConfigProvider->createInstanceWithArguments(sAccessSrvc, theArgs), UNO_QUERY_THROW); - pset->setPropertyValue(OUString::createFromAscii("FirstStartWizardCompleted"), makeAny(sal_True)); - Reference< XChangesBatch >(pset, UNO_QUERY_THROW)->commitChanges(); - } catch (const Exception&) - { - } - -} - - -void FirstStartWizard::enableQuickstart() -{ - sal_Bool bQuickstart( sal_True ); - sal_Bool bAutostart( sal_True ); - Sequence< Any > aSeq( 2 ); - aSeq[0] <<= bQuickstart; - aSeq[1] <<= bAutostart; - - Reference < XInitialization > xQuickstart( ::comphelper::getProcessServiceFactory()->createInstance( - OUString::createFromAscii( "com.sun.star.office.Quickstart" )),UNO_QUERY ); - if ( xQuickstart.is() ) - xQuickstart->initialize( aSeq ); - -} - -sal_Bool FirstStartWizard::showOnlineUpdatePage() -{ - try { - Reference < XNameReplace > xUpdateAccess; - Reference < XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() ); - - xUpdateAccess = Reference < XNameReplace >( - xFactory->createInstance( UNISTRING( "com.sun.star.setup.UpdateCheckConfig" ) ), UNO_QUERY_THROW ); - - if ( xUpdateAccess.is() ) - { - sal_Bool bAutoUpdChk = sal_False; - Any result = xUpdateAccess->getByName( UNISTRING( "AutoCheckEnabled" ) ); - result >>= bAutoUpdChk; - if ( bAutoUpdChk == sal_False ) - return sal_True; - else - return sal_False; - } - } catch (const Exception&) - { - } - return sal_False; -} - -} |