This commit is contained in:
Elena.Subbotina
2023-10-04 20:29:20 +03:00
parent 83f280d739
commit aa80101cf6
7 changed files with 192 additions and 157 deletions

View File

@ -1820,7 +1820,7 @@ namespace SimpleTypes
{
relfromvBottomMargin = 0,
relfromvInsideMargin = 1,
relfromvLine = 2,
relfromvLine = 2,
relfromvMargin = 3,
relfromvOutsideMargin = 4,
relfromvPage = 5,

View File

@ -3218,7 +3218,7 @@ void DocxConverter::convert(OOX::Logic::CDrawing *oox_drawing)
}
odt_context->end_drawing_context();
}
void DocxConverter::convert(OOX::Drawing::CAnchor *oox_anchor)
void DocxConverter::convert(OOX::Drawing::CAnchor* oox_anchor)
{
if (oox_anchor == NULL)return;
@ -3230,18 +3230,18 @@ void DocxConverter::convert(OOX::Drawing::CAnchor *oox_anchor)
width = oox_anchor->m_oExtent->m_oCx.ToPoints();
height = oox_anchor->m_oExtent->m_oCy.ToPoints();
}
if (oox_anchor->m_oDistL.IsInit())odt_context->drawing_context()->set_margin_left (oox_anchor->m_oDistL->ToPoints());
if (oox_anchor->m_oDistT.IsInit())odt_context->drawing_context()->set_margin_top (oox_anchor->m_oDistT->ToPoints());
if (oox_anchor->m_oDistR.IsInit())odt_context->drawing_context()->set_margin_right (oox_anchor->m_oDistR->ToPoints());
if (oox_anchor->m_oDistB.IsInit())odt_context->drawing_context()->set_margin_bottom (oox_anchor->m_oDistB->ToPoints());
if (oox_anchor->m_oDistL.IsInit())odt_context->drawing_context()->set_margin_left(oox_anchor->m_oDistL->ToPoints());
if (oox_anchor->m_oDistT.IsInit())odt_context->drawing_context()->set_margin_top(oox_anchor->m_oDistT->ToPoints());
if (oox_anchor->m_oDistR.IsInit())odt_context->drawing_context()->set_margin_right(oox_anchor->m_oDistR->ToPoints());
if (oox_anchor->m_oDistB.IsInit())odt_context->drawing_context()->set_margin_bottom(oox_anchor->m_oDistB->ToPoints());
odt_context->drawing_context()->set_drawings_rect(x, y, width, height);
_CP_OPT(int) anchor_type_x, anchor_type_y;
bool bBackground = oox_anchor->m_oBehindDoc.IsInit() ? oox_anchor->m_oBehindDoc->ToBool(): false;
bool bBackground = oox_anchor->m_oBehindDoc.IsInit() ? oox_anchor->m_oBehindDoc->ToBool() : false;
bool bThrough = oox_anchor->m_oAllowOverlap.IsInit() ? oox_anchor->m_oAllowOverlap->ToBool(): false;
bool bThrough = oox_anchor->m_oAllowOverlap.IsInit() ? oox_anchor->m_oAllowOverlap->ToBool() : false;
if (oox_anchor->m_oPositionV.IsInit() && oox_anchor->m_oPositionV->m_oRelativeFrom.IsInit())
{
@ -3249,16 +3249,25 @@ void DocxConverter::convert(OOX::Drawing::CAnchor *oox_anchor)
odt_context->drawing_context()->set_vertical_rel(vert_rel);
if ( oox_anchor->m_oPositionV->m_oAlign.IsInit())
if (oox_anchor->m_oPositionV->m_oAlign.IsInit())
odt_context->drawing_context()->set_vertical_pos(oox_anchor->m_oPositionV->m_oAlign->GetValue());
else if (oox_anchor->m_oPositionV->m_oPosOffset.IsInit())
{
switch(vert_rel)
// relfromvBottomMargin = 0,
// relfromvInsideMargin = 1,
// relfromvLine = 2,
// relfromvMargin = 3,
// relfromvOutsideMargin = 4,
// relfromvPage = 5,
// relfromvParagraph = 6,
// relfromvTopMargin = 7
switch (vert_rel)
{
case 3:
case 6: anchor_type_y = anchor_type::Paragraph; break;
case 5: anchor_type_y = anchor_type::Page; break;
case 2: anchor_type_x = anchor_type::Char; break;
case 5: anchor_type_y = anchor_type::Page; break;
case 3:
case 6: anchor_type_y = anchor_type::Paragraph; break;
}
odt_context->drawing_context()->set_vertical_pos(oox_anchor->m_oPositionV->m_oPosOffset->ToPoints());
}
@ -3269,26 +3278,41 @@ void DocxConverter::convert(OOX::Drawing::CAnchor *oox_anchor)
{
int horiz_rel = oox_anchor->m_oPositionH->m_oRelativeFrom->GetValue();
odt_context->drawing_context()->set_horizontal_rel(horiz_rel);
if (oox_anchor->m_oPositionH->m_oAlign.IsInit())
odt_context->drawing_context()->set_horizontal_pos(oox_anchor->m_oPositionH->m_oAlign->GetValue());
else if (oox_anchor->m_oPositionH->m_oPosOffset.IsInit())
{
odt_context->drawing_context()->set_horizontal_pos(oox_anchor->m_oPositionH->m_oPosOffset->ToPoints());
switch(horiz_rel)
// relfromhCharacter = 0,
// relfromhColumn = 1,
// relfromhInsideMargin = 2,
// relfromhLeftMargin = 3,
// relfromhMargin = 4,
// relfromhOutsideMargin = 5,
// relfromhPage = 6,
// relfromhRightMargin = 7
switch (horiz_rel)
{
case 1:
case 2: anchor_type_x = anchor_type::Paragraph; break;
case 6: anchor_type_x = anchor_type::Page; break;
case 0: anchor_type_x = anchor_type::Char; break;
case 1: anchor_type_x = anchor_type::Frame; break;
case 4:
case 2: anchor_type_x = anchor_type::Paragraph; break;
case 6: anchor_type_x = anchor_type::Page; break;
}
}
else
odt_context->drawing_context()->set_horizontal_pos(SimpleTypes::alignhLeft);
}
if ( (anchor_type_x && anchor_type_y) && (*anchor_type_x == *anchor_type_y))
odt_context->drawing_context()->set_anchor(*anchor_type_x);
if (anchor_type_x && anchor_type_y)
{
if (*anchor_type_x == *anchor_type_y)
odt_context->drawing_context()->set_anchor(*anchor_type_x);
else if (*anchor_type_x == anchor_type::Frame && *anchor_type_y == anchor_type::Paragraph)
odt_context->drawing_context()->set_anchor(anchor_type::Char);
}
bool wrap_set = false;
if (oox_anchor->m_oWrapSquare.IsInit())

View File

@ -549,34 +549,40 @@ void odf_drawing_context::set_anchor_drawing()
if (impl_->current_level_.empty()) return;
if (!impl_->current_level_.back().bDrawElement) return;
if (!impl_->current_level_.back().graphic_properties) return;
impl_->current_level_.back().graphic_properties->common_vertical_pos_attlist_.style_vertical_pos_ = impl_->anchor_settings_.style_vertical_pos_;
impl_->current_level_.back().graphic_properties->common_horizontal_pos_attlist_.style_horizontal_pos_ = impl_->anchor_settings_.style_horizontal_pos_;
impl_->current_level_.back().graphic_properties->common_vertical_rel_attlist_.style_vertical_rel_ = impl_->anchor_settings_.style_vertical_rel_;
impl_->current_level_.back().graphic_properties->common_horizontal_rel_attlist_.style_horizontal_rel_ = impl_->anchor_settings_.style_horizontal_rel_;
impl_->current_level_.back().graphic_properties->common_horizontal_margin_attlist_.fo_margin_left_ = impl_->anchor_settings_.fo_margin_left_;
impl_->current_level_.back().graphic_properties->common_vertical_margin_attlist_.fo_margin_top_ = impl_->anchor_settings_.fo_margin_top_;
impl_->current_level_.back().graphic_properties->common_horizontal_margin_attlist_.fo_margin_right_ = impl_->anchor_settings_.fo_margin_right_;
impl_->current_level_.back().graphic_properties->common_vertical_margin_attlist_.fo_margin_bottom_ = impl_->anchor_settings_.fo_margin_bottom_;
impl_->current_level_.back().graphic_properties->style_run_through_ = impl_->anchor_settings_.run_through_;
set_anchor_drawing(impl_->current_level_.back().graphic_properties);
}
void odf_drawing_context::set_anchor_drawing(graphic_format_properties *graphic_properties)
{
int index = impl_->current_drawing_state_.index_base < 0 ? 0 : impl_->current_drawing_state_.index_base;
draw_base* draw = impl_->current_drawing_state_.elements_.empty() ? NULL : dynamic_cast<draw_base*>(impl_->current_drawing_state_.elements_[index].elm.get());
if (draw && !impl_->current_drawing_state_.in_group_)
{
draw->common_draw_attlists_.shape_with_text_and_styles_.common_text_anchor_attlist_.type_ = impl_->anchor_settings_.anchor_type_;
}
else // libra падает
else if (graphic_properties) // libra падает
{
impl_->current_level_.back().graphic_properties->style_wrap_ = impl_->anchor_settings_.style_wrap_;
impl_->current_level_.back().graphic_properties->style_wrap_contour_ = impl_->anchor_settings_.style_wrap_contour_;
impl_->current_level_.back().graphic_properties->style_wrap_contour_mode_ = impl_->anchor_settings_.style_wrap_contour_mode_;
impl_->current_level_.back().graphic_properties->style_number_wrapped_paragraphs_ = impl_->anchor_settings_.style_number_wrapped_paragraphs_;
graphic_properties->style_wrap_ = impl_->anchor_settings_.style_wrap_;
graphic_properties->style_wrap_contour_ = impl_->anchor_settings_.style_wrap_contour_;
graphic_properties->style_wrap_contour_mode_ = impl_->anchor_settings_.style_wrap_contour_mode_;
graphic_properties->style_number_wrapped_paragraphs_ = impl_->anchor_settings_.style_number_wrapped_paragraphs_;
}
if (!graphic_properties) return;
graphic_properties->common_vertical_pos_attlist_.style_vertical_pos_ = impl_->anchor_settings_.style_vertical_pos_;
graphic_properties->common_horizontal_pos_attlist_.style_horizontal_pos_ = impl_->anchor_settings_.style_horizontal_pos_;
graphic_properties->common_vertical_rel_attlist_.style_vertical_rel_ = impl_->anchor_settings_.style_vertical_rel_;
graphic_properties->common_horizontal_rel_attlist_.style_horizontal_rel_ = impl_->anchor_settings_.style_horizontal_rel_;
graphic_properties->common_horizontal_margin_attlist_.fo_margin_left_ = impl_->anchor_settings_.fo_margin_left_;
graphic_properties->common_vertical_margin_attlist_.fo_margin_top_ = impl_->anchor_settings_.fo_margin_top_;
graphic_properties->common_horizontal_margin_attlist_.fo_margin_right_ = impl_->anchor_settings_.fo_margin_right_;
graphic_properties->common_vertical_margin_attlist_.fo_margin_bottom_ = impl_->anchor_settings_.fo_margin_bottom_;
graphic_properties->style_run_through_ = impl_->anchor_settings_.run_through_;
}
void odf_drawing_context::end_drawing()
{
@ -911,7 +917,6 @@ bool odf_drawing_context::change_text_box_2_wordart()
}
}
//----------------------------------------------
odf_element_state state = impl_->current_drawing_state_.elements_[sz_state - 2];
state.elm = draw_elm;
@ -929,6 +934,10 @@ bool odf_drawing_context::change_text_box_2_wordart()
impl_->current_drawing_state_.oox_shape_preset_ = 2031;//plain text
if (sz == 2) impl_->root_element_ = draw_elm;
set_anchor_drawing(impl_->current_graphic_properties);
return true;
}
draw_rect* s = dynamic_cast<draw_rect*>(impl_->current_drawing_state_.elements_.back().elm.get());
@ -974,9 +983,10 @@ bool odf_drawing_context::change_text_box_2_wordart()
impl_->current_drawing_state_.oox_shape_preset_ = 2031;//plain text
if (sz == 1) impl_->root_element_ = draw_elm;
set_anchor_drawing(impl_->current_graphic_properties);
return true;
}
return false;
}
@ -1957,7 +1967,7 @@ void odf_drawing_context::set_horizontal_rel(int from)
switch(from)
{
case 0: type = horizontal_rel::Char; break; // relfromhCharacter = 0,
case 1: type = horizontal_rel::Paragraph; break; // relfromhColumn = 1,
case 1: type = horizontal_rel::Char; break; // relfromhColumn = 1,
case 2: type = horizontal_rel::Paragraph; break; // relfromhInsideMargin = 2, ???
case 3: type = horizontal_rel::PageStartMargin; break; // relfromhLeftMargin = 3,
case 4: type = horizontal_rel::PageContent; break; // relfromhMargin = 4, ??? //ParagraphStartMargin

View File

@ -116,6 +116,7 @@ public:
void end_drawing_background(odf_types::common_draw_fill_attlist & common_draw_attlist);
void set_anchor_drawing();
void set_anchor_drawing(graphic_format_properties* graphic_properties);
size_t get_group_level();
void start_group();

View File

@ -67,6 +67,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaInitialCreator;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_initial_creator);
@ -78,6 +82,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaKeyword;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_keyword);
@ -89,6 +97,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaCreationDate;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_creation_date);
@ -100,6 +112,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaGenerator;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_generator);
@ -111,6 +127,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaTemplate;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_template);
@ -122,6 +142,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeOfficeMetaEditingCycles;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(meta_editing_cycles);
@ -134,6 +158,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcCreator;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_creator);
@ -145,6 +173,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcDescription;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_description);
@ -156,6 +188,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcLanguage;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_language);
@ -167,6 +203,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcDate;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_date);
@ -178,6 +218,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcTitle;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_title);
@ -189,6 +233,10 @@ public:
static const wchar_t * name;
static const ElementType type = typeDcSubject;
virtual ElementType get_type() const
{
return type;
}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(dc_subject);

View File

@ -95,14 +95,12 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeOfficeChangeInfo;
static const ElementType type = typeOfficeChangeInfo;
virtual void create_child_element(const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element( const office_element_ptr & child_element);
virtual void serialize(std::wostream & _Wostream);
private:
office_element_ptr dc_date_;
office_element_ptr dc_creator_;

View File

@ -130,14 +130,12 @@ public:
virtual void serialize(std::wostream & _Wostream);
_CP_OPT(std::wstring) text_style_name_;
_CP_OPT(odf_types::Bool) text_continue_numbering_;
_CP_OPT(std::wstring) text_style_name_;
_CP_OPT(odf_types::Bool) text_continue_numbering_;
office_element_ptr text_list_header_;
office_element_ptr_array text_list_items_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_list);
//---------------------------------------------------------------------------------------------------
@ -147,15 +145,13 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextSoftPageBreak;
static const ElementType type = typeTextSoftPageBreak;
virtual void create_child_element(const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element( const office_element_ptr & child_element){}
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(text_soft_page_break);
class text_section_attr
@ -178,7 +174,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextSection;
static const ElementType type = typeTextSection;
virtual void create_child_element(const std::wstring & Ns, const std::wstring & Name);
@ -190,9 +186,7 @@ public:
office_element_ptr text_section_source_;
office_element_ptr_array content_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_section);
class text_section_source_attr
@ -215,7 +209,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextSectionSource;
static const ElementType type = typeTextSectionSource;
virtual void create_child_element(const std::wstring & Ns, const std::wstring & Name);
@ -234,7 +228,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableOfContent;
static const ElementType type = typeTextTableOfContent;
@ -266,8 +260,7 @@ public:
virtual void serialize(std::wostream & _Wostream);
office_element_ptr_array index_content_main_;
office_element_ptr_array index_content_main_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_index_body);
@ -288,8 +281,7 @@ public:
virtual void serialize(std::wostream & _Wostream);
text_section_attr text_section_attr_;
office_element_ptr_array index_content_main_;
office_element_ptr_array index_content_main_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_index_title);
@ -300,9 +292,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextUnknownChange;
static const ElementType type = typeTextUnknownChange;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -321,11 +311,10 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextInsertion;
static const ElementType type = typeTextInsertion;
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(text_insertion);
//---------------------------------------------------------------------------------------------------
@ -335,11 +324,10 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextDeletion;
static const ElementType type = typeTextDeletion;
virtual void serialize(std::wostream & _Wostream);
};
CP_REGISTER_OFFICE_ELEMENT2(text_deletion);
//---------------------------------------------------------------------------------------------------
@ -349,12 +337,11 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextFormatChange;
static const ElementType type = typeTextFormatChange;
virtual void serialize(std::wostream & _Wostream);
_CP_OPT(std::wstring) text_style_name_; //не по снецификации ... но КАК сохранить то что было изменено в формате?????
};
CP_REGISTER_OFFICE_ELEMENT2(text_format_change);
@ -365,8 +352,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTrackedChanges;
static const ElementType type = typeTextTrackedChanges;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -385,8 +371,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextChangedRegion;
static const ElementType type = typeTextChangedRegion;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -403,19 +388,16 @@ class text_add_change : public office_element_impl<text_add_change>
{
public:
static const wchar_t * ns;
static const wchar_t * name;
static const wchar_t * name;
static const ElementType type = typeTextChange;
static const ElementType type = typeTextChange;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element) {}
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element) {}
virtual void serialize(std::wostream & _Wostream) = 0;
_CP_OPT(std::wstring) text_change_id_;
_CP_OPT(std::wstring) text_change_id_;
};
//---------------------------------------------------------------------------------------------------
@ -425,7 +407,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextChange;
static const ElementType type = typeTextChange;
virtual void serialize(std::wostream & _Wostream);
};
@ -438,7 +420,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextChangeStart;
static const ElementType type = typeTextChangeStart;
virtual void serialize(std::wostream & _Wostream);
};
@ -451,7 +433,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextChangeEnd;
static const ElementType type = typeTextChangeEnd;
virtual void serialize(std::wostream & _Wostream);
};
@ -465,9 +447,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableIndex;
static const ElementType type = typeTextTableIndex;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -489,9 +469,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIllustrationIndex;
static const ElementType type = typeTextIllustrationIndex;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -513,9 +491,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextAlphabeticalIndex;
static const ElementType type = typeTextAlphabeticalIndex;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -523,8 +499,8 @@ public:
virtual void serialize(std::wostream & _Wostream);
odf_types::section_attlists section_attr_;
office_element_ptr alphabetical_index_source_;
office_element_ptr index_body_;
office_element_ptr alphabetical_index_source_;
office_element_ptr index_body_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_alphabetical_index);
@ -537,9 +513,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextUserIndex;
static const ElementType type = typeTextUserIndex;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -547,8 +521,8 @@ public:
virtual void serialize(std::wostream & _Wostream);
odf_types::section_attlists section_attr_;
office_element_ptr user_index_source_;
office_element_ptr index_body_;
office_element_ptr user_index_source_;
office_element_ptr index_body_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_user_index);
@ -561,9 +535,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextBibliography;
static const ElementType type = typeTextBibliography;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -571,8 +543,8 @@ public:
virtual void serialize(std::wostream & _Wostream);
odf_types::section_attlists section_attr_;
office_element_ptr bibliography_source_;
office_element_ptr index_body_;
office_element_ptr bibliography_source_;
office_element_ptr index_body_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_bibliography);
//------------------------------------------------------------------------------------------------------------
@ -603,8 +575,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextCommonEntryTemplate;
static const ElementType type = typeTextCommonEntryTemplate;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -624,8 +595,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextBibliographyEntryTemplate;
static const ElementType type = typeTextBibliographyEntryTemplate;
virtual void serialize(std::wostream & _Wostream);
@ -639,8 +609,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexTitleTemplate;
static const ElementType type = typeTextIndexTitleTemplate;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -660,8 +629,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextSequenceDecl;
static const ElementType type = typeTextSequenceDecl;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -682,8 +650,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextSequenceDecls;
static const ElementType type = typeTextSequenceDecls;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -702,8 +669,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableOfContentSource;
static const ElementType type = typeTextTableOfContentSource;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -732,8 +698,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableOfContentEntryTemplate;
static const ElementType type = typeTextTableOfContentEntryTemplate;
};
CP_REGISTER_OFFICE_ELEMENT2(text_table_of_content_entry_template);
//---------------------------------------------------------------------------------------------------
@ -745,7 +710,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryBibliography;
static const ElementType type = typeTextIndexEntryBibliography;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
@ -753,8 +718,8 @@ public:
virtual void serialize(std::wostream & _Wostream);
_CP_OPT(std::wstring) style_name_;
_CP_OPT(std::wstring) bibliography_data_field_;
_CP_OPT(std::wstring) style_name_;
_CP_OPT(std::wstring) bibliography_data_field_;
};
CP_REGISTER_OFFICE_ELEMENT2(text_index_entry_bibliography);
//---------------------------------------------------------------------------------------------------
@ -766,8 +731,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryChapter;
static const ElementType type = typeTextIndexEntryChapter;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -784,8 +748,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryLinkEnd;
static const ElementType type = typeTextIndexEntryLinkEnd;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -802,8 +765,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryLinkStart;
static const ElementType type = typeTextIndexEntryLinkStart;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -820,8 +782,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryPageNumber;
static const ElementType type = typeTextIndexEntryPageNumber;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -838,8 +799,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntrySpan;
static const ElementType type = typeTextIndexEntrySpan;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
@ -856,11 +816,10 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryTabStop;
static const ElementType type = typeTextIndexEntryTabStop;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
virtual void serialize(std::wostream & _Wostream);
};
@ -874,11 +833,10 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIndexEntryText;
static const ElementType type = typeTextIndexEntryText;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name){}
virtual void add_child_element ( const office_element_ptr & child_element){}
virtual void serialize(std::wostream & _Wostream);
};
@ -892,16 +850,15 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIllustrationIndexSource;
static const ElementType type = typeTextIllustrationIndexSource;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
virtual void serialize(std::wostream & _Wostream);
_CP_OPT(std::wstring) caption_sequence_name_;
_CP_OPT(std::wstring) caption_sequence_format_;
_CP_OPT(std::wstring) caption_sequence_name_;
_CP_OPT(std::wstring) caption_sequence_format_;
_CP_OPT(odf_types::Bool) relative_tab_stop_position_;
_CP_OPT(odf_types::Bool) use_caption_;
@ -920,8 +877,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextIllustrationIndexEntryTemplate;
static const ElementType type = typeTextIllustrationIndexEntryTemplate;
};
CP_REGISTER_OFFICE_ELEMENT2(text_illustration_index_entry_template);
//---------------------------------------------------------------------------------------------------
@ -933,8 +889,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextUserIndexSource;
static const ElementType type = typeTextUserIndexSource;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
virtual void add_child_element ( const office_element_ptr & child_element);
@ -968,8 +923,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextUserIndexEntryTemplate;
static const ElementType type = typeTextUserIndexEntryTemplate;
};
CP_REGISTER_OFFICE_ELEMENT2(text_user_index_entry_template);
//---------------------------------------------------------------------------------------------------
@ -1020,7 +974,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextAlphabeticalIndexEntryTemplate;
static const ElementType type = typeTextAlphabeticalIndexEntryTemplate;
};
CP_REGISTER_OFFICE_ELEMENT2(text_alphabetical_index_entry_template);
@ -1033,7 +987,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableIndexSource;
static const ElementType type = typeTextTableIndexSource;
virtual void create_child_element (const std::wstring & Ns, const std::wstring & Name);
@ -1061,7 +1015,7 @@ public:
static const wchar_t * ns;
static const wchar_t * name;
static const ElementType type = typeTextTableIndexEntryTemplate;
static const ElementType type = typeTextTableIndexEntryTemplate;
};
CP_REGISTER_OFFICE_ELEMENT2(text_table_index_entry_template);