[Libreoffice-commits] core.git: 7 commits - connectivity/Library_hsqldb.mk connectivity/source desktop/unx vcl/source vcl/unx
Eike Rathke
erack at redhat.com
Mon Feb 18 11:07:27 PST 2013
connectivity/Library_hsqldb.mk | 1
connectivity/source/drivers/hsqldb/HDriver.cxx | 11 ---
connectivity/source/drivers/kab/KDEInit.cxx | 1
desktop/unx/source/splashx.c | 4 +
vcl/source/app/brand.cxx | 71 +++++++++++++++----------
vcl/unx/generic/app/wmadaptor.cxx | 1
6 files changed, 53 insertions(+), 36 deletions(-)
New commits:
commit 40dc6c3a97c9f40617e2258f0f0cf866bcb13c8a
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 20:00:30 2013 +0100
added language tags comment
Change-Id: Ia71e1b9149b823a30cbeb1e75e04d27b40f11b12
diff --git a/vcl/unx/generic/app/wmadaptor.cxx b/vcl/unx/generic/app/wmadaptor.cxx
index 652d238..fd4eeec 100644
--- a/vcl/unx/generic/app/wmadaptor.cxx
+++ b/vcl/unx/generic/app/wmadaptor.cxx
@@ -988,6 +988,7 @@ void WMAdaptor::setWMName( X11SalFrame* pFrame, const String& rWMName ) const
rtl::OString aTitle(rtl::OUStringToOString(rWMName,
osl_getThreadTextEncoding()));
+ /* FIXME-BCP47: what slumbering dogs may we wake up here? */
::rtl::OString aWMLocale;
rtl_Locale* pLocale = NULL;
osl_getProcessLocale( &pLocale );
commit f6585c2718c365d39602e1f6c345bf9e78b4499f
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 19:55:29 2013 +0100
added language tags comment
Change-Id: Ie5942c13c8f64063ca9d45e25ff7efbf5c3b3d16
diff --git a/connectivity/source/drivers/kab/KDEInit.cxx b/connectivity/source/drivers/kab/KDEInit.cxx
index 8f020b7..46bbe13 100644
--- a/connectivity/source/drivers/kab/KDEInit.cxx
+++ b/connectivity/source/drivers/kab/KDEInit.cxx
@@ -61,6 +61,7 @@ namespace connectivity
s_pKApplication = new KApplication(false, false);
}
+ /* FIXME-BCP47: what slumbering dogs may we wake up here? */
// set language
rtl_Locale *pProcessLocale;
osl_getProcessLocale(&pProcessLocale);
commit 9bf31cf6bc3f4df79ddf69ca17e3cbdb0978239b
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 19:52:08 2013 +0100
use LanguageTag(rtl_Locale)
Change-Id: I4bcef6a58915226ec80d7546b4bc5d60abdaeeaf
diff --git a/connectivity/Library_hsqldb.mk b/connectivity/Library_hsqldb.mk
index 37655e7..3c26517 100644
--- a/connectivity/Library_hsqldb.mk
+++ b/connectivity/Library_hsqldb.mk
@@ -48,6 +48,7 @@ $(eval $(call gb_Library_use_libraries,hsqldb,\
sal \
tl \
utl \
+ i18nisolang1 \
$(gb_UWINAPI) \
))
diff --git a/connectivity/source/drivers/hsqldb/HDriver.cxx b/connectivity/source/drivers/hsqldb/HDriver.cxx
index 193adbb..5e31646 100644
--- a/connectivity/source/drivers/hsqldb/HDriver.cxx
+++ b/connectivity/source/drivers/hsqldb/HDriver.cxx
@@ -50,6 +50,7 @@
#include <unotools/ucbstreamhelper.hxx>
#include "resource/hsqldb_res.hrc"
#include "resource/sharedresources.hxx"
+#include <i18npool/languagetag.hxx>
#include <o3tl/compat_functional.hxx>
@@ -862,15 +863,7 @@ namespace connectivity
{
rtl_Locale* pProcessLocale = NULL;
osl_getProcessLocale( &pProcessLocale );
-
- ::rtl::OUStringBuffer aProcLocale;
- aProcLocale.append( pProcessLocale->Language->buffer, pProcessLocale->Language->length );
- if ( pProcessLocale->Country->length )
- {
- aProcLocale.appendAscii( "-" );
- aProcLocale.append( pProcessLocale->Country->buffer, pProcessLocale->Country->length );
- }
- sLocaleString = aProcLocale.makeStringAndClear();
+ sLocaleString = LanguageTag( *pProcessLocale).getBcp47();
}
return sLocaleString;
}
commit 5fa05c96d6bd5021141efc0649a8c3c3dc4ca222
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 19:26:55 2013 +0100
added comment about language tags
Change-Id: If5a64f7e2b3ad0ad62733ea7e1a0c958ef6a7cd1
diff --git a/desktop/unx/source/splashx.c b/desktop/unx/source/splashx.c
index 6dd2fa2..e231a8e 100644
--- a/desktop/unx/source/splashx.c
+++ b/desktop/unx/source/splashx.c
@@ -595,6 +595,10 @@ static rtl_String* ustr_to_str( rtl_uString* pStr )
static void splash_load_image( struct splash* splash, rtl_uString* pUAppPath )
{
+ /* FIXME-BCP47: if we wanted to support language tags here that would get
+ * complicated, this is C-source not C++ so LanguageTag can't be used. For
+ * now the splash screen will have to get along with language-territory. */
+
char *pBuffer, *pSuffix, *pLocale;
int nLocSize;
rtl_Locale *pLoc = NULL;
commit 63efb93a20a572f4399c1401b36eaac88bdd4cb7
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 18:50:51 2013 +0100
no need to expand the BRAND_BASE_DIR macro multiple times
Change-Id: I085759537f64489e76e2f33a820cde14767d116a
diff --git a/vcl/source/app/brand.cxx b/vcl/source/app/brand.cxx
index fda0940..50b606e 100644
--- a/vcl/source/app/brand.cxx
+++ b/vcl/source/app/brand.cxx
@@ -27,10 +27,9 @@
#include <vcl/svgdata.hxx>
namespace {
- static bool loadPng( rtl::OUString aUri, BitmapEx &rBitmap)
+ static bool loadPng( const OUString & rPath, BitmapEx &rBitmap)
{
- rtl::Bootstrap::expandMacros( aUri );
- INetURLObject aObj( aUri );
+ INetURLObject aObj( rPath );
SvFileStream aStrm( aObj.PathToFileName(), STREAM_STD_READ );
if ( !aStrm.GetError() ) {
vcl::PNGReader aReader( aStrm );
@@ -40,25 +39,24 @@ namespace {
else
return false;
}
- static bool tryLoadPng( const OUString& rName, BitmapEx& rBitmap )
+ static bool tryLoadPng( const OUString& rBaseDir, const OUString& rName, BitmapEx& rBitmap )
{
return
- loadPng( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
- loadPng( "$BRAND_BASE_DIR/program" + rName, rBitmap);
+ loadPng( rBaseDir + "/program/edition" + rName, rBitmap) ||
+ loadPng( rBaseDir + "/program" + rName, rBitmap);
}
- static bool loadSvg(rtl::OUString aUri, BitmapEx &rBitmap)
+ static bool loadSvg( const OUString & rPath, BitmapEx &rBitmap)
{
- rtl::Bootstrap::expandMacros( aUri );
- INetURLObject aObj( aUri );
+ INetURLObject aObj( rPath );
SvgData aSvgData(aObj.PathToFileName());
rBitmap = aSvgData.getReplacement();
return !rBitmap.IsEmpty();
}
- static bool tryLoadSvg( const OUString& rName, BitmapEx& rBitmap )
+ static bool tryLoadSvg( const OUString& rBaseDir, const OUString& rName, BitmapEx& rBitmap )
{
return
- loadSvg( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
- loadSvg( "$BRAND_BASE_DIR/program" + rName, rBitmap);
+ loadSvg( rBaseDir + "/program/edition" + rName, rBitmap) ||
+ loadSvg( rBaseDir + "/program" + rName, rBitmap);
}
}
@@ -66,6 +64,8 @@ bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
{
// TODO - if we want more flexibility we could add a branding path
// in an rc file perhaps fallback to "about.bmp"
+ OUString aBaseDir( "$BRAND_BASE_DIR");
+ rtl::Bootstrap::expandMacros( aBaseDir );
OUString aBaseName( "/" + OUString::createFromAscii( pName ) );
OUString aPng( ".png" );
@@ -76,11 +76,11 @@ bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
for (size_t i=0; i < aFallbacks.size(); ++i)
{
- if (tryLoadPng( aBaseName + "-" + aFallbacks[i] + aPng, rBitmap))
+ if (tryLoadPng( aBaseDir, aBaseName + "-" + aFallbacks[i] + aPng, rBitmap))
return true;
}
- if (tryLoadPng( aBaseName + aPng, rBitmap))
+ if (tryLoadPng( aBaseDir, aBaseName + aPng, rBitmap))
return true;
return false;
@@ -88,6 +88,8 @@ bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
bool Application::LoadBrandSVG (const char *pName, BitmapEx &rBitmap)
{
+ OUString aBaseDir( "$BRAND_BASE_DIR");
+ rtl::Bootstrap::expandMacros( aBaseDir );
rtl::OUString aBaseName( "/" + rtl::OUString::createFromAscii( pName ) );
rtl::OUString aSvg( ".svg" );
@@ -98,11 +100,11 @@ bool Application::LoadBrandSVG (const char *pName, BitmapEx &rBitmap)
::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
for (size_t i=0; i < aFallbacks.size(); ++i)
{
- if (tryLoadSvg( aBaseName + "-" + aFallbacks[i] + aSvg, rBitmap))
+ if (tryLoadSvg( aBaseDir, aBaseName + "-" + aFallbacks[i] + aSvg, rBitmap))
return true;
}
- if (tryLoadSvg( aBaseName + aSvg, rBitmap))
+ if (tryLoadSvg( aBaseDir, aBaseName + aSvg, rBitmap))
return true;
return false;
commit 96189af51da6e64ca321cee0d9c2f247c2cefe24
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 18:39:18 2013 +0100
slightly improved parameter passing
Change-Id: I75b6bc42285cb3c671dcd4b437db54d5003a2898
diff --git a/vcl/source/app/brand.cxx b/vcl/source/app/brand.cxx
index 99517d1..fda0940 100644
--- a/vcl/source/app/brand.cxx
+++ b/vcl/source/app/brand.cxx
@@ -27,11 +27,10 @@
#include <vcl/svgdata.hxx>
namespace {
- static bool loadPng(const char *pPath, const rtl::OUString &rName, BitmapEx &rBitmap)
+ static bool loadPng( rtl::OUString aUri, BitmapEx &rBitmap)
{
- rtl::OUString uri = rtl::OUString::createFromAscii( pPath ) + rName;
- rtl::Bootstrap::expandMacros( uri );
- INetURLObject aObj( uri );
+ rtl::Bootstrap::expandMacros( aUri );
+ INetURLObject aObj( aUri );
SvFileStream aStrm( aObj.PathToFileName(), STREAM_STD_READ );
if ( !aStrm.GetError() ) {
vcl::PNGReader aReader( aStrm );
@@ -41,6 +40,12 @@ namespace {
else
return false;
}
+ static bool tryLoadPng( const OUString& rName, BitmapEx& rBitmap )
+ {
+ return
+ loadPng( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
+ loadPng( "$BRAND_BASE_DIR/program" + rName, rBitmap);
+ }
static bool loadSvg(rtl::OUString aUri, BitmapEx &rBitmap)
{
rtl::Bootstrap::expandMacros( aUri );
@@ -49,13 +54,12 @@ namespace {
rBitmap = aSvgData.getReplacement();
return !rBitmap.IsEmpty();
}
-}
-
-static bool lcl_loadPng( const OUString& rName, BitmapEx& rBitmap )
-{
- return
- loadPng( "$BRAND_BASE_DIR/program/edition", rName, rBitmap) ||
- loadPng( "$BRAND_BASE_DIR/program", rName, rBitmap);
+ static bool tryLoadSvg( const OUString& rName, BitmapEx& rBitmap )
+ {
+ return
+ loadSvg( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
+ loadSvg( "$BRAND_BASE_DIR/program" + rName, rBitmap);
+ }
}
bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
@@ -72,23 +76,16 @@ bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
for (size_t i=0; i < aFallbacks.size(); ++i)
{
- if (lcl_loadPng( aBaseName + "-" + aFallbacks[i] + aPng, rBitmap))
+ if (tryLoadPng( aBaseName + "-" + aFallbacks[i] + aPng, rBitmap))
return true;
}
- if (lcl_loadPng( aBaseName + aPng, rBitmap))
+ if (tryLoadPng( aBaseName + aPng, rBitmap))
return true;
return false;
}
-static bool lcl_loadSvg( const OUString& rName, BitmapEx& rBitmap )
-{
- return
- loadSvg( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
- loadSvg( "$BRAND_BASE_DIR/program" + rName, rBitmap);
-}
-
bool Application::LoadBrandSVG (const char *pName, BitmapEx &rBitmap)
{
rtl::OUString aBaseName( "/" + rtl::OUString::createFromAscii( pName ) );
@@ -101,11 +98,11 @@ bool Application::LoadBrandSVG (const char *pName, BitmapEx &rBitmap)
::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
for (size_t i=0; i < aFallbacks.size(); ++i)
{
- if (lcl_loadSvg( aBaseName + "-" + aFallbacks[i] + aSvg, rBitmap))
+ if (tryLoadSvg( aBaseName + "-" + aFallbacks[i] + aSvg, rBitmap))
return true;
}
- if (lcl_loadSvg( aBaseName + aSvg, rBitmap))
+ if (tryLoadSvg( aBaseName + aSvg, rBitmap))
return true;
return false;
commit ab6ebe247005d78cbd816269ab76a8d4d6ea11cd
Author: Eike Rathke <erack at redhat.com>
Date: Mon Feb 18 18:29:48 2013 +0100
consistent fall-back chain for (branded) about
Make Application::LoadBrandBitmap() and LoadBrandSVG() use the same and
consistent fall-back chain to obtain localized files, if any.
Change-Id: I396f59ec5ffe7ee323b798c6c66241bd76a4b30a
diff --git a/vcl/source/app/brand.cxx b/vcl/source/app/brand.cxx
index 904c24a..99517d1 100644
--- a/vcl/source/app/brand.cxx
+++ b/vcl/source/app/brand.cxx
@@ -51,46 +51,64 @@ namespace {
}
}
+static bool lcl_loadPng( const OUString& rName, BitmapEx& rBitmap )
+{
+ return
+ loadPng( "$BRAND_BASE_DIR/program/edition", rName, rBitmap) ||
+ loadPng( "$BRAND_BASE_DIR/program", rName, rBitmap);
+}
+
bool Application::LoadBrandBitmap (const char* pName, BitmapEx &rBitmap)
{
// TODO - if we want more flexibility we could add a branding path
// in an rc file perhaps fallback to "about.bmp"
- rtl::OUString aBaseName = ( rtl::OUString("/") +
- rtl::OUString::createFromAscii( pName ) );
- rtl::OUString aPng( ".png" );
+ OUString aBaseName( "/" + OUString::createFromAscii( pName ) );
+ OUString aPng( ".png" );
rtl_Locale *pLoc = NULL;
osl_getProcessLocale (&pLoc);
LanguageTag aLanguageTag( *pLoc);
- rtl::OUString aName = aBaseName + aPng;
- rtl::OUString aLocaleName = ( aBaseName + rtl::OUString("-") +
- aLanguageTag.getBcp47() +
- aPng );
+ ::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
+ for (size_t i=0; i < aFallbacks.size(); ++i)
+ {
+ if (lcl_loadPng( aBaseName + "-" + aFallbacks[i] + aPng, rBitmap))
+ return true;
+ }
+
+ if (lcl_loadPng( aBaseName + aPng, rBitmap))
+ return true;
- return ( loadPng ("$BRAND_BASE_DIR/program/edition", aLocaleName, rBitmap) ||
- loadPng ("$BRAND_BASE_DIR/program", aLocaleName, rBitmap) ||
- loadPng ("$BRAND_BASE_DIR/program/edition", aName, rBitmap) ||
- loadPng ("$BRAND_BASE_DIR/program", aName, rBitmap) );
+ return false;
+}
+
+static bool lcl_loadSvg( const OUString& rName, BitmapEx& rBitmap )
+{
+ return
+ loadSvg( "$BRAND_BASE_DIR/program/edition" + rName, rBitmap) ||
+ loadSvg( "$BRAND_BASE_DIR/program" + rName, rBitmap);
}
bool Application::LoadBrandSVG (const char *pName, BitmapEx &rBitmap)
{
- rtl::OUString aBaseName = ( rtl::OUString("/") +
- rtl::OUString::createFromAscii( pName ) );
+ rtl::OUString aBaseName( "/" + rtl::OUString::createFromAscii( pName ) );
rtl::OUString aSvg( ".svg" );
rtl_Locale *pLoc = NULL;
osl_getProcessLocale (&pLoc);
LanguageTag aLanguageTag( *pLoc);
- rtl::OUString aName = aBaseName + aSvg;
- rtl::OUString aLocaleName = ( aBaseName + rtl::OUString("-") +
- aLanguageTag.getBcp47() +
- aSvg );
- rtl::OUString uriOpt = rtl::OUString::createFromAscii( "$BRAND_BASE_DIR/program/edition" ) + aLocaleName;
- rtl::OUString uri = rtl::OUString::createFromAscii( "$BRAND_BASE_DIR/program" ) + aBaseName+aSvg;
- return ( loadSvg( uriOpt, rBitmap ) || loadSvg( uri, rBitmap ) );
+ ::std::vector< OUString > aFallbacks( aLanguageTag.getFallbackStrings());
+ for (size_t i=0; i < aFallbacks.size(); ++i)
+ {
+ if (lcl_loadSvg( aBaseName + "-" + aFallbacks[i] + aSvg, rBitmap))
+ return true;
+ }
+
+ if (lcl_loadSvg( aBaseName + aSvg, rBitmap))
+ return true;
+
+ return false;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
More information about the Libreoffice-commits
mailing list