From 0fd851c8d28c42b186c8b52f2c1b0abfa0d97921 Mon Sep 17 00:00:00 2001 From: CASAG-MariusRaht <45243391+CASAG-MariusRaht@users.noreply.github.com> Date: Thu, 12 Sep 2019 16:33:24 +0200 Subject: [PATCH] #2723 (#2909) #2723 > Implemented re-run button for syntax check --- src/ui/zcl_abapgit_gui_page_syntax.clas.abap | 92 ++++++++++++++++++-- 1 file changed, 85 insertions(+), 7 deletions(-) diff --git a/src/ui/zcl_abapgit_gui_page_syntax.clas.abap b/src/ui/zcl_abapgit_gui_page_syntax.clas.abap index 4c274829c..e2bca732f 100644 --- a/src/ui/zcl_abapgit_gui_page_syntax.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_syntax.clas.abap @@ -6,7 +6,16 @@ CLASS zcl_abapgit_gui_page_syntax DEFINITION PUBLIC FINAL CREATE PUBLIC METHODS: constructor - IMPORTING io_repo TYPE REF TO zcl_abapgit_repo. + IMPORTING + io_repo TYPE REF TO zcl_abapgit_repo + RAISING + zcx_abapgit_exception, + + zif_abapgit_gui_event_handler~on_event + REDEFINITION, + + zif_abapgit_gui_renderable~render + REDEFINITION. PROTECTED SECTION. @@ -14,6 +23,22 @@ CLASS zcl_abapgit_gui_page_syntax DEFINITION PUBLIC FINAL CREATE PUBLIC render_content REDEFINITION. PRIVATE SECTION. + CONSTANTS: + BEGIN OF c_actions, + rerun TYPE string VALUE 'rerun' ##NO_TEXT, + END OF c_actions. + + METHODS: + build_menu + RETURNING + VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar + RAISING + zcx_abapgit_exception, + + run_syntax_check + RAISING + zcx_abapgit_exception. + ENDCLASS. @@ -25,17 +50,25 @@ CLASS zcl_abapgit_gui_page_syntax IMPLEMENTATION. super->constructor( ). ms_control-page_title = 'SYNTAX CHECK'. mo_repo = io_repo. + run_syntax_check( ). + ENDMETHOD. + + + METHOD build_menu. + + DATA: lv_opt TYPE c LENGTH 1. + + CREATE OBJECT ro_menu. + + ro_menu->add( iv_txt = 'Re-Run' + iv_act = c_actions-rerun + iv_cur = abap_false ) ##NO_TEXT. + ENDMETHOD. METHOD render_content. - DATA: li_syntax_check TYPE REF TO zif_abapgit_code_inspector. - - li_syntax_check = zcl_abapgit_factory=>get_code_inspector( mo_repo->get_package( ) ). - - mt_result = li_syntax_check->run( 'SYNTAX_CHECK' ). - CREATE OBJECT ro_html. ro_html->add( '