Cogs.Core
el_tr.cpp
1#include "html.h"
2#include "el_tr.h"
3
4
5litehtml::el_tr::el_tr(const std::shared_ptr<litehtml::document>& doc) : html_tag(doc)
6{
7
8}
9
10litehtml::el_tr::~el_tr()
11{
12
13}
14
15void litehtml::el_tr::parse_attributes()
16{
17 const tchar_t* str = get_attr(_t("align"));
18 if(str)
19 {
20 m_style.add_property(_t("text-align"), str, 0, false);
21 }
22 str = get_attr(_t("valign"));
23 if(str)
24 {
25 m_style.add_property(_t("vertical-align"), str, 0, false);
26 }
27 str = get_attr(_t("bgcolor"));
28 if (str)
29 {
30 m_style.add_property(_t("background-color"), str, 0, false);
31 }
32 html_tag::parse_attributes();
33}
34
35void litehtml::el_tr::get_inline_boxes( position::vector& boxes )
36{
37 position pos;
38 for(auto& el : m_children)
39 {
40 if(el->get_display() == display_table_cell)
41 {
42 pos.x = el->left() + el->margin_left();
43 pos.y = el->top() - m_padding.top - m_borders.top;
44
45 pos.width = el->right() - pos.x - el->margin_right() - el->margin_left();
46 pos.height = el->height() + m_padding.top + m_padding.bottom + m_borders.top + m_borders.bottom;
47
48 boxes.push_back(pos);
49 }
50 }
51}