diff options
author | brettw@google.com <brettw@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-03 20:48:29 +0000 |
---|---|---|
committer | brettw@google.com <brettw@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-03 20:48:29 +0000 |
commit | 90d22e2aeeedb9e3084fba0773b6ca713021765b (patch) | |
tree | ea968c9a2c1d6d07a1bd0f2e508bda5029fc20a4 /base/gfx | |
parent | fc78fd42b81a97d3d15419e679f3ff9e0f470d9c (diff) | |
download | chromium_src-90d22e2aeeedb9e3084fba0773b6ca713021765b.zip chromium_src-90d22e2aeeedb9e3084fba0773b6ca713021765b.tar.gz chromium_src-90d22e2aeeedb9e3084fba0773b6ca713021765b.tar.bz2 |
Move base/gfx/skia_util to skia/ext/skia_util_win.
In a later pass, I will separate off the cross-platform part of this file into skia/ext/skia_util (only one function).
Review URL: http://codereview.chromium.org/13101
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6306 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/gfx')
-rw-r--r-- | base/gfx/base_gfx.scons | 2 | ||||
-rw-r--r-- | base/gfx/skia_utils.cc | 75 | ||||
-rw-r--r-- | base/gfx/skia_utils.h | 56 |
3 files changed, 0 insertions, 133 deletions
diff --git a/base/gfx/base_gfx.scons b/base/gfx/base_gfx.scons index e699344..a69206b 100644 --- a/base/gfx/base_gfx.scons +++ b/base/gfx/base_gfx.scons @@ -32,7 +32,6 @@ input_files = [ 'point.cc', 'rect.cc', 'size.cc', - 'skia_utils.cc', ] if env['PLATFORM'] in ('posix', 'darwin'): @@ -41,7 +40,6 @@ if env['PLATFORM'] in ('posix', 'darwin'): to_be_ported_files = [ 'gdi_util.cc', 'native_theme.cc', - 'skia_utils.cc', ] for remove in to_be_ported_files: input_files.remove(remove) diff --git a/base/gfx/skia_utils.cc b/base/gfx/skia_utils.cc deleted file mode 100644 index 7b70056..0000000 --- a/base/gfx/skia_utils.cc +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "base/gfx/skia_utils.h" - -#include "base/logging.h" -#include "SkRect.h" -#include "SkGradientShader.h" - -namespace { - -COMPILE_ASSERT(offsetof(RECT, left) == offsetof(SkIRect, fLeft), o1); -COMPILE_ASSERT(offsetof(RECT, top) == offsetof(SkIRect, fTop), o2); -COMPILE_ASSERT(offsetof(RECT, right) == offsetof(SkIRect, fRight), o3); -COMPILE_ASSERT(offsetof(RECT, bottom) == offsetof(SkIRect, fBottom), o4); -COMPILE_ASSERT(sizeof(RECT().left) == sizeof(SkIRect().fLeft), o5); -COMPILE_ASSERT(sizeof(RECT().top) == sizeof(SkIRect().fTop), o6); -COMPILE_ASSERT(sizeof(RECT().right) == sizeof(SkIRect().fRight), o7); -COMPILE_ASSERT(sizeof(RECT().bottom) == sizeof(SkIRect().fBottom), o8); -COMPILE_ASSERT(sizeof(RECT) == sizeof(SkIRect), o9); - -} // namespace - -namespace gfx { - -POINT SkPointToPOINT(const SkPoint& point) { - POINT win_point = { SkScalarRound(point.fX), SkScalarRound(point.fY) }; - return win_point; -} - -SkRect RECTToSkRect(const RECT& rect) { - SkRect sk_rect = { SkIntToScalar(rect.left), SkIntToScalar(rect.top), - SkIntToScalar(rect.right), SkIntToScalar(rect.bottom) }; - return sk_rect; -} - -SkShader* CreateGradientShader(int start_point, - int end_point, - SkColor start_color, - SkColor end_color) { - SkColor grad_colors[2] = { start_color, end_color}; - SkPoint grad_points[2]; - grad_points[0].set(SkIntToScalar(0), SkIntToScalar(start_point)); - grad_points[1].set(SkIntToScalar(0), SkIntToScalar(end_point)); - - return SkGradientShader::CreateLinear( - grad_points, grad_colors, NULL, 2, SkShader::kRepeat_TileMode); -} - - -SkColor COLORREFToSkColor(COLORREF color) { -#ifndef _MSC_VER - return SkColorSetRGB(GetRValue(color), GetGValue(color), GetBValue(color)); -#else - // ARGB = 0xFF000000 | ((0BGR -> RGB0) >> 8) - return 0xFF000000u | (_byteswap_ulong(color) >> 8); -#endif -} - -COLORREF SkColorToCOLORREF(SkColor color) { - // Currently, Alpha is always 255 or the color is 0 so there is no need to - // demultiply the channels. If this DCHECK() is ever hit, the full - // (SkColorGetX(color) * 255 / a) will have to be added in the conversion. - DCHECK((0xFF == SkColorGetA(color)) || (0 == color)); -#ifndef _MSC_VER - return RGB(SkColorGetR(color), SkColorGetG(color), SkColorGetB(color)); -#else - // 0BGR = ((ARGB -> BGRA) >> 8) - return (_byteswap_ulong(color) >> 8); -#endif -} - -} // namespace gfx - diff --git a/base/gfx/skia_utils.h b/base/gfx/skia_utils.h deleted file mode 100644 index 8509072..0000000 --- a/base/gfx/skia_utils.h +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef BASE_GFX_SKIA_UTILS_H__ -#define BASE_GFX_SKIA_UTILS_H__ - -#include "SkColor.h" -#include "SkShader.h" - -struct SkIRect; -struct SkPoint; -struct SkRect; -typedef unsigned long DWORD; -typedef DWORD COLORREF; -typedef struct tagPOINT POINT; -typedef struct tagRECT RECT; - -namespace gfx { - -// Converts a Skia point to a Windows POINT. -POINT SkPointToPOINT(const SkPoint& point); - -// Converts a Windows RECT to a Skia rect. -SkRect RECTToSkRect(const RECT& rect); - -// Converts a Windows RECT to a Skia rect. -// Both use same in-memory format. Verified by COMPILE_ASSERT() in -// skia_utils.cc. -inline const SkIRect& RECTToSkIRect(const RECT& rect) { - return reinterpret_cast<const SkIRect&>(rect); -} - -// Converts a Skia rect to a Windows RECT. -// Both use same in-memory format. Verified by COMPILE_ASSERT() in -// skia_utils.cc. -inline const RECT& SkIRectToRECT(const SkIRect& rect) { - return reinterpret_cast<const RECT&>(rect); -} - -// Creates a vertical gradient shader. The caller owns the shader. -SkShader* CreateGradientShader(int start_point, - int end_point, - SkColor start_color, - SkColor end_color); - -// Converts COLORREFs (0BGR) to the ARGB layout Skia expects. -SkColor COLORREFToSkColor(COLORREF color); - -// Converts ARGB to COLORREFs (0BGR). -COLORREF SkColorToCOLORREF(SkColor color); - -} // namespace gfx - -#endif - |