From bdb12f10e3201c5b47e5552e8e30535f50fe2307 Mon Sep 17 00:00:00 2001 From: Moonchild Date: Thu, 1 Aug 2024 19:55:20 +0200 Subject: [PATCH] Issue #1925 - Move NS_FOR_CSS_CORNERS and enum to gfx/2d/Types.h. --- gfx/2d/Types.h | 29 +++++++++++++++++++++++++++++ gfx/thebes/gfxRect.h | 30 ------------------------------ 2 files changed, 29 insertions(+), 30 deletions(-) diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h index 6fb9d955db..e3ccf2a442 100644 --- a/gfx/2d/Types.h +++ b/gfx/2d/Types.h @@ -406,6 +406,35 @@ static inline Side& operator++(Side& side) { return side; } +namespace css { +enum Corner { + // This order is important! + eCornerTopLeft = 0, + eCornerTopRight = 1, + eCornerBottomRight = 2, + eCornerBottomLeft = 3, + eNumCorners = 4 +}; +} // namespace css + +#define NS_CORNER_TOP_LEFT mozilla::css::eCornerTopLeft +#define NS_CORNER_TOP_RIGHT mozilla::css::eCornerTopRight +#define NS_CORNER_BOTTOM_RIGHT mozilla::css::eCornerBottomRight +#define NS_CORNER_BOTTOM_LEFT mozilla::css::eCornerBottomLeft +#define NS_NUM_CORNERS mozilla::css::eNumCorners + +#define NS_FOR_CSS_CORNERS(var_) \ + for (mozilla::css::Corner var_ = NS_CORNER_TOP_LEFT; \ + var_ <= NS_CORNER_BOTTOM_LEFT; \ + var_++) + +static inline mozilla::css::Corner operator++(mozilla::css::Corner& corner, int) { + MOZ_ASSERT(corner >= NS_CORNER_TOP_LEFT && + corner < NS_NUM_CORNERS, "Out of range corner"); + corner = mozilla::css::Corner(corner + 1); + return corner; +} + } // namespace mozilla #endif /* MOZILLA_GFX_TYPES_H_ */ diff --git a/gfx/thebes/gfxRect.h b/gfx/thebes/gfxRect.h index 8804ff86b2..5e057506c6 100644 --- a/gfx/thebes/gfxRect.h +++ b/gfx/thebes/gfxRect.h @@ -27,36 +27,6 @@ struct gfxMargin : public mozilla::gfx::BaseMargin { : Super(aTop, aRight, aBottom, aLeft) {} }; -namespace mozilla { - namespace css { - enum Corner { - // this order is important! - eCornerTopLeft = 0, - eCornerTopRight = 1, - eCornerBottomRight = 2, - eCornerBottomLeft = 3, - eNumCorners = 4 - }; - } // namespace css -} // namespace mozilla -#define NS_CORNER_TOP_LEFT mozilla::css::eCornerTopLeft -#define NS_CORNER_TOP_RIGHT mozilla::css::eCornerTopRight -#define NS_CORNER_BOTTOM_RIGHT mozilla::css::eCornerBottomRight -#define NS_CORNER_BOTTOM_LEFT mozilla::css::eCornerBottomLeft -#define NS_NUM_CORNERS mozilla::css::eNumCorners - -#define NS_FOR_CSS_CORNERS(var_) \ - for (mozilla::css::Corner var_ = NS_CORNER_TOP_LEFT; \ - var_ <= NS_CORNER_BOTTOM_LEFT; \ - var_++) - -static inline mozilla::css::Corner operator++(mozilla::css::Corner& corner, int) { - NS_PRECONDITION(corner >= NS_CORNER_TOP_LEFT && - corner < NS_NUM_CORNERS, "Out of range corner"); - corner = mozilla::css::Corner(corner + 1); - return corner; -} - struct gfxRect : public mozilla::gfx::BaseRect { typedef mozilla::gfx::BaseRect Super;