summaryrefslogtreecommitdiff
path: root/shell/source
diff options
context:
space:
mode:
Diffstat (limited to 'shell/source')
-rw-r--r--shell/source/aqua/sysshell/makefile.mk61
-rw-r--r--shell/source/aqua/sysshell/systemshell.cxx133
-rw-r--r--shell/source/backends/kdebe/makefile.mk4
-rw-r--r--shell/source/os2/sysshell/makefile.mk47
-rw-r--r--shell/source/os2/sysshell/systemshell.cxx68
-rw-r--r--shell/source/tools/lngconvex/lngconvex.cxx31
-rw-r--r--shell/source/unix/sysshell/makefile.mk4
-rw-r--r--shell/source/unix/sysshell/recently_used_file_handler.cxx1
-rw-r--r--shell/source/unix/sysshell/systemshell.cxx151
-rw-r--r--shell/source/win32/shlxthandler/infotips/infotips.cxx2
-rw-r--r--shell/source/win32/shlxthandler/makefile.mk13
-rw-r--r--shell/source/win32/shlxthandler/ooofilt/proxy/ooofiltproxy.cxx6
-rw-r--r--shell/source/win32/shlxthandler/propsheets/propsheets.cxx3
-rw-r--r--shell/source/win32/shlxthandler/res/makefile.mk10
-rw-r--r--shell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx20
-rw-r--r--shell/source/win32/shlxthandler/util/utilities.cxx15
-rw-r--r--shell/source/win32/sysshell/makefile.mk50
-rw-r--r--shell/source/win32/sysshell/systemshell.cxx68
18 files changed, 64 insertions, 623 deletions
diff --git a/shell/source/aqua/sysshell/makefile.mk b/shell/source/aqua/sysshell/makefile.mk
deleted file mode 100644
index b3cf3abdec..0000000000
--- a/shell/source/aqua/sysshell/makefile.mk
+++ /dev/null
@@ -1,61 +0,0 @@
-#*************************************************************************
-#
-# 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: makefile.mk,v $
-#
-# $Revision: 1.3 $
-#
-# 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=shell
-TARGET=sysshell
-LIBTARGET=NO
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-CFLAGSCXX+=$(OBJCXXFLAGS)
-
-# --- Files --------------------------------------------------------
-
-.IF "$(OS)" == "MACOSX"
-
-LIB1OBJFILES=$(SLO)$/systemshell.obj
-LIB1TARGET=$(SLB)$/$(TARGET).lib
-LIB1ARCHIV=$(SLB)$/lib$(TARGET).a
-
-.ELSE
-
-dummy:
- @echo "Nothing to build for $(OS)"
-
-.ENDIF # MACOSX
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/shell/source/aqua/sysshell/systemshell.cxx b/shell/source/aqua/sysshell/systemshell.cxx
deleted file mode 100644
index 11d02aa921..0000000000
--- a/shell/source/aqua/sysshell/systemshell.cxx
+++ /dev/null
@@ -1,133 +0,0 @@
-/*************************************************************************
- *
- * 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: systemshell.cxx,v $
- * $Revision: 1.3 $
- *
- * 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_shell.hxx"
-#include "systemshell.hxx"
-
-#include <comphelper/processfactory.hxx>
-
-#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_Hpp_
-#include <com/sun/star/beans/XPropertySet.hpp>
-#endif
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/uri/XExternalUriReferenceTranslator.hpp>
-#include <com/sun/star/uri/ExternalUriReferenceTranslator.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-
-#include <premac.h>
-#include <Cocoa/Cocoa.h>
-#include <postmac.h>
-
-using namespace ::com::sun::star;
-
-// We need to re-encode file urls because osl_getFileURLFromSystemPath converts
-// to UTF-8 before encoding non ascii characters, which is not what other apps expect.
-static rtl::OUString translateToExternalUrl(const rtl::OUString& internalUrl)
-{
- rtl::OUString extUrl;
-
- uno::Reference< lang::XMultiServiceFactory > sm = comphelper::getProcessServiceFactory();
- if (sm.is())
- {
- uno::Reference< beans::XPropertySet > pset;
- sm->queryInterface( getCppuType( &pset )) >>= pset;
- if (pset.is())
- {
- uno::Reference< uno::XComponentContext > context;
- static const rtl::OUString DEFAULT_CONTEXT( RTL_CONSTASCII_USTRINGPARAM( "DefaultContext" ) );
- pset->getPropertyValue(DEFAULT_CONTEXT) >>= context;
- if (context.is())
- extUrl = uri::ExternalUriReferenceTranslator::create(context)->translateToExternal(internalUrl);
- }
- }
- return extUrl;
-}
-
-// #i104525# many versions of OSX have problems with some URLs:
-// when an app requests OSX to add one of these URLs to the "Recent Items" list
-// then this app gets killed (TextEdit, Preview, etc. and also OOo)
-static bool isDangerousUrl( const rtl::OUString& rUrl)
-{
- // use a heuristic that detects all known cases since there is no official comment
- // on the exact impact and root cause of the OSX bug
- const int nLen = rUrl.getLength();
- const sal_Unicode* p = rUrl.getStr();
- for( int i = 0; i < nLen-3; ++i, ++p) {
- if( p[0] != '%')
- continue;
- // escaped percent?
- if( (p[1] == '2') && (p[2] == '5'))
- return true;
- // escapes are considered to be UTF-8 encoded
- // => check for invalid UTF-8 leading byte
- if( (p[1] != 'f') && (p[1] != 'F'))
- continue;
- int cLowNibble = p[2];
- if( (cLowNibble >= '0') && (cLowNibble <= '9'))
- return false;
- if( cLowNibble >= 'a')
- cLowNibble -= 'a' - 'A';
- if( (cLowNibble < 'A') || (cLowNibble >= 'C'))
- return true;
- }
-
- return false;
-}
-
-namespace SystemShell {
-
- //##############################
- void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& /*aMimeType*/)
- {
- // Convert file URL for external use (see above)
- rtl::OUString externalUrl = translateToExternalUrl(aFileUrl);
- if( 0 == externalUrl.getLength() )
- externalUrl = aFileUrl;
-
- if( externalUrl.getLength()
- && !isDangerousUrl( externalUrl))
- {
- NSString* pString = [[NSString alloc] initWithCharacters: externalUrl.getStr() length: externalUrl.getLength()];
- NSURL* pURL = [NSURL URLWithString: pString];
-
- if( pURL )
- {
- NSDocumentController* pCtrl = [NSDocumentController sharedDocumentController];
- [pCtrl noteNewRecentDocumentURL: pURL];
- }
- if( pString )
- [pString release];
-
- }
- }
-
-} // namespace SystemShell
-
diff --git a/shell/source/backends/kdebe/makefile.mk b/shell/source/backends/kdebe/makefile.mk
index 8bc0b475be..6159be6be1 100644
--- a/shell/source/backends/kdebe/makefile.mk
+++ b/shell/source/backends/kdebe/makefile.mk
@@ -77,11 +77,11 @@ SHL1OBJS=$(SLOFILES)
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
SHL1IMPLIB=i$(SHL1TARGET)
+SHL1LINKFLAGS+=$(KDE_LIBS) -lkio
SHL1STDLIBS= \
$(CPPUHELPERLIB) \
$(CPPULIB) \
- $(SALLIB) \
- $(KDE_LIBS) -lkio
+ $(SALLIB)
SHL1VERSIONMAP=exports.map
SHL1DEF=$(MISC)$/$(SHL1TARGET).def
diff --git a/shell/source/os2/sysshell/makefile.mk b/shell/source/os2/sysshell/makefile.mk
deleted file mode 100644
index bda4958cef..0000000000
--- a/shell/source/os2/sysshell/makefile.mk
+++ /dev/null
@@ -1,47 +0,0 @@
-#*************************************************************************
-#
-# 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: makefile.mk,v $
-#
-# $Revision: 1.11 $
-#
-# 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=SHELL
-TARGET=sysshell
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-SLOFILES= $(SLO)$/systemshell.obj
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/shell/source/os2/sysshell/systemshell.cxx b/shell/source/os2/sysshell/systemshell.cxx
deleted file mode 100644
index 09d02c6226..0000000000
--- a/shell/source/os2/sysshell/systemshell.cxx
+++ /dev/null
@@ -1,68 +0,0 @@
-/*************************************************************************
- *
- * 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: systemshell.cxx,v $
- * $Revision: 1.9 $
- *
- * 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_shell.hxx"
-
-#ifndef _SYSTEMSHELL_HXX_
-#include "../../../inc/systemshell.hxx"
-#endif
-
-#ifndef _OSL_DIAGNOSE_H_
-#include <osl/diagnose.h>
-#endif
-
-#ifndef _OSL_FILE_HXX_
-#include <osl/file.hxx>
-#endif
-
-namespace SystemShell
-{
-
- /** Add a file to the system shells recent document list if there is any.
- This function may have no effect under Unix because there is no
- standard API among the different desktop managers.
-
- @param aFileUrl
- The file url of the document.
- */
- void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& aMimeType)
- {
- rtl::OUString system_path;
- osl::FileBase::RC rc = osl::FileBase::getSystemPathFromFileURL(aFileUrl, system_path);
-
- OSL_ENSURE(osl::FileBase::E_None == rc, "Invalid file url");
-
- //if (osl::FileBase::E_None == rc)
- // SHAddToRecentDocs(SHARD_PATHW, system_path.getStr());
- }
-
-}; // end namespace SystemShell
-
diff --git a/shell/source/tools/lngconvex/lngconvex.cxx b/shell/source/tools/lngconvex/lngconvex.cxx
index e5fa02155f..927e626a48 100644
--- a/shell/source/tools/lngconvex/lngconvex.cxx
+++ b/shell/source/tools/lngconvex/lngconvex.cxx
@@ -65,6 +65,7 @@
#include <sstream>
#include <iterator>
#include <algorithm>
+#include <string>
namespace /* private */
{
@@ -324,6 +325,8 @@ private:
iso_lang_identifier active_iso_lang_;
};
+typedef std::map< unsigned short , std::string , std::less< unsigned short > > shortmap;
+
//###########################################
void add_group_entries(
Config& aConfig,
@@ -334,21 +337,35 @@ void add_group_entries(
aConfig.SetGroup(GroupName);
size_t key_count = aConfig.GetKeyCount();
+ shortmap map;
for (size_t i = 0; i < key_count; i++)
{
ByteString iso_lang = aConfig.GetKeyName(sal::static_int_cast<USHORT>(i));
ByteString key_value_utf8 = aConfig.ReadKey(sal::static_int_cast<USHORT>(i));
+ iso_lang_identifier myiso_lang( iso_lang );
+ LanguageType ltype = MsLangId::convertIsoNamesToLanguage(myiso_lang.language(), myiso_lang.country());
+ if( ( ltype & 0x0200 ) == 0 && map[ ltype ].empty() )
+ {
+ Substitutor.set_language(iso_lang_identifier(iso_lang));
- Substitutor.set_language(iso_lang_identifier(iso_lang));
-
- key_value_utf8.EraseLeadingAndTrailingChars('\"');
+ key_value_utf8.EraseLeadingAndTrailingChars('\"');
- OUString key_value_utf16 =
- rtl::OStringToOUString(key_value_utf8, RTL_TEXTENCODING_UTF8);
+ OUString key_value_utf16 =
+ rtl::OStringToOUString(key_value_utf8, RTL_TEXTENCODING_UTF8);
- Substitutor.add_substitution(
- GroupName.GetBuffer(), make_winrc_unicode_string(key_value_utf16));
+ Substitutor.add_substitution(
+ GroupName.GetBuffer(), make_winrc_unicode_string(key_value_utf16));
+ map[ static_cast<unsigned short>(ltype) ] = std::string( iso_lang.GetBuffer() );
+ }
+ else
+ {
+ if( !map[ ltype ].empty() )
+ {
+ printf("ERROR: Duplicated ms id %d found for the languages %s and %s !!!! This does not work in microsoft resources\nPlease remove one!\n", ltype , map[ ltype ].c_str() , iso_lang.GetBuffer());
+ exit( -1 );
+ }
+ }
}
}
diff --git a/shell/source/unix/sysshell/makefile.mk b/shell/source/unix/sysshell/makefile.mk
index 8089b160fb..2c1ace9fe1 100644
--- a/shell/source/unix/sysshell/makefile.mk
+++ b/shell/source/unix/sysshell/makefile.mk
@@ -48,10 +48,6 @@ CFLAGS+=-DSYSTEM_EXPAT
.IF "$(OS)" != "MACOSX"
-LIB1OBJFILES=$(SLO)$/systemshell.obj
-LIB1TARGET=$(SLB)$/$(TARGET).lib
-LIB1ARCHIV=$(SLB)$/lib$(TARGET).a
-
SLOFILES=$(SLO)$/recently_used_file.obj \
$(SLO)$/recently_used_file_handler.obj
diff --git a/shell/source/unix/sysshell/recently_used_file_handler.cxx b/shell/source/unix/sysshell/recently_used_file_handler.cxx
index 5d79868ecc..d468a507a3 100644
--- a/shell/source/unix/sysshell/recently_used_file_handler.cxx
+++ b/shell/source/unix/sysshell/recently_used_file_handler.cxx
@@ -31,7 +31,6 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_shell.hxx"
-#include "systemshell.hxx"
#include "osl/process.h"
#include "rtl/ustring.hxx"
#include "rtl/string.hxx"
diff --git a/shell/source/unix/sysshell/systemshell.cxx b/shell/source/unix/sysshell/systemshell.cxx
deleted file mode 100644
index 5dbf7b21cc..0000000000
--- a/shell/source/unix/sysshell/systemshell.cxx
+++ /dev/null
@@ -1,151 +0,0 @@
-/*************************************************************************
- *
- * 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: systemshell.cxx,v $
- * $Revision: 1.9 $
- *
- * 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_shell.hxx"
-#include "systemshell.hxx"
-
-#include <comphelper/processfactory.hxx>
-
-#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_Hpp_
-#include <com/sun/star/beans/XPropertySet.hpp>
-#endif
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/uri/XExternalUriReferenceTranslator.hpp>
-#include <com/sun/star/uri/ExternalUriReferenceTranslator.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-
-#include "osl/module.hxx"
-
-using namespace ::com::sun::star;
-
-#define UNISTRING(s) rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(s))
-
-const rtl::OUString SYM_ADD_TO_RECENTLY_USED_FILE_LIST = UNISTRING("add_to_recently_used_file_list");
-const rtl::OUString LIB_RECENT_FILE = UNISTRING("librecentfile.so");
-const rtl::OUString DEFAULT_CONTEXT = UNISTRING("DefaultContext");
-
-void * (* sym_gtk_recent_manager_get_default) () = NULL;
-void (* sym_gtk_recent_manager_add_item) (void *, const char *) = NULL;
-
-// We need to re-encode file urls because osl_getFileURLFromSystemPath converts
-// to UTF-8 before encoding non ascii characters, which is not what other apps expect.
-static rtl::OUString translateToExternalUrl(const rtl::OUString& internalUrl)
-{
- rtl::OUString extUrl;
-
- uno::Reference< lang::XMultiServiceFactory > sm = comphelper::getProcessServiceFactory();
- if (sm.is())
- {
- uno::Reference< beans::XPropertySet > pset;
- sm->queryInterface( getCppuType( &pset )) >>= pset;
- if (pset.is())
- {
- uno::Reference< uno::XComponentContext > context;
- pset->getPropertyValue(DEFAULT_CONTEXT) >>= context;
- if (context.is())
- extUrl = uri::ExternalUriReferenceTranslator::create(context)->translateToExternal(internalUrl);
- }
- }
- return extUrl;
-}
-
-namespace SystemShell {
-
- typedef void (*PFUNC_ADD_TO_RECENTLY_USED_LIST)(const rtl::OUString&, const rtl::OUString&);
-
- //##############################
- rtl::OUString get_absolute_library_url(const rtl::OUString& /*lib_name*/)
- {
- rtl::OUString url;
- if (osl::Module::getUrlFromAddress(reinterpret_cast<oslGenericFunction>(AddToRecentDocumentList), url))
- {
- sal_Int32 index = url.lastIndexOf('/');
- url = url.copy(0, index + 1);
- url += LIB_RECENT_FILE;
- }
- return url;
- }
-
- bool init_recent_manager_api()
- {
- oslModule hDefault;
- if( osl_getModuleHandle( NULL, &hDefault ) )
- {
- sym_gtk_recent_manager_get_default = (void * (*)())
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_get_default");
- sym_gtk_recent_manager_add_item = (void (*)(void *, const char *))
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_add_item");
-
- }
- bool ret = (NULL != sym_gtk_recent_manager_get_default) && (NULL != sym_gtk_recent_manager_add_item);
- return ret;
- }
-
-
- //##############################
- void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& aMimeType)
- {
- static bool bIsRecentManagerPresent = init_recent_manager_api();
-
- // Convert file URL for external use (see above)
- rtl::OUString externalUrl = translateToExternalUrl(aFileUrl);
- if( 0 == externalUrl.getLength() )
- externalUrl = aFileUrl;
-
- if( bIsRecentManagerPresent )
- {
- void * recent_manager = sym_gtk_recent_manager_get_default();
- sym_gtk_recent_manager_add_item(recent_manager, rtl::OUStringToOString(aFileUrl, RTL_TEXTENCODING_UTF8).getStr());
- }
- else
- {
- rtl::OUString librecentfile_url = get_absolute_library_url(LIB_RECENT_FILE);
-
- if (librecentfile_url.getLength())
- {
- osl::Module module(librecentfile_url);
-
- if (module.is())
- {
- // convert from reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>
- // not allowed in gcc 3.3 without permissive.
- PFUNC_ADD_TO_RECENTLY_USED_LIST add_to_recently_used_file_list =
- reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>(module.getFunctionSymbol(SYM_ADD_TO_RECENTLY_USED_FILE_LIST));
-
- if (add_to_recently_used_file_list)
- add_to_recently_used_file_list(aFileUrl, aMimeType);
- }
- }
- }
- }
-
-} // namespace SystemShell
-
diff --git a/shell/source/win32/shlxthandler/infotips/infotips.cxx b/shell/source/win32/shlxthandler/infotips/infotips.cxx
index 2b0826fa45..4ebe4c642a 100644
--- a/shell/source/win32/shlxthandler/infotips/infotips.cxx
+++ b/shell/source/win32/shlxthandler/infotips/infotips.cxx
@@ -45,6 +45,8 @@
#include <stdio.h>
#include <utility>
#include <stdlib.h>
+
+
#define MAX_STRING 80
#define KB 1024.0
const std::wstring WSPACE = std::wstring(SPACE);
diff --git a/shell/source/win32/shlxthandler/makefile.mk b/shell/source/win32/shlxthandler/makefile.mk
index 07eea87f02..479f8c0b6c 100644
--- a/shell/source/win32/shlxthandler/makefile.mk
+++ b/shell/source/win32/shlxthandler/makefile.mk
@@ -1,7 +1,7 @@
#*************************************************************************
#
# 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
@@ -123,17 +123,17 @@ SHL1STDLIBS_X64+=\
$(SHELL32LIB_X64)\
$(KERNEL32LIB_X64)\
$(GDI32LIB_X64)\
- $(MSVCRT_X64) \
- $(MSVCPRT_X64) \
$(USER32LIB_X64) \
- $(OLDNAMESLIB_X64) \
- $(GDIPLUSLIB_X64)
+ $(GDIPLUSLIB_X64) \
+ $(MSVCRT_X64) \
+ $(MSVCPRT_X64) \
+ $(OLDNAMESLIB_X64)
SHL1LIBS_X64+=$(SLB_X64)$/util.lib\
$(SLB_X64)$/ooofilereader.lib
SHL1OBJS_X64=$(SLOFILES_X64)
SHL1DEF_X64=$(MISC_X64)$/$(SHL1TARGET).def
-SHL1RES_X64=$(RES_X64)$/$(TARGET)_x64.res
+SHL1RES_X64=$(RES_X64)$/$(TARGET).res
DEF1NAME_X64=$(SHL1TARGET_X64)
DEF1EXPORTFILE_X64=exports.dxp
@@ -144,3 +144,4 @@ DEF1EXPORTFILE_X64=exports.dxp
.INCLUDE : set_wntx64.mk
.INCLUDE : target.mk
.INCLUDE : tg_wntx64.mk
+
diff --git a/shell/source/win32/shlxthandler/ooofilt/proxy/ooofiltproxy.cxx b/shell/source/win32/shlxthandler/ooofilt/proxy/ooofiltproxy.cxx
index b3bbe22964..4836eb34bb 100644
--- a/shell/source/win32/shlxthandler/ooofilt/proxy/ooofiltproxy.cxx
+++ b/shell/source/win32/shlxthandler/ooofilt/proxy/ooofiltproxy.cxx
@@ -42,6 +42,7 @@
#ifdef __MINGW32__
#include <basetyps.h>
#endif
+#include "internal/config.hxx"
/*
@@ -87,8 +88,9 @@ void Init()
{
TCHAR buff[MAX_PATH];
GetModuleFileName(hThisLibrary, buff, (sizeof(buff)/sizeof(TCHAR)));
- PathTruncateFileName(buff);
- lstrcat(buff, TEXT("ooofilt.dll"));
+ PathTruncateFileName(buff);
+
+ lstrcat(buff, MODULE_NAME_FILTER);
hOoofilt = LoadLibraryEx(buff, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
diff --git a/shell/source/win32/shlxthandler/propsheets/propsheets.cxx b/shell/source/win32/shlxthandler/propsheets/propsheets.cxx
index c901c7be42..7172fa8348 100644
--- a/shell/source/win32/shlxthandler/propsheets/propsheets.cxx
+++ b/shell/source/win32/shlxthandler/propsheets/propsheets.cxx
@@ -177,7 +177,6 @@ HRESULT STDMETHODCALLTYPE CPropertySheet::Initialize(
HRESULT STDMETHODCALLTYPE CPropertySheet::AddPages(LPFNADDPROPSHEETPAGE lpfnAddPage, LPARAM lParam)
{
-
PROPSHEETPAGE psp;
// add the summary property page
@@ -309,7 +308,6 @@ BOOL CALLBACK CPropertySheet::PropPageStatisticsProc(HWND hwnd, UINT uiMsg, WPAR
//##################################
void CPropertySheet::InitPropPageSummary(HWND hwnd, LPPROPSHEETPAGE /*lppsp*/)
{
-
CMetaInfoReader metaInfo(m_szFileName);
SetWindowText(GetDlgItem(hwnd,IDC_TITLE), metaInfo.getTagData( META_INFO_TITLE ).c_str() );
@@ -335,7 +333,6 @@ void CPropertySheet::InitPropPageSummary(HWND hwnd, LPPROPSHEETPAGE /*lppsp*/)
*/
void CPropertySheet::InitPropPageStatistics(HWND hwnd, LPPROPSHEETPAGE /*lppsp*/)
{
-
CMetaInfoReader metaInfo(m_szFileName);
document_statistic_reader_ptr doc_stat_reader = create_document_statistic_reader(m_szFileName, &metaInfo);
diff --git a/shell/source/win32/shlxthandler/res/makefile.mk b/shell/source/win32/shlxthandler/res/makefile.mk
index 08893506b2..8f8c776383 100644
--- a/shell/source/win32/shlxthandler/res/makefile.mk
+++ b/shell/source/win32/shlxthandler/res/makefile.mk
@@ -53,9 +53,19 @@ ULFDIR:=$(COMMONMISC)$/$(TARGET)
.ELSE # "$(WITH_LANG)"!=""
ULFDIR:=.
.ENDIF # "$(WITH_LANG)"!=""
+
# --- Targets ------------------------------------------------------
+.IF "$(BUILD_X64)"!=""
+$(RES)$/x64$/$(TARGET).res : $(RES)$/$(TARGET).res
+ -$(MKDIR) $(RES)$/x64
+ @@cp $< $@
+.ENDIF # "$(BUILD_X64)"!=""
+
+.INCLUDE : set_wntx64.mk
.INCLUDE : target.mk
+.INCLUDE : tg_wntx64.mk
+
# Generate the native Windows resource file
diff --git a/shell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx b/shell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx
index 9c9952e057..0c77dc22f3 100644
--- a/shell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx
+++ b/shell/source/win32/shlxthandler/thumbviewer/thumbviewer.cxx
@@ -30,19 +30,21 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_shell.hxx"
+
#include "internal/global.hxx"
#ifndef INFOTIPS_HXX_INCLUDED
#include "internal/thumbviewer.hxx"
#endif
#include "internal/shlxthdl.hxx"
-#include "internal/utilities.hxx"
#include "internal/registry.hxx"
#include "internal/fileextensions.hxx"
#include "internal/config.hxx"
#include "internal/zipfile.hxx"
+#include "internal/utilities.hxx"
#include "internal/resource.h"
+
#include <stdio.h>
#include <utility>
#include <stdlib.h>
@@ -212,15 +214,15 @@ HRESULT STDMETHODCALLTYPE StreamOnZipBuffer::Read(void *pv, ULONG cb, ULONG *pcb
HRESULT STDMETHODCALLTYPE StreamOnZipBuffer::Seek(LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER *)
{
- size_t size = ref_zip_buffer_.size();
- size_t p = 0;
+ __int64 size = (__int64) ref_zip_buffer_.size();
+ __int64 p = 0;
switch (dwOrigin)
{
case STREAM_SEEK_SET:
break;
case STREAM_SEEK_CUR:
- p = pos_;
+ p = (__int64) pos_;
break;
case STREAM_SEEK_END:
p = size - 1;
@@ -229,10 +231,11 @@ HRESULT STDMETHODCALLTYPE StreamOnZipBuffer::Seek(LARGE_INTEGER dlibMove, DWORD
HRESULT hr = STG_E_INVALIDFUNCTION;
- p += dlibMove.LowPart;
- if (p < size)
+ p += dlibMove.QuadPart;
+
+ if ( ( p >= 0 ) && (p < size) )
{
- pos_ = p;
+ pos_ = (size_t) p;
hr = S_OK;
}
return hr;
@@ -295,7 +298,7 @@ HRESULT STDMETHODCALLTYPE StreamOnZipBuffer::Clone(IStream **)
CThumbviewer::CThumbviewer(long RefCnt) :
ref_count_(RefCnt)
-{
+{
InterlockedIncrement(&g_DllRefCnt);
thumbnail_size_.cx = 0;
@@ -468,6 +471,7 @@ HRESULT STDMETHODCALLTYPE CThumbviewer::Extract(HBITMAP *phBmpImage)
}
catch(std::exception&)
{
+ OutputDebugStringFormat( "CThumbviewer Extract ERROR!\n" );
hr = E_FAIL;
}
return hr;
diff --git a/shell/source/win32/shlxthandler/util/utilities.cxx b/shell/source/win32/shlxthandler/util/utilities.cxx
index d76e0c9df7..eaffd4f023 100644
--- a/shell/source/win32/shlxthandler/util/utilities.cxx
+++ b/shell/source/win32/shlxthandler/util/utilities.cxx
@@ -32,12 +32,9 @@
#include "precompiled_shell.hxx"
-#include "internal/utilities.hxx"
#include "internal/config.hxx"
#include "internal/dbgmacros.hxx"
-
-
-
+#include "internal/utilities.hxx"
//-----------------------------
// constants
@@ -87,15 +84,9 @@ std::wstring GetResString(int ResId)
{
wchar_t szResStr[MAX_RES_STRING];
- #if OSL_DEBUG_LEVEL > 0
- int rc =
- #endif
- LoadStringW(
- GetModuleHandleW(MODULE_NAME),
- ResId,
- szResStr,
- sizeof(szResStr));
+ int rc = LoadStringW( GetModuleHandleW(MODULE_NAME), ResId, szResStr, sizeof(szResStr) );
+ OutputDebugStringFormat( "GetResString: read %d chars\n", rc );
ENSURE(rc, "String resource not found");
return std::wstring(szResStr);
diff --git a/shell/source/win32/sysshell/makefile.mk b/shell/source/win32/sysshell/makefile.mk
deleted file mode 100644
index 6985666414..0000000000
--- a/shell/source/win32/sysshell/makefile.mk
+++ /dev/null
@@ -1,50 +0,0 @@
-#*************************************************************************
-#
-# 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: makefile.mk,v $
-#
-# $Revision: 1.5 $
-#
-# 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=shell
-TARGET=sysshell
-LIBTARGET=NO
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-LIB1OBJFILES=$(SLO)$/systemshell.obj
-LIB1TARGET= $(SLB)$/$(TARGET).lib
-LIB1ARCHIV= $(SLB)$/lib$(TARGET).a
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/shell/source/win32/sysshell/systemshell.cxx b/shell/source/win32/sysshell/systemshell.cxx
deleted file mode 100644
index 2c2c01476a..0000000000
--- a/shell/source/win32/sysshell/systemshell.cxx
+++ /dev/null
@@ -1,68 +0,0 @@
-/*************************************************************************
- *
- * 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: systemshell.cxx,v $
- * $Revision: 1.6 $
- *
- * 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_shell.hxx"
-#include "../../../inc/systemshell.hxx"
-#include <osl/diagnose.h>
-#include <osl/file.hxx>
-
-#if defined _MSC_VER
-#pragma warning(push, 1)
-#pragma warning(disable:4917)
-#endif
-#include <Shlobj.h>
-#if defined _MSC_VER
-#pragma warning(pop)
-#endif
-
-namespace SystemShell
-{
-
- /** Add a file to the system shells recent document list if there is any.
- This function may have no effect under Unix because there is no
- standard API among the different desktop managers.
-
- @param aFileUrl
- The file url of the document.
- */
- void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& /*aMimeType*/)
- {
- rtl::OUString system_path;
- osl::FileBase::RC rc = osl::FileBase::getSystemPathFromFileURL(aFileUrl, system_path);
-
- OSL_ENSURE(osl::FileBase::E_None == rc, "Invalid file url");
-
- if (osl::FileBase::E_None == rc)
- SHAddToRecentDocs(SHARD_PATHW, system_path.getStr());
- }
-
-}; // end namespace SystemShell
-