Exit: Enhance any toolbar

This exit allows you to add your own actions to any of the toolbars in abapGit. It's also possible to rename or remove items using the exit. Each toolbar has a unique id that you can use to identify it in the exit.

Closes #7121
This commit is contained in:
Marc Bernard 2025-01-16 13:47:22 +00:00
parent fd38cd873c
commit 1e791b8be0
22 changed files with 121 additions and 60 deletions

View File

@ -328,6 +328,18 @@ CLASS zcl_abapgit_exit IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_exit~enhance_any_toolbar.
IF gi_exit IS NOT INITIAL.
TRY.
gi_exit->enhance_any_toolbar( io_menu ).
CATCH cx_sy_ref_is_initial cx_sy_dyn_call_illegal_method ##NO_HANDLER.
ENDTRY.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_exit~enhance_repo_toolbar. METHOD zif_abapgit_exit~enhance_repo_toolbar.
IF gi_exit IS NOT INITIAL. IF gi_exit IS NOT INITIAL.

View File

@ -1,15 +1,15 @@
INTERFACE zif_abapgit_exit PUBLIC. INTERFACE zif_abapgit_exit PUBLIC.
TYPES: TYPES:
BEGIN OF ty_ci_repo, BEGIN OF ty_ci_repo,
name TYPE string, name TYPE string,
clone_url TYPE string, clone_url TYPE string,
END OF ty_ci_repo. END OF ty_ci_repo.
TYPES:
ty_ci_repos TYPE STANDARD TABLE OF ty_ci_repo WITH DEFAULT KEY. TYPES ty_ci_repos TYPE STANDARD TABLE OF ty_ci_repo WITH DEFAULT KEY.
TYPES:
ty_object_types TYPE STANDARD TABLE OF tadir-object WITH DEFAULT KEY. TYPES ty_object_types TYPE STANDARD TABLE OF tadir-object WITH DEFAULT KEY.
TYPES: TYPES:
BEGIN OF ty_class_key, BEGIN OF ty_class_key,
clsname TYPE abap_classname, clsname TYPE abap_classname,
@ -25,47 +25,58 @@ INTERFACE zif_abapgit_exit PUBLIC.
!cv_display_url TYPE csequence !cv_display_url TYPE csequence
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS adjust_display_filename METHODS adjust_display_filename
IMPORTING IMPORTING
!is_repo_meta TYPE zif_abapgit_persistence=>ty_repo !is_repo_meta TYPE zif_abapgit_persistence=>ty_repo
!iv_filename TYPE string !iv_filename TYPE string
RETURNING RETURNING
VALUE(rv_filename) TYPE string. VALUE(rv_filename) TYPE string.
METHODS allow_sap_objects METHODS allow_sap_objects
RETURNING RETURNING
VALUE(rv_allowed) TYPE abap_bool. VALUE(rv_allowed) TYPE abap_bool.
METHODS change_local_host METHODS change_local_host
CHANGING CHANGING
!ct_hosts TYPE zif_abapgit_definitions=>ty_string_tt. !ct_hosts TYPE zif_abapgit_definitions=>ty_string_tt.
METHODS change_max_parallel_processes METHODS change_max_parallel_processes
IMPORTING IMPORTING
!iv_package TYPE devclass !iv_package TYPE devclass
CHANGING CHANGING
!cv_max_processes TYPE i. !cv_max_processes TYPE i.
METHODS change_proxy_authentication METHODS change_proxy_authentication
IMPORTING IMPORTING
!iv_repo_url TYPE csequence !iv_repo_url TYPE csequence
CHANGING CHANGING
!cv_proxy_authentication TYPE abap_bool. !cv_proxy_authentication TYPE abap_bool.
METHODS change_proxy_port METHODS change_proxy_port
IMPORTING IMPORTING
!iv_repo_url TYPE csequence !iv_repo_url TYPE csequence
CHANGING CHANGING
!cv_proxy_port TYPE string. !cv_proxy_port TYPE string.
METHODS change_proxy_url METHODS change_proxy_url
IMPORTING IMPORTING
!iv_repo_url TYPE csequence !iv_repo_url TYPE csequence
CHANGING CHANGING
!cv_proxy_url TYPE string. !cv_proxy_url TYPE string.
METHODS change_rfc_server_group METHODS change_rfc_server_group
CHANGING CHANGING
!cv_group TYPE rzlli_apcl. !cv_group TYPE rzlli_apcl.
METHODS change_supported_data_objects METHODS change_supported_data_objects
CHANGING CHANGING
!ct_objects TYPE zif_abapgit_data_supporter=>ty_objects. !ct_objects TYPE zif_abapgit_data_supporter=>ty_objects.
METHODS change_supported_object_types METHODS change_supported_object_types
CHANGING CHANGING
!ct_types TYPE ty_object_types. !ct_types TYPE ty_object_types.
METHODS change_tadir METHODS change_tadir
IMPORTING IMPORTING
!iv_package TYPE devclass !iv_package TYPE devclass
@ -75,6 +86,7 @@ INTERFACE zif_abapgit_exit PUBLIC.
!iv_only_local_objects TYPE abap_bool DEFAULT abap_false !iv_only_local_objects TYPE abap_bool DEFAULT abap_false
CHANGING CHANGING
!ct_tadir TYPE zif_abapgit_definitions=>ty_tadir_tt. !ct_tadir TYPE zif_abapgit_definitions=>ty_tadir_tt.
METHODS create_http_client METHODS create_http_client
IMPORTING IMPORTING
!iv_url TYPE string !iv_url TYPE string
@ -82,6 +94,7 @@ INTERFACE zif_abapgit_exit PUBLIC.
VALUE(ri_client) TYPE REF TO if_http_client VALUE(ri_client) TYPE REF TO if_http_client
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS custom_serialize_abap_clif METHODS custom_serialize_abap_clif
IMPORTING IMPORTING
!is_class_key TYPE ty_class_key !is_class_key TYPE ty_class_key
@ -90,33 +103,44 @@ INTERFACE zif_abapgit_exit PUBLIC.
VALUE(rt_source) TYPE zif_abapgit_definitions=>ty_string_tt VALUE(rt_source) TYPE zif_abapgit_definitions=>ty_string_tt
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS deserialize_postprocess METHODS deserialize_postprocess
IMPORTING IMPORTING
!is_step TYPE zif_abapgit_objects=>ty_step_data !is_step TYPE zif_abapgit_objects=>ty_step_data
!ii_log TYPE REF TO zif_abapgit_log. !ii_log TYPE REF TO zif_abapgit_log.
METHODS determine_transport_request METHODS determine_transport_request
IMPORTING IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo !io_repo TYPE REF TO zcl_abapgit_repo
!iv_transport_type TYPE zif_abapgit_definitions=>ty_transport_type !iv_transport_type TYPE zif_abapgit_definitions=>ty_transport_type
CHANGING CHANGING
!cv_transport_request TYPE trkorr. !cv_transport_request TYPE trkorr.
METHODS enhance_any_toolbar
IMPORTING
!io_menu TYPE REF TO zcl_abapgit_html_toolbar.
METHODS enhance_repo_toolbar METHODS enhance_repo_toolbar
IMPORTING IMPORTING
!io_menu TYPE REF TO zcl_abapgit_html_toolbar !io_menu TYPE REF TO zcl_abapgit_html_toolbar
!iv_key TYPE zif_abapgit_persistence=>ty_value !iv_key TYPE zif_abapgit_persistence=>ty_value
!iv_act TYPE string. !iv_act TYPE string.
METHODS get_ci_tests METHODS get_ci_tests
IMPORTING IMPORTING
!iv_object TYPE tadir-object !iv_object TYPE tadir-object
CHANGING CHANGING
!ct_ci_repos TYPE ty_ci_repos. !ct_ci_repos TYPE ty_ci_repos.
METHODS get_ssl_id METHODS get_ssl_id
RETURNING RETURNING
VALUE(rv_ssl_id) TYPE ssfapplssl. VALUE(rv_ssl_id) TYPE ssfapplssl.
METHODS http_client METHODS http_client
IMPORTING IMPORTING
!iv_url TYPE string !iv_url TYPE string
!ii_client TYPE REF TO if_http_client. !ii_client TYPE REF TO if_http_client.
METHODS on_event METHODS on_event
IMPORTING IMPORTING
!ii_event TYPE REF TO zif_abapgit_gui_event !ii_event TYPE REF TO zif_abapgit_gui_event
@ -124,6 +148,7 @@ INTERFACE zif_abapgit_exit PUBLIC.
VALUE(rs_handled) TYPE zif_abapgit_gui_event_handler=>ty_handling_result VALUE(rs_handled) TYPE zif_abapgit_gui_event_handler=>ty_handling_result
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS pre_calculate_repo_status METHODS pre_calculate_repo_status
IMPORTING IMPORTING
!is_repo_meta TYPE zif_abapgit_persistence=>ty_repo !is_repo_meta TYPE zif_abapgit_persistence=>ty_repo
@ -132,12 +157,14 @@ INTERFACE zif_abapgit_exit PUBLIC.
!ct_remote TYPE zif_abapgit_git_definitions=>ty_files_tt !ct_remote TYPE zif_abapgit_git_definitions=>ty_files_tt
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS serialize_postprocess METHODS serialize_postprocess
IMPORTING IMPORTING
!iv_package TYPE devclass !iv_package TYPE devclass
!ii_log TYPE REF TO zif_abapgit_log !ii_log TYPE REF TO zif_abapgit_log
CHANGING CHANGING
!ct_files TYPE zif_abapgit_definitions=>ty_files_item_tt. !ct_files TYPE zif_abapgit_definitions=>ty_files_item_tt.
METHODS validate_before_push METHODS validate_before_push
IMPORTING IMPORTING
!is_comment TYPE zif_abapgit_git_definitions=>ty_comment !is_comment TYPE zif_abapgit_git_definitions=>ty_comment
@ -145,9 +172,11 @@ INTERFACE zif_abapgit_exit PUBLIC.
!io_repo TYPE REF TO zcl_abapgit_repo_online !io_repo TYPE REF TO zcl_abapgit_repo_online
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
METHODS wall_message_list METHODS wall_message_list
IMPORTING IMPORTING
!ii_html TYPE REF TO zif_abapgit_html. !ii_html TYPE REF TO zif_abapgit_html.
METHODS wall_message_repo METHODS wall_message_repo
IMPORTING IMPORTING
!is_repo_meta TYPE zif_abapgit_persistence=>ty_repo !is_repo_meta TYPE zif_abapgit_persistence=>ty_repo

View File

@ -231,6 +231,9 @@ CLASS ltd_exit IMPLEMENTATION.
METHOD zif_abapgit_exit~determine_transport_request. METHOD zif_abapgit_exit~determine_transport_request.
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_exit~enhance_any_toolbar.
ENDMETHOD.
METHOD zif_abapgit_exit~enhance_repo_toolbar. METHOD zif_abapgit_exit~enhance_repo_toolbar.
ENDMETHOD. ENDMETHOD.

View File

@ -45,7 +45,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_TEMPLATE IMPLEMENTATION. CLASS zcl_abapgit_gui_page_template IMPLEMENTATION.
METHOD constructor. METHOD constructor.
@ -97,9 +97,9 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_TEMPLATE IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
" TODO: top level menu " TODO: top level menu; use unique id
ro_toolbar = zcl_abapgit_html_toolbar=>create( )->add( ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-id' )->add(
iv_txt = 'Refresh' iv_txt = 'Refresh'
iv_act = c_action-refresh ). iv_act = c_action-refresh ).

View File

@ -53,7 +53,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_FLOW IMPLEMENTATION. CLASS zcl_abapgit_gui_page_flow IMPLEMENTATION.
METHOD constructor. METHOD constructor.
@ -278,7 +278,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_FLOW IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-flow' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = 'Refresh' iv_txt = 'Refresh'

View File

@ -45,7 +45,7 @@ CLASS zcl_abapgit_gui_menus IMPLEMENTATION.
METHOD advanced. METHOD advanced.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-advanced'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-advanced' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Database Utility' iv_txt = 'Database Utility'
@ -74,7 +74,7 @@ CLASS zcl_abapgit_gui_menus IMPLEMENTATION.
METHOD back. METHOD back.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-back'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-back' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Back' iv_txt = 'Back'
@ -96,7 +96,7 @@ CLASS zcl_abapgit_gui_menus IMPLEMENTATION.
METHOD help. METHOD help.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-help'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-help' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Tutorial' iv_txt = 'Tutorial'
@ -119,7 +119,7 @@ CLASS zcl_abapgit_gui_menus IMPLEMENTATION.
METHOD repo_settings. METHOD repo_settings.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-repo-settings'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-repo-settings' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Repository' iv_txt = 'Repository'
@ -152,7 +152,7 @@ CLASS zcl_abapgit_gui_menus IMPLEMENTATION.
METHOD settings. METHOD settings.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-settings'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-Settings' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Global' iv_txt = 'Global'

View File

@ -410,6 +410,8 @@ CLASS zcl_abapgit_gui_page IMPLEMENTATION.
lo_page_menu = ms_control-page_menu_provider->get_menu( ). lo_page_menu = ms_control-page_menu_provider->get_menu( ).
ENDIF. ENDIF.
zcl_abapgit_exit=>get_instance( )->enhance_any_toolbar( lo_page_menu ).
lv_page_title = ms_control-page_title. lv_page_title = ms_control-page_title.
IF ms_control-page_title_provider IS BOUND. IF ms_control-page_title_provider IS BOUND.
lv_page_title = ms_control-page_title_provider->get_page_title( ). lv_page_title = ms_control-page_title_provider->get_page_title( ).

View File

@ -168,7 +168,7 @@ CLASS zcl_abapgit_gui_page_codi_base IMPLEMENTATION.
METHOD build_base_menu. METHOD build_base_menu.
ro_menu = zcl_abapgit_html_toolbar=>create( )->add( ro_menu = zcl_abapgit_html_toolbar=>create( 'code-inspector' )->add(
iv_txt = 'Re-Run' iv_txt = 'Re-Run'
iv_act = c_actions-rerun ). iv_act = c_actions-rerun ).

View File

@ -248,7 +248,7 @@ CLASS zcl_abapgit_gui_page_runit IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-unit-tests' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = 'Re-Run' iv_txt = 'Re-Run'

View File

@ -65,7 +65,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_WHEREUSED IMPLEMENTATION. CLASS zcl_abapgit_gui_page_whereused IMPLEMENTATION.
METHOD constructor. METHOD constructor.
@ -220,7 +220,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_WHEREUSED IMPLEMENTATION.
lv_show_used_txt = 'Show Used Type'. lv_show_used_txt = 'Show Used Type'.
ENDIF. ENDIF.
ro_toolbar = zcl_abapgit_html_toolbar=>create( ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-where-used'
)->add( )->add(
iv_txt = lv_show_used_txt iv_txt = lv_show_used_txt
iv_title = 'Show/Hide used type or object (when available)' iv_title = 'Show/Hide used type or object (when available)'

View File

@ -595,7 +595,7 @@ CLASS zcl_abapgit_gui_page_db IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'database-utility' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = 'Backup' iv_txt = 'Backup'
@ -658,6 +658,9 @@ CLASS zcl_abapgit_gui_page_db IMPLEMENTATION.
)->add( )->add(
iv_txt = 'Delete' iv_txt = 'Delete'
iv_act = |{ c_action-delete }?{ lv_action }| ). iv_act = |{ c_action-delete }?{ lv_action }| ).
zcl_abapgit_exit=>get_instance( )->enhance_any_toolbar( lo_toolbar ).
rs_render-html = lo_toolbar->render( ). rs_render-html = lo_toolbar->render( ).
ENDCASE. ENDCASE.

View File

@ -18,6 +18,7 @@ CLASS zcl_abapgit_gui_page_db_entry DEFINITION
VALUE(ri_page) TYPE REF TO zif_abapgit_gui_renderable VALUE(ri_page) TYPE REF TO zif_abapgit_gui_renderable
RAISING RAISING
zcx_abapgit_exception . zcx_abapgit_exception .
METHODS constructor METHODS constructor
IMPORTING IMPORTING
!is_key TYPE zif_abapgit_persistence=>ty_content !is_key TYPE zif_abapgit_persistence=>ty_content
@ -95,7 +96,7 @@ CLASS zcl_abapgit_gui_page_db_entry IMPLEMENTATION.
METHOD build_toolbar. METHOD build_toolbar.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'database-entry' ).
IF mv_edit_mode = abap_true. IF mv_edit_mode = abap_true.
ro_toolbar->add( ro_toolbar->add(

View File

@ -97,31 +97,6 @@ ENDCLASS.
CLASS zcl_abapgit_gui_page_data IMPLEMENTATION. CLASS zcl_abapgit_gui_page_data IMPLEMENTATION.
METHOD get_form_schema.
ro_form = zcl_abapgit_html_form=>create( iv_form_id = 'data-config' ).
ro_form->text(
iv_label = 'Table'
iv_name = c_id-table
iv_required = abap_true
iv_max = 16 ).
ro_form->checkbox(
iv_label = 'Skip Initial Values'
iv_name = c_id-skip_initial ).
ro_form->textarea(
iv_label = 'Where'
iv_placeholder = 'Conditions separated by newline'
iv_name = c_id-where ).
ro_form->command(
iv_label = 'Add'
iv_cmd_type = zif_abapgit_html_form=>c_cmd_type-input_main
iv_action = c_event-add ).
ENDMETHOD.
METHOD add_via_transport. METHOD add_via_transport.
DATA lv_trkorr TYPE trkorr. DATA lv_trkorr TYPE trkorr.
@ -297,6 +272,31 @@ CLASS zcl_abapgit_gui_page_data IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD get_form_schema.
ro_form = zcl_abapgit_html_form=>create( iv_form_id = 'data-config' ).
ro_form->text(
iv_label = 'Table'
iv_name = c_id-table
iv_required = abap_true
iv_max = 16 ).
ro_form->checkbox(
iv_label = 'Skip Initial Values'
iv_name = c_id-skip_initial ).
ro_form->textarea(
iv_label = 'Where'
iv_placeholder = 'Conditions separated by newline'
iv_name = c_id-where ).
ro_form->command(
iv_label = 'Add'
iv_cmd_type = zif_abapgit_html_form=>c_cmd_type-input_main
iv_action = c_event-add ).
ENDMETHOD.
METHOD render_existing. METHOD render_existing.
DATA lo_form TYPE REF TO zcl_abapgit_html_form. DATA lo_form TYPE REF TO zcl_abapgit_html_form.
@ -382,7 +382,7 @@ CLASS zcl_abapgit_gui_page_data IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'advanced-data' ).
ro_toolbar->add( iv_txt = 'Add Via Transport' ro_toolbar->add( iv_txt = 'Add Via Transport'
iv_act = c_event-add_via_transport ). iv_act = c_event-add_via_transport ).

View File

@ -71,7 +71,7 @@ CLASS zcl_abapgit_gui_page_debuginfo IMPLEMENTATION.
METHOD build_toolbar. METHOD build_toolbar.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-debug'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-debug' ).
ro_menu->add( ro_menu->add(
iv_txt = 'Save' iv_txt = 'Save'

View File

@ -1374,7 +1374,7 @@ CLASS zcl_abapgit_gui_page_diff_base IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-diff' ).
add_menu_begin( ro_toolbar ). add_menu_begin( ro_toolbar ).
add_jump_sub_menu( ro_toolbar ). add_jump_sub_menu( ro_toolbar ).

View File

@ -155,7 +155,7 @@ CLASS zcl_abapgit_gui_page_merge IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-merge' ).
ro_toolbar->add( iv_txt = 'Merge' ro_toolbar->add( iv_txt = 'Merge'
iv_act = c_actions-merge iv_act = c_actions-merge

View File

@ -545,7 +545,7 @@ CLASS zcl_abapgit_gui_page_merge_res IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-merge-res' ).
ro_toolbar->add( iv_txt = 'Toggle merge mode' ro_toolbar->add( iv_txt = 'Toggle merge mode'
iv_act = c_actions-toggle_mode ). iv_act = c_actions-toggle_mode ).

View File

@ -63,7 +63,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_PULL IMPLEMENTATION. CLASS zcl_abapgit_gui_page_pull IMPLEMENTATION.
METHOD choose_transport_request. METHOD choose_transport_request.
@ -220,7 +220,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_PULL IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-pull' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = 'Refresh' iv_txt = 'Refresh'

View File

@ -446,7 +446,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
DATA lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar. DATA lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar.
DATA lo_toolbar_more_sub TYPE REF TO zcl_abapgit_html_toolbar. DATA lo_toolbar_more_sub TYPE REF TO zcl_abapgit_html_toolbar.
CREATE OBJECT lo_toolbar EXPORTING iv_id = 'toolbar-ovp'. lo_toolbar = zcl_abapgit_html_toolbar=>create( 'actionbar-repo-list' ).
lo_toolbar->add( lo_toolbar->add(
iv_txt = |Pull| iv_txt = |Pull|
@ -510,6 +510,12 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
iv_class = |{ lc_action_class } { lc_offline_class }| iv_class = |{ lc_action_class } { lc_offline_class }|
iv_li_class = |{ lc_action_class }| ). iv_li_class = |{ lc_action_class }| ).
lo_toolbar_more_sub->add(
iv_txt = |Change Repository Package|
iv_act = |{ zif_abapgit_definitions=>c_action-repo_change_package }{ lc_dummy_key }|
iv_class = |{ lc_action_class } { lc_online_class }|
iv_li_class = |{ lc_action_class }| ).
lo_toolbar_more_sub->add( lo_toolbar_more_sub->add(
iv_txt = 'Danger' iv_txt = 'Danger'
iv_typ = zif_abapgit_html=>c_action_type-separator ). iv_typ = zif_abapgit_html=>c_action_type-separator ).
@ -544,6 +550,8 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
iv_class = |{ lc_action_class }| iv_class = |{ lc_action_class }|
iv_li_class = |{ lc_action_class }| ). iv_li_class = |{ lc_action_class }| ).
zcl_abapgit_exit=>get_instance( )->enhance_any_toolbar( lo_toolbar ).
ri_html = lo_toolbar->render( iv_right = abap_true ). ri_html = lo_toolbar->render( iv_right = abap_true ).
ENDMETHOD. ENDMETHOD.
@ -1001,7 +1009,7 @@ CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-repo-list' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = zcl_abapgit_gui_buttons=>flow( ) iv_txt = zcl_abapgit_gui_buttons=>flow( )

View File

@ -201,7 +201,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_VIEW IMPLEMENTATION. CLASS zcl_abapgit_gui_page_repo_view IMPLEMENTATION.
METHOD apply_order_by. METHOD apply_order_by.
@ -303,6 +303,9 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_VIEW IMPLEMENTATION.
iv_act = |{ zif_abapgit_definitions=>c_action-go_stage_transport }?key={ mv_key }| ). iv_act = |{ zif_abapgit_definitions=>c_action-go_stage_transport }?key={ mv_key }| ).
ENDIF. ENDIF.
ro_advanced_dropdown->add( iv_txt = 'Change Repository Package'
iv_act = |{ zif_abapgit_definitions=>c_action-repo_change_package }?key={ mv_key }| ).
ro_advanced_dropdown->add( iv_txt = 'Quality Assurance' ro_advanced_dropdown->add( iv_txt = 'Quality Assurance'
iv_typ = zif_abapgit_html=>c_action_type-separator ). iv_typ = zif_abapgit_html=>c_action_type-separator ).
@ -423,7 +426,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_VIEW IMPLEMENTATION.
DATA: DATA:
li_log TYPE REF TO zif_abapgit_log. li_log TYPE REF TO zif_abapgit_log.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-repo'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'actionbar-repo-view' ).
IF mo_repo->is_offline( ) = abap_false. IF mo_repo->is_offline( ) = abap_false.
" online repo " online repo
@ -1214,7 +1217,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_VIEW IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-repo-view' ).
ro_toolbar->add( ro_toolbar->add(
iv_txt = zcl_abapgit_gui_buttons=>repo_list( ) iv_txt = zcl_abapgit_gui_buttons=>repo_list( )

View File

@ -870,7 +870,7 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION.
METHOD zif_abapgit_gui_menu_provider~get_menu. METHOD zif_abapgit_gui_menu_provider~get_menu.
CREATE OBJECT ro_toolbar EXPORTING iv_id = 'toolbar-main'. ro_toolbar = zcl_abapgit_html_toolbar=>create( 'toolbar-staging' ).
IF lines( ms_files-local ) > 0 IF lines( ms_files-local ) > 0
OR lines( ms_files-remote ) > 0. OR lines( ms_files-remote ) > 0.

View File

@ -30,7 +30,7 @@ CLASS zcl_abapgit_gui_page_tutorial IMPLEMENTATION.
METHOD build_main_menu. METHOD build_main_menu.
CREATE OBJECT ro_menu EXPORTING iv_id = 'toolbar-main'. ro_menu = zcl_abapgit_html_toolbar=>create( 'toolbar-tutorial' ).
ro_menu->add( ro_menu->add(
iv_txt = zcl_abapgit_gui_buttons=>repo_list( ) iv_txt = zcl_abapgit_gui_buttons=>repo_list( )