23#include <osl/diagnose.h>
24#include <rtl/ustrbuf.hxx>
25#include <com/sun/star/uno/Sequence.hxx>
45 OSL_ASSERT(
aLabel.getLength( ) );
46 OSL_ASSERT(
aBuffer.getCapacity( ) >= (
aLabel.getLength( )) );
53 while( pCurrent < pEnd )
55 OSL_ASSERT( pNext <= pEnd );
56 OSL_ASSERT( (
i >= 0) && (
i <
aBuffer.getCapacity( )) );
58 if ( OldChar == *pCurrent )
60 if ( OldChar == *pNext )
78 else if ( *pCurrent == NewChar )
106 OUString aWinLabel = aSOLabel;
110 sal_Int32 nStrLen = aWinLabel.getLength( );
116 OUStringBuffer
aBuffer( nStrLen * 2 );
120 aWinLabel =
aBuffer.makeStringAndClear( );
135 OUString aSOLabel = aWinLabel;
139 sal_Int32 nStrLen = aSOLabel.getLength( );
145 OUStringBuffer
aBuffer( nStrLen * 2 );
149 aSOLabel =
aBuffer.makeStringAndClear( );
const sal_Unicode AMPERSAND_SIGN
OUString WindowsToSOfficeLabel(const OUString &aWinLabel)
OUString SOfficeToWindowsLabel(const OUString &aSOLabel)
static void Replace(const OUString &aLabel, sal_Unicode OldChar, sal_Unicode NewChar, OUStringBuffer &aBuffer)
const sal_Unicode TILDE_SIGN
std::unique_ptr< char[]> aBuffer