diff --git a/src/zcl_excel_style_changer.clas.abap b/src/zcl_excel_style_changer.clas.abap new file mode 100644 index 0000000..22bcfd0 --- /dev/null +++ b/src/zcl_excel_style_changer.clas.abap @@ -0,0 +1,1675 @@ +CLASS zcl_excel_style_changer DEFINITION + PUBLIC + FINAL + CREATE PUBLIC . + + PUBLIC SECTION. + + INTERFACES zif_excel_style_changer. + + CLASS-METHODS create + IMPORTING + excel TYPE REF TO zcl_excel + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer + RAISING + zcx_excel. + + PROTECTED SECTION. + PRIVATE SECTION. + + METHODS clear_initial_colorxfields + IMPORTING + is_color TYPE zexcel_s_style_color + CHANGING + cs_xcolor TYPE zexcel_s_cstylex_color. + + METHODS move_supplied_borders + IMPORTING + iv_border_supplied TYPE abap_bool + is_border TYPE zexcel_s_cstyle_border + iv_xborder_supplied TYPE abap_bool + is_xborder TYPE zexcel_s_cstylex_border + CHANGING + cs_complete_style_border TYPE zexcel_s_cstyle_border + cs_complete_stylex_border TYPE zexcel_s_cstylex_border. + + DATA: excel TYPE REF TO zcl_excel, + lv_xborder_supplied TYPE abap_bool, + single_change_requested TYPE zexcel_s_cstylex_complete, + BEGIN OF multiple_change_requested, + complete TYPE abap_bool, + font TYPE abap_bool, + fill TYPE abap_bool, + BEGIN OF borders, + complete TYPE abap_bool, + allborders TYPE abap_bool, + diagonal TYPE abap_bool, + down TYPE abap_bool, + left TYPE abap_bool, + right TYPE abap_bool, + top TYPE abap_bool, + END OF borders, + alignment TYPE abap_bool, + protection TYPE abap_bool, + END OF multiple_change_requested. + CONSTANTS: + lv_border_supplied TYPE abap_bool VALUE abap_true. + ALIASES: + complete_style FOR zif_excel_style_changer~complete_style, + complete_stylex FOR zif_excel_style_changer~complete_stylex. + +ENDCLASS. + + + +CLASS zcl_excel_style_changer IMPLEMENTATION. + + + METHOD clear_initial_colorxfields. + + IF is_color-rgb IS INITIAL. + CLEAR cs_xcolor-rgb. + ENDIF. + IF is_color-indexed IS INITIAL. + CLEAR cs_xcolor-indexed. + ENDIF. + IF is_color-theme IS INITIAL. + CLEAR cs_xcolor-theme. + ENDIF. + IF is_color-tint IS INITIAL. + CLEAR cs_xcolor-tint. + ENDIF. + + ENDMETHOD. + + + METHOD create. + + DATA: style TYPE REF TO zcl_excel_style_changer. + + CREATE OBJECT style. + style->excel = excel. + result = style. + + ENDMETHOD. + + + METHOD move_supplied_borders. + + DATA: cs_borderx TYPE zexcel_s_cstylex_border. + + IF iv_border_supplied = abap_true. " only act if parameter was supplied + IF iv_xborder_supplied = abap_true. " + cs_borderx = is_xborder. " use supplied x-parameter + ELSE. + CLEAR cs_borderx WITH 'X'. " <============================== DDIC structure enh. category to set? + " clear in a way that would be expected to work easily + IF is_border-border_style IS INITIAL. + CLEAR cs_borderx-border_style. + ENDIF. + clear_initial_colorxfields( + EXPORTING + is_color = is_border-border_color + CHANGING + cs_xcolor = cs_borderx-border_color ). + ENDIF. + cs_complete_style_border = is_border. + cs_complete_stylex_border = cs_borderx. + ENDIF. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~apply. + + DATA: stylemapping TYPE zexcel_s_stylemapping, + lo_worksheet TYPE REF TO zcl_excel_worksheet, + l_guid TYPE zexcel_cell_style. + + lo_worksheet = excel->get_worksheet_by_name( ip_sheet_name = ip_worksheet->get_title( ) ). + IF lo_worksheet <> ip_worksheet. + zcx_excel=>raise_text( 'Worksheet doesn''t correspond to workbook of style changer'(001) ). + ENDIF. + + TRY. + ip_worksheet->get_cell( EXPORTING ip_column = ip_column + ip_row = ip_row + IMPORTING ep_guid = l_guid ). + stylemapping = excel->get_style_to_guid( l_guid ). + CATCH zcx_excel. +* Error --> use submitted style + ENDTRY. + + + IF multiple_change_requested-complete = abap_true. + stylemapping-complete_style = complete_style. + stylemapping-complete_stylex = complete_stylex. + ENDIF. + + IF multiple_change_requested-font = abap_true. + stylemapping-complete_style-font = complete_style-font. + stylemapping-complete_stylex-font = complete_stylex-font. + ENDIF. + + IF multiple_change_requested-fill = abap_true. + stylemapping-complete_style-fill = complete_style-fill. + stylemapping-complete_stylex-fill = complete_stylex-fill. + ENDIF. + + IF multiple_change_requested-borders-complete = abap_true. + stylemapping-complete_style-borders = complete_style-borders. + stylemapping-complete_stylex-borders = complete_stylex-borders. + ENDIF. + + IF multiple_change_requested-borders-allborders = abap_true. + stylemapping-complete_style-borders-allborders = complete_style-borders-allborders. + stylemapping-complete_stylex-borders-allborders = complete_stylex-borders-allborders. + ENDIF. + + IF multiple_change_requested-borders-diagonal = abap_true. + stylemapping-complete_style-borders-diagonal = complete_style-borders-diagonal. + stylemapping-complete_stylex-borders-diagonal = complete_stylex-borders-diagonal. + ENDIF. + + IF multiple_change_requested-borders-down = abap_true. + stylemapping-complete_style-borders-down = complete_style-borders-down. + stylemapping-complete_stylex-borders-down = complete_stylex-borders-down. + ENDIF. + + IF multiple_change_requested-borders-left = abap_true. + stylemapping-complete_style-borders-left = complete_style-borders-left. + stylemapping-complete_stylex-borders-left = complete_stylex-borders-left. + ENDIF. + + IF multiple_change_requested-borders-right = abap_true. + stylemapping-complete_style-borders-right = complete_style-borders-right. + stylemapping-complete_stylex-borders-right = complete_stylex-borders-right. + ENDIF. + + IF multiple_change_requested-borders-TOP = abap_true. + stylemapping-complete_style-borders-TOP = complete_style-borders-TOP. + stylemapping-complete_stylex-borders-TOP = complete_stylex-borders-TOP. + ENDIF. + + IF multiple_change_requested-alignment = abap_true. + stylemapping-complete_style-alignment = complete_style-alignment. + stylemapping-complete_stylex-alignment = complete_stylex-alignment. + ENDIF. + + IF multiple_change_requested-protection = abap_true. + stylemapping-complete_style-protection = complete_style-protection. + stylemapping-complete_stylex-protection = complete_stylex-protection. + ENDIF. + + IF complete_stylex-number_format = abap_true. + stylemapping-complete_style-number_format-format_code = complete_style-number_format-format_code. + stylemapping-complete_stylex-number_format-format_code = abap_true. + ENDIF. + IF complete_stylex-font-bold = abap_true. + stylemapping-complete_style-font-bold = complete_style-font-bold. + stylemapping-complete_stylex-font-bold = complete_stylex-font-bold. + ENDIF. + IF complete_stylex-font-color = abap_true. + stylemapping-complete_style-font-color = complete_style-font-color. + stylemapping-complete_stylex-font-color = complete_stylex-font-color. + ENDIF. + IF complete_stylex-font-color-rgb = abap_true. + stylemapping-complete_style-font-color-rgb = complete_style-font-color-rgb. + stylemapping-complete_stylex-font-color-rgb = complete_stylex-font-color-rgb. + ENDIF. + IF complete_stylex-font-color-indexed = abap_true. + stylemapping-complete_style-font-color-indexed = complete_style-font-color-indexed. + stylemapping-complete_stylex-font-color-indexed = complete_stylex-font-color-indexed. + ENDIF. + IF complete_stylex-font-color-theme = abap_true. + stylemapping-complete_style-font-color-theme = complete_style-font-color-theme. + stylemapping-complete_stylex-font-color-theme = complete_stylex-font-color-theme. + ENDIF. + IF complete_stylex-font-color-tint = abap_true. + stylemapping-complete_style-font-color-tint = complete_style-font-color-tint. + stylemapping-complete_stylex-font-color-tint = complete_stylex-font-color-tint. + ENDIF. + IF complete_stylex-font-family = abap_true. + stylemapping-complete_style-font-family = complete_style-font-family. + stylemapping-complete_stylex-font-family = complete_stylex-font-family. + ENDIF. + IF complete_stylex-font-italic = abap_true. + stylemapping-complete_style-font-italic = complete_style-font-italic. + stylemapping-complete_stylex-font-italic = complete_stylex-font-italic. + ENDIF. + IF complete_stylex-font-name = abap_true. + stylemapping-complete_style-font-name = complete_style-font-name. + stylemapping-complete_stylex-font-name = complete_stylex-font-name. + ENDIF. + IF complete_stylex-font-scheme = abap_true. + stylemapping-complete_style-font-scheme = complete_style-font-scheme. + stylemapping-complete_stylex-font-scheme = complete_stylex-font-scheme. + ENDIF. + IF complete_stylex-font-size = abap_true. + stylemapping-complete_style-font-size = complete_style-font-size. + stylemapping-complete_stylex-font-size = complete_stylex-font-size. + ENDIF. + IF complete_stylex-font-strikethrough = abap_true. + stylemapping-complete_style-font-strikethrough = complete_style-font-strikethrough. + stylemapping-complete_stylex-font-strikethrough = complete_stylex-font-strikethrough. + ENDIF. + IF complete_stylex-font-underline = abap_true. + stylemapping-complete_style-font-underline = complete_style-font-underline. + stylemapping-complete_stylex-font-underline = complete_stylex-font-underline. + ENDIF. + IF complete_stylex-font-underline_mode = abap_true. + stylemapping-complete_style-font-underline_mode = complete_style-font-underline_mode. + stylemapping-complete_stylex-font-underline_mode = complete_stylex-font-underline_mode. + ENDIF. + + IF complete_stylex-fill-filltype = abap_true. + stylemapping-complete_style-fill-filltype = complete_style-fill-filltype. + stylemapping-complete_stylex-fill-filltype = complete_stylex-fill-filltype. + ENDIF. + IF complete_stylex-fill-rotation = abap_true. + stylemapping-complete_style-fill-rotation = complete_style-fill-rotation. + stylemapping-complete_stylex-fill-rotation = complete_stylex-fill-rotation. + ENDIF. + IF complete_stylex-fill-fgcolor = abap_true. + stylemapping-complete_style-fill-fgcolor = complete_style-fill-fgcolor. + stylemapping-complete_stylex-fill-fgcolor = complete_stylex-fill-fgcolor. + ENDIF. + IF complete_stylex-fill-fgcolor-rgb = abap_true. + stylemapping-complete_style-fill-fgcolor-rgb = complete_style-fill-fgcolor-rgb. + stylemapping-complete_stylex-fill-fgcolor-rgb = complete_stylex-fill-fgcolor-rgb. + ENDIF. + IF complete_stylex-fill-fgcolor-indexed = abap_true. + stylemapping-complete_style-fill-fgcolor-indexed = complete_style-fill-fgcolor-indexed. + stylemapping-complete_stylex-fill-fgcolor-indexed = complete_stylex-fill-fgcolor-indexed. + ENDIF. + IF complete_stylex-fill-fgcolor-theme = abap_true. + stylemapping-complete_style-fill-fgcolor-theme = complete_style-fill-fgcolor-theme. + stylemapping-complete_stylex-fill-fgcolor-theme = complete_stylex-fill-fgcolor-theme. + ENDIF. + IF complete_stylex-fill-fgcolor-tint = abap_true. + stylemapping-complete_style-fill-fgcolor-tint = complete_style-fill-fgcolor-tint. + stylemapping-complete_stylex-fill-fgcolor-tint = complete_stylex-fill-fgcolor-tint. + ENDIF. + + IF complete_stylex-fill-bgcolor = abap_true. + stylemapping-complete_style-fill-bgcolor = complete_style-fill-bgcolor. + stylemapping-complete_stylex-fill-bgcolor = complete_stylex-fill-bgcolor. + ENDIF. + IF complete_stylex-fill-bgcolor-rgb = abap_true. + stylemapping-complete_style-fill-bgcolor-rgb = complete_style-fill-bgcolor-rgb. + stylemapping-complete_stylex-fill-bgcolor-rgb = complete_stylex-fill-bgcolor-rgb. + ENDIF. + IF complete_stylex-fill-bgcolor-indexed = abap_true. + stylemapping-complete_style-fill-bgcolor-indexed = complete_style-fill-bgcolor-indexed. + stylemapping-complete_stylex-fill-bgcolor-indexed = complete_stylex-fill-bgcolor-indexed. + ENDIF. + IF complete_stylex-fill-bgcolor-theme = abap_true. + stylemapping-complete_style-fill-bgcolor-theme = complete_style-fill-bgcolor-theme. + stylemapping-complete_stylex-fill-bgcolor-theme = complete_stylex-fill-bgcolor-theme. + ENDIF. + IF complete_stylex-fill-bgcolor-tint = abap_true. + stylemapping-complete_style-fill-bgcolor-tint = complete_style-fill-bgcolor-tint. + stylemapping-complete_stylex-fill-bgcolor-tint = complete_stylex-fill-bgcolor-tint. + ENDIF. + + IF complete_stylex-fill-gradtype-type = abap_true. + stylemapping-complete_style-fill-gradtype-type = complete_style-fill-gradtype-type. + stylemapping-complete_stylex-fill-gradtype-type = complete_stylex-fill-gradtype-type. + ENDIF. + IF complete_stylex-fill-gradtype-degree = abap_true. + stylemapping-complete_style-fill-gradtype-degree = complete_style-fill-gradtype-degree. + stylemapping-complete_stylex-fill-gradtype-degree = complete_stylex-fill-gradtype-degree. + ENDIF. + IF complete_stylex-fill-gradtype-bottom = abap_true. + stylemapping-complete_style-fill-gradtype-bottom = complete_style-fill-gradtype-bottom. + stylemapping-complete_stylex-fill-gradtype-bottom = complete_stylex-fill-gradtype-bottom. + ENDIF. + IF complete_stylex-fill-gradtype-left = abap_true. + stylemapping-complete_style-fill-gradtype-left = complete_style-fill-gradtype-left. + stylemapping-complete_stylex-fill-gradtype-left = complete_stylex-fill-gradtype-left. + ENDIF. + IF complete_stylex-fill-gradtype-top = abap_true. + stylemapping-complete_style-fill-gradtype-top = complete_style-fill-gradtype-top. + stylemapping-complete_stylex-fill-gradtype-top = complete_stylex-fill-gradtype-top. + ENDIF. + IF complete_stylex-fill-gradtype-right = abap_true. + stylemapping-complete_style-fill-gradtype-right = complete_style-fill-gradtype-right. + stylemapping-complete_stylex-fill-gradtype-right = complete_stylex-fill-gradtype-right. + ENDIF. + IF complete_stylex-fill-gradtype-position1 = abap_true. + stylemapping-complete_style-fill-gradtype-position1 = complete_style-fill-gradtype-position1. + stylemapping-complete_stylex-fill-gradtype-position1 = complete_stylex-fill-gradtype-position1. + ENDIF. + IF complete_stylex-fill-gradtype-position2 = abap_true. + stylemapping-complete_style-fill-gradtype-position2 = complete_style-fill-gradtype-position2. + stylemapping-complete_stylex-fill-gradtype-position2 = complete_stylex-fill-gradtype-position2. + ENDIF. + IF complete_stylex-fill-gradtype-position3 = abap_true. + stylemapping-complete_style-fill-gradtype-position3 = complete_style-fill-gradtype-position3. + stylemapping-complete_stylex-fill-gradtype-position3 = complete_stylex-fill-gradtype-position3. + ENDIF. + + + + IF complete_stylex-borders-diagonal_mode = abap_true. + stylemapping-complete_style-borders-diagonal_mode = complete_style-borders-diagonal_mode. + stylemapping-complete_stylex-borders-diagonal_mode = complete_stylex-borders-diagonal_mode. + ENDIF. + IF complete_stylex-alignment-horizontal = abap_true. + stylemapping-complete_style-alignment-horizontal = complete_style-alignment-horizontal. + stylemapping-complete_stylex-alignment-horizontal = complete_stylex-alignment-horizontal. + ENDIF. + IF complete_stylex-alignment-vertical = abap_true. + stylemapping-complete_style-alignment-vertical = complete_style-alignment-vertical. + stylemapping-complete_stylex-alignment-vertical = complete_stylex-alignment-vertical. + ENDIF. + IF complete_stylex-alignment-textrotation = abap_true. + stylemapping-complete_style-alignment-textrotation = complete_style-alignment-textrotation. + stylemapping-complete_stylex-alignment-textrotation = complete_stylex-alignment-textrotation. + ENDIF. + IF complete_stylex-alignment-wraptext = abap_true. + stylemapping-complete_style-alignment-wraptext = complete_style-alignment-wraptext. + stylemapping-complete_stylex-alignment-wraptext = complete_stylex-alignment-wraptext. + ENDIF. + IF complete_stylex-alignment-shrinktofit = abap_true. + stylemapping-complete_style-alignment-shrinktofit = complete_style-alignment-shrinktofit. + stylemapping-complete_stylex-alignment-shrinktofit = complete_stylex-alignment-shrinktofit. + ENDIF. + IF complete_stylex-alignment-indent = abap_true. + stylemapping-complete_style-alignment-indent = complete_style-alignment-indent. + stylemapping-complete_stylex-alignment-indent = complete_stylex-alignment-indent. + ENDIF. + IF complete_stylex-protection-hidden = abap_true. + stylemapping-complete_style-protection-hidden = complete_style-protection-hidden. + stylemapping-complete_stylex-protection-hidden = complete_stylex-protection-hidden. + ENDIF. + IF complete_stylex-protection-locked = abap_true. + stylemapping-complete_style-protection-locked = complete_style-protection-locked. + stylemapping-complete_stylex-protection-locked = complete_stylex-protection-locked. + ENDIF. + + IF complete_stylex-borders-allborders-border_style = abap_true. + stylemapping-complete_style-borders-allborders-border_style = complete_style-borders-allborders-border_style. + stylemapping-complete_stylex-borders-allborders-border_style = complete_stylex-borders-allborders-border_style. + ENDIF. + IF complete_stylex-borders-allborders-border_color-rgb = abap_true. + stylemapping-complete_style-borders-allborders-border_color-rgb = complete_style-borders-allborders-border_color-rgb. + stylemapping-complete_stylex-borders-allborders-border_color-rgb = complete_stylex-borders-allborders-border_color-rgb. + ENDIF. + IF complete_stylex-borders-allborders-border_color-indexed = abap_true. + stylemapping-complete_style-borders-allborders-border_color-indexed = complete_style-borders-allborders-border_color-indexed. + stylemapping-complete_stylex-borders-allborders-border_color-indexed = complete_stylex-borders-allborders-border_color-indexed. + ENDIF. + IF complete_stylex-borders-allborders-border_color-theme = abap_true. + stylemapping-complete_style-borders-allborders-border_color-theme = complete_style-borders-allborders-border_color-theme. + stylemapping-complete_stylex-borders-allborders-border_color-theme = complete_stylex-borders-allborders-border_color-theme. + ENDIF. + IF complete_stylex-borders-allborders-border_color-tint = abap_true. + stylemapping-complete_style-borders-allborders-border_color-tint = complete_style-borders-allborders-border_color-tint. + stylemapping-complete_stylex-borders-allborders-border_color-tint = complete_stylex-borders-allborders-border_color-tint. + ENDIF. + + IF complete_stylex-borders-diagonal-border_style = abap_true. + stylemapping-complete_style-borders-diagonal-border_style = complete_style-borders-diagonal-border_style. + stylemapping-complete_stylex-borders-diagonal-border_style = complete_stylex-borders-diagonal-border_style. + ENDIF. + IF complete_stylex-borders-diagonal-border_color-rgb = abap_true. + stylemapping-complete_style-borders-diagonal-border_color-rgb = complete_style-borders-diagonal-border_color-rgb. + stylemapping-complete_stylex-borders-diagonal-border_color-rgb = complete_stylex-borders-diagonal-border_color-rgb. + ENDIF. + IF complete_stylex-borders-diagonal-border_color-indexed = abap_true. + stylemapping-complete_style-borders-diagonal-border_color-indexed = complete_style-borders-diagonal-border_color-indexed. + stylemapping-complete_stylex-borders-diagonal-border_color-indexed = complete_stylex-borders-diagonal-border_color-indexed. + ENDIF. + IF complete_stylex-borders-diagonal-border_color-theme = abap_true. + stylemapping-complete_style-borders-diagonal-border_color-theme = complete_style-borders-diagonal-border_color-theme. + stylemapping-complete_stylex-borders-diagonal-border_color-theme = complete_stylex-borders-diagonal-border_color-theme. + ENDIF. + IF complete_stylex-borders-diagonal-border_color-tint = abap_true. + stylemapping-complete_style-borders-diagonal-border_color-tint = complete_style-borders-diagonal-border_color-tint. + stylemapping-complete_stylex-borders-diagonal-border_color-tint = complete_stylex-borders-diagonal-border_color-tint. + ENDIF. + + IF complete_stylex-borders-down-border_style = abap_true. + stylemapping-complete_style-borders-down-border_style = complete_style-borders-down-border_style. + stylemapping-complete_stylex-borders-down-border_style = complete_stylex-borders-down-border_style. + ENDIF. + IF complete_stylex-borders-down-border_color-rgb = abap_true. + stylemapping-complete_style-borders-down-border_color-rgb = complete_style-borders-down-border_color-rgb. + stylemapping-complete_stylex-borders-down-border_color-rgb = complete_stylex-borders-down-border_color-rgb. + ENDIF. + IF complete_stylex-borders-down-border_color-indexed = abap_true. + stylemapping-complete_style-borders-down-border_color-indexed = complete_style-borders-down-border_color-indexed. + stylemapping-complete_stylex-borders-down-border_color-indexed = complete_stylex-borders-down-border_color-indexed. + ENDIF. + IF complete_stylex-borders-down-border_color-theme = abap_true. + stylemapping-complete_style-borders-down-border_color-theme = complete_style-borders-down-border_color-theme. + stylemapping-complete_stylex-borders-down-border_color-theme = complete_stylex-borders-down-border_color-theme. + ENDIF. + IF complete_stylex-borders-down-border_color-tint = abap_true. + stylemapping-complete_style-borders-down-border_color-tint = complete_style-borders-down-border_color-tint. + stylemapping-complete_stylex-borders-down-border_color-tint = complete_stylex-borders-down-border_color-tint. + ENDIF. + + IF complete_stylex-borders-left-border_style = abap_true. + stylemapping-complete_style-borders-left-border_style = complete_style-borders-left-border_style. + stylemapping-complete_stylex-borders-left-border_style = complete_stylex-borders-left-border_style. + ENDIF. + IF complete_stylex-borders-left-border_color-rgb = abap_true. + stylemapping-complete_style-borders-left-border_color-rgb = complete_style-borders-left-border_color-rgb. + stylemapping-complete_stylex-borders-left-border_color-rgb = complete_stylex-borders-left-border_color-rgb. + ENDIF. + IF complete_stylex-borders-left-border_color-indexed = abap_true. + stylemapping-complete_style-borders-left-border_color-indexed = complete_style-borders-left-border_color-indexed. + stylemapping-complete_stylex-borders-left-border_color-indexed = complete_stylex-borders-left-border_color-indexed. + ENDIF. + IF complete_stylex-borders-left-border_color-theme = abap_true. + stylemapping-complete_style-borders-left-border_color-theme = complete_style-borders-left-border_color-theme. + stylemapping-complete_stylex-borders-left-border_color-theme = complete_stylex-borders-left-border_color-theme. + ENDIF. + IF complete_stylex-borders-left-border_color-tint = abap_true. + stylemapping-complete_style-borders-left-border_color-tint = complete_style-borders-left-border_color-tint. + stylemapping-complete_stylex-borders-left-border_color-tint = complete_stylex-borders-left-border_color-tint. + ENDIF. + + IF complete_stylex-borders-right-border_style = abap_true. + stylemapping-complete_style-borders-right-border_style = complete_style-borders-right-border_style. + stylemapping-complete_stylex-borders-right-border_style = complete_stylex-borders-right-border_style. + ENDIF. + IF complete_stylex-borders-right-border_color-rgb = abap_true. + stylemapping-complete_style-borders-right-border_color-rgb = complete_style-borders-right-border_color-rgb. + stylemapping-complete_stylex-borders-right-border_color-rgb = complete_stylex-borders-right-border_color-rgb. + ENDIF. + IF complete_stylex-borders-right-border_color-indexed = abap_true. + stylemapping-complete_style-borders-right-border_color-indexed = complete_style-borders-right-border_color-indexed. + stylemapping-complete_stylex-borders-right-border_color-indexed = complete_stylex-borders-right-border_color-indexed. + ENDIF. + IF complete_stylex-borders-right-border_color-theme = abap_true. + stylemapping-complete_style-borders-right-border_color-theme = complete_style-borders-right-border_color-theme. + stylemapping-complete_stylex-borders-right-border_color-theme = complete_stylex-borders-right-border_color-theme. + ENDIF. + IF complete_stylex-borders-right-border_color-tint = abap_true. + stylemapping-complete_style-borders-right-border_color-tint = complete_style-borders-right-border_color-tint. + stylemapping-complete_stylex-borders-right-border_color-tint = complete_stylex-borders-right-border_color-tint. + ENDIF. + + IF complete_stylex-borders-top-border_style = abap_true. + stylemapping-complete_style-borders-top-border_style = complete_style-borders-top-border_style. + stylemapping-complete_stylex-borders-top-border_style = complete_stylex-borders-top-border_style. + ENDIF. + IF complete_stylex-borders-top-border_color-rgb = abap_true. + stylemapping-complete_style-borders-top-border_color-rgb = complete_style-borders-top-border_color-rgb. + stylemapping-complete_stylex-borders-top-border_color-rgb = complete_stylex-borders-top-border_color-rgb. + ENDIF. + IF complete_stylex-borders-top-border_color-indexed = abap_true. + stylemapping-complete_style-borders-top-border_color-indexed = complete_style-borders-top-border_color-indexed. + stylemapping-complete_stylex-borders-top-border_color-indexed = complete_stylex-borders-top-border_color-indexed. + ENDIF. + IF complete_stylex-borders-top-border_color-theme = abap_true. + stylemapping-complete_style-borders-top-border_color-theme = complete_style-borders-top-border_color-theme. + stylemapping-complete_stylex-borders-top-border_color-theme = complete_stylex-borders-top-border_color-theme. + ENDIF. + IF complete_stylex-borders-top-border_color-tint = abap_true. + stylemapping-complete_style-borders-top-border_color-tint = complete_style-borders-top-border_color-tint. + stylemapping-complete_stylex-borders-top-border_color-tint = complete_stylex-borders-top-border_color-tint. + ENDIF. + + +* Now we have a completly filled styles. +* This can be used to get the guid +* Return guid if requested. Might be used if copy&paste of styles is requested + ep_guid = me->excel->get_static_cellstyle_guid( ip_cstyle_complete = stylemapping-complete_style + ip_cstylex_complete = stylemapping-complete_stylex ). + lo_worksheet->set_cell_style( ip_column = ip_column + ip_row = ip_row + ip_style = ep_guid ). + + ENDMETHOD. + + + METHOD zif_excel_style_changer~get_guid. + + result = excel->get_static_cellstyle_guid( ip_cstyle_complete = complete_style + ip_cstylex_complete = complete_stylex ). + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_size. + + complete_style-font-size = value. + complete_stylex-font-size = abap_true. + single_change_requested-font-size = abap_true. + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_number_format. + + complete_style-number_format-format_code = value. + complete_stylex-number_format-format_code = abap_true. + single_change_requested-number_format-format_code = abap_true. + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete. + + complete_style = ip_complete. + complete_stylex = ip_xcomplete. + multiple_change_requested-complete = abap_true. + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_font. + + DATA: fontx TYPE zexcel_s_cstylex_font. + + IF ip_xfont IS SUPPLIED. + fontx = ip_xfont. + ELSE. +* Only supplied values should be used - exception: Flags bold and italic strikethrough underline + MOVE 'X' TO: fontx-bold, + fontx-italic, + fontx-strikethrough, + fontx-underline_mode. + CLEAR fontx-color WITH 'X'. + clear_initial_colorxfields( + EXPORTING + is_color = ip_font-color + CHANGING + cs_xcolor = fontx-color ). + IF ip_font-family IS NOT INITIAL. + fontx-family = 'X'. + ENDIF. + IF ip_font-name IS NOT INITIAL. + fontx-name = 'X'. + ENDIF. + IF ip_font-scheme IS NOT INITIAL. + fontx-scheme = 'X'. + ENDIF. + IF ip_font-size IS NOT INITIAL. + fontx-size = 'X'. + ENDIF. + IF ip_font-underline_mode IS NOT INITIAL. + fontx-underline_mode = 'X'. + ENDIF. + ENDIF. + + complete_style-font = ip_font. + complete_stylex-font = fontx. + multiple_change_requested-font = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_fill. + + DATA: fillx LIKE ip_xfill. + IF ip_xfill IS SUPPLIED. + fillx = ip_xfill. + ELSE. + CLEAR fillx WITH 'X'. + IF ip_fill-filltype IS INITIAL. + CLEAR fillx-filltype. + ENDIF. + clear_initial_colorxfields( + EXPORTING + is_color = ip_fill-fgcolor + CHANGING + cs_xcolor = fillx-fgcolor ). + clear_initial_colorxfields( + EXPORTING + is_color = ip_fill-bgcolor + CHANGING + cs_xcolor = fillx-bgcolor ). + + ENDIF. + + complete_style-fill = ip_fill. + complete_stylex-fill = fillx. + multiple_change_requested-fill = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders. + + DATA: bordersx LIKE ip_xborders. + IF ip_xborders IS SUPPLIED. + bordersx = ip_xborders. + ELSE. + CLEAR bordersx WITH 'X'. + IF ip_borders-allborders-border_style IS INITIAL. + CLEAR bordersx-allborders-border_style. + ENDIF. + IF ip_borders-diagonal-border_style IS INITIAL. + CLEAR bordersx-diagonal-border_style. + ENDIF. + IF ip_borders-down-border_style IS INITIAL. + CLEAR bordersx-down-border_style. + ENDIF. + IF ip_borders-left-border_style IS INITIAL. + CLEAR bordersx-left-border_style. + ENDIF. + IF ip_borders-right-border_style IS INITIAL. + CLEAR bordersx-right-border_style. + ENDIF. + IF ip_borders-top-border_style IS INITIAL. + CLEAR bordersx-top-border_style. + ENDIF. + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-allborders-border_color + CHANGING + cs_xcolor = bordersx-allborders-border_color ). + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-diagonal-border_color + CHANGING + cs_xcolor = bordersx-diagonal-border_color ). + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-down-border_color + CHANGING + cs_xcolor = bordersx-down-border_color ). + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-left-border_color + CHANGING + cs_xcolor = bordersx-left-border_color ). + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-right-border_color + CHANGING + cs_xcolor = bordersx-right-border_color ). + + clear_initial_colorxfields( + EXPORTING + is_color = ip_borders-top-border_color + CHANGING + cs_xcolor = bordersx-top-border_color ). + + ENDIF. + + complete_style-borders = ip_borders. + complete_stylex-borders = bordersx. + multiple_change_requested-borders-complete = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_alignment. + + DATA: alignmentx LIKE ip_xalignment. + + IF ip_xalignment IS SUPPLIED. + alignmentx = ip_xalignment. + ELSE. + CLEAR alignmentx WITH 'X'. + IF ip_alignment-horizontal IS INITIAL. + CLEAR alignmentx-horizontal. + ENDIF. + IF ip_alignment-vertical IS INITIAL. + CLEAR alignmentx-vertical. + ENDIF. + ENDIF. + + complete_style-alignment = ip_alignment . + complete_stylex-alignment = alignmentx . + multiple_change_requested-alignment = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_protection. + + MOVE-CORRESPONDING ip_protection TO complete_style-protection. + IF ip_xprotection IS SUPPLIED. + MOVE-CORRESPONDING ip_xprotection TO complete_stylex-protection. + ELSE. + IF ip_protection-hidden IS NOT INITIAL. + complete_stylex-protection-hidden = 'X'. + ENDIF. + IF ip_protection-locked IS NOT INITIAL. + complete_stylex-protection-locked = 'X'. + ENDIF. + ENDIF. + multiple_change_requested-protection = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_all. + +* lv_border_supplied = boolc( ip_borders_allborders IS SUPPLIED ). + lv_xborder_supplied = boolc( ip_xborders_allborders IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_allborders + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_allborders + CHANGING + cs_complete_style_border = complete_style-borders-allborders + cs_complete_stylex_border = complete_stylex-borders-allborders ). + multiple_change_requested-borders-allborders = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_diagonal. + + lv_xborder_supplied = boolc( ip_xborders_diagonal IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_diagonal + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_diagonal + CHANGING + cs_complete_style_border = complete_style-borders-diagonal + cs_complete_stylex_border = complete_stylex-borders-diagonal ). + multiple_change_requested-borders-diagonal = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_down. + + lv_xborder_supplied = boolc( ip_xborders_down IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_down + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_down + CHANGING + cs_complete_style_border = complete_style-borders-down + cs_complete_stylex_border = complete_stylex-borders-down ). + multiple_change_requested-borders-down = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_left. + + lv_xborder_supplied = boolc( ip_xborders_left IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_left + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_left + CHANGING + cs_complete_style_border = complete_style-borders-left + cs_complete_stylex_border = complete_stylex-borders-left ). + multiple_change_requested-borders-left = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_right. + + lv_xborder_supplied = boolc( ip_xborders_right IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_right + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_right + CHANGING + cs_complete_style_border = complete_style-borders-right + cs_complete_stylex_border = complete_stylex-borders-right ). + multiple_change_requested-borders-right = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_complete_borders_top. + + lv_xborder_supplied = boolc( ip_xborders_top IS SUPPLIED ). + move_supplied_borders( + EXPORTING + iv_border_supplied = lv_border_supplied + is_border = ip_borders_top + iv_xborder_supplied = lv_xborder_supplied + is_xborder = ip_xborders_top + CHANGING + cs_complete_style_border = complete_style-borders-top + cs_complete_stylex_border = complete_stylex-borders-top ). + multiple_change_requested-borders-top = abap_true. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_bold. + + complete_style-font-bold = value. + complete_stylex-font-bold = 'X'. + single_change_requested-font-bold = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_color. + + complete_style-font-color = value. + complete_stylex-font-color-rgb = 'X'. + single_change_requested-font-color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_color_rgb. + + complete_style-font-color-rgb = value. + complete_stylex-font-color-rgb = 'X'. + single_change_requested-font-color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_color_indexed. + + complete_style-font-color-indexed = value. + complete_stylex-font-color-indexed = 'X'. + single_change_requested-font-color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_color_theme. + + complete_style-font-color-theme = value. + complete_stylex-font-color-theme = 'X'. + single_change_requested-font-color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_color_tint. + + complete_style-font-color-tint = value. + complete_stylex-font-color-tint = 'X'. + single_change_requested-font-color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_family. + + complete_style-font-family = value. + complete_stylex-font-family = 'X'. + single_change_requested-font-family = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_italic. + + complete_style-font-italic = value. + complete_stylex-font-italic = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_name. + + complete_style-font-name = value. + complete_stylex-font-name = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_scheme. + + complete_style-font-scheme = value. + complete_stylex-font-scheme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_strikethrough. + + complete_style-font-strikethrough = value. + complete_stylex-font-strikethrough = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_underline. + + complete_style-font-underline = value. + complete_stylex-font-underline = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_font_underline_mode. + + complete_style-font-underline_mode = value. + complete_stylex-font-underline_mode = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_filltype. + + complete_style-fill-filltype = value. + complete_stylex-fill-filltype = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_rotation. + + complete_style-fill-rotation = value. + complete_stylex-fill-rotation = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_fgcolor. + + complete_style-fill-fgcolor = value. + complete_stylex-fill-fgcolor-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_fgcolor_rgb. + + complete_style-fill-fgcolor-rgb = value. + complete_stylex-fill-fgcolor-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_fgcolor_indexed. + + complete_style-fill-fgcolor-indexed = value. + complete_stylex-fill-fgcolor-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_fgcolor_theme. + + complete_style-fill-fgcolor-theme = value. + complete_stylex-fill-fgcolor-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_fgcolor_tint. + + complete_style-fill-fgcolor-tint = value. + complete_stylex-fill-fgcolor-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_bgcolor. + + complete_style-fill-bgcolor = value. + complete_stylex-fill-bgcolor-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_bgcolor_rgb. + + complete_style-fill-bgcolor-rgb = value. + complete_stylex-fill-bgcolor-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_bgcolor_indexed. + + complete_style-fill-bgcolor-indexed = value. + complete_stylex-fill-bgcolor-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_bgcolor_theme. + + complete_style-fill-bgcolor-theme = value. + complete_stylex-fill-bgcolor-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_bgcolor_tint. + + complete_style-fill-bgcolor-tint = value. + complete_stylex-fill-bgcolor-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_type. + + complete_style-fill-gradtype-type = value. + complete_stylex-fill-gradtype-type = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_degree. + + complete_style-fill-gradtype-degree = value. + complete_stylex-fill-gradtype-degree = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_bottom. + + complete_style-fill-gradtype-bottom = value. + complete_stylex-fill-gradtype-bottom = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_left. + + complete_style-fill-gradtype-left = value. + complete_stylex-fill-gradtype-left = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_top. + + complete_style-fill-gradtype-top = value. + complete_stylex-fill-gradtype-top = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_right. + + complete_style-fill-gradtype-right = value. + complete_stylex-fill-gradtype-right = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_position1. + + complete_style-fill-gradtype-position1 = value. + complete_stylex-fill-gradtype-position1 = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_position2. + + complete_style-fill-gradtype-position2 = value. + complete_stylex-fill-gradtype-position2 = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_fill_gradtype_position3. + + complete_style-fill-gradtype-position3 = value. + complete_stylex-fill-gradtype-position3 = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_mode. + + complete_style-borders-diagonal_mode = value. + complete_stylex-borders-diagonal_mode = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_horizontal. + + complete_style-alignment-horizontal = value. + complete_stylex-alignment-horizontal = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_vertical. + + complete_style-alignment-vertical = value. + complete_stylex-alignment-vertical = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_textrotation. + + complete_style-alignment-textrotation = value. + complete_stylex-alignment-textrotation = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_wraptext. + + complete_style-alignment-wraptext = value. + complete_stylex-alignment-wraptext = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_shrinktofit. + + complete_style-alignment-shrinktofit = value. + complete_stylex-alignment-shrinktofit = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_alignment_indent. + + complete_style-alignment-indent = value. + complete_stylex-alignment-indent = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_protection_hidden. + + complete_style-protection-hidden = value. + complete_stylex-protection-hidden = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_protection_locked. + + complete_style-protection-locked = value. + complete_stylex-protection-locked = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allborders_style. + + complete_style-borders-allborders-border_style = value. + complete_stylex-borders-allborders-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allborders_color. + + complete_style-borders-allborders-border_color = value. + complete_stylex-borders-allborders-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allbo_color_rgb. + + complete_style-borders-allborders-border_color-rgb = value. + complete_stylex-borders-allborders-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allbo_color_indexe. + + complete_style-borders-allborders-border_color-indexed = value. + complete_stylex-borders-allborders-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allbo_color_theme. + + complete_style-borders-allborders-border_color-theme = value. + complete_stylex-borders-allborders-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_allbo_color_tint. + + complete_style-borders-allborders-border_color-tint = value. + complete_stylex-borders-allborders-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_style. + + complete_style-borders-diagonal-border_style = value. + complete_stylex-borders-diagonal-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_color. + + complete_style-borders-diagonal-border_color = value. + complete_stylex-borders-diagonal-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_color_rgb. + + complete_style-borders-diagonal-border_color-rgb = value. + complete_stylex-borders-diagonal-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_color_ind. + + complete_style-borders-diagonal-border_color-indexed = value. + complete_stylex-borders-diagonal-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_color_the. + + complete_style-borders-diagonal-border_color-theme = value. + complete_stylex-borders-diagonal-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_diagonal_color_tin. + + complete_style-borders-diagonal-border_color-tint = value. + complete_stylex-borders-diagonal-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_style. + + complete_style-borders-down-border_style = value. + complete_stylex-borders-down-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_color. + + complete_style-borders-down-border_color = value. + complete_stylex-borders-down-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_color_rgb. + + complete_style-borders-down-border_color-rgb = value. + complete_stylex-borders-down-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_color_indexed. + + complete_style-borders-down-border_color-indexed = value. + complete_stylex-borders-down-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_color_theme. + + complete_style-borders-down-border_color-theme = value. + complete_stylex-borders-down-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_down_color_tint. + + complete_style-borders-down-border_color-tint = value. + complete_stylex-borders-down-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_style. + + complete_style-borders-left-border_style = value. + complete_stylex-borders-left-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_color. + + complete_style-borders-left-border_color = value. + complete_stylex-borders-left-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_color_rgb. + + complete_style-borders-left-border_color-rgb = value. + complete_stylex-borders-left-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_color_indexed. + + complete_style-borders-left-border_color-indexed = value. + complete_stylex-borders-left-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_color_theme. + + complete_style-borders-left-border_color-theme = value. + complete_stylex-borders-left-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_left_color_tint. + + complete_style-borders-left-border_color-tint = value. + complete_stylex-borders-left-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_style. + + complete_style-borders-right-border_style = value. + complete_stylex-borders-right-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_color. + + complete_style-borders-right-border_color = value. + complete_stylex-borders-right-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_color_rgb. + + complete_style-borders-right-border_color-rgb = value. + complete_stylex-borders-right-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_color_indexe. + + complete_style-borders-right-border_color-indexed = value. + complete_stylex-borders-right-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_color_theme. + + complete_style-borders-right-border_color-theme = value. + complete_stylex-borders-right-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_right_color_tint. + + complete_style-borders-right-border_color-tint = value. + complete_stylex-borders-right-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_style. + + complete_style-borders-top-border_style = value. + complete_stylex-borders-top-border_style = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_color. + + complete_style-borders-top-border_color = value. + complete_stylex-borders-top-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_color_rgb. + + complete_style-borders-top-border_color-rgb = value. + complete_stylex-borders-top-border_color-rgb = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_color_indexed. + + complete_style-borders-top-border_color-indexed = value. + complete_stylex-borders-top-border_color-indexed = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_color_theme. + + complete_style-borders-top-border_color-theme = value. + complete_stylex-borders-top-border_color-theme = 'X'. + + result = me. + + ENDMETHOD. + + + METHOD zif_excel_style_changer~set_borders_top_color_tint. + + complete_style-borders-top-border_color-tint = value. + complete_stylex-borders-top-border_color-tint = 'X'. + + result = me. + + ENDMETHOD. + + +ENDCLASS. diff --git a/src/zcl_excel_style_changer.clas.xml b/src/zcl_excel_style_changer.clas.xml new file mode 100644 index 0000000..5b262b8 --- /dev/null +++ b/src/zcl_excel_style_changer.clas.xml @@ -0,0 +1,16 @@ + + + + + + ZCL_EXCEL_STYLE_CHANGER + E + Style changer + 1 + X + X + X + + + + diff --git a/src/zcl_excel_worksheet.clas.abap b/src/zcl_excel_worksheet.clas.abap index 1532826..b5ada1f 100644 --- a/src/zcl_excel_worksheet.clas.abap +++ b/src/zcl_excel_worksheet.clas.abap @@ -1388,619 +1388,374 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. METHOD change_cell_style. - " issue # 139 - DATA: stylemapping TYPE zexcel_s_stylemapping, - complete_style TYPE zexcel_s_cstyle_complete, - complete_stylex TYPE zexcel_s_cstylex_complete, - l_guid TYPE zexcel_cell_style. "issue # 177 - DATA: lv_border_supplied TYPE abap_bool, - lv_xborder_supplied TYPE abap_bool, - lv_style_supplied TYPE abap_bool. -* First get current stylsettings - TRY. - me->get_cell( EXPORTING ip_column = ip_column " Cell Column - ip_row = ip_row " Cell Row - IMPORTING ep_guid = l_guid )." Cell Value ). "issue # 177 + DATA: changer TYPE REF TO zif_excel_style_changer. - stylemapping = me->excel->get_style_to_guid( l_guid ). "issue # 177 - complete_style = stylemapping-complete_style. - complete_stylex = stylemapping-complete_stylex. - CATCH zcx_excel. -* Error --> use submitted style - ENDTRY. + changer = zcl_excel_style_changer=>create( excel = excel ). + -* move_supplied_multistyles: complete. IF ip_complete IS SUPPLIED. IF ip_xcomplete IS NOT SUPPLIED. zcx_excel=>raise_text( 'Complete styleinfo has to be supplied with corresponding X-field' ). ENDIF. - MOVE-CORRESPONDING ip_complete TO complete_style. - MOVE-CORRESPONDING ip_xcomplete TO complete_stylex. + changer->set_complete( ip_complete = ip_complete ip_xcomplete = ip_xcomplete ). ENDIF. IF ip_font IS SUPPLIED. - DATA: fontx LIKE ip_xfont. IF ip_xfont IS SUPPLIED. - fontx = ip_xfont. + changer->set_complete_font( ip_font = ip_font ip_xfont = ip_xfont ). ELSE. -* Only supplied values should be used - exception: Flags bold and italic strikethrough underline - MOVE 'X' TO: fontx-bold, - fontx-italic, - fontx-strikethrough, - fontx-underline_mode. - CLEAR fontx-color WITH 'X'. - clear_initial_colorxfields( - EXPORTING - is_color = ip_font-color - CHANGING - cs_xcolor = fontx-color ). - IF ip_font-family IS NOT INITIAL. - fontx-family = 'X'. - ENDIF. - IF ip_font-name IS NOT INITIAL. - fontx-name = 'X'. - ENDIF. - IF ip_font-scheme IS NOT INITIAL. - fontx-scheme = 'X'. - ENDIF. - IF ip_font-size IS NOT INITIAL. - fontx-size = 'X'. - ENDIF. - IF ip_font-underline_mode IS NOT INITIAL. - fontx-underline_mode = 'X'. - ENDIF. + changer->set_complete_font( ip_font = ip_font ). ENDIF. - MOVE-CORRESPONDING ip_font TO complete_style-font. - MOVE-CORRESPONDING fontx TO complete_stylex-font. -* Correction for undeline mode ENDIF. IF ip_fill IS SUPPLIED. - DATA: fillx LIKE ip_xfill. IF ip_xfill IS SUPPLIED. - fillx = ip_xfill. + changer->set_complete_fill( ip_fill = ip_fill ip_xfill = ip_xfill ). ELSE. - CLEAR fillx WITH 'X'. - IF ip_fill-filltype IS INITIAL. - CLEAR fillx-filltype. - ENDIF. - clear_initial_colorxfields( - EXPORTING - is_color = ip_fill-fgcolor - CHANGING - cs_xcolor = fillx-fgcolor ). - clear_initial_colorxfields( - EXPORTING - is_color = ip_fill-bgcolor - CHANGING - cs_xcolor = fillx-bgcolor ). - + changer->set_complete_fill( ip_fill = ip_fill ). ENDIF. - MOVE-CORRESPONDING ip_fill TO complete_style-fill. - MOVE-CORRESPONDING fillx TO complete_stylex-fill. ENDIF. IF ip_borders IS SUPPLIED. - DATA: bordersx LIKE ip_xborders. IF ip_xborders IS SUPPLIED. - bordersx = ip_xborders. + changer->set_complete_borders( ip_borders = ip_borders ip_xborders = ip_xborders ). ELSE. - CLEAR bordersx WITH 'X'. - IF ip_borders-allborders-border_style IS INITIAL. - CLEAR bordersx-allborders-border_style. - ENDIF. - IF ip_borders-diagonal-border_style IS INITIAL. - CLEAR bordersx-diagonal-border_style. - ENDIF. - IF ip_borders-down-border_style IS INITIAL. - CLEAR bordersx-down-border_style. - ENDIF. - IF ip_borders-left-border_style IS INITIAL. - CLEAR bordersx-left-border_style. - ENDIF. - IF ip_borders-right-border_style IS INITIAL. - CLEAR bordersx-right-border_style. - ENDIF. - IF ip_borders-top-border_style IS INITIAL. - CLEAR bordersx-top-border_style. - ENDIF. - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-allborders-border_color - CHANGING - cs_xcolor = bordersx-allborders-border_color ). - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-diagonal-border_color - CHANGING - cs_xcolor = bordersx-diagonal-border_color ). - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-down-border_color - CHANGING - cs_xcolor = bordersx-down-border_color ). - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-left-border_color - CHANGING - cs_xcolor = bordersx-left-border_color ). - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-right-border_color - CHANGING - cs_xcolor = bordersx-right-border_color ). - - clear_initial_colorxfields( - EXPORTING - is_color = ip_borders-top-border_color - CHANGING - cs_xcolor = bordersx-top-border_color ). - + changer->set_complete_borders( ip_borders = ip_borders ). ENDIF. - MOVE-CORRESPONDING ip_borders TO complete_style-borders. - MOVE-CORRESPONDING bordersx TO complete_stylex-borders. ENDIF. IF ip_alignment IS SUPPLIED. - DATA: alignmentx LIKE ip_xalignment. IF ip_xalignment IS SUPPLIED. - alignmentx = ip_xalignment. + changer->set_complete_alignment( ip_alignment = ip_alignment ip_xalignment = ip_xalignment ). ELSE. - CLEAR alignmentx WITH 'X'. - IF ip_alignment-horizontal IS INITIAL. - CLEAR alignmentx-horizontal. - ENDIF. - IF ip_alignment-vertical IS INITIAL. - CLEAR alignmentx-vertical. - ENDIF. + changer->set_complete_alignment( ip_alignment = ip_alignment ). ENDIF. - MOVE-CORRESPONDING ip_alignment TO complete_style-alignment. - MOVE-CORRESPONDING alignmentx TO complete_stylex-alignment. ENDIF. IF ip_protection IS SUPPLIED. - MOVE-CORRESPONDING ip_protection TO complete_style-protection. IF ip_xprotection IS SUPPLIED. - MOVE-CORRESPONDING ip_xprotection TO complete_stylex-protection. + changer->set_complete_protection( ip_protection = ip_protection ip_xprotection = ip_xprotection ). ELSE. - IF ip_protection-hidden IS NOT INITIAL. - complete_stylex-protection-hidden = 'X'. - ENDIF. - IF ip_protection-locked IS NOT INITIAL. - complete_stylex-protection-locked = 'X'. - ENDIF. + changer->set_complete_protection( ip_protection = ip_protection ). ENDIF. ENDIF. - lv_border_supplied = boolc( ip_borders_allborders IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_allborders IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_allborders - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_allborders - CHANGING - cs_complete_style_border = complete_style-borders-allborders - cs_complete_stylex_border = complete_stylex-borders-allborders ). + IF ip_borders_allborders IS SUPPLIED. + IF ip_xborders_allborders IS SUPPLIED. + changer->set_complete_borders_all( ip_borders_allborders = ip_borders_allborders ip_xborders_allborders = ip_xborders_allborders ). + ELSE. + changer->set_complete_borders_all( ip_borders_allborders = ip_borders_allborders ). + ENDIF. + ENDIF. - lv_border_supplied = boolc( ip_borders_diagonal IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_diagonal IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_diagonal - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_diagonal - CHANGING - cs_complete_style_border = complete_style-borders-diagonal - cs_complete_stylex_border = complete_stylex-borders-diagonal ). + IF ip_borders_diagonal IS SUPPLIED. + IF ip_xborders_diagonal IS SUPPLIED. + changer->set_complete_borders_diagonal( ip_borders_diagonal = ip_borders_diagonal ip_xborders_diagonal = ip_xborders_diagonal ). + ELSE. + changer->set_complete_borders_diagonal( ip_borders_diagonal = ip_borders_diagonal ). + ENDIF. + ENDIF. - lv_border_supplied = boolc( ip_borders_down IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_down IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_down - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_down - CHANGING - cs_complete_style_border = complete_style-borders-down - cs_complete_stylex_border = complete_stylex-borders-down ). + IF ip_borders_down IS SUPPLIED. + IF ip_xborders_down IS SUPPLIED. + changer->set_complete_borders_down( ip_borders_down = ip_borders_down ip_xborders_down = ip_xborders_down ). + ELSE. + changer->set_complete_borders_down( ip_borders_down = ip_borders_down ). + ENDIF. + ENDIF. - lv_border_supplied = boolc( ip_borders_left IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_left IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_left - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_left - CHANGING - cs_complete_style_border = complete_style-borders-left - cs_complete_stylex_border = complete_stylex-borders-left ). + IF ip_borders_left IS SUPPLIED. + IF ip_xborders_left IS SUPPLIED. + changer->set_complete_borders_left( ip_borders_left = ip_borders_left ip_xborders_left = ip_xborders_left ). + ELSE. + changer->set_complete_borders_left( ip_borders_left = ip_borders_left ). + ENDIF. + ENDIF. - lv_border_supplied = boolc( ip_borders_right IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_right IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_right - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_right - CHANGING - cs_complete_style_border = complete_style-borders-right - cs_complete_stylex_border = complete_stylex-borders-right ). + IF ip_borders_right IS SUPPLIED. + IF ip_xborders_right IS SUPPLIED. + changer->set_complete_borders_right( ip_borders_right = ip_borders_right ip_xborders_right = ip_xborders_right ). + ELSE. + changer->set_complete_borders_right( ip_borders_right = ip_borders_right ). + ENDIF. + ENDIF. - lv_border_supplied = boolc( ip_borders_top IS SUPPLIED ). - lv_xborder_supplied = boolc( ip_xborders_top IS SUPPLIED ). - move_supplied_borders( - EXPORTING - iv_border_supplied = lv_border_supplied - is_border = ip_borders_top - iv_xborder_supplied = lv_xborder_supplied - is_xborder = ip_xborders_top - CHANGING - cs_complete_style_border = complete_style-borders-top - cs_complete_stylex_border = complete_stylex-borders-top ). + IF ip_borders_top IS SUPPLIED. + IF ip_xborders_top IS SUPPLIED. + changer->set_complete_borders_top( ip_borders_top = ip_borders_top ip_xborders_top = ip_xborders_top ). + ELSE. + changer->set_complete_borders_top( ip_borders_top = ip_borders_top ). + ENDIF. + ENDIF. IF ip_number_format_format_code IS SUPPLIED. - complete_style-number_format-format_code = ip_number_format_format_code. - complete_stylex-number_format-format_code = 'X'. + changer->set_number_format( ip_number_format_format_code ). ENDIF. IF ip_font_bold IS SUPPLIED. - complete_style-font-bold = ip_font_bold. - complete_stylex-font-bold = 'X'. + changer->set_font_bold( ip_font_bold ). ENDIF. IF ip_font_color IS SUPPLIED. - complete_style-font-color = ip_font_color. - complete_stylex-font-color-rgb = 'X'. + changer->set_font_color( ip_font_color ). ENDIF. IF ip_font_color_rgb IS SUPPLIED. - complete_style-font-color-rgb = ip_font_color_rgb. - complete_stylex-font-color-rgb = 'X'. + changer->set_font_color_rgb( ip_font_color_rgb ). ENDIF. IF ip_font_color_indexed IS SUPPLIED. - complete_style-font-color-indexed = ip_font_color_indexed. - complete_stylex-font-color-indexed = 'X'. + changer->set_font_color_indexed( ip_font_color_indexed ). ENDIF. IF ip_font_color_theme IS SUPPLIED. - complete_style-font-color-theme = ip_font_color_theme. - complete_stylex-font-color-theme = 'X'. + changer->set_font_color_theme( ip_font_color_theme ). ENDIF. IF ip_font_color_tint IS SUPPLIED. - complete_style-font-color-tint = ip_font_color_tint. - complete_stylex-font-color-tint = 'X'. + changer->set_font_color_tint( ip_font_color_tint ). ENDIF. IF ip_font_family IS SUPPLIED. - complete_style-font-family = ip_font_family. - complete_stylex-font-family = 'X'. + changer->set_font_family( ip_font_family ). ENDIF. IF ip_font_italic IS SUPPLIED. - complete_style-font-italic = ip_font_italic. - complete_stylex-font-italic = 'X'. + changer->set_font_italic( ip_font_italic ). ENDIF. IF ip_font_name IS SUPPLIED. - complete_style-font-name = ip_font_name. - complete_stylex-font-name = 'X'. + changer->set_font_name( ip_font_name ). ENDIF. IF ip_font_scheme IS SUPPLIED. - complete_style-font-scheme = ip_font_scheme. - complete_stylex-font-scheme = 'X'. + changer->set_font_scheme( ip_font_scheme ). ENDIF. IF ip_font_size IS SUPPLIED. - complete_style-font-size = ip_font_size. - complete_stylex-font-size = 'X'. + changer->set_font_size( ip_font_size ). ENDIF. IF ip_font_strikethrough IS SUPPLIED. - complete_style-font-strikethrough = ip_font_strikethrough. - complete_stylex-font-strikethrough = 'X'. + changer->set_font_strikethrough( ip_font_strikethrough ). ENDIF. IF ip_font_underline IS SUPPLIED. - complete_style-font-underline = ip_font_underline. - complete_stylex-font-underline = 'X'. + changer->set_font_underline( ip_font_underline ). ENDIF. IF ip_font_underline_mode IS SUPPLIED. - complete_style-font-underline_mode = ip_font_underline_mode. - complete_stylex-font-underline_mode = 'X'. + changer->set_font_underline_mode( ip_font_underline_mode ). ENDIF. + IF ip_fill_filltype IS SUPPLIED. - complete_style-fill-filltype = ip_fill_filltype. - complete_stylex-fill-filltype = 'X'. + changer->set_fill_filltype( ip_fill_filltype ). ENDIF. IF ip_fill_rotation IS SUPPLIED. - complete_style-fill-rotation = ip_fill_rotation. - complete_stylex-fill-rotation = 'X'. + changer->set_fill_rotation( ip_fill_rotation ). ENDIF. IF ip_fill_fgcolor IS SUPPLIED. - complete_style-fill-fgcolor = ip_fill_fgcolor. - complete_stylex-fill-fgcolor-rgb = 'X'. + changer->set_fill_fgcolor( ip_fill_fgcolor ). ENDIF. IF ip_fill_fgcolor_rgb IS SUPPLIED. - complete_style-fill-fgcolor-rgb = ip_fill_fgcolor_rgb. - complete_stylex-fill-fgcolor-rgb = 'X'. + changer->set_fill_fgcolor_rgb( ip_fill_fgcolor_rgb ). ENDIF. IF ip_fill_fgcolor_indexed IS SUPPLIED. - complete_style-fill-fgcolor-indexed = ip_fill_fgcolor_indexed. - complete_stylex-fill-fgcolor-indexed = 'X'. + changer->set_fill_fgcolor_indexed( ip_fill_fgcolor_indexed ). ENDIF. IF ip_fill_fgcolor_theme IS SUPPLIED. - complete_style-fill-fgcolor-theme = ip_fill_fgcolor_theme. - complete_stylex-fill-fgcolor-theme = 'X'. + changer->set_fill_fgcolor_theme( ip_fill_fgcolor_theme ). ENDIF. IF ip_fill_fgcolor_tint IS SUPPLIED. - complete_style-fill-fgcolor-tint = ip_fill_fgcolor_tint. - complete_stylex-fill-fgcolor-tint = 'X'. + changer->set_fill_fgcolor_tint( ip_fill_fgcolor_tint ). ENDIF. IF ip_fill_bgcolor IS SUPPLIED. - complete_style-fill-bgcolor = ip_fill_bgcolor. - complete_stylex-fill-bgcolor-rgb = 'X'. + changer->set_fill_bgcolor( ip_fill_bgcolor ). ENDIF. IF ip_fill_bgcolor_rgb IS SUPPLIED. - complete_style-fill-bgcolor-rgb = ip_fill_bgcolor_rgb. - complete_stylex-fill-bgcolor-rgb = 'X'. + changer->set_fill_bgcolor_rgb( ip_fill_bgcolor_rgb ). ENDIF. IF ip_fill_bgcolor_indexed IS SUPPLIED. - complete_style-fill-bgcolor-indexed = ip_fill_bgcolor_indexed. - complete_stylex-fill-bgcolor-indexed = 'X'. + changer->set_fill_bgcolor_indexed( ip_fill_bgcolor_indexed ). ENDIF. IF ip_fill_bgcolor_theme IS SUPPLIED. - complete_style-fill-bgcolor-theme = ip_fill_bgcolor_theme. - complete_stylex-fill-bgcolor-theme = 'X'. + changer->set_fill_bgcolor_theme( ip_fill_bgcolor_theme ). ENDIF. IF ip_fill_bgcolor_tint IS SUPPLIED. - complete_style-fill-bgcolor-tint = ip_fill_bgcolor_tint. - complete_stylex-fill-bgcolor-tint = 'X'. + changer->set_fill_bgcolor_tint( ip_fill_bgcolor_tint ). ENDIF. IF ip_fill_gradtype_type IS SUPPLIED. - complete_style-fill-gradtype-type = ip_fill_gradtype_type. - complete_stylex-fill-gradtype-type = 'X'. + changer->set_fill_gradtype_type( ip_fill_gradtype_type ). ENDIF. IF ip_fill_gradtype_degree IS SUPPLIED. - complete_style-fill-gradtype-degree = ip_fill_gradtype_degree. - complete_stylex-fill-gradtype-degree = 'X'. + changer->set_fill_gradtype_degree( ip_fill_gradtype_degree ). ENDIF. IF ip_fill_gradtype_bottom IS SUPPLIED. - complete_style-fill-gradtype-bottom = ip_fill_gradtype_bottom. - complete_stylex-fill-gradtype-bottom = 'X'. + changer->set_fill_gradtype_bottom( ip_fill_gradtype_bottom ). ENDIF. IF ip_fill_gradtype_left IS SUPPLIED. - complete_style-fill-gradtype-left = ip_fill_gradtype_left. - complete_stylex-fill-gradtype-left = 'X'. + changer->set_fill_gradtype_left( ip_fill_gradtype_left ). ENDIF. IF ip_fill_gradtype_top IS SUPPLIED. - complete_style-fill-gradtype-top = ip_fill_gradtype_top. - complete_stylex-fill-gradtype-top = 'X'. + changer->set_fill_gradtype_top( ip_fill_gradtype_top ). ENDIF. IF ip_fill_gradtype_right IS SUPPLIED. - complete_style-fill-gradtype-right = ip_fill_gradtype_right. - complete_stylex-fill-gradtype-right = 'X'. + changer->set_fill_gradtype_right( ip_fill_gradtype_right ). ENDIF. IF ip_fill_gradtype_position1 IS SUPPLIED. - complete_style-fill-gradtype-position1 = ip_fill_gradtype_position1. - complete_stylex-fill-gradtype-position1 = 'X'. + changer->set_fill_gradtype_position1( ip_fill_gradtype_position1 ). ENDIF. IF ip_fill_gradtype_position2 IS SUPPLIED. - complete_style-fill-gradtype-position2 = ip_fill_gradtype_position2. - complete_stylex-fill-gradtype-position2 = 'X'. + changer->set_fill_gradtype_position2( ip_fill_gradtype_position2 ). ENDIF. IF ip_fill_gradtype_position3 IS SUPPLIED. - complete_style-fill-gradtype-position3 = ip_fill_gradtype_position3. - complete_stylex-fill-gradtype-position3 = 'X'. + changer->set_fill_gradtype_position3( ip_fill_gradtype_position3 ). ENDIF. IF ip_borders_diagonal_mode IS SUPPLIED. - complete_style-borders-diagonal_mode = ip_borders_diagonal_mode. - complete_stylex-borders-diagonal_mode = 'X'. + changer->set_borders_diagonal_mode( ip_borders_diagonal_mode ). ENDIF. IF ip_alignment_horizontal IS SUPPLIED. - complete_style-alignment-horizontal = ip_alignment_horizontal. - complete_stylex-alignment-horizontal = 'X'. + changer->set_alignment_horizontal( ip_alignment_horizontal ). ENDIF. IF ip_alignment_vertical IS SUPPLIED. - complete_style-alignment-vertical = ip_alignment_vertical. - complete_stylex-alignment-vertical = 'X'. + changer->set_alignment_vertical( ip_alignment_vertical ). ENDIF. IF ip_alignment_textrotation IS SUPPLIED. - complete_style-alignment-textrotation = ip_alignment_textrotation. - complete_stylex-alignment-textrotation = 'X'. + changer->set_alignment_textrotation( ip_alignment_textrotation ). ENDIF. IF ip_alignment_wraptext IS SUPPLIED. - complete_style-alignment-wraptext = ip_alignment_wraptext. - complete_stylex-alignment-wraptext = 'X'. + changer->set_alignment_wraptext( ip_alignment_wraptext ). ENDIF. IF ip_alignment_shrinktofit IS SUPPLIED. - complete_style-alignment-shrinktofit = ip_alignment_shrinktofit. - complete_stylex-alignment-shrinktofit = 'X'. + changer->set_alignment_shrinktofit( ip_alignment_shrinktofit ). ENDIF. IF ip_alignment_indent IS SUPPLIED. - complete_style-alignment-indent = ip_alignment_indent. - complete_stylex-alignment-indent = 'X'. + changer->set_alignment_indent( ip_alignment_indent ). ENDIF. IF ip_protection_hidden IS SUPPLIED. - complete_style-protection-hidden = ip_protection_hidden. - complete_stylex-protection-hidden = 'X'. + changer->set_protection_hidden( ip_protection_hidden ). ENDIF. IF ip_protection_locked IS SUPPLIED. - complete_style-protection-locked = ip_protection_locked. - complete_stylex-protection-locked = 'X'. + changer->set_protection_locked( ip_protection_locked ). ENDIF. IF ip_borders_allborders_style IS SUPPLIED. - complete_style-borders-allborders-border_style = ip_borders_allborders_style. - complete_stylex-borders-allborders-border_style = 'X'. + changer->set_borders_allborders_style( ip_borders_allborders_style ). ENDIF. IF ip_borders_allborders_color IS SUPPLIED. - complete_style-borders-allborders-border_color = ip_borders_allborders_color. - complete_stylex-borders-allborders-border_color-rgb = 'X'. + changer->set_borders_allborders_color( ip_borders_allborders_color ). ENDIF. IF ip_borders_allbo_color_rgb IS SUPPLIED. - complete_style-borders-allborders-border_color-rgb = ip_borders_allbo_color_rgb. - complete_stylex-borders-allborders-border_color-rgb = 'X'. + changer->set_borders_allbo_color_rgb( ip_borders_allbo_color_rgb ). ENDIF. IF ip_borders_allbo_color_indexed IS SUPPLIED. - complete_style-borders-allborders-border_color-indexed = ip_borders_allbo_color_indexed. - complete_stylex-borders-allborders-border_color-indexed = 'X'. + changer->set_borders_allbo_color_indexe( ip_borders_allbo_color_indexed ). ENDIF. IF ip_borders_allbo_color_theme IS SUPPLIED. - complete_style-borders-allborders-border_color-theme = ip_borders_allbo_color_theme. - complete_stylex-borders-allborders-border_color-theme = 'X'. + changer->set_borders_allbo_color_theme( ip_borders_allbo_color_theme ). ENDIF. IF ip_borders_allbo_color_tint IS SUPPLIED. - complete_style-borders-allborders-border_color-tint = ip_borders_allbo_color_tint. - complete_stylex-borders-allborders-border_color-tint = 'X'. + changer->set_borders_allbo_color_tint( ip_borders_allbo_color_tint ). ENDIF. IF ip_borders_diagonal_style IS SUPPLIED. - complete_style-borders-diagonal-border_style = ip_borders_diagonal_style. - complete_stylex-borders-diagonal-border_style = 'X'. + changer->set_borders_diagonal_style( ip_borders_diagonal_style ). ENDIF. IF ip_borders_diagonal_color IS SUPPLIED. - complete_style-borders-diagonal-border_color = ip_borders_diagonal_color. - complete_stylex-borders-diagonal-border_color-rgb = 'X'. + changer->set_borders_diagonal_color( ip_borders_diagonal_color ). ENDIF. IF ip_borders_diagonal_color_rgb IS SUPPLIED. - complete_style-borders-diagonal-border_color-rgb = ip_borders_diagonal_color_rgb. - complete_stylex-borders-diagonal-border_color-rgb = 'X'. + changer->set_borders_diagonal_color_rgb( ip_borders_diagonal_color_rgb ). ENDIF. IF ip_borders_diagonal_color_inde IS SUPPLIED. - complete_style-borders-diagonal-border_color-indexed = ip_borders_diagonal_color_inde. - complete_stylex-borders-diagonal-border_color-indexed = 'X'. + changer->set_borders_diagonal_color_ind( ip_borders_diagonal_color_inde ). ENDIF. IF ip_borders_diagonal_color_them IS SUPPLIED. - complete_style-borders-diagonal-border_color-theme = ip_borders_diagonal_color_them. - complete_stylex-borders-diagonal-border_color-theme = 'X'. + changer->set_borders_diagonal_color_the( ip_borders_diagonal_color_them ). ENDIF. IF ip_borders_diagonal_color_tint IS SUPPLIED. - complete_style-borders-diagonal-border_color-tint = ip_borders_diagonal_color_tint. - complete_stylex-borders-diagonal-border_color-tint = 'X'. + changer->set_borders_diagonal_color_tin( ip_borders_diagonal_color_tint ). ENDIF. IF ip_borders_down_style IS SUPPLIED. - complete_style-borders-down-border_style = ip_borders_down_style. - complete_stylex-borders-down-border_style = 'X'. + changer->set_borders_down_style( ip_borders_down_style ). ENDIF. IF ip_borders_down_color IS SUPPLIED. - complete_style-borders-down-border_color = ip_borders_down_color. - complete_stylex-borders-down-border_color-rgb = 'X'. + changer->set_borders_down_color( ip_borders_down_color ). ENDIF. IF ip_borders_down_color_rgb IS SUPPLIED. - complete_style-borders-down-border_color-rgb = ip_borders_down_color_rgb. - complete_stylex-borders-down-border_color-rgb = 'X'. + changer->set_borders_down_color_rgb( ip_borders_down_color_rgb ). ENDIF. IF ip_borders_down_color_indexed IS SUPPLIED. - complete_style-borders-down-border_color-indexed = ip_borders_down_color_indexed. - complete_stylex-borders-down-border_color-indexed = 'X'. + changer->set_borders_down_color_indexed( ip_borders_down_color_indexed ). ENDIF. IF ip_borders_down_color_theme IS SUPPLIED. - complete_style-borders-down-border_color-theme = ip_borders_down_color_theme. - complete_stylex-borders-down-border_color-theme = 'X'. + changer->set_borders_down_color_theme( ip_borders_down_color_theme ). ENDIF. IF ip_borders_down_color_tint IS SUPPLIED. - complete_style-borders-down-border_color-tint = ip_borders_down_color_tint. - complete_stylex-borders-down-border_color-tint = 'X'. + changer->set_borders_down_color_tint( ip_borders_down_color_tint ). ENDIF. IF ip_borders_left_style IS SUPPLIED. - complete_style-borders-left-border_style = ip_borders_left_style. - complete_stylex-borders-left-border_style = 'X'. + changer->set_borders_left_style( ip_borders_left_style ). ENDIF. IF ip_borders_left_color IS SUPPLIED. - complete_style-borders-left-border_color = ip_borders_left_color. - complete_stylex-borders-left-border_color-rgb = 'X'. + changer->set_borders_left_color( ip_borders_left_color ). ENDIF. IF ip_borders_left_color_rgb IS SUPPLIED. - complete_style-borders-left-border_color-rgb = ip_borders_left_color_rgb. - complete_stylex-borders-left-border_color-rgb = 'X'. + changer->set_borders_left_color_rgb( ip_borders_left_color_rgb ). ENDIF. IF ip_borders_left_color_indexed IS SUPPLIED. - complete_style-borders-left-border_color-indexed = ip_borders_left_color_indexed. - complete_stylex-borders-left-border_color-indexed = 'X'. + changer->set_borders_left_color_indexed( ip_borders_left_color_indexed ). ENDIF. IF ip_borders_left_color_theme IS SUPPLIED. - complete_style-borders-left-border_color-theme = ip_borders_left_color_theme. - complete_stylex-borders-left-border_color-theme = 'X'. + changer->set_borders_left_color_theme( ip_borders_left_color_theme ). ENDIF. IF ip_borders_left_color_tint IS SUPPLIED. - complete_style-borders-left-border_color-tint = ip_borders_left_color_tint. - complete_stylex-borders-left-border_color-tint = 'X'. + changer->set_borders_left_color_tint( ip_borders_left_color_tint ). ENDIF. IF ip_borders_right_style IS SUPPLIED. - complete_style-borders-right-border_style = ip_borders_right_style. - complete_stylex-borders-right-border_style = 'X'. + changer->set_borders_right_style( ip_borders_right_style ). ENDIF. IF ip_borders_right_color IS SUPPLIED. - complete_style-borders-right-border_color = ip_borders_right_color. - complete_stylex-borders-right-border_color-rgb = 'X'. + changer->set_borders_right_color( ip_borders_right_color ). ENDIF. IF ip_borders_right_color_rgb IS SUPPLIED. - complete_style-borders-right-border_color-rgb = ip_borders_right_color_rgb. - complete_stylex-borders-right-border_color-rgb = 'X'. + changer->set_borders_right_color_rgb( ip_borders_right_color_rgb ). ENDIF. IF ip_borders_right_color_indexed IS SUPPLIED. - complete_style-borders-right-border_color-indexed = ip_borders_right_color_indexed. - complete_stylex-borders-right-border_color-indexed = 'X'. + changer->set_borders_right_color_indexe( ip_borders_right_color_indexed ). ENDIF. IF ip_borders_right_color_theme IS SUPPLIED. - complete_style-borders-right-border_color-theme = ip_borders_right_color_theme. - complete_stylex-borders-right-border_color-theme = 'X'. + changer->set_borders_right_color_theme( ip_borders_right_color_theme ). ENDIF. IF ip_borders_right_color_tint IS SUPPLIED. - complete_style-borders-right-border_color-tint = ip_borders_right_color_tint. - complete_stylex-borders-right-border_color-tint = 'X'. + changer->set_borders_right_color_tint( ip_borders_right_color_tint ). ENDIF. IF ip_borders_top_style IS SUPPLIED. - complete_style-borders-top-border_style = ip_borders_top_style. - complete_stylex-borders-top-border_style = 'X'. + changer->set_borders_top_style( ip_borders_top_style ). ENDIF. IF ip_borders_top_color IS SUPPLIED. - complete_style-borders-top-border_color = ip_borders_top_color. - complete_stylex-borders-top-border_color-rgb = 'X'. + changer->set_borders_top_color( ip_borders_top_color ). ENDIF. IF ip_borders_top_color_rgb IS SUPPLIED. - complete_style-borders-top-border_color-rgb = ip_borders_top_color_rgb. - complete_stylex-borders-top-border_color-rgb = 'X'. + changer->set_borders_top_color_rgb( ip_borders_top_color_rgb ). ENDIF. IF ip_borders_top_color_indexed IS SUPPLIED. - complete_style-borders-top-border_color-indexed = ip_borders_top_color_indexed. - complete_stylex-borders-top-border_color-indexed = 'X'. + changer->set_borders_top_color_indexed( ip_borders_top_color_indexed ). ENDIF. IF ip_borders_top_color_theme IS SUPPLIED. - complete_style-borders-top-border_color-theme = ip_borders_top_color_theme. - complete_stylex-borders-top-border_color-theme = 'X'. + changer->set_borders_top_color_theme( ip_borders_top_color_theme ). ENDIF. IF ip_borders_top_color_tint IS SUPPLIED. - complete_style-borders-top-border_color-tint = ip_borders_top_color_tint. - complete_stylex-borders-top-border_color-tint = 'X'. + changer->set_borders_top_color_tint( ip_borders_top_color_tint ). ENDIF. -* Now we have a completly filled styles. -* This can be used to get the guid -* Return guid if requested. Might be used if copy&paste of styles is requested - ep_guid = me->excel->get_static_cellstyle_guid( ip_cstyle_complete = complete_style - ip_cstylex_complete = complete_stylex ). - me->set_cell_style( ip_column = ip_column - ip_row = ip_row - ip_style = ep_guid ). + ep_guid = changer->apply( ip_worksheet = me + ip_column = ip_column + ip_row = ip_row ). + ENDMETHOD. "CHANGE_CELL_STYLE diff --git a/src/zif_excel_style_changer.intf.abap b/src/zif_excel_style_changer.intf.abap new file mode 100644 index 0000000..de88462 --- /dev/null +++ b/src/zif_excel_style_changer.intf.abap @@ -0,0 +1,495 @@ +INTERFACE zif_excel_style_changer + PUBLIC . + + METHODS apply + IMPORTING + ip_worksheet TYPE REF TO zcl_excel_worksheet + ip_column TYPE simple + ip_row TYPE zexcel_cell_row + RETURNING + VALUE(ep_guid) TYPE zexcel_cell_style + RAISING + zcx_excel. + METHODS get_guid + RETURNING + VALUE(result) TYPE zexcel_cell_style. + METHODS set_complete + IMPORTING + ip_complete TYPE zexcel_s_cstyle_complete + ip_xcomplete TYPE zexcel_s_cstylex_complete + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_font + IMPORTING + ip_font TYPE zexcel_s_cstyle_font + ip_xfont TYPE zexcel_s_cstylex_font OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_fill + IMPORTING + ip_fill TYPE zexcel_s_cstyle_fill + ip_xfill TYPE zexcel_s_cstylex_fill OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders + IMPORTING + ip_borders TYPE zexcel_s_cstyle_borders + ip_xborders TYPE zexcel_s_cstylex_borders OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_alignment + IMPORTING + ip_alignment TYPE zexcel_s_cstyle_alignment + ip_xalignment TYPE zexcel_s_cstylex_alignment OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_protection + IMPORTING + ip_protection TYPE zexcel_s_cstyle_protection + ip_xprotection TYPE zexcel_s_cstylex_protection OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_all + IMPORTING + ip_borders_allborders TYPE zexcel_s_cstyle_border + ip_xborders_allborders TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_diagonal + IMPORTING + ip_borders_diagonal TYPE zexcel_s_cstyle_border + ip_xborders_diagonal TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_down + IMPORTING + ip_borders_down TYPE zexcel_s_cstyle_border + ip_xborders_down TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_left + IMPORTING + ip_borders_left TYPE zexcel_s_cstyle_border + ip_xborders_left TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_right + IMPORTING + ip_borders_right TYPE zexcel_s_cstyle_border + ip_xborders_right TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_complete_borders_top + IMPORTING + ip_borders_top TYPE zexcel_s_cstyle_border + ip_xborders_top TYPE zexcel_s_cstylex_border OPTIONAL + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_number_format + IMPORTING + value TYPE zexcel_number_format + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_bold + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_color_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_family + IMPORTING + value TYPE zexcel_style_font_family + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_italic + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_name + IMPORTING + value TYPE zexcel_style_font_name + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_scheme + IMPORTING + value TYPE zexcel_style_font_scheme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_size + IMPORTING + value TYPE numeric + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_strikethrough + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_underline + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_font_underline_mode + IMPORTING + value TYPE zexcel_style_font_underline + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_filltype + IMPORTING + value TYPE zexcel_fill_type + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_rotation + IMPORTING + value TYPE zexcel_rotation + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_fgcolor + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_fgcolor_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_fgcolor_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_fgcolor_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_fgcolor_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_bgcolor + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_bgcolor_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_bgcolor_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_bgcolor_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_bgcolor_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_type + IMPORTING + value TYPE zexcel_s_gradient_type-type + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_degree + IMPORTING + value TYPE zexcel_s_gradient_type-degree + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_bottom + IMPORTING + value TYPE zexcel_s_gradient_type-bottom + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_left + IMPORTING + value TYPE zexcel_s_gradient_type-left + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_top + IMPORTING + value TYPE zexcel_s_gradient_type-top + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_right + IMPORTING + value TYPE zexcel_s_gradient_type-right + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_position1 + IMPORTING + value TYPE zexcel_s_gradient_type-position1 + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_position2 + IMPORTING + value TYPE zexcel_s_gradient_type-position2 + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_fill_gradtype_position3 + IMPORTING + value TYPE zexcel_s_gradient_type-position3 + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_mode + IMPORTING + value TYPE zexcel_diagonal + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_horizontal + IMPORTING + value TYPE zexcel_alignment + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_vertical + IMPORTING + value TYPE zexcel_alignment + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_textrotation + IMPORTING + value TYPE zexcel_text_rotation + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_wraptext + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_shrinktofit + IMPORTING + value TYPE flag + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_alignment_indent + IMPORTING + value TYPE zexcel_indent + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_protection_hidden + IMPORTING + value TYPE zexcel_cell_protection + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_protection_locked + IMPORTING + value TYPE zexcel_cell_protection + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allborders_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allborders_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allbo_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allbo_color_indexe + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allbo_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_allbo_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_color_ind + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_color_the + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_diagonal_color_tin + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_color_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_down_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_color_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_left_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_color_indexe + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_right_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_style + IMPORTING + value TYPE zexcel_border + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_color + IMPORTING + value TYPE zexcel_s_style_color + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_color_rgb + IMPORTING + value TYPE zexcel_style_color_argb + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_color_indexed + IMPORTING + value TYPE zexcel_style_color_indexed + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_color_theme + IMPORTING + value TYPE zexcel_style_color_theme + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + METHODS set_borders_top_color_tint + IMPORTING + value TYPE zexcel_style_color_tint + RETURNING + VALUE(result) TYPE REF TO zif_excel_style_changer. + DATA: complete_style TYPE zexcel_s_cstyle_complete READ-ONLY, + complete_stylex TYPE zexcel_s_cstylex_complete READ-ONLY. +ENDINTERFACE. diff --git a/src/zif_excel_style_changer.intf.xml b/src/zif_excel_style_changer.intf.xml new file mode 100644 index 0000000..05811c6 --- /dev/null +++ b/src/zif_excel_style_changer.intf.xml @@ -0,0 +1,15 @@ + + + + + + ZIF_EXCEL_STYLE_CHANGER + E + Excel style + 2 + 1 + X + + + +