2019-06-16 13:44:09 +02:00
|
|
|
#pragma once
|
|
|
|
|
2019-07-18 10:15:00 +02:00
|
|
|
#include <LibDraw/Size.h>
|
2019-09-25 12:00:50 +03:00
|
|
|
#include <LibHTML/CSS/LengthBox.h>
|
2019-06-16 13:44:09 +02:00
|
|
|
|
2019-10-04 15:50:50 +02:00
|
|
|
class BoxModelMetrics {
|
2019-06-16 13:44:09 +02:00
|
|
|
public:
|
2019-10-04 15:50:50 +02:00
|
|
|
BoxModelMetrics();
|
|
|
|
~BoxModelMetrics();
|
2019-06-16 13:44:09 +02:00
|
|
|
|
2019-07-01 17:17:32 +02:00
|
|
|
LengthBox& margin() { return m_margin; }
|
|
|
|
LengthBox& padding() { return m_padding; }
|
|
|
|
LengthBox& border() { return m_border; }
|
2019-06-16 13:44:09 +02:00
|
|
|
|
2019-07-01 17:17:32 +02:00
|
|
|
const LengthBox& margin() const { return m_margin; }
|
|
|
|
const LengthBox& padding() const { return m_padding; }
|
|
|
|
const LengthBox& border() const { return m_border; }
|
2019-06-16 13:44:09 +02:00
|
|
|
|
2019-09-25 12:00:50 +03:00
|
|
|
struct PixelBox {
|
2019-11-18 16:25:38 +01:00
|
|
|
float top;
|
|
|
|
float right;
|
|
|
|
float bottom;
|
|
|
|
float left;
|
2019-09-25 12:00:50 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
PixelBox full_margin() const;
|
|
|
|
|
2019-06-16 13:44:09 +02:00
|
|
|
private:
|
2019-07-01 17:17:32 +02:00
|
|
|
LengthBox m_margin;
|
|
|
|
LengthBox m_padding;
|
|
|
|
LengthBox m_border;
|
2019-06-16 13:44:09 +02:00
|
|
|
};
|