summaryrefslogtreecommitdiffstats
path: root/views/window
diff options
context:
space:
mode:
Diffstat (limited to 'views/window')
-rw-r--r--views/window/window.cc29
-rw-r--r--views/window/window.h11
2 files changed, 34 insertions, 6 deletions
diff --git a/views/window/window.cc b/views/window/window.cc
index f2a1501..9f69172 100644
--- a/views/window/window.cc
+++ b/views/window/window.cc
@@ -14,28 +14,45 @@
namespace views {
// static
-int Window::GetLocalizedContentsWidth(int col_resource_id) {
+int Window::GetLocalizedContentsWidthForFont(int col_resource_id,
+ const gfx::Font& font) {
double chars = 0;
StringToDouble(WideToUTF8(l10n_util::GetString(col_resource_id)), &chars);
- ResourceBundle& rb = ResourceBundle::GetSharedInstance();
- gfx::Font font = rb.GetFont(ResourceBundle::BaseFont);
int width = font.GetExpectedTextWidth(static_cast<int>(chars));
DCHECK(width > 0);
return width;
}
// static
-int Window::GetLocalizedContentsHeight(int row_resource_id) {
+int Window::GetLocalizedContentsWidth(int col_resource_id) {
+ return GetLocalizedContentsWidthForFont(col_resource_id,
+ ResourceBundle::GetSharedInstance().GetFont(ResourceBundle::BaseFont));
+}
+
+// static
+int Window::GetLocalizedContentsHeightForFont(int row_resource_id,
+ const gfx::Font& font) {
double lines = 0;
StringToDouble(WideToUTF8(l10n_util::GetString(row_resource_id)), &lines);
- ResourceBundle& rb = ResourceBundle::GetSharedInstance();
- gfx::Font font = rb.GetFont(ResourceBundle::BaseFont);
int height = static_cast<int>(font.height() * lines);
DCHECK(height > 0);
return height;
}
// static
+int Window::GetLocalizedContentsHeight(int row_resource_id) {
+ return GetLocalizedContentsHeightForFont(row_resource_id,
+ ResourceBundle::GetSharedInstance().GetFont(ResourceBundle::BaseFont));
+}
+
+gfx::Size Window::GetLocalizedContentsSizeForFont(int col_resource_id,
+ int row_resource_id,
+ const gfx::Font& font) {
+ return gfx::Size(GetLocalizedContentsWidthForFont(col_resource_id, font),
+ GetLocalizedContentsHeightForFont(row_resource_id, font));
+}
+
+// static
gfx::Size Window::GetLocalizedContentsSize(int col_resource_id,
int row_resource_id) {
return gfx::Size(GetLocalizedContentsWidth(col_resource_id),
diff --git a/views/window/window.h b/views/window/window.h
index 8983972..6bb1075 100644
--- a/views/window/window.h
+++ b/views/window/window.h
@@ -8,6 +8,7 @@
#include "base/gfx/native_widget_types.h"
namespace gfx {
+class Font;
class Rect;
class Size;
}
@@ -42,6 +43,16 @@ class Window {
static gfx::Size GetLocalizedContentsSize(int col_resource_id,
int row_resource_id);
+ // These versions of GetLocalizedContents allow a font to be specified
+ // other than the default UI font.
+ static int GetLocalizedContentsWidthForFont(int col_resource_id,
+ const gfx::Font& font);
+ static int GetLocalizedContentsHeightForFont(int row_resource_id,
+ const gfx::Font& font);
+ static gfx::Size GetLocalizedContentsSizeForFont(int col_resource_id,
+ int row_resource_id,
+ const gfx::Font& font);
+
// Closes all windows that aren't identified as "app windows" via
// IsAppWindow. Called during application shutdown when the last "app window"
// is closed.