Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1500)

Unified Diff: Source/platform/LengthOrNumber.h

Issue 55783002: Introduce BorderImageLength and BorderImageLengthBox (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/platform/LengthOrNumber.h
diff --git a/Source/platform/LengthSize.h b/Source/platform/LengthOrNumber.h
similarity index 50%
copy from Source/platform/LengthSize.h
copy to Source/platform/LengthOrNumber.h
index b0a1019183f3d0c2b70abbbe2c87e5cf66b78615..2d9b378aba79279bb3ad447a62263f94958f6a45 100644
--- a/Source/platform/LengthSize.h
+++ b/Source/platform/LengthOrNumber.h
@@ -1,6 +1,5 @@
/*
- Copyright (C) 1999 Lars Knoll (knoll@kde.org)
- Copyright (C) 2006, 2008 Apple Inc. All rights reserved.
+ Copyright (c) 2013, Opera Software ASA. All rights reserved.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
@@ -18,41 +17,53 @@
Boston, MA 02110-1301, USA.
*/
Julien - ping for review 2013/11/01 18:27:11 AFAICT Blink prefers a BSD license for new files u
davve 2013/11/04 12:42:54 OK.
-#ifndef LengthSize_h
-#define LengthSize_h
+#ifndef LengthOrNumber_h
+#define LengthOrNumber_h
#include "platform/Length.h"
namespace WebCore {
-struct LengthSize {
+class PLATFORM_EXPORT LengthOrNumber {
public:
- LengthSize()
+ LengthOrNumber()
{
}
- LengthSize(Length width, Length height)
- : m_width(width)
- , m_height(height)
+ LengthOrNumber(double number)
+ : m_length(number, Relative)
{
}
- bool operator==(const LengthSize& o) const
+ explicit LengthOrNumber(const Length& length)
+ : m_length(length)
{
- return m_width == o.m_width && m_height == o.m_height;
}
- void setWidth(Length width) { m_width = width; }
- Length width() const { return m_width; }
+ bool isNumber() const { return m_length.isRelative(); }
+ bool isLength() const { return !isNumber(); }
- void setHeight(Length height) { m_height = height; }
- Length height() const { return m_height; }
+ const Length& length() const { ASSERT(isLength()); return m_length; }
+ Length& length() { ASSERT(isLength()); return m_length; }
+
+ double number() const { ASSERT(isNumber()); return m_length.value(); }
+
+ Length unifiedLength() const { return m_length; }
Julien - ping for review 2013/11/01 18:27:11 Ideally this shouldn't exist but we have to integr
davve 2013/11/04 12:42:54 Good idea. Renamed to deprecatedUnifiedLength().
+
+ bool operator==(const LengthOrNumber& o) const
+ {
+ return m_length == o.m_length;
+ }
+
+ bool isZero() const
+ {
+ return m_length.isZero();
+ }
private:
- Length m_width;
- Length m_height;
+ Length m_length;
};
} // namespace WebCore
-#endif // LengthSize_h
+#endif // LengthOrNumber_h

Powered by Google App Engine
This is Rietveld 408576698