abap2xlsx/ZA2X/CLAS/ZCL_EXCEL_THEME.slnk
Łukasz Pęgiel f62ee2a037 Demo of modification of theme added
ZDEMO_EXCEL42
2015-09-25 19:30:53 +02:00

207 lines
19 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<CLAS CLSNAME="ZCL_EXCEL_THEME" VERSION="1" LANGU="E" DESCRIPT="Theme" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" CLSCCINCL="X" FIXPT="X" UNICODE="X" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<localImplementation>*&quot;* use this source file for the definition and implementation of
*&quot;* local helper classes, interface definitions and type
*&quot;* declarations</localImplementation>
<localTypes>*&quot;* use this source file for any type of declarations (class
*&quot;* definitions, interfaces or type declarations) you need for
*&quot;* components in the private section</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="5 " ATTDECLTYP="2" ATTVALUE="&apos;theme&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_ELEMENTS" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " ATTDECLTYP="2" ATTVALUE="&apos;themeElements&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_EXTLST" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="4 " ATTDECLTYP="2" ATTVALUE="&apos;extLst&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_EXTRA_COLOR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="3 " ATTDECLTYP="2" ATTVALUE="&apos;extraClrSchemeLst&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_NAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="6 " ATTDECLTYP="2" ATTVALUE="&apos;name&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_OBJECT_DEF" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " ATTDECLTYP="2" ATTVALUE="&apos;objectDefaults&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_PREFIX" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="8 " ATTDECLTYP="2" ATTVALUE="&apos;a&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_PREFIX_WRITE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="9 " ATTDECLTYP="2" ATTVALUE="&apos;a:&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_XMLNS" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="7 " ATTDECLTYP="2" ATTVALUE="&apos;xmlns:a&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="C_THEME_XMLNS_VAL" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="10 " ATTDECLTYP="2" ATTVALUE="&apos;http://schemas.openxmlformats.org/drawingml/2006/main&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="ELEMENTS" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="1 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_THEME_ELEMENTS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="EXTCLRSCHEMELST" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="3 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_THEME_ECLRSCHEMELST" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="EXTLST" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="4 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_THEME_EXTLST" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="NAME" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="3 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="OBJECTDEFAULTS" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="2 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_THEME_OBJECTDEFAULTS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="THEME_CHANGED" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ABAP_BOOL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="THEME_READ" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="2 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ABAP_BOOL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_THEME" CMPNAME="XMLS_A" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="4 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " MTDTYPE="2" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>method constructor.
create object elements.
create object objectdefaults.
create object extclrschemelst.
create object extlst.
endmethod. &quot;class_constructor</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="READ_THEME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="READ_THEME" SCONAME="IO_THEME_XML" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<source>method read_theme.
data: lo_node_theme type ref to if_ixml_element.
data: lo_theme_children type ref to if_ixml_node_list.
data: lo_theme_iterator type ref to if_ixml_node_iterator.
data: lo_theme_element type ref to if_ixml_element.
check io_theme_xml is not initial.
lo_node_theme = io_theme_xml-&gt;get_root_element( ).&quot; find_from_name( name = c_theme ).
if lo_node_theme is bound.
name = lo_node_theme-&gt;get_attribute( name = c_theme_name ).
xmls_a = lo_node_theme-&gt;get_attribute( name = c_theme_xmlns ).
lo_theme_children = lo_node_theme-&gt;get_children( ).
lo_theme_iterator = lo_theme_children-&gt;create_iterator( ).
lo_theme_element ?= lo_theme_iterator-&gt;get_next( ).
while lo_theme_element is bound.
case lo_theme_element-&gt;get_name( ).
when c_theme_elements.
elements-&gt;load( io_elements = lo_theme_element ).
when c_theme_object_def.
objectdefaults-&gt;load( io_object_def = lo_theme_element ).
when c_theme_extra_color.
extclrschemelst-&gt;load( io_extra_color = lo_theme_element ).
when c_theme_extlst.
extlst-&gt;load( io_extlst = lo_theme_element ).
endcase.
lo_theme_element ?= lo_theme_iterator-&gt;get_next( ).
endwhile.
endif.
endmethod. &quot;read_theme</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR" SCONAME="IV_TYPE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR" SCONAME="IV_SRGB" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="ZCL_EXCEL_THEME_COLOR_SCHEME=&gt;T_SRGB" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR" SCONAME="IV_SYSCOLORNAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR" SCONAME="IV_SYSCOLORLAST" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="ZCL_EXCEL_THEME_COLOR_SCHEME=&gt;T_SRGB" PAROPTIONL="X"/>
<source>method set_color.
elements-&gt;color_scheme-&gt;set_color(
exporting
iv_type = iv_type
iv_srgb = iv_srgb
iv_syscolorname = iv_syscolorname
iv_syscolorlast = iv_syscolorlast
).
endmethod. &quot;set_color</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR_SCHEME_NAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_COLOR_SCHEME_NAME" SCONAME="IV_NAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>method set_color_scheme_name.
elements-&gt;color_scheme-&gt;set_name( iv_name = iv_name ).
endmethod. &quot;set_color_scheme_name</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" SCONAME="IV_TYPE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" SCONAME="IV_TYPEFACE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" SCONAME="IV_PANOSE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" SCONAME="IV_PITCHFAMILY" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_CS_FONT" SCONAME="IV_CHARSET" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<source>method set_cs_font.
elements-&gt;font_scheme-&gt;modify_cs_font(
exporting
iv_type = iv_type
iv_typeface = iv_typeface
iv_panose = iv_panose
iv_pitchfamily = iv_pitchfamily
iv_charset = iv_charset
).
endmethod. &quot;set_cs_font</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" SCONAME="IV_TYPE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" SCONAME="IV_TYPEFACE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" SCONAME="IV_PANOSE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" SCONAME="IV_PITCHFAMILY" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_EA_FONT" SCONAME="IV_CHARSET" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<source>method set_ea_font.
elements-&gt;font_scheme-&gt;modify_ea_font(
exporting
iv_type = iv_type
iv_typeface = iv_typeface
iv_panose = iv_panose
iv_pitchfamily = iv_pitchfamily
iv_charset = iv_charset
).
endmethod. &quot;set_ea_font</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT" SCONAME="IV_TYPE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT" SCONAME="IV_SCRIPT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT" SCONAME="IV_TYPEFACE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>method set_font.
elements-&gt;font_scheme-&gt;modify_font(
exporting
iv_type = iv_type
iv_script = iv_script
iv_typeface = iv_typeface
).
endmethod. &quot;set_font</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT_SCHEME_NAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_FONT_SCHEME_NAME" SCONAME="IV_NAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>method set_font_scheme_name.
elements-&gt;font_scheme-&gt;set_name( iv_name = iv_name ).
endmethod. &quot;set_font_scheme_name</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" SCONAME="IV_TYPE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" SCONAME="IV_TYPEFACE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" SCONAME="IV_PANOSE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" SCONAME="IV_PITCHFAMILY" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_LATIN_FONT" SCONAME="IV_CHARSET" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<source>method set_latin_font.
elements-&gt;font_scheme-&gt;modify_latin_font(
exporting
iv_type = iv_type
iv_typeface = iv_typeface
iv_panose = iv_panose
iv_pitchfamily = iv_pitchfamily
iv_charset = iv_charset
).
endmethod. &quot;set_latin_font</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_THEME_NAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="SET_THEME_NAME" SCONAME="IV_NAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>method set_theme_name.
name = iv_name.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_THEME" CMPNAME="WRITE_THEME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_THEME" CMPNAME="WRITE_THEME" SCONAME="RV_XSTRING" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method write_theme.
data: lo_ixml type ref to if_ixml,
lo_element_root type ref to if_ixml_element,
lo_encoding type ref to if_ixml_encoding.
data: lo_streamfactory TYPE REF TO if_ixml_stream_factory.
data: lo_ostream TYPE REF TO if_ixml_ostream.
data: lo_renderer TYPE REF TO if_ixml_renderer.
data: lo_document type ref to if_ixml_document.
lo_ixml = cl_ixml=&gt;create( ).
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;UTF-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
lo_document-&gt;set_namespace_prefix( prefix = &apos;a&apos; ).
lo_element_root = lo_document-&gt;create_simple_element_ns( prefix = c_theme_prefix
name = c_theme
parent = lo_document
).
lo_element_root-&gt;set_attribute_ns( name = c_theme_xmlns
value = c_theme_xmlns_val ).
lo_element_root-&gt;set_attribute_ns( name = c_theme_name
value = name ).
elements-&gt;build_xml( io_document = lo_document ).
objectdefaults-&gt;build_xml( io_document = lo_document ).
extclrschemelst-&gt;build_xml( io_document = lo_document ).
extlst-&gt;build_xml( io_document = lo_document ).
lo_streamfactory = lo_ixml-&gt;create_stream_factory( ).
lo_ostream = lo_streamfactory-&gt;create_ostream_xstring( string = rv_xstring ).
lo_renderer = lo_ixml-&gt;create_renderer( ostream = lo_ostream document = lo_document ).
lo_renderer-&gt;render( ).
endmethod. &quot;write_theme</source>
</method>
</CLAS>