insets_conversions.cc 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. // Copyright 2020 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. #include "ui/gfx/geometry/insets_conversions.h"
  5. #include "base/numerics/safe_conversions.h"
  6. #include "ui/gfx/geometry/insets.h"
  7. #include "ui/gfx/geometry/insets_f.h"
  8. namespace gfx {
  9. Insets ToFlooredInsets(const InsetsF& insets) {
  10. return Insets::TLBR(
  11. base::ClampFloor(insets.top()), base::ClampFloor(insets.left()),
  12. base::ClampFloor(insets.bottom()), base::ClampFloor(insets.right()));
  13. }
  14. Insets ToCeiledInsets(const InsetsF& insets) {
  15. return Insets::TLBR(
  16. base::ClampCeil(insets.top()), base::ClampCeil(insets.left()),
  17. base::ClampCeil(insets.bottom()), base::ClampCeil(insets.right()));
  18. }
  19. Insets ToRoundedInsets(const InsetsF& insets) {
  20. return Insets::TLBR(
  21. base::ClampRound(insets.top()), base::ClampRound(insets.left()),
  22. base::ClampRound(insets.bottom()), base::ClampRound(insets.right()));
  23. }
  24. } // namespace gfx