mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-02-10 18:05:41 +08:00
fix bug #74142
This commit is contained in:
@ -459,7 +459,7 @@ namespace cpdoccore {
|
||||
const std::wstring& pageMasterName)
|
||||
{
|
||||
create_new_slide(pageName);
|
||||
get_slide_context().start_slide();//pageName, pageStyleName);
|
||||
get_slide_context().start_slide();
|
||||
get_slide_context().get_animation_context().clear();
|
||||
|
||||
current_master_page_name_ = pageMasterName;
|
||||
|
||||
@ -963,23 +963,38 @@ void pptx_slide_context::add_rels( bool isInternal, std::wstring const & rid, st
|
||||
impl_->add_additional_rels(isInternal, rid, ref, type);
|
||||
}
|
||||
|
||||
void pptx_slide_context::set_footer()
|
||||
void pptx_slide_context::set_footer(bool val)
|
||||
{
|
||||
impl_->footer = true;
|
||||
}
|
||||
void pptx_slide_context::set_header()
|
||||
void pptx_slide_context::set_header(bool val)
|
||||
{
|
||||
impl_->header = true;
|
||||
impl_->header = val;
|
||||
}
|
||||
void pptx_slide_context::set_page_number()
|
||||
void pptx_slide_context::set_page_number(bool val)
|
||||
{
|
||||
impl_->date_time = true;
|
||||
impl_->slideNum = val;
|
||||
}
|
||||
void pptx_slide_context::set_date_time()
|
||||
void pptx_slide_context::set_date_time(bool val)
|
||||
{
|
||||
impl_->slideNum = true;
|
||||
impl_->date_time = val;
|
||||
}
|
||||
bool pptx_slide_context::get_date_time()
|
||||
{
|
||||
return impl_->date_time;
|
||||
}
|
||||
bool pptx_slide_context::get_page_number()
|
||||
{
|
||||
return impl_->slideNum;
|
||||
}
|
||||
bool pptx_slide_context::get_header()
|
||||
{
|
||||
return impl_->header;
|
||||
}
|
||||
bool pptx_slide_context::get_footer()
|
||||
{
|
||||
return impl_->footer;
|
||||
}
|
||||
|
||||
void pptx_slide_context::generate_id(const std::wstring& id)
|
||||
{
|
||||
impl_->generate_id(id);
|
||||
|
||||
@ -140,11 +140,15 @@ public:
|
||||
std::wstring const & ref,
|
||||
_rels_type type);
|
||||
|
||||
void set_footer();
|
||||
void set_header();
|
||||
|
||||
void set_page_number();
|
||||
void set_date_time();
|
||||
void set_footer(bool val);
|
||||
void set_header(bool val);
|
||||
void set_page_number(bool val);
|
||||
void set_date_time(bool val);
|
||||
|
||||
bool get_footer();
|
||||
bool get_header();
|
||||
bool get_page_number();
|
||||
bool get_date_time();
|
||||
|
||||
pptx_animation_context & get_animation_context() { return pptx_animation_context_; }
|
||||
void generate_id(const std::wstring& id);
|
||||
|
||||
@ -185,17 +185,17 @@ void draw_page::pptx_convert(oox::pptx_conversion_context & Context)
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////
|
||||
if ((properties->content().presentation_display_footer_) && (*properties->content().presentation_display_footer_))
|
||||
Context.get_slide_context().set_footer();
|
||||
if (properties->content().presentation_display_footer_)
|
||||
Context.get_slide_context().set_footer(*properties->content().presentation_display_footer_);
|
||||
|
||||
if ((properties->content().presentation_display_header_) && (*properties->content().presentation_display_header_))
|
||||
Context.get_slide_context().set_header();
|
||||
if (properties->content().presentation_display_header_)
|
||||
Context.get_slide_context().set_header(*properties->content().presentation_display_header_);
|
||||
|
||||
if ((properties->content().presentation_display_page_number_) && (*properties->content().presentation_display_page_number_))
|
||||
Context.get_slide_context().set_page_number();
|
||||
if (properties->content().presentation_display_page_number_)
|
||||
Context.get_slide_context().set_page_number(*properties->content().presentation_display_page_number_);
|
||||
|
||||
if ((properties->content().presentation_display_date_time_) && (*properties->content().presentation_display_date_time_))
|
||||
Context.get_slide_context().set_date_time();
|
||||
if (properties->content().presentation_display_date_time_)
|
||||
Context.get_slide_context().set_date_time(*properties->content().presentation_display_date_time_);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -206,12 +206,12 @@ void draw_page::pptx_convert(oox::pptx_conversion_context & Context)
|
||||
content_[i]->pptx_convert(Context);
|
||||
}
|
||||
|
||||
if (attlist_.use_footer_name_)//from master_page
|
||||
if (attlist_.use_footer_name_ && Context.get_slide_context().get_footer())//from master_page
|
||||
{
|
||||
std::wstring name = L"footer:" + *attlist_.use_footer_name_;
|
||||
pptx_convert_placeHolder(Context, name, presentation_class::footer);
|
||||
}
|
||||
if (attlist_.use_date_time_name_)//from master_page
|
||||
if (attlist_.use_date_time_name_ && Context.get_slide_context().get_date_time())//from master_page
|
||||
{
|
||||
std::wstring name = L"datetime:" + *attlist_.use_date_time_name_;
|
||||
pptx_convert_placeHolder(Context, name, presentation_class::date_time);
|
||||
@ -364,17 +364,17 @@ void presentation_notes::pptx_convert(oox::pptx_conversion_context & Context)
|
||||
Context.get_slide_context().add_background(fill);
|
||||
|
||||
////////////////////////////////////////////////
|
||||
if ((properties->content().presentation_display_footer_) && (*properties->content().presentation_display_footer_))
|
||||
Context.get_slide_context().set_footer();
|
||||
if (properties->content().presentation_display_footer_)
|
||||
Context.get_slide_context().set_footer(*properties->content().presentation_display_footer_);
|
||||
|
||||
if ((properties->content().presentation_display_header_) && (*properties->content().presentation_display_header_))
|
||||
Context.get_slide_context().set_header();
|
||||
if (properties->content().presentation_display_header_)
|
||||
Context.get_slide_context().set_header(*properties->content().presentation_display_header_);
|
||||
|
||||
if ((properties->content().presentation_display_page_number_) && (*properties->content().presentation_display_page_number_))
|
||||
Context.get_slide_context().set_page_number();
|
||||
if (properties->content().presentation_display_page_number_)
|
||||
Context.get_slide_context().set_page_number(*properties->content().presentation_display_page_number_);
|
||||
|
||||
if ((properties->content().presentation_display_date_time_) && (*properties->content().presentation_display_date_time_))
|
||||
Context.get_slide_context().set_date_time();
|
||||
if (properties->content().presentation_display_date_time_)
|
||||
Context.get_slide_context().set_date_time(*properties->content().presentation_display_date_time_);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -385,12 +385,12 @@ void presentation_notes::pptx_convert(oox::pptx_conversion_context & Context)
|
||||
content_[i]->pptx_convert(Context);
|
||||
}
|
||||
|
||||
if (attlist_.use_footer_name_)//from master_page_notes
|
||||
if (attlist_.use_footer_name_ && Context.get_slide_context().get_footer())//from master_page_notes
|
||||
{
|
||||
std::wstring name = L"footer:" + *attlist_.use_footer_name_;
|
||||
pptx_convert_placeHolder(Context, name, presentation_class::footer);
|
||||
}
|
||||
if (attlist_.use_date_time_name_)//from master_page_notes
|
||||
if (attlist_.use_date_time_name_ && Context.get_slide_context().get_date_time())//from master_page_notes
|
||||
{
|
||||
std::wstring name = L"datetime:" + *attlist_.use_date_time_name_;
|
||||
pptx_convert_placeHolder(Context, name, presentation_class::date_time);
|
||||
|
||||
Reference in New Issue
Block a user