mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Merge remote-tracking branch 'origin/fix/bug59621' into develop
This commit is contained in:
@ -4680,9 +4680,7 @@ void DocxConverter::convert(OOX::Logic::CTr *oox_table_row)
|
||||
if (styled && oox_table_row->m_pTableRowProperties->m_oTblHeader.IsInit()
|
||||
&& oox_table_row->m_pTableRowProperties->m_oTblHeader->m_oVal.ToBool() )is_header = true;
|
||||
|
||||
if (is_header)odt_context->start_table_header_rows();
|
||||
|
||||
odt_context->start_table_row(styled);
|
||||
odt_context->start_table_row(styled, is_header);
|
||||
|
||||
convert(oox_table_row->m_pTableRowProperties);
|
||||
|
||||
@ -4700,8 +4698,6 @@ void DocxConverter::convert(OOX::Logic::CTr *oox_table_row)
|
||||
}
|
||||
odt_context->end_table_row();
|
||||
|
||||
if (is_header)odt_context->end_table_header_rows();
|
||||
|
||||
if (id_insert_row >= 0)
|
||||
odt_context->end_change(id_insert_row, 1);
|
||||
|
||||
|
||||
@ -1684,11 +1684,23 @@ void odt_conversion_context::end_table_header_rows()
|
||||
{
|
||||
text_context()->end_element();
|
||||
}
|
||||
void odt_conversion_context::start_table_row(bool styled)
|
||||
void odt_conversion_context::start_table_row(bool styled, bool header)
|
||||
{
|
||||
office_element_ptr elm;
|
||||
create_element(L"table", L"table-row", elm, this);
|
||||
|
||||
if (header && !table_row_header_state_)
|
||||
{
|
||||
start_table_header_rows();
|
||||
table_row_header_state_ = true;
|
||||
}
|
||||
|
||||
if (!header && table_row_header_state_)
|
||||
{
|
||||
end_table_header_rows();
|
||||
table_row_header_state_ = false;
|
||||
}
|
||||
|
||||
if (styled)
|
||||
{
|
||||
styles_context()->create_style(L"", odf_types::style_family::TableRow, true, false, -1);
|
||||
|
||||
@ -172,9 +172,7 @@ public:
|
||||
void start_table_columns ();
|
||||
void add_table_column (double width = -1);
|
||||
void end_table_columns ();
|
||||
void start_table_header_rows();
|
||||
void end_table_header_rows ();
|
||||
void start_table_row (bool styled = false);
|
||||
void start_table_row (bool styled = false, bool header = false);
|
||||
void add_default_cell ();
|
||||
void start_table_cell (int col, bool covered, bool styled = false);
|
||||
void end_table_cell ();
|
||||
@ -202,6 +200,9 @@ public:
|
||||
bool empty() {return current_root_elements_.empty();}
|
||||
|
||||
private:
|
||||
void start_table_header_rows();
|
||||
void end_table_header_rows ();
|
||||
|
||||
office_text* root_text_;
|
||||
office_element_ptr root_document_;
|
||||
|
||||
@ -265,6 +266,8 @@ private:
|
||||
std::vector<int> current_types;
|
||||
}text_changes_state_;
|
||||
|
||||
bool table_row_header_state_ = false;
|
||||
|
||||
bool is_hyperlink_;
|
||||
|
||||
struct _drop_cap_state
|
||||
|
||||
Reference in New Issue
Block a user