summaryrefslogtreecommitdiffstats
path: root/base/gfx
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-14 15:14:53 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-14 15:14:53 +0000
commitbd63dc9cdf640a6d1e833ce0b5ed7ed9090973b0 (patch)
tree149a64e70ca634bd43019d639d9ae29ca6d45a9a /base/gfx
parentb39627f8eef41a2d4e1f4516bf905d6ad895e56b (diff)
downloadchromium_src-bd63dc9cdf640a6d1e833ce0b5ed7ed9090973b0.zip
chromium_src-bd63dc9cdf640a6d1e833ce0b5ed7ed9090973b0.tar.gz
chromium_src-bd63dc9cdf640a6d1e833ce0b5ed7ed9090973b0.tar.bz2
Refactor the PlatformContext layer to have only one class.
Previously we had three classes of PlatformCanvas*, one for each platform. Then we had a typedef of PlatformContext to PlatformCanvas[Mac|Win|Linux] for the specific platform. This means that it was almost impossible to forward-declare PlatformCanvas and there were a bunch of unnecessary includes of platform_canvas.h in header files. This change makes there be only one platform_canvas.h header with ifdefs, which removes a decent amount of duplicated code. There is a platform-independent file, and one platform-dependent file of platform_canvas for each platform. I also renamed PlatformDevice[Mac|Win|Linux] to PlatformDevice, althouth in this case I kept the separate headers since there was much less overlap. I also broke out CanvasPaint into separate headers so this template doesn't need to be included all over the project (only a couple of files actually need it). Review URL: http://codereview.chromium.org/125109 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18363 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/gfx')
-rw-r--r--base/gfx/native_theme.cc4
-rw-r--r--base/gfx/native_theme.h6
2 files changed, 5 insertions, 5 deletions
diff --git a/base/gfx/native_theme.cc b/base/gfx/native_theme.cc
index c2d7682..75bf67b 100644
--- a/base/gfx/native_theme.cc
+++ b/base/gfx/native_theme.cc
@@ -330,7 +330,7 @@ HRESULT NativeTheme::PaintScrollbarTrack(
int classic_state,
RECT* target_rect,
RECT* align_rect,
- skia::PlatformCanvasWin* canvas) const {
+ skia::PlatformCanvas* canvas) const {
HANDLE handle = GetThemeHandle(SCROLLBAR);
if (handle && draw_theme_)
return draw_theme_(handle, hdc, part_id, state_id, target_rect, NULL);
@@ -401,7 +401,7 @@ HRESULT NativeTheme::PaintTrackbar(HDC hdc,
int state_id,
int classic_state,
RECT* rect,
- skia::PlatformCanvasWin* canvas) const {
+ skia::PlatformCanvas* canvas) const {
// Make the channel be 4 px thick in the center of the supplied rect. (4 px
// matches what XP does in various menus; GetThemePartSize() doesn't seem to
// return good values here.)
diff --git a/base/gfx/native_theme.h b/base/gfx/native_theme.h
index 7769c4e..4516cba 100644
--- a/base/gfx/native_theme.h
+++ b/base/gfx/native_theme.h
@@ -18,7 +18,7 @@
#include "third_party/skia/include/core/SkColor.h"
namespace skia {
-class PlatformCanvasWin;
+class PlatformCanvas;
} // namespace skia
namespace gfx {
@@ -174,7 +174,7 @@ class NativeTheme {
int classic_state,
RECT* target_rect,
RECT* align_rect,
- skia::PlatformCanvasWin* canvas) const;
+ skia::PlatformCanvas* canvas) const;
// Paints a scrollbar thumb or gripper.
HRESULT PaintScrollbarThumb(HDC hdc,
@@ -205,7 +205,7 @@ class NativeTheme {
int state_id,
int classic_state,
RECT* rect,
- skia::PlatformCanvasWin* canvas) const;
+ skia::PlatformCanvas* canvas) const;
bool IsThemingActive() const;