| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef NGUnits_h | 5 #ifndef NGUnits_h |
| 6 #define NGUnits_h | 6 #define NGUnits_h |
| 7 | 7 |
| 8 #include "core/CoreExport.h" | 8 #include "core/CoreExport.h" |
| 9 #include "core/layout/ng/ng_writing_mode.h" | 9 #include "core/layout/ng/ng_writing_mode.h" |
| 10 #include "platform/LayoutUnit.h" | 10 #include "platform/LayoutUnit.h" |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 | 37 |
| 38 LayoutUnit inline_size; | 38 LayoutUnit inline_size; |
| 39 LayoutUnit block_size; | 39 LayoutUnit block_size; |
| 40 | 40 |
| 41 NGPhysicalSize ConvertToPhysical(NGWritingMode mode) const; | 41 NGPhysicalSize ConvertToPhysical(NGWritingMode mode) const; |
| 42 bool operator==(const NGLogicalSize& other) const; | 42 bool operator==(const NGLogicalSize& other) const; |
| 43 | 43 |
| 44 bool IsEmpty() const { | 44 bool IsEmpty() const { |
| 45 return inline_size == LayoutUnit() || block_size == LayoutUnit(); | 45 return inline_size == LayoutUnit() || block_size == LayoutUnit(); |
| 46 } | 46 } |
| 47 | |
| 48 private: | |
| 49 friend class NGBlockLayoutAlgorithmTest; | |
| 50 // Used in tests. | |
| 51 NGLogicalSize(int inline_size, int block_size) | |
| 52 : inline_size(LayoutUnit(inline_size)), | |
| 53 block_size(LayoutUnit(block_size)) {} | |
| 54 }; | 47 }; |
| 55 | 48 |
| 56 inline std::ostream& operator<<(std::ostream& stream, | 49 inline std::ostream& operator<<(std::ostream& stream, |
| 57 const NGLogicalSize& value) { | 50 const NGLogicalSize& value) { |
| 58 return stream << value.inline_size << "x" << value.block_size; | 51 return stream << value.inline_size << "x" << value.block_size; |
| 59 } | 52 } |
| 60 | 53 |
| 61 // NGLogicalOffset is the position of a rect (typically a fragment) relative to | 54 // NGLogicalOffset is the position of a rect (typically a fragment) relative to |
| 62 // its parent rect in the logical coordinate system. | 55 // its parent rect in the logical coordinate system. |
| 63 struct NGLogicalOffset { | 56 struct NGLogicalOffset { |
| (...skipping 25 matching lines...) Expand all Loading... |
| 89 NGLogicalOffset operator-(const NGLogicalOffset& other) const; | 82 NGLogicalOffset operator-(const NGLogicalOffset& other) const; |
| 90 NGLogicalOffset& operator-=(const NGLogicalOffset& other); | 83 NGLogicalOffset& operator-=(const NGLogicalOffset& other); |
| 91 | 84 |
| 92 bool operator>(const NGLogicalOffset& other) const; | 85 bool operator>(const NGLogicalOffset& other) const; |
| 93 bool operator>=(const NGLogicalOffset& other) const; | 86 bool operator>=(const NGLogicalOffset& other) const; |
| 94 | 87 |
| 95 bool operator<(const NGLogicalOffset& other) const; | 88 bool operator<(const NGLogicalOffset& other) const; |
| 96 bool operator<=(const NGLogicalOffset& other) const; | 89 bool operator<=(const NGLogicalOffset& other) const; |
| 97 | 90 |
| 98 String ToString() const; | 91 String ToString() const; |
| 99 | |
| 100 private: | |
| 101 friend class NGBlockLayoutAlgorithmTest; | |
| 102 // Used in tests. | |
| 103 NGLogicalOffset(int inline_offset, int block_offset) | |
| 104 : inline_offset(LayoutUnit(inline_offset)), | |
| 105 block_offset(LayoutUnit(block_offset)) {} | |
| 106 }; | 92 }; |
| 107 | 93 |
| 108 CORE_EXPORT inline std::ostream& operator<<(std::ostream& os, | 94 CORE_EXPORT inline std::ostream& operator<<(std::ostream& os, |
| 109 const NGLogicalOffset& value) { | 95 const NGLogicalOffset& value) { |
| 110 return os << value.ToString(); | 96 return os << value.ToString(); |
| 111 } | 97 } |
| 112 | 98 |
| 113 // NGPhysicalOffset is the position of a rect (typically a fragment) relative to | 99 // NGPhysicalOffset is the position of a rect (typically a fragment) relative to |
| 114 // its parent rect in the physical coordinate system. | 100 // its parent rect in the physical coordinate system. |
| 115 struct NGPhysicalOffset { | 101 struct NGPhysicalOffset { |
| 116 NGPhysicalOffset() {} | 102 NGPhysicalOffset() {} |
| 117 NGPhysicalOffset(LayoutUnit left, LayoutUnit top) : left(left), top(top) {} | 103 NGPhysicalOffset(LayoutUnit left, LayoutUnit top) : left(left), top(top) {} |
| 118 | 104 |
| 119 LayoutUnit left; | 105 LayoutUnit left; |
| 120 LayoutUnit top; | 106 LayoutUnit top; |
| 121 | 107 |
| 122 NGPhysicalOffset operator+(const NGPhysicalOffset& other) const; | 108 NGPhysicalOffset operator+(const NGPhysicalOffset& other) const; |
| 123 NGPhysicalOffset& operator+=(const NGPhysicalOffset& other); | 109 NGPhysicalOffset& operator+=(const NGPhysicalOffset& other); |
| 124 | 110 |
| 125 NGPhysicalOffset operator-(const NGPhysicalOffset& other) const; | 111 NGPhysicalOffset operator-(const NGPhysicalOffset& other) const; |
| 126 NGPhysicalOffset& operator-=(const NGPhysicalOffset& other); | 112 NGPhysicalOffset& operator-=(const NGPhysicalOffset& other); |
| 127 | 113 |
| 128 String ToString() const { | 114 String ToString() const { |
| 129 return String::format("%dx%d", left.toInt(), top.toInt()); | 115 return String::format("%dx%d", left.toInt(), top.toInt()); |
| 130 } | 116 } |
| 131 }; | 117 }; |
| 132 | 118 |
| 133 struct NGPhysicalSize { | 119 struct CORE_EXPORT NGPhysicalSize { |
| 134 NGPhysicalSize() {} | 120 NGPhysicalSize() {} |
| 135 NGPhysicalSize(LayoutUnit width, LayoutUnit height) | 121 NGPhysicalSize(LayoutUnit width, LayoutUnit height) |
| 136 : width(width), height(height) {} | 122 : width(width), height(height) {} |
| 137 | 123 |
| 138 LayoutUnit width; | 124 LayoutUnit width; |
| 139 LayoutUnit height; | 125 LayoutUnit height; |
| 140 | 126 |
| 141 NGLogicalSize ConvertToLogical(NGWritingMode mode) const; | 127 NGLogicalSize ConvertToLogical(NGWritingMode mode) const; |
| 142 | 128 |
| 143 bool operator==(const NGPhysicalSize& other) const; | 129 bool operator==(const NGPhysicalSize& other) const; |
| (...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 415 if (position_matches) | 401 if (position_matches) |
| 416 return position; | 402 return position; |
| 417 else | 403 else |
| 418 return container_size - position - length - margin_start - margin_end; | 404 return container_size - position - length - margin_start - margin_end; |
| 419 } | 405 } |
| 420 }; | 406 }; |
| 421 | 407 |
| 422 } // namespace blink | 408 } // namespace blink |
| 423 | 409 |
| 424 #endif // NGUnits_h | 410 #endif // NGUnits_h |
| OLD | NEW |