- add sources.
[platform/framework/web/crosswalk.git] / src / ui / gfx / rect_conversions.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef UI_GFX_RECT_CONVERSIONS_H_
6 #define UI_GFX_RECT_CONVERSIONS_H_
7
8 #include "ui/gfx/rect.h"
9 #include "ui/gfx/rect_f.h"
10
11 namespace gfx {
12
13 // Returns the smallest Rect that encloses the given RectF.
14 GFX_EXPORT Rect ToEnclosingRect(const RectF& rect);
15
16 // Returns the largest Rect that is enclosed by the given RectF.
17 GFX_EXPORT Rect ToEnclosedRect(const RectF& rect);
18
19 // Returns the Rect after snapping the corners of the RectF to an integer grid.
20 // This should only be used when the RectF you provide is expected to be an
21 // integer rect with floating point error. If it is an arbitrary RectF, then
22 // you should use a different method.
23 GFX_EXPORT Rect ToNearestRect(const RectF& rect);
24
25 // Returns true if the Rect produced after snapping the corners of the RectF
26 // to an integer grid is withing |distance|.
27 GFX_EXPORT bool IsNearestRectWithinDistance(
28     const gfx::RectF& rect, float distance);
29
30 // Returns a Rect obtained by flooring the values of the given RectF.
31 // Please prefer the previous two functions in new code.
32 GFX_EXPORT Rect ToFlooredRectDeprecated(const RectF& rect);
33
34 }  // namespace gfx
35
36 #endif  // UI_GFX_RECT_CONVERSIONS_H_