diff options
author | Jan Holesovsky <kendy@suse.cz> | 2011-03-23 16:59:26 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@suse.cz> | 2011-03-23 16:59:26 +0100 |
commit | 3b7ab82aee60aec1e47c1e253d3977a3fc011f5b (patch) | |
tree | 1ebee7adb28ba3175deee3948aee8f5489d9b509 /desktop | |
parent | 486dd9082e177aa63294f76d6a75b08dde5957e5 (diff) | |
parent | 61879c218dd0e6e94884e7c6e06e3c5c18540b4a (diff) |
Merge commit 'ooo/DEV300_m103'
Conflicts:
basic/source/runtime/makefile.mk
basic/source/runtime/step2.cxx
desktop/prj/build.lst
desktop/source/app/app.cxx
desktop/source/deployment/registry/dp_backend.cxx
drawinglayer/source/attribute/fontattribute.cxx
editeng/inc/editeng/fontitem.hxx
editeng/source/editeng/edtspell.cxx
editeng/source/misc/svxacorr.cxx
framework/inc/services/substitutepathvars.hxx
framework/source/services/substitutepathvars.cxx
sfx2/qa/cppunit/makefile.mk
sfx2/source/doc/SfxDocumentMetaData.cxx
sfx2/source/doc/objxtor.cxx
svx/source/dialog/svxruler.cxx
sysui/desktop/icons/so9_base_app.ico
sysui/desktop/icons/so9_calc_app.ico
sysui/desktop/icons/so9_draw_app.ico
sysui/desktop/icons/so9_impress_app.ico
sysui/desktop/icons/so9_main_app.ico
sysui/desktop/icons/so9_math_app.ico
sysui/desktop/icons/so9_writer_app.ico
xmlhelp/source/cxxhelp/provider/databases.cxx
xmlhelp/source/cxxhelp/provider/db.cxx
xmlhelp/source/cxxhelp/provider/db.hxx
Diffstat (limited to 'desktop')
22 files changed, 995 insertions, 59 deletions
diff --git a/desktop/os2/source/applauncher/makefile.mk b/desktop/os2/source/applauncher/makefile.mk index bf71b57c2fdf..7eec8aee9c23 100755 --- a/desktop/os2/source/applauncher/makefile.mk +++ b/desktop/os2/source/applauncher/makefile.mk @@ -47,7 +47,7 @@ OBJFILES= \ $(OBJ)$/sbase.obj \ $(OBJ)$/smath.obj \ $(OBJ)$/officeloader.obj \ - $(OBJ)$/quickstart.obj + $(OBJ)$/os2quickstart.obj APP1TARGET=swriter APP1NOSAL=TRUE @@ -106,13 +106,13 @@ APP7OBJS = \ $(OBJ)$/launcher.obj\ $(OBJ)$/officeloader.obj -APP8TARGET=quickstart +APP8TARGET=os2quickstart APP8NOSAL=TRUE APP8LINKRES=$(MISC)$/$(TARGET)8.res APP8ICON=$(SOLARRESDIR)$/icons$/ooo-main-app.ico APP8OBJS = \ $(OBJ)$/launcher.obj\ - $(OBJ)$/quickstart.obj + $(OBJ)$/os2quickstart.obj # --- Targets ------------------------------------------------------ diff --git a/desktop/os2/source/applauncher/quickstart.cxx b/desktop/os2/source/applauncher/os2quickstart.cxx index b67389272f77..b67389272f77 100755 --- a/desktop/os2/source/applauncher/quickstart.cxx +++ b/desktop/os2/source/applauncher/os2quickstart.cxx diff --git a/desktop/prj/build.lst b/desktop/prj/build.lst index 26e9e046535b..68991684d92a 100755 --- a/desktop/prj/build.lst +++ b/desktop/prj/build.lst @@ -17,6 +17,9 @@ dt desktop\win32\source\guistdio nmake - w dt_guistdio dt_inc N dt desktop\win32\source\applauncher nmake - w dt_applauncher dt_inc NULL dt desktop\win32\source\applauncher\ooo nmake - w dt_applauncher_ooo dt_applauncher.w dt_inc NULL dt desktop\win32\source\rebase nmake - w dt_rebase dt_inc NULL +dt desktop\win32\source\QuickStart nmake - w dt_win32_quickstart NULL +dt desktop\win32\source\QuickStart\so nmake - w dt_win32_quickstart_so dt_win32_quickstart.w NULL + dt desktop\os2\source\applauncher nmake - p dt_applauncher dt_inc NULL dt desktop\unx\source\officeloader nmake - u dt_officeloader_unx dt_inc NULL dt desktop\unx\source nmake - u dt_uwrapper dt_inc NULL @@ -37,8 +40,8 @@ dt desktop\source\deployment\registry\configuration nmake - all dt_dp_registry_c dt desktop\source\deployment\registry\help nmake - all dt_dp_registry_help dt_inc NULL dt desktop\source\deployment\registry\executable nmake - all dt_dp_registry_executable dt_inc NULL dt desktop\scripts nmake - u dt_scripts dt_inc NULL +dt desktop\util nmake - all dt_util dt_app dt_pagein.u dt_so_comp dt_spl dt_uwrapper.u dt_usplash.u dt_wrapper.w dt_officeloader.w dt_officeloader_unx.u dt_migr dt_rebase.w dt_win32_quickstart_so.w dt_zipintro NULL dt desktop\zipintro nmake - all dt_zipintro NULL -dt desktop\util nmake - all dt_util dt_app dt_pagein.u dt_so_comp dt_spl dt_uwrapper.u dt_usplash.u dt_wrapper.w dt_officeloader.w dt_officeloader_unx.u dt_migr dt_rebase.w dt_zipintro NULL dt desktop\registry\data\org\openoffice\Office nmake - all sn_regconfig NULL dt desktop\source\registration\com\sun\star\servicetag\resources get - all sn_svctagres NULL dt desktop\source\registration\com\sun\star\servicetag nmake - all sn_svctag NULL diff --git a/desktop/prj/d.lst b/desktop/prj/d.lst index bb18fe3ff945..cb4fa0617293 100755 --- a/desktop/prj/d.lst +++ b/desktop/prj/d.lst @@ -32,7 +32,7 @@ mkdir: %_DEST%\bin%_EXT%\odf4ms ..\%__SRC%\bin\swriter.exe %_DEST%\bin%_EXT%\swriter.exe ..\%__SRC%\bin\sbase.exe %_DEST%\bin%_EXT%\sbase.exe ..\%__SRC%\bin\sweb.exe %_DEST%\bin%_EXT%\sweb.exe -..\%__SRC%\bin\quickstart.exe %_DEST%\bin%_EXT%\quickstart.exe +..\%__SRC%\bin\os2quickstart.exe %_DEST%\bin%_EXT%\quickstart.exe ..\%__SRC%\bin\so\scalc.exe %_DEST%\bin%_EXT%\so\scalc.exe ..\%__SRC%\bin\so\sdraw.exe %_DEST%\bin%_EXT%\so\sdraw.exe ..\%__SRC%\bin\so\simpress.exe %_DEST%\bin%_EXT%\so\simpress.exe @@ -41,6 +41,11 @@ mkdir: %_DEST%\bin%_EXT%\odf4ms ..\%__SRC%\bin\so\sbase.exe %_DEST%\bin%_EXT%\so\sbase.exe ..\%__SRC%\bin\so\sweb.exe %_DEST%\bin%_EXT%\so\sweb.exe +..\%__SRC%\bin\quickstart.exe %_DEST%\bin%_EXT%\quickstart.exe +..\%__SRC%\bin\quickstart.exe %_DEST%\bin%_EXT%\install_quickstart.exe +..\%__SRC%\bin\soquickstart.exe %_DEST%\bin%_EXT%\so\quickstart.exe +..\%__SRC%\bin\soquickstart.exe %_DEST%\bin%_EXT%\so\install_quickstart.exe + ..\%__SRC%\misc\soffice.exe.manifest %_DEST%\bin%_EXT%\soffice.exe.manifest ..\%__SRC%\misc\soffice.bin.manifest %_DEST%\bin%_EXT%\soffice.bin.manifest ..\%__SRC%\bin\wrp*.dll %_DEST%\bin%_EXT%\wrp*.dll diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index 8442aa4d87cf..6058c22c9a89 100755 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1620,7 +1620,8 @@ int Desktop::Main() // there is no other instance using our data files from a remote host RTL_LOGFILE_CONTEXT_TRACE( aLog, "desktop (lo119109) Desktop::Main -> Lockfile" ); m_pLockfile = new Lockfile; - if ( !pCmdLineArgs->IsInvisible() && !pCmdLineArgs->IsNoLockcheck() && !m_pLockfile->check( Lockfile_execWarning )) { + if ( !pCmdLineArgs->IsHeadless() && !pCmdLineArgs->IsInvisible() && + !pCmdLineArgs->IsNoLockcheck() && !m_pLockfile->check( Lockfile_execWarning )) { // Lockfile exists, and user clicked 'no' return EXIT_FAILURE; } @@ -1769,7 +1770,7 @@ int Desktop::Main() if ( !pExecGlobals->bRestartRequested ) { - if ((!pCmdLineArgs->WantsToLoadDocument() ) && + if ((!pCmdLineArgs->WantsToLoadDocument() && !pCmdLineArgs->IsInvisible() && !pCmdLineArgs->IsHeadless() ) && (SvtModuleOptions().IsModuleInstalled(SvtModuleOptions::E_SSTARTMODULE)) && (!bExistsRecoveryData ) && (!bExistsSessionData ) && @@ -2097,9 +2098,9 @@ sal_Bool Desktop::InitializeQuickstartMode( Reference< XMultiServiceFactory >& r // unfortunately this broke the QUARTZ behavior which is to always run // in quickstart mode since Mac applications do not usually quit // when the last document closes - //#ifndef QUARTZ + #ifndef QUARTZ if ( bQuickstart ) - //#endif + #endif { Sequence< Any > aSeq( 1 ); aSeq[0] <<= bQuickstart; @@ -3173,6 +3174,7 @@ void Desktop::OpenSplashScreen() sal_Bool bVisible = sal_False; // Show intro only if this is normal start (e.g. no server, no quickstart, no printing ) if ( !pCmdLine->IsInvisible() && + !pCmdLine->IsHeadless() && !pCmdLine->IsQuickstart() && !pCmdLine->IsMinimized() && !pCmdLine->IsNoLogo() && diff --git a/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx b/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx index 84f3e0ec6444..84f3e0ec6444 100755..100644 --- a/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx +++ b/desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx index a82b69439b60..2c790d047520 100755 --- a/desktop/source/deployment/manager/dp_manager.cxx +++ b/desktop/source/deployment/manager/dp_manager.cxx @@ -64,6 +64,7 @@ #include "com/sun/star/ucb/UnsupportedCommandException.hpp" #include "boost/bind.hpp" #include "tools/urlobj.hxx" +#include "unotools/tempfile.hxx" #include "osl/file.hxx" #include <vector> @@ -637,21 +638,12 @@ OUString PackageManagerImpl::insertToActivationLayer( ::ucbhelper::Content sourceContent(sourceContent_); Reference<XCommandEnvironment> xCmdEnv( sourceContent.getCommandEnvironment() ); - OUString destFolder, tempEntry; - if (::osl::File::createTempFile( - m_activePackages_expanded.getLength() == 0 - ? 0 : &m_activePackages_expanded, - 0, &tempEntry ) != ::osl::File::E_None) - throw RuntimeException( - OUSTR("::osl::File::createTempFile() failed!"), 0 ); - if (m_activePackages_expanded.getLength() == 0) { - destFolder = tempEntry; - } - else { - tempEntry = tempEntry.copy( tempEntry.lastIndexOf( '/' ) + 1 ); - // tweak user|share to macrofied url: - destFolder = makeURL( m_activePackages, tempEntry ); - } + + String baseDir(m_activePackages_expanded); + ::utl::TempFile aTemp(&baseDir, sal_False); + OUString tempEntry = aTemp.GetURL(); + tempEntry = tempEntry.copy(tempEntry.lastIndexOf('/') + 1); + OUString destFolder = makeURL( m_activePackages, tempEntry); destFolder += OUSTR("_"); // prepare activation folder: diff --git a/desktop/source/deployment/registry/dp_backend.cxx b/desktop/source/deployment/registry/dp_backend.cxx index 06b8b68c6f68..6de731f76e75 100755..100644 --- a/desktop/source/deployment/registry/dp_backend.cxx +++ b/desktop/source/deployment/registry/dp_backend.cxx @@ -46,6 +46,7 @@ #include "com/sun/star/beans/StringPair.hpp" #include "com/sun/star/sdbc/XResultSet.hpp" #include "com/sun/star/sdbc/XRow.hpp" +#include "unotools/tempfile.hxx" using namespace ::dp_misc; @@ -226,42 +227,43 @@ OUString PackageRegistryBackend::createFolder( OUString const & relUrl, Reference<ucb::XCommandEnvironment> const & xCmdEnv) { - OUString sDataFolder = makeURL(getCachePath(), relUrl); + const OUString sDataFolder = makeURL(getCachePath(), relUrl); //make sure the folder exist ucbhelper::Content dataContent; ::dp_misc::create_folder(&dataContent, sDataFolder, xCmdEnv); - OUString sDataFolderURL = dp_misc::expandUnoRcUrl(sDataFolder); - - OUString tempEntry; - if (::osl::File::createTempFile( - &sDataFolderURL, 0, &tempEntry ) != ::osl::File::E_None) - throw RuntimeException( - OUSTR("::osl::File::createTempFile() failed!"), 0 ); - tempEntry = tempEntry.copy( tempEntry.lastIndexOf( '/' ) + 1 ); - OUString destFolder= makeURL(sDataFolder, tempEntry) + OUSTR("_"); - ::ucbhelper::Content destFolderContent; - dp_misc::create_folder( &destFolderContent, destFolder, xCmdEnv ); - - return destFolder; + const OUString sDataFolderURL = dp_misc::expandUnoRcUrl(sDataFolder); + const String baseDir(sDataFolder); + const ::utl::TempFile aTemp(&baseDir, sal_True); + const OUString url = aTemp.GetURL(); + return sDataFolder + url.copy(url.lastIndexOf('/')); } +//folderURL can have the extension .tmp or .tmp_ +//Before OOo 3.4 the created a tmp file with osl_createTempFile and +//then created a Folder with a same name and a trailing '_' +//If the folderURL has no '_' then there is no corresponding tmp file. void PackageRegistryBackend::deleteTempFolder( OUString const & folderUrl) { - OSL_ASSERT(folderUrl.getLength() - && folderUrl[folderUrl.getLength() - 1] == '_'); - if (folderUrl.getLength() - && folderUrl[folderUrl.getLength() - 1] == '_') + if (folderUrl.getLength()) { - const OUString tempFile = folderUrl.copy(0, folderUrl.getLength() - 1); erase_path( folderUrl, Reference<XCommandEnvironment>(), false /* no throw: ignore errors */ ); - erase_path( tempFile, Reference<XCommandEnvironment>(), - false /* no throw: ignore errors */ ); + + if (folderUrl[folderUrl.getLength() - 1] == '_') + { + const OUString tempFile = folderUrl.copy(0, folderUrl.getLength() - 1); + erase_path( tempFile, Reference<XCommandEnvironment>(), + false /* no throw: ignore errors */ ); + } } } +//usedFolders can contain folder names which have the extension .tmp or .tmp_ +//Before OOo 3.4 we created a tmp file with osl_createTempFile and +//then created a Folder with a same name and a trailing '_' +//If the folderURL has no '_' then there is no corresponding tmp file. void PackageRegistryBackend::deleteUnusedFolders( OUString const & relUrl, ::std::list< OUString> const & usedFolders) @@ -274,7 +276,7 @@ void PackageRegistryBackend::deleteUnusedFolders( Reference<sdbc::XResultSet> xResultSet( tempFolder.createCursor( Sequence<OUString>( &StrTitle::get(), 1 ), - ::ucbhelper::INCLUDE_DOCUMENTS_ONLY ) ); + ::ucbhelper::INCLUDE_FOLDERS_ONLY ) ); // get all temp directories: ::std::vector<OUString> tempEntries; @@ -294,14 +296,10 @@ void PackageRegistryBackend::deleteUnusedFolders( for ( ::std::size_t pos = 0; pos < tempEntries.size(); ++pos ) { - //usedFolders contains the urls to the folders which have - //a trailing underscore - const OUString tempFolderName = tempEntries[ pos ] + OUSTR("_"); - - if (::std::find( usedFolders.begin(), usedFolders.end(), tempFolderName ) == + if (::std::find( usedFolders.begin(), usedFolders.end(), tempEntries[pos] ) == usedFolders.end()) { - deleteTempFolder(tempFolderName); + deleteTempFolder(tempEntries[pos]); } } } diff --git a/desktop/source/deployment/registry/dp_backenddb.cxx b/desktop/source/deployment/registry/dp_backenddb.cxx index f7ad8cb8c5a9..becfc14d254d 100755 --- a/desktop/source/deployment/registry/dp_backenddb.cxx +++ b/desktop/source/deployment/registry/dp_backenddb.cxx @@ -92,7 +92,10 @@ css::uno::Reference<css::xml::dom::XDocument> BackendDb::getDocument() ::osl::File::RC err = ::osl::DirectoryItem::get(m_urlDb, item); if (err == ::osl::File::E_None) { - m_doc = xDocBuilder->parseURI(m_urlDb); + ::ucbhelper::Content descContent( + m_urlDb, css::uno::Reference<css::ucb::XCommandEnvironment>()); + Reference<css::io::XInputStream> xIn = descContent.openStream(); + m_doc = xDocBuilder->parse(xIn); } else if (err == ::osl::File::E_NOENT) { diff --git a/desktop/util/ooverinfo.rc b/desktop/util/ooverinfo.rc index 5412f5fb2f6d..be7469563968 100755 --- a/desktop/util/ooverinfo.rc +++ b/desktop/util/ooverinfo.rc @@ -86,7 +86,7 @@ VS_VERSION_INFO versioninfo 15 ICON "icons\\oasis-formula.ico" 16 ICON "icons\\oasis-web-template.ico" 17 ICON "icons\\empty-document.ico" -18 ICON "icons\\ooo-configuration.ico" +18 ICON "icons\\empty-document.ico" 19 ICON "icons\\ooo3_open.ico" 20 ICON "icons\\empty-document.ico" 21 ICON "icons\\ooo3_writer_app.ico" diff --git a/desktop/util/ooverinfo2.rc b/desktop/util/ooverinfo2.rc index 17af6818551e..caacb294122d 100755 --- a/desktop/util/ooverinfo2.rc +++ b/desktop/util/ooverinfo2.rc @@ -50,7 +50,7 @@ ICON 14 "icons/oasis-database.ico" ICON 15 "icons/oasis-formula.ico" ICON 16 "icons/oasis-web-template.ico" ICON 17 "icons/empty-document.ico" -ICON 18 "icons/ooo-configuration.ico" +ICON 18 "icons/empty-document.ico" ICON 19 "icons/ooo-open.ico" ICON 20 "icons/empty-document.ico" ICON 21 "icons/ooo-writer-app.ico" diff --git a/desktop/util/verinfo.rc b/desktop/util/verinfo.rc index 7fce1e773a14..f24dff55169e 100755..100644 --- a/desktop/util/verinfo.rc +++ b/desktop/util/verinfo.rc @@ -91,8 +91,8 @@ VS_VERSION_INFO versioninfo 15 ICON "icons\\oasis-formula.ico" 16 ICON "icons\\oasis-web-template.ico" 17 ICON "icons\\empty-document.ico" -18 ICON "icons\\so8-configuration.ico" -19 ICON "icons\\so9_open.ico" +18 ICON "icons\\empty-document.ico" +19 ICON "icons\\so9_main_app.ico" 20 ICON "icons\\empty-document.ico" 21 ICON "icons\\so9_writer_app.ico" 22 ICON "icons\\so9_calc_app.ico" diff --git a/desktop/win32/source/QuickStart/OOQuickStart.rc b/desktop/win32/source/QuickStart/OOQuickStart.rc new file mode 100755 index 000000000000..9baf7e864f5f --- /dev/null +++ b/desktop/win32/source/QuickStart/OOQuickStart.rc @@ -0,0 +1,130 @@ +//Microsoft Developer Studio generated resource script. +// +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#define APSTUDIO_HIDDEN_SYMBOLS +#include "windows.h" +#undef APSTUDIO_HIDDEN_SYMBOLS +#include "resource.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// German (Germany) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU) +#ifdef _WIN32 +LANGUAGE LANG_GERMAN, SUBLANG_GERMAN +#pragma code_page(1252) +#endif //_WIN32 + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +ICON_ACTIVE ICON DISCARDABLE "icons/ooo3_main_app.ico" +IDI_QUICKSTART ICON DISCARDABLE "icons/ooo3_main_app.ico" +IDI_SMALL ICON DISCARDABLE "icons/ooo3_main_app.ico" +ICON_INACTIVE ICON DISCARDABLE "icons/ooo3_main_app.ico" + + +///////////////////////////////////////////////////////////////////////////// +// +// Accelerator +// + +IDC_QUICKSTART ACCELERATORS MOVEABLE PURE +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +IDD_ABOUTBOX DIALOG DISCARDABLE 22, 17, 230, 75 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +CAPTION "About" +FONT 8, "System" +BEGIN + ICON IDI_QUICKSTART,IDC_MYICON,14,9,16,16 + LTEXT "QuickStart Version 1.0",IDC_STATIC,49,10,119,8, + SS_NOPREFIX + LTEXT "Copyright (C) 2001",IDC_STATIC,49,20,119,8 + DEFPUSHBUTTON "OK",IDOK,195,6,30,11,WS_GROUP +END + + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +2 TEXTINCLUDE DISCARDABLE +BEGIN + "#define APSTUDIO_HIDDEN_SYMBOLS\r\n" + "#include ""windows.h""\r\n" + "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n" + "#include ""resource.h""\r\n" + "\0" +END + +3 TEXTINCLUDE DISCARDABLE +BEGIN + "\r\n" + "\0" +END + +1 TEXTINCLUDE DISCARDABLE +BEGIN + "resource.h\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE DISCARDABLE +BEGIN + IDS_APP_TITLE "SoQuickStart" + IDC_QUICKSTART "QUICKSTART" + IDS_TOOLTIP "StarOffice 6.0 QuickStart" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_EXIT "Exit" +END + +#endif // German (Germany) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/desktop/win32/source/QuickStart/QuickStart.cpp b/desktop/win32/source/QuickStart/QuickStart.cpp new file mode 100755 index 000000000000..999701da985a --- /dev/null +++ b/desktop/win32/source/QuickStart/QuickStart.cpp @@ -0,0 +1,426 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +// QuickStart.cpp : Defines the entry point for the application. +// + +#include "stdafx.h" +#include "resource.h" +#include <systools/win32/uwinapi.h> +#include <stdio.h> + +#define MY_TASKBAR_NOTIFICATION WM_USER+1 + +#define MAX_LOADSTRING 100 + +// message used to communicate with soffice +#define TERMINATIONVETO_MESSAGE "SO TerminationVeto" +#define TERMINATE_MESSAGE "SO Terminate" +#define LISTENER_WINDOWCLASS "SO Listener Class" +#define KILLTRAY_MESSAGE "SO KillTray" + +static UINT aTerminationVetoMessage = 0x7FFF; +static UINT aTerminateMessage = 0x7FFF; +static HMENU popupMenu = NULL; +static bool bTerminateVeto = true; + +#define UPDATE_TIMER 1 + +// Global Variables: +HINSTANCE hInst; // current instance +TCHAR szTitle[MAX_LOADSTRING]; // The title bar text +TCHAR szWindowClass[MAX_LOADSTRING]; // The title bar text + +TCHAR szExitString[MAX_LOADSTRING]; +TCHAR szTooltipString[MAX_LOADSTRING]; + +// Foward declarations of functions included in this code module: +ATOM MyRegisterClass(HINSTANCE hInstance); +BOOL InitInstance(HINSTANCE, int); +LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); +LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); + +bool SofficeRuns() +{ + // check for soffice by searching the communication window + return ( FindWindowEx( NULL, NULL, LISTENER_WINDOWCLASS, NULL ) == NULL ) ? false : true; +} + +bool launchSoffice( ) +{ + if ( !SofficeRuns() ) + { + // UINT ret = WinExec( "h:\\office60.630b\\program\\swriter.exe -bean", SW_SHOW ); + char filename[_MAX_PATH + 1]; + + filename[_MAX_PATH] = 0; + GetModuleFileName( NULL, filename, _MAX_PATH ); // soffice resides in the same dir + char *p = strrchr( filename, '\\' ); + if ( !p ) + return false; + + strncpy( p+1, "soffice.exe", _MAX_PATH - (p+1 - filename) ); + + char imagename[_MAX_PATH + 1]; + + imagename[_MAX_PATH] = 0; + _snprintf(imagename, _MAX_PATH, "\"%s\" -quickstart", filename ); + + UINT ret = WinExec( imagename, SW_SHOW ); + if ( ret < 32 ) + return false; +/* + // wait until we can communicate + int retry = 30; + while (retry-- && !SofficeRuns() ) + Sleep(1000); + + return SofficeRuns(); + */ + return true; + } + else + return true; +} + +void NotifyListener( HWND hWnd ) +{ + static HICON hIconActive=NULL; + //static HICON hIconInActive=NULL; + + if( !hIconActive ) + { + hIconActive = (HICON)LoadImage( GetModuleHandle( NULL ), MAKEINTRESOURCE( ICON_ACTIVE ), + IMAGE_ICON, GetSystemMetrics( SM_CXSMICON ), GetSystemMetrics( SM_CYSMICON ), + LR_DEFAULTCOLOR | LR_SHARED ); + +/* hIconInActive = (HICON)LoadImage( GetModuleHandle( NULL ), MAKEINTRESOURCE( ICON_INACTIVE ), + IMAGE_ICON, GetSystemMetrics( SM_CXSMICON ), GetSystemMetrics( SM_CYSMICON ), + LR_DEFAULTCOLOR | LR_SHARED ); + */ + } + + NOTIFYICONDATA nid; + nid.cbSize = sizeof(NOTIFYICONDATA); + nid.hWnd = hWnd; + nid.uID = IDM_QUICKSTART; + nid.szTip[SAL_N_ELEMENTS(nid.szTip) - 1] = 0; +// nid.hIcon = bTerminateVeto ? hIconActive : hIconInActive; +// strncpy(nid.szTip, bTerminateVeto ? STRING_QUICKSTARTACTIVE : STRING_QUICKSTARTINACTIVE, SAL_N_ELEMENTS(nid.szTip) - 1 ); + nid.hIcon = hIconActive; + strncpy(nid.szTip, szTooltipString, SAL_N_ELEMENTS(nid.szTip) - 1); + nid.uFlags = NIF_TIP|NIF_ICON; + + // update systray + Shell_NotifyIcon( NIM_MODIFY, &nid ); + //CheckMenuItem( popupMenu, IDM_QUICKSTART, bTerminateVeto ? MF_CHECKED : MF_UNCHECKED ); + + // notify listener + SendMessage( HWND_BROADCAST, aTerminationVetoMessage, (WORD) bTerminateVeto, 0L ); +} + + + +int APIENTRY WinMain(HINSTANCE hInstance, + HINSTANCE /*hPrevInstance*/, + LPSTR /*lpCmdLine*/, + int nCmdShow) +{ + // Look for -killtray argument + + for ( int i = 1; i < __argc; i++ ) + { + if ( 0 == strcmp( __argv[i], "-killtray" ) ) + { + HWND hwndTray = FindWindow( LISTENER_WINDOWCLASS, NULL ); + + if ( hwndTray ) + { + UINT uMsgKillTray = RegisterWindowMessage( KILLTRAY_MESSAGE ); + SendMessage( hwndTray, uMsgKillTray, 0, 0 ); + } + + return 0; + } + } + + launchSoffice(); + return 0; + + // TODO: Place code here. + MSG msg; + HACCEL hAccelTable; + aTerminationVetoMessage = RegisterWindowMessage( TERMINATIONVETO_MESSAGE ); + aTerminateMessage = RegisterWindowMessage( TERMINATE_MESSAGE ); + + // Initialize global strings + LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); + LoadString(hInstance, IDC_QUICKSTART, szWindowClass, MAX_LOADSTRING); + + LoadString(hInstance, IDS_EXIT, szExitString, MAX_LOADSTRING); + LoadString(hInstance, IDS_TOOLTIP, szTooltipString, MAX_LOADSTRING); + + MyRegisterClass(hInstance); + + // Perform application initialization: + if (!InitInstance (hInstance, nCmdShow)) + { + return FALSE; + } + + hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_QUICKSTART); + + // Main message loop: + while (GetMessage(&msg, NULL, 0, 0)) + { + if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) + { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + } + + return msg.wParam; +} + + + +// +// FUNCTION: MyRegisterClass() +// +// PURPOSE: Registers the window class. +// +// COMMENTS: +// +// This function and its usage is only necessary if you want this code +// to be compatible with Win32 systems prior to the 'RegisterClassEx' +// function that was added to Windows 95. It is important to call this function +// so that the application will get 'well formed' small icons associated +// with it. +// +ATOM MyRegisterClass(HINSTANCE hInstance) +{ + WNDCLASSEX wcex; + + wcex.cbSize = sizeof(WNDCLASSEX); + + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = (WNDPROC)WndProc; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_QUICKSTART); + wcex.hCursor = LoadCursor(NULL, IDC_ARROW); + wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); + wcex.lpszMenuName = NULL; + wcex.lpszClassName = szWindowClass; + wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL); + + return RegisterClassEx(&wcex); +} + +// +// FUNCTION: InitInstance(HANDLE, int) +// +// PURPOSE: Saves instance handle and creates main window +// +// COMMENTS: +// +// In this function, we save the instance handle in a global variable and +// create and display the main program window. +// +BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) +{ + HWND hWnd; + + hInst = hInstance; // Store instance handle in our global variable + + hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, + CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); + + if (!hWnd) + { + return FALSE; + } + + nCmdShow = SW_HIDE; // hide main window, we only need the taskbar icon + ShowWindow(hWnd, nCmdShow); + UpdateWindow(hWnd); + + return TRUE; +} + +// +// FUNCTION: WndProc(HWND, unsigned, WORD, LONG) +// +// PURPOSE: Processes messages for the main window. +// +// WM_COMMAND - process the application menu +// WM_PAINT - Paint the main window +// WM_DESTROY - post a quit message and return +// +// +LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) +{ + switch (message) + { + case WM_CREATE: + { + // make sure soffice runs + if( !launchSoffice() ) + return -1; + + // create popup menu + popupMenu = CreatePopupMenu(); + static int count=0; + + // Add my items + MENUITEMINFO mi; + mi.cbSize = sizeof(MENUITEMINFO); + mi.fMask=MIIM_TYPE|MIIM_STATE|MIIM_ID; + mi.fType=MFT_STRING; + mi.fState=MFS_ENABLED|MFS_DEFAULT; + mi.wID = IDM_QUICKSTART; + mi.hSubMenu=NULL; + mi.hbmpChecked=NULL; + mi.hbmpUnchecked=NULL; + mi.dwItemData=NULL; + mi.dwTypeData = "QuickStart"; + mi.cch = strlen(mi.dwTypeData); +// InsertMenuItem(popupMenu, count++, TRUE, &mi); + + mi.cbSize = sizeof(MENUITEMINFO); + mi.fMask=MIIM_TYPE|MIIM_STATE|MIIM_ID; + mi.fType=MFT_STRING; + mi.fState=MFS_ENABLED; + mi.wID = IDM_ABOUT; + mi.hSubMenu=NULL; + mi.hbmpChecked=NULL; + mi.hbmpUnchecked=NULL; + mi.dwItemData=NULL; + mi.dwTypeData = "Info..."; + mi.cch = strlen(mi.dwTypeData); +// InsertMenuItem(popupMenu, count++, TRUE, &mi); + + mi.cbSize = sizeof(MENUITEMINFO); + mi.fMask=MIIM_TYPE; + mi.fType=MFT_SEPARATOR; + mi.hSubMenu=NULL; + mi.hbmpChecked=NULL; + mi.hbmpUnchecked=NULL; + mi.dwItemData=NULL; +// InsertMenuItem(popupMenu, count++, TRUE, &mi); + + mi.cbSize = sizeof(MENUITEMINFO); + mi.fMask=MIIM_TYPE|MIIM_STATE|MIIM_ID; + mi.fType=MFT_STRING; + mi.fState=MFS_ENABLED; + mi.wID = IDM_EXIT; + mi.hSubMenu=NULL; + mi.hbmpChecked=NULL; + mi.hbmpUnchecked=NULL; + mi.dwItemData=NULL; + mi.dwTypeData = szExitString; + mi.cch = strlen(mi.dwTypeData); + InsertMenuItem(popupMenu, count++, TRUE, &mi); + + // add taskbar icon + NOTIFYICONDATA nid; + nid.cbSize = sizeof(NOTIFYICONDATA); + nid.hWnd = hWnd; + nid.uID = IDM_QUICKSTART; + nid.uFlags = NIF_MESSAGE; + nid.uCallbackMessage=MY_TASKBAR_NOTIFICATION; + Shell_NotifyIcon(NIM_ADD, &nid); + + // and update state + NotifyListener( hWnd ); + + // check for soffice + SetTimer(hWnd, UPDATE_TIMER, 3000, NULL); + } + break; + + case MY_TASKBAR_NOTIFICATION: // message from taskbar + switch(lParam) + { +/* + case WM_LBUTTONDBLCLK: + bTerminateVeto = bTerminateVeto ? false : true; + NotifyListener( hWnd ); + break; + */ + + case WM_LBUTTONDOWN: + case WM_RBUTTONDOWN: + { + POINT pt; + GetCursorPos(&pt); + SetForegroundWindow( hWnd ); + int m = TrackPopupMenuEx(popupMenu, TPM_RETURNCMD|TPM_LEFTALIGN|TPM_RIGHTBUTTON, + pt.x, pt.y, hWnd, NULL); + // BUGFIX: See Q135788 (PRB: Menus for Notification Icons Don't Work Correctly) + PostMessage(hWnd, NULL, 0, 0); + switch(m) + { + case IDM_QUICKSTART: + bTerminateVeto = bTerminateVeto ? false : true; + NotifyListener( hWnd ); + break; + case IDM_ABOUT: + DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About); + break; + case IDM_EXIT: + DestroyWindow(hWnd); + break; + } + } + break; + } + break; + + case WM_TIMER: + if( wParam == UPDATE_TIMER ) + { + // update state + NotifyListener( hWnd ); + } + break; + + case WM_DESTROY: + // try to terminate office + SendMessage( HWND_BROADCAST, aTerminateMessage, 0, 0L ); + + // delete taskbar icon + NOTIFYICONDATA nid; + nid.cbSize=sizeof(NOTIFYICONDATA); + nid.hWnd = hWnd; + nid.uID = IDM_QUICKSTART; + Shell_NotifyIcon(NIM_DELETE, &nid); + + PostQuitMessage(0); + break; + default: + return DefWindowProc(hWnd, message, wParam, lParam); + } + return 0; +} + +// Mesage handler for about box. +LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM) +{ + switch (message) + { + case WM_INITDIALOG: + return TRUE; + + case WM_COMMAND: + if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) + { + EndDialog(hDlg, LOWORD(wParam)); + return TRUE; + } + break; + } + return FALSE; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/win32/source/QuickStart/QuickStart.h b/desktop/win32/source/QuickStart/QuickStart.h new file mode 100755 index 000000000000..b61a04075e08 --- /dev/null +++ b/desktop/win32/source/QuickStart/QuickStart.h @@ -0,0 +1,15 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ + +#if !defined(AFX_QUICKSTART_H__7D38EE02_7699_4CF0_AFF9_FD92E05CC009__INCLUDED_) +#define AFX_QUICKSTART_H__7D38EE02_7699_4CF0_AFF9_FD92E05CC009__INCLUDED_ + +#if _MSC_VER > 1000 +#pragma once +#endif // _MSC_VER > 1000 + +#include "resource.h" + + +#endif // !defined(AFX_QUICKSTART_H__7D38EE02_7699_4CF0_AFF9_FD92E05CC009__INCLUDED_) + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/win32/source/QuickStart/StdAfx.h b/desktop/win32/source/QuickStart/StdAfx.h new file mode 100755 index 000000000000..f5277a01332c --- /dev/null +++ b/desktop/win32/source/QuickStart/StdAfx.h @@ -0,0 +1,42 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#if !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_) +#define AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_ + +#if _MSC_VER > 1000 +#pragma once +#endif // _MSC_VER > 1000 + +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers + + +// Windows Header Files: +#if defined _MSC_VER +#pragma warning(push, 1) +#endif +#include <windows.h> +#include <shellapi.h> +#if defined _MSC_VER +#pragma warning(pop) +#endif + +// C RunTime Header Files +#include <stdlib.h> +#include <malloc.h> +#include <memory.h> +#include <tchar.h> + +// Local Header Files + +// TODO: reference additional headers your program requires here + +//{{AFX_INSERT_LOCATION}} +// Microsoft Visual C++ will insert additional declarations immediately before the previous line. + +#endif // !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_) + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/win32/source/QuickStart/makefile.mk b/desktop/win32/source/QuickStart/makefile.mk new file mode 100644 index 000000000000..41242d849dfb --- /dev/null +++ b/desktop/win32/source/QuickStart/makefile.mk @@ -0,0 +1,74 @@ +#************************************************************************* +# +# 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. +# +#************************************************************************* + +PRJ=..$/..$/.. + +PRJNAME=sysui +TARGET=quickstart +LIBTARGET=NO +ENABLE_EXCEPTIONS=TRUE +TARGETTYPE=GUI + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +UWINAPILIB = + +# --- Resources ---------------------------------------------------- + +RCFILES=OOQuickStart.rc + +# --- Files -------------------------------------------------------- + +OBJFILES=$(OBJ)$/QuickStart.obj + +APP1OBJS=$(OBJFILES) +APP1NOSAL=TRUE +APP1TARGET=$(TARGET) +APP1RPATH=BRAND +.IF "$(COM)"=="GCC" +APP1STDLIBS=-luuid +.ELSE +APP1STDLIBS=comsupp.lib +.ENDIF + +APP1STDLIBS+=$(SHELL32LIB)\ + $(OLE32LIB)\ + $(GDI32LIB)\ + $(OLEAUT32LIB)\ + $(COMDLG32LIB)\ + $(KERNEL32LIB)\ + $(OLEAUT32LIB) + +APP1NOSVRES=$(RES)$/$(TARGET).res + + + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk diff --git a/desktop/win32/source/QuickStart/resource.h b/desktop/win32/source/QuickStart/resource.h new file mode 100755 index 000000000000..dc4a70ab5193 --- /dev/null +++ b/desktop/win32/source/QuickStart/resource.h @@ -0,0 +1,35 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by QUICKSTART.RC +// +#define IDR_MAINFRAME 128 +#define IDD_QUICKSTART_DIALOG 102 +#define IDD_ABOUTBOX 103 +#define IDS_APP_TITLE 103 +#define IDM_ABOUT 104 +#define IDM_EXIT 105 +#define IDS_HELLO 106 +#define IDI_QUICKSTART 107 +#define IDI_SMALL 108 +#define IDC_QUICKSTART 109 +#define IDM_QUICKSTART 110 +#define IDS_TOOLTIP 111 +#define IDS_EXIT 112 +#define ICON_ACTIVE 1 +#define ICON_INACTIVE 2 +#define IDC_MYICON 3 +#define IDC_STATIC -1 +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS + +#define _APS_NEXT_RESOURCE_VALUE 129 +#define _APS_NEXT_COMMAND_VALUE 32771 +#define _APS_NEXT_CONTROL_VALUE 1000 +#define _APS_NEXT_SYMED_VALUE 113 +#endif +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/win32/source/QuickStart/so/QuickStart.rc b/desktop/win32/source/QuickStart/so/QuickStart.rc new file mode 100755 index 000000000000..732904dc745a --- /dev/null +++ b/desktop/win32/source/QuickStart/so/QuickStart.rc @@ -0,0 +1,130 @@ +//Microsoft Developer Studio generated resource script. +// +#include "../resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#define APSTUDIO_HIDDEN_SYMBOLS +#include "windows.h" +#undef APSTUDIO_HIDDEN_SYMBOLS +#include "resource.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// German (Germany) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU) +#ifdef _WIN32 +LANGUAGE LANG_GERMAN, SUBLANG_GERMAN +#pragma code_page(1252) +#endif //_WIN32 + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +ICON_ACTIVE ICON DISCARDABLE "icons/so9_main_app.ico" +IDI_QUICKSTART ICON DISCARDABLE "icons/so9_main_app.ico" +IDI_SMALL ICON DISCARDABLE "icons/so9_main_app.ico" +ICON_INACTIVE ICON DISCARDABLE "icons/so9_main_app.ico" + + +///////////////////////////////////////////////////////////////////////////// +// +// Accelerator +// + +IDC_QUICKSTART ACCELERATORS MOVEABLE PURE +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +IDD_ABOUTBOX DIALOG DISCARDABLE 22, 17, 230, 75 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +CAPTION "About" +FONT 8, "System" +BEGIN + ICON IDI_QUICKSTART,IDC_MYICON,14,9,16,16 + LTEXT "QuickStart Version 1.0",IDC_STATIC,49,10,119,8, + SS_NOPREFIX + LTEXT "Copyright (C) 2001",IDC_STATIC,49,20,119,8 + DEFPUSHBUTTON "OK",IDOK,195,6,30,11,WS_GROUP +END + + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +2 TEXTINCLUDE DISCARDABLE +BEGIN + "#define APSTUDIO_HIDDEN_SYMBOLS\r\n" + "#include ""windows.h""\r\n" + "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n" + "#include ""resource.h""\r\n" + "\0" +END + +3 TEXTINCLUDE DISCARDABLE +BEGIN + "\r\n" + "\0" +END + +1 TEXTINCLUDE DISCARDABLE +BEGIN + "resource.h\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE DISCARDABLE +BEGIN + IDS_APP_TITLE "SoQuickStart" + IDC_QUICKSTART "QUICKSTART" + IDS_TOOLTIP "Oracle Open Office 3.2 QuickStart" +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_EXIT "Exit" +END + +#endif // German (Germany) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/desktop/win32/source/QuickStart/so/makefile.mk b/desktop/win32/source/QuickStart/so/makefile.mk new file mode 100755 index 000000000000..50154c7d50b2 --- /dev/null +++ b/desktop/win32/source/QuickStart/so/makefile.mk @@ -0,0 +1,77 @@ +#************************************************************************* +# +# 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. +# +#************************************************************************* + +PRJ=..$/..$/..$/.. + +PRJNAME=sysui +TARGET=soquickstart +LIBTARGET=NO +ENABLE_EXCEPTIONS=TRUE +TARGETTYPE=GUI + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +UWINAPILIB = + +# --- Resources ---------------------------------------------------- + +.IF "$(LINK_SO)"=="TRUE" + +RCFILES=QuickStart.rc +INCPRE=.. + +# --- Files -------------------------------------------------------- + +OBJFILES=$(OBJ)$/QuickStart.obj + +APP1OBJS=$(OBJFILES) +APP1NOSAL=TRUE +APP1TARGET=$(TARGET) +APP1RPATH=BRAND +.IF "$(COM)"=="GCC" +APP1STDLIBS=-luuid +.ELSE +APP1STDLIBS=comsupp.lib +.ENDIF + +APP1STDLIBS+=$(SHELL32LIB)\ + $(OLE32LIB)\ + $(GDI32LIB)\ + $(OLEAUT32LIB)\ + $(COMDLG32LIB)\ + $(KERNEL32LIB)\ + $(OLEAUT32LIB) + +APP1NOSVRES=$(RES)$/$(TARGET).res + +.ENDIF # "$(LINK_SO)"=="TRUE" + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk diff --git a/desktop/win32/source/applauncher/makefile.mk b/desktop/win32/source/applauncher/makefile.mk index f0f5743f38a1..d08309bbed24 100755 --- a/desktop/win32/source/applauncher/makefile.mk +++ b/desktop/win32/source/applauncher/makefile.mk @@ -53,6 +53,7 @@ OBJFILES= \ $(OBJ)$/sweb.obj # SO launcher +.IF "$(LINK_SO)"=="TRUE" .IF "$(BUILD_SPECIAL)"!="" APP1DEPN= $(APP1RES) verinfo.rc APP1TARGET=so$/swriter @@ -139,7 +140,8 @@ APP7VERINFO=verinfo.rc APP7PRODUCTDEF+=-DRES_APP_NAME=sweb -.ENDIF # "$(BUILD_SPECIAL)"!="" +.ENDIF # "$(BUILD_SPECIAL)"!="" +.ENDIF # "$(LINK_SO)"=="TRUE" # --- Targets ------------------------------------------------------ diff --git a/desktop/win32/source/guiloader/makefile.mk b/desktop/win32/source/guiloader/makefile.mk index 5bb1c523ff19..7912471fba13 100755 --- a/desktop/win32/source/guiloader/makefile.mk +++ b/desktop/win32/source/guiloader/makefile.mk @@ -48,14 +48,16 @@ APP1OBJS=\ $(SOLARLIBDIR)$/pathutils-obj.obj STDLIB1=$(SHLWAPILIB) +.IF "$(LINK_SO)"=="TRUE" APP2TARGET=so$/guiloader APP2NOSAL=TRUE -APP2ICON=$(SOLARRESDIR)$/icons/so8-main-app.ico +APP2ICON=$(SOLARRESDIR)$/icons/so9_main_app.ico APP2OBJS=\ $(OBJ)$/extendloaderenvironment.obj \ $(OBJ)$/genericloader.obj \ $(SOLARLIBDIR)$/pathutils-obj.obj STDLIB2=$(SHLWAPILIB) +.ENDIF # "$(LINK_SO)"=="TRUE" # --- Targets ------------------------------------------------------ |