diff --git a/zabapgit.prog.abap b/zabapgit.prog.abap index 0cc4b7288..3e9094612 100644 --- a/zabapgit.prog.abap +++ b/zabapgit.prog.abap @@ -17364,11 +17364,12 @@ CLASS lcl_gui_page_diff IMPLEMENTATION. lo_html->add( 'table.diff_tab td.num, th.num {' ). "#EC NOTEXT lo_html->add( ' text-align: right;' ). "#EC NOTEXT lo_html->add( ' color: #ccc;' ). "#EC NOTEXT - lo_html->add( ' border-left: 1px solid #eee;' ). "#EC NOTEXT + lo_html->add( ' border-left: 1px solid #eee;' ). "#EC NOTEXT lo_html->add( ' border-right: 1px solid #eee;' ). "#EC NOTEXT lo_html->add( '}' ). "#EC NOTEXT - lo_html->add( 'table.diff_tab td.cmd {' ). "#EC NOTEXT - lo_html->add( ' text-align: center;' ). "#EC NOTEXT + lo_html->add( 'table.diff_tab td.cmd, th.cmd {' ). "#EC NOTEXT + lo_html->add( ' font-size: smaller;' ). "#EC NOTEXT + lo_html->add( ' text-align: center !important;' ). "#EC NOTEXT lo_html->add( '}' ). "#EC NOTEXT lo_html->add( '' ). "#EC NOTEXT @@ -17406,9 +17407,10 @@ CLASS lcl_gui_page_diff IMPLEMENTATION. DATA lv_attr_local TYPE string. DATA lv_attr_remote TYPE string. DATA lv_anchor_count LIKE sy-tabix. - DATA lv_anchor_name TYPE string. + DATA lv_href TYPE string. - FIELD-SYMBOLS: LIKE LINE OF lt_diffs. + FIELD-SYMBOLS LIKE LINE OF lt_diffs. + FIELD-SYMBOLS LIKE LINE OF lt_diffs. CREATE OBJECT lo_html. lt_diffs = mo_diff->get( ). @@ -17420,6 +17422,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION. lo_html->add( '@LOCAL' ). "#EC NOTEXT lo_html->add( '' ). "#EC NOTEXT lo_html->add( '@REMOTE' ). "#EC NOTEXT + lo_html->add( '▼ 1' ). "#EC NOTEXT lo_html->add( '' ). "#EC NOTEXT LOOP AT lt_diffs ASSIGNING . @@ -17427,7 +17430,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION. lv_local = escape( val = -local format = cl_abap_format=>e_html_attr ). lv_remote = escape( val = -remote format = cl_abap_format=>e_html_attr ). - CLEAR: lv_attr_local, lv_attr_remote. + CLEAR: lv_attr_local, lv_attr_remote. " Class for changed lines CASE -result. WHEN lcl_diff=>c_diff-insert. lv_attr_local = ' class="diff_ins"'. "#EC NOTEXT @@ -17438,13 +17441,30 @@ CLASS lcl_gui_page_diff IMPLEMENTATION. lv_attr_remote = ' class="diff_del"'. "#EC NOTEXT ENDCASE. + CLEAR lv_href. " Create link to next change + IF -result = lcl_diff=>c_diff-delete + OR -result = lcl_diff=>c_diff-insert + OR -result = lcl_diff=>c_diff-update. + lv_anchor_count = lv_anchor_count + 1. + lv_href = |▼ { lv_anchor_count + 1 }|. + ENDIF. + lo_html->add( '' ). "#EC NOTEXT lo_html->add( |{ -local_line }| ). "#EC NOTEXT lo_html->add( |{ lv_local }| ). "#EC NOTEXT lo_html->add( |{ -remote_line }| ). "#EC NOTEXT lo_html->add( |{ lv_remote }| ). "#EC NOTEXT + lo_html->add( |{ lv_href }| ). "#EC NOTEXT lo_html->add( '' ). "#EC NOTEXT + " TODO Refactor ? + READ TABLE lt_diffs INDEX lv_index ASSIGNING . + IF sy-subrc = 0 AND -short = abap_false. + lo_html->add( ' ' ). + ENDIF. + ENDLOOP. lo_html->add( '' ). "#EC NOTEXT