vcl/aqua/source/dtrans/DataFlavorMapping.cxx | 23 ++++++++++++----------- vcl/aqua/source/dtrans/DataFlavorMapping.hxx | 13 +++++++------ vcl/aqua/source/dtrans/aqua_clipboard.cxx | 8 ++++---- vcl/aqua/source/dtrans/aqua_clipboard.hxx | 4 ++-- 4 files changed, 25 insertions(+), 23 deletions(-)
New commits: commit 0801e9b488660e792a09d12717da951d224b26e0 Author: Herbert Dürr <[email protected]> Date: Thu Dec 12 13:37:51 2013 +0000 #i123841# fix constness issues in OSX 64bit clipboard handling diff --git a/vcl/aqua/source/dtrans/DataFlavorMapping.cxx b/vcl/aqua/source/dtrans/DataFlavorMapping.cxx index c784602..c3650e5 100644 --- a/vcl/aqua/source/dtrans/DataFlavorMapping.cxx +++ b/vcl/aqua/source/dtrans/DataFlavorMapping.cxx @@ -64,7 +64,7 @@ namespace // private typedef vector<sal_Unicode> UnicodeBuffer; - OUString NSStringToOUString(NSString* cfString) + OUString NSStringToOUString( const NSString* cfString) { BOOST_ASSERT(cfString && "Invalid parameter"); @@ -113,7 +113,7 @@ namespace // private struct FlavorMap { - NSString* SystemFlavor; + const NSString* SystemFlavor; const char* OOoFlavor; const char* HumanPresentableName; Type DataType; @@ -121,7 +121,7 @@ namespace // private /* At the moment it appears as if only MS Office pastes "public.html" to the clipboard. */ - FlavorMap flavorMap[] = + static const FlavorMap flavorMap[] = { { NSStringPboardType, "text/plain;charset=utf-16", "Unicode Text (UTF-16)", CPPUTYPE_OUSTRING }, { NSRTFPboardType, "text/richtext", "Rich Text Format", CPPUTYPE_SEQINT8 }, @@ -521,13 +521,13 @@ DataFlavorMapper::~DataFlavorMapper() } } -DataFlavor DataFlavorMapper::systemToOpenOfficeFlavor(NSString* systemDataFlavor) const +DataFlavor DataFlavorMapper::systemToOpenOfficeFlavor( const NSString* systemDataFlavor) const { DataFlavor oOOFlavor; for (size_t i = 0; i < SIZE_FLAVOR_MAP; i++) { - if ([systemDataFlavor caseInsensitiveCompare: flavorMap[i].SystemFlavor] == NSOrderedSame) + if ([systemDataFlavor caseInsensitiveCompare:const_cast<NSString*>(flavorMap[i].SystemFlavor)] == NSOrderedSame) { oOOFlavor.MimeType = OUString::createFromAscii( flavorMap[i].OOoFlavor); oOOFlavor.HumanPresentableName = OUString::createFromAscii( flavorMap[i].HumanPresentableName); @@ -549,9 +549,10 @@ DataFlavor DataFlavorMapper::systemToOpenOfficeFlavor(NSString* systemDataFlavor return oOOFlavor; } -NSString* DataFlavorMapper::openOfficeToSystemFlavor(const DataFlavor& oOOFlavor, bool& rbInternal) const +const NSString* DataFlavorMapper::openOfficeToSystemFlavor( const DataFlavor& oOOFlavor, bool& rbInternal) const { - NSString* sysFlavor = NULL; + const NSString* sysFlavor = NULL; + rbInternal = false; rbInternal = false; for( size_t i = 0; i < SIZE_FLAVOR_MAP; ++i ) @@ -583,7 +584,7 @@ NSString* DataFlavorMapper::openOfficeImageToSystemFlavor(NSPasteboard* pPastebo return sysFlavor; } -DataProviderPtr_t DataFlavorMapper::getDataProvider(NSString* systemFlavor, Reference<XTransferable> rTransferable) const +DataProviderPtr_t DataFlavorMapper::getDataProvider( const NSString* systemFlavor, Reference<XTransferable> rTransferable) const { DataProviderPtr_t dp; @@ -639,12 +640,12 @@ DataProviderPtr_t DataFlavorMapper::getDataProvider(NSString* systemFlavor, Refe return dp; } -DataProviderPtr_t DataFlavorMapper::getDataProvider(const NSString* /*systemFlavor*/, NSArray* systemData) const +DataProviderPtr_t DataFlavorMapper::getDataProvider( const NSString* /*systemFlavor*/, NSArray* systemData) const { return DataProviderPtr_t(new FileListDataProvider(systemData)); } -DataProviderPtr_t DataFlavorMapper::getDataProvider(const NSString* systemFlavor, NSData* systemData) const +DataProviderPtr_t DataFlavorMapper::getDataProvider( const NSString* systemFlavor, NSData* systemData) const { DataProviderPtr_t dp; @@ -708,7 +709,7 @@ NSArray* DataFlavorMapper::flavorSequenceToTypesArray(const com::sun::star::uno: } else { - NSString* str = openOfficeToSystemFlavor(flavors[i], bNeedDummyInternalFlavor); + const NSString* str = openOfficeToSystemFlavor(flavors[i], bNeedDummyInternalFlavor); if (str != NULL) { diff --git a/vcl/aqua/source/dtrans/DataFlavorMapping.hxx b/vcl/aqua/source/dtrans/DataFlavorMapping.hxx index 9a9e709..6adf3fb 100644 --- a/vcl/aqua/source/dtrans/DataFlavorMapping.hxx +++ b/vcl/aqua/source/dtrans/DataFlavorMapping.hxx @@ -78,14 +78,14 @@ public: mapping from a system data flavor to a OpenOffice data flavor. */ - com::sun::star::datatransfer::DataFlavor systemToOpenOfficeFlavor(NSString* systemDataFlavor) const; + com::sun::star::datatransfer::DataFlavor systemToOpenOfficeFlavor( const NSString* systemDataFlavor) const; /* Map an OpenOffice data flavor to a system data flavor. If there is no suiteable mapping available NULL will be returned. */ - NSString* openOfficeToSystemFlavor(const com::sun::star::datatransfer::DataFlavor& oooDataFlavor, bool& rbInternal) const; + const NSString* openOfficeToSystemFlavor(const com::sun::star::datatransfer::DataFlavor& oooDataFlavor, bool& rbInternal) const; /* Select the best available image data type If there is no suiteable mapping available NULL will @@ -96,19 +96,19 @@ public: /* Get a data provider which is able to provide the data 'rTransferable' offers in a format that can be put on to the system clipboard. */ - DataProviderPtr_t getDataProvider(NSString* systemFlavor, + DataProviderPtr_t getDataProvider( const NSString* systemFlavor, const com::sun::star::uno::Reference< com::sun::star::datatransfer::XTransferable > rTransferable) const; /* Get a data provider which is able to provide 'systemData' in the OOo expected format. */ - DataProviderPtr_t getDataProvider(const NSString* systemFlavor, NSArray* systemData) const; + DataProviderPtr_t getDataProvider( const NSString* systemFlavor, NSArray* systemData) const; /* Get a data provider which is able to provide 'systemData' in the OOo expected format. */ - DataProviderPtr_t getDataProvider(const NSString* systemFlavor, NSData* systemData) const; + DataProviderPtr_t getDataProvider( const NSString* systemFlavor, NSData* systemData) const; /* Translate a sequence of DataFlavors into a NSArray of system types. @@ -125,7 +125,7 @@ public: /* Returns an NSArray containing all pasteboard types supported by OOo */ - NSArray* DataFlavorMapper::getAllSupportedPboardTypes() const; + NSArray* getAllSupportedPboardTypes() const; private: /* Determines if the provided Mime content type is valid. @@ -141,3 +141,4 @@ private: typedef boost::shared_ptr<DataFlavorMapper> DataFlavorMapperPtr_t; #endif + diff --git a/vcl/aqua/source/dtrans/aqua_clipboard.cxx b/vcl/aqua/source/dtrans/aqua_clipboard.cxx index d2d6f3b..8e90dd7 100644 --- a/vcl/aqua/source/dtrans/aqua_clipboard.cxx +++ b/vcl/aqua/source/dtrans/aqua_clipboard.cxx @@ -57,7 +57,7 @@ using namespace comphelper; return self; } --(void)pasteboard:(NSPasteboard*)sender provideDataForType:(NSString*)type +-(void)pasteboard:(NSPasteboard*)sender provideDataForType:(const NSString*)type { if( pAquaClipboard ) pAquaClipboard->provideDataForType(sender, type); @@ -316,7 +316,7 @@ void AquaClipboard::fireLostClipboardOwnershipEvent(Reference<XClipboardOwner> o } -void AquaClipboard::provideDataForType(NSPasteboard* sender, NSString* type) +void AquaClipboard::provideDataForType(NSPasteboard* sender, const NSString* type) { if( mXClipboardContent.is() ) { @@ -326,7 +326,7 @@ void AquaClipboard::provideDataForType(NSPasteboard* sender, NSString* type) if (dp.get() != NULL) { pBoardData = (NSData*)dp->getSystemData(); - [sender setData: pBoardData forType: type]; + [sender setData: pBoardData forType:const_cast<NSString*>(type)]; } } } @@ -347,7 +347,7 @@ void SAL_CALL AquaClipboard::flushClipboard() for (sal_uInt32 i = 0; i < nFlavors; i++) { - NSString* sysType = mpDataFlavorMapper->openOfficeToSystemFlavor(flavorList[i], bInternal); + const NSString* sysType = mpDataFlavorMapper->openOfficeToSystemFlavor(flavorList[i], bInternal); if (sysType != NULL) { diff --git a/vcl/aqua/source/dtrans/aqua_clipboard.hxx b/vcl/aqua/source/dtrans/aqua_clipboard.hxx index 3bf2875..a2f3a92 100644 --- a/vcl/aqua/source/dtrans/aqua_clipboard.hxx +++ b/vcl/aqua/source/dtrans/aqua_clipboard.hxx @@ -58,7 +58,7 @@ class AquaClipboard; - (EventListener*)initWithAquaClipboard: (AquaClipboard*) pcb; // Promiss resolver function -- (void)pasteboard:(NSPasteboard*)sender provideDataForType:(NSString *)type; +- (void)pasteboard:(NSPasteboard*)sender provideDataForType:(const NSString *)type; -(void)applicationDidBecomeActive:(NSNotification*)aNotification; @@ -151,7 +151,7 @@ public: void pasteboardChangedOwner(); - void provideDataForType(NSPasteboard* sender, NSString* type); + void provideDataForType(NSPasteboard* sender, const NSString* type); void applicationDidBecomeActive(NSNotification* aNotification);
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
