mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
tag popups dependency injection
This commit is contained in:
parent
307c1395d2
commit
fb91909947
|
@ -77,7 +77,7 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION.
|
CLASS zcl_abapgit_services_git IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD commit.
|
METHOD commit.
|
||||||
|
@ -188,7 +188,7 @@ CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION.
|
||||||
|
|
||||||
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
||||||
|
|
||||||
ls_tag = zcl_abapgit_tag_popups=>tag_select_popup( lo_repo ).
|
ls_tag = zcl_abapgit_ui_factory=>get_tag_popups( )->tag_select_popup( lo_repo ).
|
||||||
IF ls_tag IS INITIAL.
|
IF ls_tag IS INITIAL.
|
||||||
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
|
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -312,7 +312,7 @@ CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION.
|
||||||
|
|
||||||
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
||||||
|
|
||||||
ls_tag = zcl_abapgit_tag_popups=>tag_select_popup( lo_repo ).
|
ls_tag = zcl_abapgit_ui_factory=>get_tag_popups( )->tag_select_popup( lo_repo ).
|
||||||
IF ls_tag IS INITIAL.
|
IF ls_tag IS INITIAL.
|
||||||
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
|
RAISE EXCEPTION TYPE zcx_abapgit_cancel.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -330,7 +330,7 @@ CLASS ZCL_ABAPGIT_SERVICES_GIT IMPLEMENTATION.
|
||||||
|
|
||||||
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
|
||||||
|
|
||||||
zcl_abapgit_tag_popups=>tag_list_popup( lo_repo ).
|
zcl_abapgit_ui_factory=>get_tag_popups( )->tag_list_popup( lo_repo ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,26 +1,11 @@
|
||||||
CLASS zcl_abapgit_tag_popups DEFINITION
|
CLASS zcl_abapgit_tag_popups DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
FINAL
|
FINAL
|
||||||
CREATE PUBLIC.
|
CREATE PRIVATE
|
||||||
|
GLOBAL FRIENDS zcl_abapgit_ui_factory.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
INTERFACES: zif_abapgit_tag_popups.
|
||||||
CLASS-METHODS:
|
|
||||||
tag_list_popup
|
|
||||||
IMPORTING
|
|
||||||
io_repo TYPE REF TO zcl_abapgit_repo_online
|
|
||||||
RETURNING
|
|
||||||
VALUE(rs_tag) TYPE zif_abapgit_definitions=>ty_git_tag
|
|
||||||
RAISING
|
|
||||||
zcx_abapgit_exception,
|
|
||||||
|
|
||||||
tag_select_popup
|
|
||||||
IMPORTING
|
|
||||||
io_repo TYPE REF TO zcl_abapgit_repo_online
|
|
||||||
RETURNING
|
|
||||||
VALUE(rs_tag) TYPE zif_abapgit_definitions=>ty_git_tag
|
|
||||||
RAISING
|
|
||||||
zcx_abapgit_exception .
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
TYPES:
|
TYPES:
|
||||||
|
@ -31,12 +16,12 @@ CLASS zcl_abapgit_tag_popups DEFINITION
|
||||||
tty_tag_out TYPE STANDARD TABLE OF ty_tag_out
|
tty_tag_out TYPE STANDARD TABLE OF ty_tag_out
|
||||||
WITH NON-UNIQUE DEFAULT KEY.
|
WITH NON-UNIQUE DEFAULT KEY.
|
||||||
|
|
||||||
CLASS-DATA:
|
DATA:
|
||||||
mt_tags TYPE tty_tag_out,
|
mt_tags TYPE tty_tag_out,
|
||||||
mo_docking_container TYPE REF TO cl_gui_docking_container,
|
mo_docking_container TYPE REF TO cl_gui_docking_container,
|
||||||
mo_text_control TYPE REF TO cl_gui_textedit.
|
mo_text_control TYPE REF TO cl_gui_textedit.
|
||||||
|
|
||||||
CLASS-METHODS:
|
METHODS:
|
||||||
on_double_click FOR EVENT double_click OF cl_salv_events_table
|
on_double_click FOR EVENT double_click OF cl_salv_events_table
|
||||||
IMPORTING row column,
|
IMPORTING row column,
|
||||||
|
|
||||||
|
@ -59,6 +44,39 @@ ENDCLASS.
|
||||||
CLASS zcl_abapgit_tag_popups IMPLEMENTATION.
|
CLASS zcl_abapgit_tag_popups IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD clean_up.
|
||||||
|
|
||||||
|
IF mo_text_control IS BOUND.
|
||||||
|
|
||||||
|
mo_text_control->finalize( ).
|
||||||
|
mo_text_control->free(
|
||||||
|
EXCEPTIONS
|
||||||
|
cntl_error = 1
|
||||||
|
cntl_system_error = 2
|
||||||
|
OTHERS = 3 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
CLEAR: mo_text_control.
|
||||||
|
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF mo_docking_container IS BOUND.
|
||||||
|
|
||||||
|
mo_docking_container->finalize( ).
|
||||||
|
mo_docking_container->free(
|
||||||
|
EXCEPTIONS
|
||||||
|
cntl_error = 1
|
||||||
|
cntl_system_error = 2
|
||||||
|
OTHERS = 3 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
CLEAR: mo_docking_container.
|
||||||
|
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD on_double_click.
|
METHOD on_double_click.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_tag> TYPE zcl_abapgit_tag_popups=>ty_tag_out.
|
FIELD-SYMBOLS: <ls_tag> TYPE zcl_abapgit_tag_popups=>ty_tag_out.
|
||||||
|
@ -99,7 +117,60 @@ CLASS zcl_abapgit_tag_popups IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD tag_list_popup.
|
METHOD show_docking_container_with.
|
||||||
|
|
||||||
|
IF mo_docking_container IS NOT BOUND.
|
||||||
|
|
||||||
|
CREATE OBJECT mo_docking_container
|
||||||
|
EXPORTING
|
||||||
|
side = cl_gui_docking_container=>dock_at_bottom
|
||||||
|
extension = 120
|
||||||
|
EXCEPTIONS
|
||||||
|
cntl_error = 1
|
||||||
|
cntl_system_error = 2
|
||||||
|
create_error = 3
|
||||||
|
lifetime_error = 4
|
||||||
|
lifetime_dynpro_dynpro_link = 5
|
||||||
|
OTHERS = 6.
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF mo_text_control IS NOT BOUND.
|
||||||
|
CREATE OBJECT mo_text_control
|
||||||
|
EXPORTING
|
||||||
|
parent = mo_docking_container
|
||||||
|
EXCEPTIONS
|
||||||
|
error_cntl_create = 1
|
||||||
|
error_cntl_init = 2
|
||||||
|
error_cntl_link = 3
|
||||||
|
error_dp_create = 4
|
||||||
|
gui_type_not_supported = 5
|
||||||
|
OTHERS = 6.
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
mo_text_control->set_readonly_mode(
|
||||||
|
EXCEPTIONS
|
||||||
|
error_cntl_call_method = 1
|
||||||
|
invalid_parameter = 2
|
||||||
|
OTHERS = 3 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
mo_text_control->set_textstream(
|
||||||
|
EXPORTING
|
||||||
|
text = iv_text
|
||||||
|
EXCEPTIONS
|
||||||
|
error_cntl_call_method = 1
|
||||||
|
not_supported_by_gui = 2
|
||||||
|
OTHERS = 3 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD zif_abapgit_tag_popups~tag_list_popup.
|
||||||
|
|
||||||
DATA: lo_alv TYPE REF TO cl_salv_table,
|
DATA: lo_alv TYPE REF TO cl_salv_table,
|
||||||
lo_table_header TYPE REF TO cl_salv_form_header_info,
|
lo_table_header TYPE REF TO cl_salv_form_header_info,
|
||||||
|
@ -190,7 +261,7 @@ CLASS zcl_abapgit_tag_popups IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD tag_select_popup.
|
METHOD zif_abapgit_tag_popups~tag_select_popup.
|
||||||
|
|
||||||
DATA: lt_tags TYPE zif_abapgit_definitions=>ty_git_tag_list_tt,
|
DATA: lt_tags TYPE zif_abapgit_definitions=>ty_git_tag_list_tt,
|
||||||
lv_answer TYPE c LENGTH 1,
|
lv_answer TYPE c LENGTH 1,
|
||||||
|
@ -247,90 +318,4 @@ CLASS zcl_abapgit_tag_popups IMPLEMENTATION.
|
||||||
rs_tag = <ls_tag>.
|
rs_tag = <ls_tag>.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD clean_up.
|
|
||||||
|
|
||||||
IF mo_text_control IS BOUND.
|
|
||||||
|
|
||||||
mo_text_control->finalize( ).
|
|
||||||
mo_text_control->free(
|
|
||||||
EXCEPTIONS
|
|
||||||
cntl_error = 1
|
|
||||||
cntl_system_error = 2
|
|
||||||
OTHERS = 3 ).
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
CLEAR: mo_text_control.
|
|
||||||
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF mo_docking_container IS BOUND.
|
|
||||||
|
|
||||||
mo_docking_container->finalize( ).
|
|
||||||
mo_docking_container->free(
|
|
||||||
EXCEPTIONS
|
|
||||||
cntl_error = 1
|
|
||||||
cntl_system_error = 2
|
|
||||||
OTHERS = 3 ).
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
CLEAR: mo_docking_container.
|
|
||||||
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD show_docking_container_with.
|
|
||||||
|
|
||||||
IF mo_docking_container IS NOT BOUND.
|
|
||||||
|
|
||||||
CREATE OBJECT mo_docking_container
|
|
||||||
EXPORTING
|
|
||||||
side = cl_gui_docking_container=>dock_at_bottom
|
|
||||||
extension = 120
|
|
||||||
EXCEPTIONS
|
|
||||||
cntl_error = 1
|
|
||||||
cntl_system_error = 2
|
|
||||||
create_error = 3
|
|
||||||
lifetime_error = 4
|
|
||||||
lifetime_dynpro_dynpro_link = 5
|
|
||||||
OTHERS = 6.
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF mo_text_control IS NOT BOUND.
|
|
||||||
CREATE OBJECT mo_text_control
|
|
||||||
EXPORTING
|
|
||||||
parent = mo_docking_container
|
|
||||||
EXCEPTIONS
|
|
||||||
error_cntl_create = 1
|
|
||||||
error_cntl_init = 2
|
|
||||||
error_cntl_link = 3
|
|
||||||
error_dp_create = 4
|
|
||||||
gui_type_not_supported = 5
|
|
||||||
OTHERS = 6.
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
mo_text_control->set_readonly_mode(
|
|
||||||
EXCEPTIONS
|
|
||||||
error_cntl_call_method = 1
|
|
||||||
invalid_parameter = 2
|
|
||||||
OTHERS = 3 ).
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
mo_text_control->set_textstream(
|
|
||||||
EXPORTING
|
|
||||||
text = iv_text
|
|
||||||
EXCEPTIONS
|
|
||||||
error_cntl_call_method = 1
|
|
||||||
not_supported_by_gui = 2
|
|
||||||
OTHERS = 3 ).
|
|
||||||
ASSERT sy-subrc = 0.
|
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
<VERSION>1</VERSION>
|
<VERSION>1</VERSION>
|
||||||
<LANGU>E</LANGU>
|
<LANGU>E</LANGU>
|
||||||
<DESCRIPT>Popups</DESCRIPT>
|
<DESCRIPT>Popups</DESCRIPT>
|
||||||
<EXPOSURE>2</EXPOSURE>
|
|
||||||
<STATE>1</STATE>
|
<STATE>1</STATE>
|
||||||
<CLSFINAL>X</CLSFINAL>
|
<CLSFINAL>X</CLSFINAL>
|
||||||
<CLSCCINCL>X</CLSCCINCL>
|
<CLSCCINCL>X</CLSCCINCL>
|
||||||
|
|
|
@ -7,11 +7,16 @@ CLASS zcl_abapgit_ui_factory DEFINITION
|
||||||
CLASS-METHODS:
|
CLASS-METHODS:
|
||||||
get_popups
|
get_popups
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(ri_popups) TYPE REF TO zif_abapgit_popups.
|
VALUE(ri_popups) TYPE REF TO zif_abapgit_popups,
|
||||||
|
|
||||||
|
get_tag_popups
|
||||||
|
RETURNING
|
||||||
|
VALUE(ri_tag_popups) TYPE REF TO zif_abapgit_tag_popups.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
CLASS-DATA:
|
CLASS-DATA:
|
||||||
mi_popups TYPE REF TO zif_abapgit_popups.
|
mi_popups TYPE REF TO zif_abapgit_popups,
|
||||||
|
mi_tag_popups TYPE REF TO zif_abapgit_tag_popups.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
@ -29,4 +34,14 @@ CLASS zcl_abapgit_ui_factory IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD get_tag_popups.
|
||||||
|
|
||||||
|
IF mi_tag_popups IS INITIAL.
|
||||||
|
CREATE OBJECT mi_tag_popups TYPE zcl_abapgit_tag_popups.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ri_tag_popups = mi_tag_popups.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -6,7 +6,11 @@ CLASS zcl_abapgit_ui_injector DEFINITION
|
||||||
CLASS-METHODS:
|
CLASS-METHODS:
|
||||||
set_popups
|
set_popups
|
||||||
IMPORTING
|
IMPORTING
|
||||||
ii_popups TYPE REF TO zif_abapgit_popups.
|
ii_popups TYPE REF TO zif_abapgit_popups,
|
||||||
|
|
||||||
|
set_tag_popups
|
||||||
|
IMPORTING
|
||||||
|
ii_tag_popups TYPE REF TO zif_abapgit_tag_popups.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
@ -20,4 +24,10 @@ CLASS zcl_abapgit_ui_injector IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD set_tag_popups.
|
||||||
|
|
||||||
|
zcl_abapgit_ui_factory=>mi_tag_popups = ii_tag_popups.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
21
src/ui/zif_abapgit_tag_popups.intf.abap
Normal file
21
src/ui/zif_abapgit_tag_popups.intf.abap
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
INTERFACE zif_abapgit_tag_popups
|
||||||
|
PUBLIC.
|
||||||
|
|
||||||
|
METHODS:
|
||||||
|
tag_list_popup
|
||||||
|
IMPORTING
|
||||||
|
io_repo TYPE REF TO zcl_abapgit_repo_online
|
||||||
|
RETURNING
|
||||||
|
VALUE(rs_tag) TYPE zif_abapgit_definitions=>ty_git_tag
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception,
|
||||||
|
|
||||||
|
tag_select_popup
|
||||||
|
IMPORTING
|
||||||
|
io_repo TYPE REF TO zcl_abapgit_repo_online
|
||||||
|
RETURNING
|
||||||
|
VALUE(rs_tag) TYPE zif_abapgit_definitions=>ty_git_tag
|
||||||
|
RAISING
|
||||||
|
zcx_abapgit_exception .
|
||||||
|
|
||||||
|
ENDINTERFACE.
|
16
src/ui/zif_abapgit_tag_popups.intf.xml
Normal file
16
src/ui/zif_abapgit_tag_popups.intf.xml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<abapGit version="v1.0.0" serializer="LCL_OBJECT_INTF" serializer_version="v1.0.0">
|
||||||
|
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||||
|
<asx:values>
|
||||||
|
<VSEOINTERF>
|
||||||
|
<CLSNAME>ZIF_ABAPGIT_TAG_POPUPS</CLSNAME>
|
||||||
|
<VERSION>1</VERSION>
|
||||||
|
<LANGU>E</LANGU>
|
||||||
|
<DESCRIPT>abapGit tag popups</DESCRIPT>
|
||||||
|
<EXPOSURE>2</EXPOSURE>
|
||||||
|
<STATE>1</STATE>
|
||||||
|
<UNICODE>X</UNICODE>
|
||||||
|
</VSEOINTERF>
|
||||||
|
</asx:values>
|
||||||
|
</asx:abap>
|
||||||
|
</abapGit>
|
Loading…
Reference in New Issue
Block a user