mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-03-02 23:41:47 +08:00
Compare commits
7 Commits
core-win-3
...
core-win-6
| Author | SHA1 | Date | |
|---|---|---|---|
| 48bf40919c | |||
| fd53a987be | |||
| b4d298542a | |||
| 9723c379dd | |||
| e8d8b2e56c | |||
| adb84b0f05 | |||
| a4ee30d031 |
@ -582,7 +582,7 @@ namespace DocFileFormat
|
||||
// The style id is used for a reverse reference.
|
||||
// It can happen that the reference points to the wrong style.
|
||||
|
||||
if (styleIndex != ListData::ISTD_NIL)
|
||||
if (styleIndex != ListData::ISTD_NIL && styleIndex < m_document->Styles->Styles->size())
|
||||
{
|
||||
m_pXmlWriter->WriteNodeBegin( L"w:pStyle", TRUE );
|
||||
m_pXmlWriter->WriteAttribute( L"w:val", FormatUtils::XmlEncode(StyleSheetMapping::MakeStyleId(m_document->Styles->Styles->at(styleIndex))));
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories=""
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="3"
|
||||
|
||||
@ -356,6 +356,10 @@
|
||||
/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Common\DocxFormat\Source\Base\unicode_util.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\UnicodeConverter\UnicodeConverter.cpp"
|
||||
>
|
||||
|
||||
@ -899,34 +899,254 @@ void table_table_cell::xlsx_convert(oox::xlsx_conversion_context & Context)
|
||||
void table_covered_table_cell::xlsx_convert(oox::xlsx_conversion_context & Context)
|
||||
{
|
||||
std::wostream & strm = Context.current_sheet().sheetData();
|
||||
|
||||
const int sharedStringId = content_.xlsx_convert(Context, NULL);
|
||||
|
||||
const common_value_and_type_attlist & attr = attlist_.common_value_and_type_attlist_;
|
||||
|
||||
office_value_type::type odf_value_type = office_value_type::Custom;
|
||||
oox::XlsxCellType::type t_val = oox::XlsxCellType::s;
|
||||
std::wstring formula = attlist_.table_formula_.get_value_or(L"");
|
||||
|
||||
std::wstring number_val;
|
||||
_CP_OPT(bool) bool_val;
|
||||
_CP_OPT(std::wstring) str_val;
|
||||
|
||||
std::wstring num_format;
|
||||
|
||||
size_t xfId_last_set = 0;
|
||||
int empty_cell_count = 0;
|
||||
bool skip_next_cell = false;
|
||||
bool is_style_visible = true;
|
||||
bool is_data_visible = false;
|
||||
// вычислить стиль для ячейки
|
||||
|
||||
std::wstring cellStyleName = attlist_.table_style_name_.get_value_or(L"");
|
||||
std::wstring columnStyleName = Context.get_table_context().default_column_cell_style();
|
||||
std::wstring rowStyleName = Context.get_table_context().default_row_cell_style();
|
||||
|
||||
if (attlist_.table_number_columns_repeated_ > 1)
|
||||
columnStyleName.clear(); // могут быть разные стили колонок Book 24.ods
|
||||
|
||||
odf_read_context & odfContext = Context.root()->odf_context();
|
||||
|
||||
style_instance *defaultCellStyle=NULL, *defaultColumnCellStyle = NULL, *defaultRowCellStyle =NULL, *cellStyle = NULL;
|
||||
try
|
||||
{
|
||||
defaultCellStyle = odfContext.styleContainer().style_default_by_type(style_family::TableCell);
|
||||
|
||||
defaultColumnCellStyle = odfContext.styleContainer().style_by_name(columnStyleName, style_family::TableCell, false);
|
||||
defaultRowCellStyle = odfContext.styleContainer().style_by_name(rowStyleName, style_family::TableCell, false);
|
||||
cellStyle = odfContext.styleContainer().style_by_name(cellStyleName, style_family::TableCell, false);
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
_CP_LOG << L"[error]: style wrong\n";
|
||||
}
|
||||
|
||||
std::wstring data_style = CalcCellDataStyle(Context, columnStyleName, rowStyleName, cellStyleName);
|
||||
|
||||
// стили не наследуются
|
||||
std::vector<const style_instance *> instances;
|
||||
instances.push_back(defaultCellStyle);
|
||||
|
||||
if (defaultColumnCellStyle)
|
||||
instances.push_back(defaultColumnCellStyle);
|
||||
|
||||
if (defaultRowCellStyle)
|
||||
{
|
||||
if (instances.size() > 1)
|
||||
instances[1] = defaultRowCellStyle;
|
||||
else
|
||||
instances.push_back(defaultRowCellStyle);
|
||||
}
|
||||
|
||||
if (cellStyle)
|
||||
{
|
||||
if (instances.size() > 1)
|
||||
instances[1] = cellStyle;
|
||||
else
|
||||
instances.push_back(cellStyle);
|
||||
}
|
||||
|
||||
text_format_properties_content textFormatProperties = calc_text_properties_content (instances);
|
||||
paragraph_format_properties parFormatProperties = calc_paragraph_properties_content (instances);
|
||||
style_table_cell_properties_attlist cellFormatProperties = calc_table_cell_properties (instances);
|
||||
|
||||
if (attr.office_value_type_)
|
||||
odf_value_type = attr.office_value_type_->get_type();
|
||||
|
||||
if ((odf_value_type == office_value_type::Float) ||
|
||||
(odf_value_type == office_value_type::Custom && attr.office_value_))
|
||||
{
|
||||
t_val = oox::XlsxCellType::n;
|
||||
number_val = attr.office_value_.get_value_or(L"");
|
||||
}
|
||||
else if (odf_value_type == office_value_type::Percentage)
|
||||
{
|
||||
t_val = oox::XlsxCellType::n;
|
||||
number_val = attr.office_value_.get_value_or(L"");
|
||||
}
|
||||
else if (odf_value_type == office_value_type::Currency)
|
||||
{
|
||||
t_val = oox::XlsxCellType::n;
|
||||
number_val = attr.office_value_.get_value_or(L"");
|
||||
}
|
||||
else if ((odf_value_type == office_value_type::Date) ||
|
||||
(odf_value_type == office_value_type::Custom && attr.office_date_value_))
|
||||
{
|
||||
t_val = oox::XlsxCellType::n;
|
||||
if (attr.office_date_value_)
|
||||
{
|
||||
int y, m, d;
|
||||
if (oox::parseDate(attr.office_date_value_.get(), y, m, d))
|
||||
{
|
||||
number_val = boost::lexical_cast<std::wstring>(oox::convertDate(y, m, d));
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((odf_value_type == office_value_type::Time) ||
|
||||
(odf_value_type == office_value_type::Custom && attr.office_time_value_))
|
||||
{
|
||||
t_val = oox::XlsxCellType::n;
|
||||
if (attr.office_time_value_)
|
||||
{
|
||||
const std::wstring tv = attr.office_time_value_.get();
|
||||
int h,m;
|
||||
double s;
|
||||
if (oox::parseTime(tv, h, m, s))
|
||||
{
|
||||
number_val = boost::lexical_cast<std::wstring>(oox::convertTime(h, m, s));
|
||||
}
|
||||
}
|
||||
}
|
||||
else if ((odf_value_type == office_value_type::Boolean) ||
|
||||
(odf_value_type == office_value_type::Custom && attr.office_boolean_value_))
|
||||
{
|
||||
t_val = oox::XlsxCellType::b;
|
||||
if (attr.office_boolean_value_) bool_val = oox::parseBoolVal(attr.office_boolean_value_.get());
|
||||
}
|
||||
else if ((odf_value_type == office_value_type::String) ||
|
||||
(odf_value_type == office_value_type::Custom && attr.office_string_value_))
|
||||
{
|
||||
t_val = oox::XlsxCellType::str;
|
||||
if (attr.office_string_value_) str_val = attr.office_string_value_.get();
|
||||
}
|
||||
|
||||
if (!data_style.empty())
|
||||
{
|
||||
office_element_ptr elm = odfContext.numberStyles().find_by_style_name(data_style);
|
||||
number_style_base *num_style = dynamic_cast<number_style_base*>(elm.get());
|
||||
|
||||
if (num_style)
|
||||
{
|
||||
Context.get_num_format_context().start_complex_format();
|
||||
num_style->oox_convert(Context.get_num_format_context());
|
||||
Context.get_num_format_context().end_complex_format();
|
||||
|
||||
num_format = Context.get_num_format_context().get_last_format();
|
||||
}
|
||||
}
|
||||
|
||||
oox::xlsx_cell_format cellFormat;
|
||||
|
||||
cellFormat.set_cell_type(t_val);
|
||||
cellFormat.set_num_format(oox::odf_string_to_build_in(odf_value_type));
|
||||
|
||||
is_style_visible = (!cellStyleName.empty() || defaultColumnCellStyle) ? true : false;
|
||||
|
||||
if ( content_.elements_.size() > 0 ||
|
||||
!formula.empty() ||
|
||||
( t_val == oox::XlsxCellType::n && !number_val.empty()) ||
|
||||
( t_val == oox::XlsxCellType::b && bool_val) ||
|
||||
(( t_val == oox::XlsxCellType::str || oox::XlsxCellType::inlineStr) && str_val)) is_data_visible = true;
|
||||
|
||||
if (attlist_.table_number_columns_repeated_ < 199 && last_cell_) last_cell_ = false;
|
||||
|
||||
int cell_repeated_max = Context.current_table_column() + attlist_.table_number_columns_repeated_ + 1;
|
||||
|
||||
if (cell_repeated_max >= 1024 && cellStyleName.empty() && last_cell_ && !is_data_visible)
|
||||
{//Book 24.ods
|
||||
return;
|
||||
}
|
||||
|
||||
if (is_style_visible)
|
||||
{
|
||||
xfId_last_set = Context.get_style_manager().xfId(&textFormatProperties, &parFormatProperties, &cellFormatProperties, &cellFormat, num_format, false, is_style_visible);
|
||||
}
|
||||
|
||||
for (unsigned int r = 0; r < attlist_.table_number_columns_repeated_; ++r)
|
||||
{
|
||||
Context.start_table_covered_cell();
|
||||
const int xfId = Context.get_current_cell_style_id();
|
||||
Context.start_table_covered_cell ();
|
||||
|
||||
if (is_style_visible)
|
||||
Context.set_current_cell_style_id(xfId_last_set);
|
||||
|
||||
const int sharedStringId = content_.xlsx_convert(Context, &textFormatProperties);
|
||||
|
||||
if (t_val == oox::XlsxCellType::str && sharedStringId >=0)
|
||||
t_val = oox::XlsxCellType::s;//в случае текста, если он есть берем кэшированное значение
|
||||
|
||||
if (skip_next_cell)break;
|
||||
|
||||
CP_XML_WRITER(strm)
|
||||
// пустые ячейки пропускаем.
|
||||
if ( is_data_visible || ((cellStyle || defaultColumnCellStyle) && is_style_visible))
|
||||
{
|
||||
CP_XML_NODE(L"c")
|
||||
CP_XML_WRITER(strm)
|
||||
{
|
||||
CP_XML_ATTR(L"r", Context.current_cell_address());
|
||||
|
||||
if (xfId >= 0)
|
||||
{
|
||||
CP_XML_ATTR(L"s", xfId);
|
||||
}
|
||||
CP_XML_NODE(L"c")
|
||||
{
|
||||
CP_XML_ATTR(L"r", oox::getCellAddress(Context.current_table_column(), Context.current_table_row()));
|
||||
CP_XML_ATTR(L"t", oox::cellType2Str(t_val));
|
||||
CP_XML_ATTR(L"s", xfId_last_set);
|
||||
|
||||
if (sharedStringId >=0)
|
||||
{
|
||||
CP_XML_NODE(L"v")
|
||||
if (!formula.empty())
|
||||
{
|
||||
CP_XML_CONTENT(sharedStringId);
|
||||
const std::wstring xlsxFormula = formulas_converter.convert(formula);
|
||||
if (!xlsxFormula.empty())
|
||||
{
|
||||
CP_XML_NODE(L"f")
|
||||
{
|
||||
CP_XML_CONTENT(xlsxFormula);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} // c
|
||||
|
||||
if (sharedStringId >= 0 && t_val == oox::XlsxCellType::s)
|
||||
{
|
||||
CP_XML_NODE(L"v") { CP_XML_CONTENT(sharedStringId); }
|
||||
}
|
||||
else if ((t_val == oox::XlsxCellType::str || t_val == oox::XlsxCellType::inlineStr) && str_val)
|
||||
{
|
||||
CP_XML_NODE(L"v") { CP_XML_CONTENT(str_val.get()); }
|
||||
}
|
||||
else if (t_val == oox::XlsxCellType::n && !number_val.empty())
|
||||
{
|
||||
CP_XML_NODE(L"v") { CP_XML_CONTENT(number_val);}
|
||||
}
|
||||
else if (t_val == oox::XlsxCellType::b && bool_val)
|
||||
{
|
||||
CP_XML_NODE(L"v") { CP_XML_CONTENT((int)(bool_val.get())); }
|
||||
}
|
||||
}
|
||||
if ( is_data_visible || (cellStyle && is_style_visible && !last_cell_))
|
||||
{
|
||||
Context.non_empty_row();
|
||||
empty_cell_count = 0 ;
|
||||
}
|
||||
else
|
||||
{
|
||||
empty_cell_count++;
|
||||
//Уведомление_о_вручении.ods - 13 повторов пустых с cellStyle=NULL - нужные !!!
|
||||
if (empty_cell_count > 19 && last_cell_&& (attlist_.table_number_columns_repeated_> 299 || cellStyle == NULL))
|
||||
{//пишем простыню только если задан стиль тока для этих ячеек
|
||||
skip_next_cell = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (last_cell_) // Vehicle log book.ods (row = 24 and more)
|
||||
skip_next_cell = true;
|
||||
}
|
||||
|
||||
Context.end_table_covered_cell();
|
||||
|
||||
@ -2057,11 +2057,12 @@ void DocxConverter::convert(OOX::Logic::CRunProperty *oox_run_pr, odf_writer::st
|
||||
convert(oox_run_pr->m_oColor.GetPointer(),text_properties->content_.fo_color_);
|
||||
}
|
||||
|
||||
text_properties->content_.style_text_underline_type_= odf_types::line_type(odf_types::line_type::None);
|
||||
//text_properties->content_.style_text_underline_type_= odf_types::line_type(odf_types::line_type::None); //нельзя..если будет выше наследуемого то подчеркивания не будет
|
||||
if (oox_run_pr->m_oU.IsInit())
|
||||
{
|
||||
text_properties->content_.style_text_underline_style_ = odf_types::line_style(odf_types::line_style::Solid);
|
||||
text_properties->content_.style_text_underline_type_ = odf_types::line_type(odf_types::line_type::Single);
|
||||
text_properties->content_.style_text_underline_width_ = odf_types::line_width(odf_types::line_width::Auto);
|
||||
|
||||
_CP_OPT(odf_types::color) color;
|
||||
convert(oox_run_pr->m_oU->m_oColor.GetPointer(), oox_run_pr->m_oU->m_oThemeColor.GetPointer(),
|
||||
@ -3187,9 +3188,9 @@ void DocxConverter::convert_table_style(OOX::CStyle *oox_style)
|
||||
{
|
||||
if (oox_style == NULL)return;
|
||||
|
||||
std::wstring oox_name = oox_style->m_sStyleId.IsInit() ? *oox_style->m_sStyleId : L"";
|
||||
std::wstring oox_name_id = oox_style->m_sStyleId.IsInit() ? *oox_style->m_sStyleId : L"";
|
||||
|
||||
odt_context->styles_context()->table_styles().start_style(oox_name);
|
||||
odt_context->styles_context()->table_styles().start_style(oox_name_id);
|
||||
//общие
|
||||
|
||||
if (oox_style->m_oTblPr.IsInit())
|
||||
@ -3303,17 +3304,21 @@ void DocxConverter::convert(OOX::CStyle *oox_style)
|
||||
return;
|
||||
}
|
||||
|
||||
std::wstring oox_name = oox_style->m_sStyleId.IsInit() ? *oox_style->m_sStyleId : L"";
|
||||
|
||||
odt_context->styles_context()->create_style(oox_name, family, false, true, -1);
|
||||
std::wstring oox_name_id = oox_style->m_sStyleId.IsInit() ? *oox_style->m_sStyleId : L"";
|
||||
|
||||
odt_context->styles_context()->create_style(oox_name_id, family, false, true, -1);
|
||||
|
||||
std::wstring style_name;
|
||||
if (oox_style->m_oName.IsInit() && oox_style->m_oName->m_sVal.IsInit())
|
||||
odt_context->styles_context()->last_state()->set_display_name(*oox_style->m_oName->m_sVal);
|
||||
{
|
||||
style_name = *oox_style->m_oName->m_sVal;
|
||||
odt_context->styles_context()->last_state()->set_display_name(style_name);
|
||||
}
|
||||
|
||||
odf_writer::style_text_properties* text_properties = NULL;
|
||||
if (oox_style->m_oRunPr.IsInit())
|
||||
{
|
||||
odf_writer::style_text_properties* text_properties = odt_context->styles_context()->last_state()->get_text_properties();
|
||||
text_properties = odt_context->styles_context()->last_state()->get_text_properties();
|
||||
|
||||
if (oox_style->m_oDefault.IsInit() && oox_style->m_oDefault->ToBool())
|
||||
{
|
||||
@ -3330,14 +3335,14 @@ void DocxConverter::convert(OOX::CStyle *oox_style)
|
||||
}
|
||||
if (oox_style->m_oParPr.IsInit())
|
||||
{
|
||||
odf_writer::style_paragraph_properties * paragraph_properties = odt_context->styles_context()->last_state()->get_paragraph_properties();
|
||||
odf_writer::style_paragraph_properties *paragraph_properties = odt_context->styles_context()->last_state()->get_paragraph_properties();
|
||||
if (oox_style->m_oDefault.IsInit() && oox_style->m_oDefault->ToBool())
|
||||
{
|
||||
//основан на дефолтовом - накатить
|
||||
odf_writer::odf_style_state_ptr def_style_state;
|
||||
if (odt_context->styles_context()->find_odf_default_style_state(odf_types::style_family::Paragraph, def_style_state) && def_style_state)
|
||||
{
|
||||
odf_writer::style_paragraph_properties * props = def_style_state->get_paragraph_properties();
|
||||
odf_writer::style_paragraph_properties *props = def_style_state->get_paragraph_properties();
|
||||
paragraph_properties->apply_from(props);
|
||||
}
|
||||
}
|
||||
@ -3367,9 +3372,19 @@ void DocxConverter::convert(OOX::CStyle *oox_style)
|
||||
if (oox_style->m_oBasedOn.IsInit() && oox_style->m_oBasedOn->m_sVal.IsInit())
|
||||
odt_context->styles_context()->last_state()->set_parent_style_name(*oox_style->m_oBasedOn->m_sVal);
|
||||
|
||||
//nullable<ComplexTypes::Word::COnOff2<SimpleTypes::onoffTrue>> m_oQFormat;
|
||||
//nullable<ComplexTypes::Word::std::wstring_> m_oAliases;
|
||||
|
||||
//nullable<ComplexTypes::Word::COnOff2<SimpleTypes::onoffTrue>> m_oQFormat;
|
||||
//nullable<ComplexTypes::Word::std::wstring_> m_oAliases;
|
||||
//-------------------------------------------------------------------------------------------------------------------------
|
||||
if (style_name == L"Hyperlink")
|
||||
{
|
||||
odt_context->styles_context()->create_style(L"Internet_20_link", family, false, true, -1);
|
||||
//odt_context->styles_context()->last_state()->set_parent_style_name(oox_name_id);
|
||||
odt_context->styles_context()->last_state()->set_display_name(L"Internet link");
|
||||
|
||||
odf_writer::style_text_properties* hyperlink_text_props = odt_context->styles_context()->last_state()->get_text_properties();
|
||||
hyperlink_text_props->apply_from(text_properties);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
void DocxConverter::convert(OOX::Logic::CCommentRangeStart* oox_comm_start)
|
||||
|
||||
@ -21,9 +21,6 @@ include($$PWD/../../../Common/3dParty/boost/boost.pri)
|
||||
|
||||
DEFINES += UNICODE \
|
||||
_UNICODE \
|
||||
PPTX_DEF \
|
||||
PPT_DEF \
|
||||
ENABLE_PPT_TO_PPTX_CONVERT \
|
||||
_USE_LIBXML2_READER_ \
|
||||
LIBXML_READER_ENABLED \
|
||||
USE_LITE_READER \
|
||||
|
||||
@ -853,7 +853,7 @@ void NSPresentationEditor::CShapeWriter::WriteTextInfo()
|
||||
m_oWriter.WriteString(std::wstring(L" prst=\"") + prstTxWarp + _T("\">"));
|
||||
m_oWriter.WriteString(std::wstring(L"<a:avLst>"));//модификаторы
|
||||
|
||||
CPPTShape *pPPTShape = dynamic_cast<CPPTShape *>(m_pShapeElement->m_oShape.m_pShape);
|
||||
CPPTShape *pPPTShape = dynamic_cast<CPPTShape *>(m_pShapeElement->m_oShape.getBaseShape());
|
||||
std::wstring strVal;
|
||||
|
||||
for (int i = 0 ; (pPPTShape) && (i < pPPTShape->m_arAdjustments.size()); i++)
|
||||
@ -1308,12 +1308,14 @@ std::wstring NSPresentationEditor::CShapeWriter::ConvertShape()
|
||||
m_oWriter.WriteString(std::wstring(L"</a:xfrm>"));
|
||||
}
|
||||
|
||||
if (m_pShapeElement->m_oShape.m_lDrawType & c_ShapeDrawType_Graphic || m_pShapeElement->m_oShape.m_pShape->m_bCustomShape)
|
||||
CBaseShape *shape = m_pShapeElement->m_oShape.getBaseShape();
|
||||
|
||||
if (m_pShapeElement->m_oShape.m_lDrawType & c_ShapeDrawType_Graphic || shape->m_bCustomShape)
|
||||
{
|
||||
m_pShapeElement->m_oShape.ToRenderer(dynamic_cast<IRenderer*>(this), oInfo, m_oMetricInfo, 0.0, 1.0);
|
||||
}
|
||||
|
||||
if ((prstGeom.empty() == false || m_pShapeElement->m_bShapePreset) && prstTxWarp.empty() && !m_pShapeElement->m_oShape.m_pShape->m_bCustomShape)
|
||||
if ((prstGeom.empty() == false || m_pShapeElement->m_bShapePreset) && prstTxWarp.empty() && !shape->m_bCustomShape)
|
||||
{
|
||||
if (prstGeom.empty()) prstGeom = L"rect";
|
||||
m_oWriter.WriteString(std::wstring(L"<a:prstGeom"));
|
||||
|
||||
@ -265,7 +265,7 @@ public:
|
||||
case NSPresentationEditor::etShape:
|
||||
{
|
||||
CShapeElement* pShapeElem = (CShapeElement*)pElement;
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(pShapeElem->m_oShape.m_pShape);
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(pShapeElem->m_oShape.getBaseShape());
|
||||
|
||||
if (NULL != pPPTShape)
|
||||
{
|
||||
@ -859,7 +859,7 @@ public:
|
||||
SetUpProperty((IElement*)pElement, pTheme, pInfo, pSlide, pProperty);
|
||||
|
||||
CShape* pParentShape = &pElement->m_oShape;
|
||||
CPPTShape* pShape = dynamic_cast<CPPTShape*>(pParentShape->m_pShape);
|
||||
CPPTShape* pShape = dynamic_cast<CPPTShape*>(pParentShape->getBaseShape());
|
||||
|
||||
if (NULL == pShape)
|
||||
return;
|
||||
@ -1402,7 +1402,8 @@ public:
|
||||
{
|
||||
// shape
|
||||
CShapeElement* pShape = new CShapeElement(NSBaseShape::ppt, eType);
|
||||
CPPTShape *ppt_shape = dynamic_cast<CPPTShape *>(pShape->m_oShape.m_pShape);
|
||||
CPPTShape *ppt_shape = dynamic_cast<CPPTShape *>(pShape->m_oShape.getBaseShape());
|
||||
|
||||
if ( (ppt_shape) && (OOXMLShapes::sptCustom == ppt_shape->m_eType))
|
||||
{
|
||||
pShape->m_bShapePreset = true;
|
||||
@ -2246,7 +2247,7 @@ protected:
|
||||
ApplyHyperlink(pShape, oColor);
|
||||
}
|
||||
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(pShape->m_oShape.m_pShape);
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(pShape->m_oShape.getBaseShape());
|
||||
|
||||
if (NULL != pPPTShape) // проверка на wordart
|
||||
{
|
||||
|
||||
@ -56,7 +56,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories=""
|
||||
PreprocessorDefinitions="_DEBUG;_LIB;_USE_MATH_DEFINES;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
|
||||
PreprocessorDefinitions="_DEBUG;_LIB;_USE_MATH_DEFINES;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="3"
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
#include "./PPTXFormat/LegacyDiagramText.h"
|
||||
|
||||
#include "./Editor/Drawing/Elements.h"
|
||||
#include "./Editor/Drawing/Shapes/BaseShape/PPTXShape/pptx2pptshapeconverter.h"
|
||||
#include "./Editor/Drawing/Shapes/BaseShape/PPTXShape/Pptx2PptShapeConverter.h"
|
||||
|
||||
#include "../DesktopEditor/common/Directory.h"
|
||||
|
||||
@ -974,7 +974,6 @@ HRESULT CDrawingConverter::AddShapeType(const std::wstring& bsXml)
|
||||
|
||||
if (oNode.IsValid())
|
||||
{
|
||||
#ifdef PPT_DEF
|
||||
CPPTShape* pShape = new CPPTShape();
|
||||
pShape->m_bIsShapeType = true;
|
||||
|
||||
@ -984,11 +983,11 @@ HRESULT CDrawingConverter::AddShapeType(const std::wstring& bsXml)
|
||||
pShape->LoadFromXMLShapeType(oNodeST);
|
||||
|
||||
CShape* pS = new CShape(NSBaseShape::unknown, 0);
|
||||
pS->m_pShape = pShape;
|
||||
pS->setBaseShape(pShape);
|
||||
|
||||
LoadCoordSize(oNodeST, pS);
|
||||
|
||||
m_mapShapeTypes.insert(std::pair<std::wstring, CShape*>(strId, pS));
|
||||
#endif
|
||||
}
|
||||
|
||||
return S_OK;
|
||||
@ -1850,8 +1849,8 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
if (m_mapShapeTypes.end() != pPair)
|
||||
{
|
||||
pPPTShape = new CPPTShape();
|
||||
pPair->second->m_pShape->SetToDublicate(pPPTShape);
|
||||
pPPTShape->m_eType = ((CPPTShape*)(pPair->second->m_pShape))->m_eType;
|
||||
pPair->second->getBaseShape()->SetToDublicate(pPPTShape);
|
||||
pPPTShape->m_eType = ((CPPTShape*)(pPair->second->getBaseShape()))->m_eType;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1881,22 +1880,28 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
pPPTShape->m_eType = PPTShapes::sptCustom;
|
||||
}
|
||||
}
|
||||
|
||||
oShapeElem.m_oShape.setBaseShape(pPPTShape);
|
||||
|
||||
if (bIsNeedCoordSizes)
|
||||
{
|
||||
LoadCoordPos(oNodeShape, &oShapeElem.m_oShape); //for path calculate
|
||||
}
|
||||
pPPTShape->LoadFromXMLShapeType(oNodeShape);
|
||||
}
|
||||
|
||||
if (pPPTShape != NULL)
|
||||
{
|
||||
oShapeElem.m_oShape.m_pShape = pPPTShape;
|
||||
|
||||
{
|
||||
oShapeElem.m_oShape.setBaseShape(pPPTShape);
|
||||
if (bIsNeedCoordSizes)
|
||||
{
|
||||
LoadCoordSize(oNodeShape, &oShapeElem.m_oShape);
|
||||
}
|
||||
else
|
||||
{
|
||||
oShapeElem.m_oShape.m_dWidthLogic = 21600;
|
||||
oShapeElem.m_oShape.m_dHeightLogic = 21600;
|
||||
|
||||
oShapeElem.m_oShape.m_pShape->m_oPath.SetCoordsize(21600, 21600);
|
||||
oShapeElem.m_oShape.getBaseShape()->m_oPath.SetCoordsize(21600, 21600);
|
||||
}
|
||||
|
||||
std::wstring strXmlPPTX;
|
||||
@ -2808,7 +2813,8 @@ void CDrawingConverter::doc_LoadGroup(PPTX::Logic::SpTreeElem *result, XmlUtils:
|
||||
pShape->LoadFromXMLShapeType(oNodeT);
|
||||
|
||||
CShape* pS = new CShape(NSBaseShape::unknown, 0);
|
||||
pS->m_pShape = pShape;
|
||||
pS->setBaseShape(pShape);
|
||||
|
||||
LoadCoordSize(oNodeT, pS);
|
||||
|
||||
m_mapShapeTypes.insert(std::pair<std::wstring, CShape*>(strId, pS));
|
||||
@ -2983,16 +2989,57 @@ void CDrawingConverter::doc_LoadGroup(PPTX::Logic::SpTreeElem *result, XmlUtils:
|
||||
|
||||
result->InitElem(pTree);
|
||||
}
|
||||
void CDrawingConverter::LoadCoordPos(XmlUtils::CXmlNode& oNode, CShape* pShape)
|
||||
{
|
||||
pShape->m_dXLogic = 0;
|
||||
pShape->m_dYLogic = 0;
|
||||
|
||||
XmlUtils::CXmlNode oNodeTemplate;
|
||||
if (oNode.GetNode(L"coordorigin", oNodeTemplate))
|
||||
{
|
||||
std::wstring strCoordSize = oNodeTemplate.GetAttributeOrValue(L"val");
|
||||
if (!strCoordSize.empty())
|
||||
{
|
||||
std::vector<std::wstring> oArray;
|
||||
boost::algorithm::split(oArray, strCoordSize, boost::algorithm::is_any_of(L","), boost::algorithm::token_compress_on);
|
||||
|
||||
if (oArray.size() >= 2)
|
||||
{
|
||||
pShape->m_dXLogic = XmlUtils::GetInteger(oArray[0]);
|
||||
pShape->m_dYLogic = XmlUtils::GetInteger(oArray[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
std::wstring strCoordSize = oNode.GetAttributeOrValue(L"coordorigin");
|
||||
if (!strCoordSize.empty())
|
||||
{
|
||||
std::vector<std::wstring> oArray;
|
||||
boost::algorithm::split(oArray, strCoordSize, boost::algorithm::is_any_of(L","), boost::algorithm::token_compress_on);
|
||||
|
||||
if (oArray.size() >= 2)
|
||||
{
|
||||
pShape->m_dXLogic = XmlUtils::GetInteger(oArray[0]);
|
||||
pShape->m_dYLogic = XmlUtils::GetInteger(oArray[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pShape->getBaseShape()->m_oPath.SetCoordpos((LONG)pShape->m_dXLogic, (LONG)pShape->m_dYLogic);
|
||||
}
|
||||
|
||||
|
||||
void CDrawingConverter::LoadCoordSize(XmlUtils::CXmlNode& oNode, CShape* pShape)
|
||||
{
|
||||
pShape->m_dWidthLogic = ShapeSizeVML;
|
||||
pShape->m_dHeightLogic = ShapeSizeVML;
|
||||
pShape->m_dWidthLogic = ShapeSizeVML;
|
||||
pShape->m_dHeightLogic = ShapeSizeVML;
|
||||
|
||||
XmlUtils::CXmlNode oNodeTemplate;
|
||||
if (oNode.GetNode(L"coordsize", oNodeTemplate))
|
||||
{
|
||||
std::wstring strCoordSize = oNodeTemplate.GetAttributeOrValue(L"val");
|
||||
if (strCoordSize != L"")
|
||||
if (!strCoordSize.empty())
|
||||
{
|
||||
std::vector<std::wstring> oArray;
|
||||
boost::algorithm::split(oArray, strCoordSize, boost::algorithm::is_any_of(L","), boost::algorithm::token_compress_on);
|
||||
@ -3007,7 +3054,7 @@ void CDrawingConverter::LoadCoordSize(XmlUtils::CXmlNode& oNode, CShape* pShape)
|
||||
else
|
||||
{
|
||||
std::wstring strCoordSize = oNode.GetAttributeOrValue(L"coordsize");
|
||||
if (strCoordSize != L"")
|
||||
if (!strCoordSize.empty())
|
||||
{
|
||||
std::vector<std::wstring> oArray;
|
||||
boost::algorithm::split(oArray, strCoordSize, boost::algorithm::is_any_of(L","), boost::algorithm::token_compress_on);
|
||||
@ -3020,7 +3067,7 @@ void CDrawingConverter::LoadCoordSize(XmlUtils::CXmlNode& oNode, CShape* pShape)
|
||||
}
|
||||
}
|
||||
|
||||
pShape->m_pShape->m_oPath.SetCoordsize((LONG)pShape->m_dWidthLogic, (LONG)pShape->m_dHeightLogic);
|
||||
pShape->getBaseShape()->m_oPath.SetCoordsize((LONG)pShape->m_dWidthLogic, (LONG)pShape->m_dHeightLogic);
|
||||
}
|
||||
|
||||
std::wstring CDrawingConverter::GetDrawingMainProps(XmlUtils::CXmlNode& oNode, PPTX::CCSS& oCssStyles, CSpTreeElemProps& oProps)
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
#include "../Common/DocxFormat/Source/Base/Base.h"
|
||||
#include "../Common/DocxFormat/Source/Base/Nullable.h"
|
||||
|
||||
#include "./Editor/Drawing/Shapes/BaseShape/PPTShape/PPTShapeEnum.h"
|
||||
#include "./Editor/Drawing/Shapes/BaseShape/PPTShape/PptShapeEnum.h"
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
@ -277,7 +277,9 @@ namespace NSBinPptxRW
|
||||
void CheckPenShape (PPTX::Logic::SpTreeElem* oElem, XmlUtils::CXmlNode& oNode, PPTShapes::ShapeType eType, CPPTShape* pPPTShape);
|
||||
|
||||
void LoadCoordSize (XmlUtils::CXmlNode& oNode, ::CShape* pShape);
|
||||
std::wstring GetDrawingMainProps (XmlUtils::CXmlNode& oNode, PPTX::CCSS& oCssStyles, CSpTreeElemProps& oProps);
|
||||
void LoadCoordPos (XmlUtils::CXmlNode& oNode, ::CShape* pShape);
|
||||
|
||||
std::wstring GetDrawingMainProps (XmlUtils::CXmlNode& oNode, PPTX::CCSS& oCssStyles, CSpTreeElemProps& oProps);
|
||||
|
||||
void ConvertMainPropsToVML (const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter, PPTX::Logic::SpTreeElem& oElem);
|
||||
void ConvertPicVML (PPTX::Logic::SpTreeElem& oElem, const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter);
|
||||
|
||||
@ -46,7 +46,6 @@
|
||||
#include "Editor/PPTXWriter.h"
|
||||
|
||||
#include "PPTXFormat/PPTXEvent.h"
|
||||
#include "Editor/PresentationDrawingsDef.h"
|
||||
|
||||
CPPTXFile::CPPTXFile(extract_to_directory fCallbackExtract, compress_from_directory fCallbackCompress, progress_operation fCallbackProgress, void* pCallbackArg)
|
||||
{
|
||||
|
||||
@ -37,12 +37,8 @@
|
||||
#include "../../../Common/FileDownloader/FileDownloader.h"
|
||||
#endif
|
||||
|
||||
#include "Shapes/BaseShape/PPTShape/Ppt2PptxShapeConverter.h"
|
||||
|
||||
#ifdef ENABLE_PPT_TO_PPTX_CONVERT
|
||||
#include "Shapes/BaseShape/PPTShape/ppt2pptxshapeconverter.h"
|
||||
#endif
|
||||
|
||||
#if defined(PPTX_DEF)
|
||||
namespace PPTX2EditorAdvanced
|
||||
{
|
||||
AVSINLINE OOXMLShapes::ShapeType GetShapeTypeFromStr(const std::wstring& str)//const
|
||||
@ -284,7 +280,7 @@ namespace PPTX2EditorAdvanced
|
||||
return OOXMLShapes::sptNil;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
namespace NSPresentationEditor
|
||||
{
|
||||
@ -355,9 +351,6 @@ namespace NSPresentationEditor
|
||||
|
||||
return (IElement*)pImageElement;
|
||||
}
|
||||
|
||||
#ifdef ENABLE_PPT_TO_PPTX_CONVERT
|
||||
|
||||
AVSINLINE std::wstring ConvertPPTShapeToPPTX(bool bIsNamespace = false)
|
||||
{
|
||||
NSGuidesVML::CFormParam pParamCoef;
|
||||
@ -383,7 +376,6 @@ namespace NSPresentationEditor
|
||||
return strXmlPPTX;
|
||||
}
|
||||
|
||||
#endif
|
||||
AVSINLINE std::wstring DownloadImage(const std::wstring& strFile)
|
||||
{
|
||||
#ifndef DISABLE_FILE_DOWNLOADER
|
||||
@ -432,7 +424,7 @@ namespace NSPresentationEditor
|
||||
m_bShapePreset = false;
|
||||
|
||||
m_oShape.LoadFromXML(str);
|
||||
m_ClassType = m_oShape.m_pShape->GetClassType();
|
||||
m_ClassType = m_oShape.getBaseShape()->GetClassType();
|
||||
}
|
||||
virtual void NormalizeCoordsByMetric()
|
||||
{
|
||||
@ -469,7 +461,7 @@ namespace NSPresentationEditor
|
||||
m_oShape.m_oText.m_lPlaceholderType = m_lPlaceholderType;
|
||||
m_oShape.m_oText.m_lPlaceholderID = m_lPlaceholderID;
|
||||
|
||||
m_oShape.m_pShape->ReCalculate();
|
||||
m_oShape.getBaseShape()->ReCalculate();
|
||||
|
||||
SetupTextProperties(pSlide, pTheme, pLayout);
|
||||
|
||||
@ -482,11 +474,9 @@ namespace NSPresentationEditor
|
||||
|
||||
void CalculateColor(CColor& oColor, CSlide* pSlide, CTheme* pTheme, CLayout* pLayout);
|
||||
|
||||
#ifdef ENABLE_PPT_TO_PPTX_CONVERT
|
||||
|
||||
AVSINLINE std::wstring ConvertPPTShapeToPPTX(bool bIsNamespace = false)
|
||||
{
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(m_oShape.m_pShape);
|
||||
CPPTShape* pPPTShape = dynamic_cast<CPPTShape*>(m_oShape.getBaseShape());
|
||||
if (NULL == pPPTShape)
|
||||
{
|
||||
// такого быть не может
|
||||
@ -688,7 +678,6 @@ namespace NSPresentationEditor
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -33,31 +33,21 @@
|
||||
|
||||
#include "BaseShape.h"
|
||||
|
||||
#if defined(PPTX_DEF)
|
||||
#include "PPTXShape/PPTXShape.h"
|
||||
#endif
|
||||
|
||||
#if defined(PPT_DEF)
|
||||
#include "PPTShape/PPTShape.h"
|
||||
#endif
|
||||
#include "PPTXShape/PptxShape.h"
|
||||
#include "PPTShape/PptShape.h"
|
||||
|
||||
|
||||
NSPresentationEditor::CBaseShape* NSPresentationEditor::CBaseShape::CreateByType(NSPresentationEditor::NSBaseShape::ClassType ClassType, int ShapeType)
|
||||
{
|
||||
#if defined(PPTX_DEF)
|
||||
if(ClassType == pptx)
|
||||
{
|
||||
return CPPTXShape::CreateByType((OOXMLShapes::ShapeType)ShapeType);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(PPT_DEF)
|
||||
if (ClassType == ppt)
|
||||
{
|
||||
return CPPTShape::CreateByType((PPTShapes::ShapeType)ShapeType);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
return NULL;
|
||||
}
|
||||
@ -67,21 +57,14 @@ bool NSPresentationEditor::CBaseShape::SetType(NSPresentationEditor::NSBaseShape
|
||||
if (ClassType != GetClassType())
|
||||
return false;
|
||||
|
||||
#if defined(PPTX_DEF)
|
||||
if(ClassType == pptx)
|
||||
{
|
||||
return ((CPPTXShape*)this)->SetShapeType((OOXMLShapes::ShapeType)ShapeType);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(PPT_DEF)
|
||||
if(ClassType == ppt)
|
||||
{
|
||||
return ((CPPTShape*)this)->SetShapeType((PPTShapes::ShapeType)ShapeType);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
#include "ElementSettings.h"
|
||||
#include "../BaseShape.h"
|
||||
#include "../../../Attributes.h"
|
||||
#include "Formula.h"
|
||||
#include "PptFormula.h"
|
||||
|
||||
namespace NSCustomVML
|
||||
{
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 51
|
||||
class CAccentBorderCallout2Type : public CPPTShape
|
||||
@ -73,4 +73,4 @@ public:
|
||||
oHandle3.position = _T("#4,#5");
|
||||
m_arHandles.push_back(oHandle3);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 44
|
||||
class CAccentCallout1Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 45
|
||||
class CAccentCallout2Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 46
|
||||
class CAccentCallout3Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 179
|
||||
class CAccentCallout90Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 194
|
||||
class CActionButtonBackType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 196
|
||||
class CActionButtonBeginType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 189
|
||||
class CActionButtonBlankType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 198
|
||||
class CActionButtonDocType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 195
|
||||
class CActionButtonEndType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 191
|
||||
class CActionButtonHelpType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 190
|
||||
class CActionButtonHomeType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 192
|
||||
class CActionButtonInfoType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 200
|
||||
class CActionButtonMovieType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 193
|
||||
class CActionButtonNextType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 197
|
||||
class CActionButtonReturnType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 199
|
||||
class CActionButtonSoundType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 91
|
||||
class CBentArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 34
|
||||
class CBentConnectorType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 90
|
||||
class CBentUpArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 84
|
||||
class CBevelType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 95
|
||||
class CBlockArcType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 47
|
||||
class CBorderCallout1Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 48
|
||||
class CBorderCallout2Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 49
|
||||
class CBorderCallout3Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 180
|
||||
class CBorderCallout90Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 186
|
||||
class CBracePairType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 185
|
||||
class CBracketPairType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 41
|
||||
class CCallout1Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 42
|
||||
class CCallout2Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 43
|
||||
class CCallout3Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 178
|
||||
class CCallout90Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 22
|
||||
class CCanType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 55
|
||||
class CChevronType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 99
|
||||
class CCircularArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 106
|
||||
class CCloudCalloutType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 16
|
||||
class CCubeType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 38
|
||||
class CCurvedConnectorType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 105
|
||||
class CCurvedDownArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 103
|
||||
class CCurvedLeftArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 102
|
||||
class CCurvedRightArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
//104
|
||||
class CCurvedUpArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 4
|
||||
class CDiamondType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 23
|
||||
class CDonutType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 80
|
||||
class CDownArrowCalloutType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 67
|
||||
class CDownArrowType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 108
|
||||
class CEllipceRibbon2Type : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 107
|
||||
class CEllipceRibbonType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 3
|
||||
class CEllipseType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 176
|
||||
class CFlowChartAlternateProcessType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 125
|
||||
class CFlowChartCollateType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 120
|
||||
class CFlowChartConnectorType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 110
|
||||
class CFlowChartDecisionType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 135
|
||||
class CFlowChartDelayType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 134
|
||||
class CFlowChartDisplayType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
//114
|
||||
class CFlowChartDocumentType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 127
|
||||
class CFlowChartExtractType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 111
|
||||
class CFlowChartInputOutputType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 113
|
||||
class CFlowChartInternalStorageType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 132
|
||||
class CFlowChartMagneticDiskType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 133
|
||||
class CFlowChartMagneticDrumType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 131
|
||||
class CFlowChartMagneticTapeType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 118
|
||||
class CFlowChartManualInputType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 119
|
||||
class CFlowChartManualOperationType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 128
|
||||
class CFlowChartMergeType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 115
|
||||
class CFlowChartMultidocumentType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 177
|
||||
class CFlowChartOffpageConnectorType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 130
|
||||
class CFlowChartOnlineStorageType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 124
|
||||
class CFlowChartOrType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 112
|
||||
class CFlowChartPredefinedProcessType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 117
|
||||
class CFlowChartPreparationType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 109
|
||||
class CFlowChartProcessType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 121
|
||||
class CFlowChartPunchedCardType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 122
|
||||
class CFlowChartPunchedTapeType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 126
|
||||
class CFlowChartSortType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 123
|
||||
class CFlowChartSummingJunctionType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 116
|
||||
class CFlowChartTerminatorType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 65
|
||||
class CFoldedCornerType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 74
|
||||
class CHeartType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 9
|
||||
class CHexagonType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 15
|
||||
class CHomePlateType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 98
|
||||
class CHorizontalScrollType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 71
|
||||
class CIrregularSealOneType : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 72
|
||||
class CIrregularSealTwo : public CPPTShape
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
#pragma once
|
||||
#include "../PPTShape.h"
|
||||
#include "../PptShape.h"
|
||||
|
||||
// 5
|
||||
class CIsoscelesTriangleType : public CPPTShape
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user