mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
Merge pull request #1106 from larshp/lcl_html_toolbar
lcl_html_toolbar to global
This commit is contained in:
commit
0c916d48f1
236
src/ui/zcl_abapgit_html_toolbar.clas.abap
Normal file
236
src/ui/zcl_abapgit_html_toolbar.clas.abap
Normal file
|
@ -0,0 +1,236 @@
|
||||||
|
CLASS zcl_abapgit_html_toolbar DEFINITION
|
||||||
|
PUBLIC
|
||||||
|
CREATE PUBLIC .
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
METHODS:
|
||||||
|
constructor
|
||||||
|
IMPORTING
|
||||||
|
iv_id TYPE string OPTIONAL,
|
||||||
|
add
|
||||||
|
IMPORTING
|
||||||
|
iv_txt TYPE string
|
||||||
|
io_sub TYPE REF TO zcl_abapgit_html_toolbar OPTIONAL
|
||||||
|
iv_typ TYPE c DEFAULT zif_abapgit_definitions=>gc_action_type-sapevent
|
||||||
|
iv_act TYPE string OPTIONAL
|
||||||
|
iv_ico TYPE string OPTIONAL
|
||||||
|
iv_cur TYPE abap_bool OPTIONAL
|
||||||
|
iv_opt TYPE c OPTIONAL
|
||||||
|
iv_chk TYPE abap_bool DEFAULT abap_undefined
|
||||||
|
iv_aux TYPE string OPTIONAL
|
||||||
|
iv_id TYPE string OPTIONAL,
|
||||||
|
count
|
||||||
|
RETURNING VALUE(rv_count) TYPE i,
|
||||||
|
render
|
||||||
|
IMPORTING
|
||||||
|
iv_right TYPE abap_bool OPTIONAL
|
||||||
|
iv_sort TYPE abap_bool OPTIONAL
|
||||||
|
RETURNING
|
||||||
|
VALUE(ro_html) TYPE REF TO zcl_abapgit_html,
|
||||||
|
render_as_droplist
|
||||||
|
IMPORTING
|
||||||
|
iv_label TYPE string
|
||||||
|
iv_right TYPE abap_bool OPTIONAL
|
||||||
|
iv_sort TYPE abap_bool OPTIONAL
|
||||||
|
iv_corner TYPE abap_bool OPTIONAL
|
||||||
|
RETURNING
|
||||||
|
VALUE(ro_html) TYPE REF TO zcl_abapgit_html.
|
||||||
|
|
||||||
|
PRIVATE SECTION.
|
||||||
|
TYPES:
|
||||||
|
BEGIN OF ty_item,
|
||||||
|
txt TYPE string,
|
||||||
|
act TYPE string,
|
||||||
|
ico TYPE string,
|
||||||
|
sub TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
|
opt TYPE char1,
|
||||||
|
typ TYPE char1,
|
||||||
|
cur TYPE abap_bool,
|
||||||
|
chk TYPE abap_bool,
|
||||||
|
aux TYPE string,
|
||||||
|
id TYPE string,
|
||||||
|
END OF ty_item.
|
||||||
|
|
||||||
|
TYPES tt_items TYPE STANDARD TABLE OF ty_item.
|
||||||
|
|
||||||
|
DATA: mt_items TYPE tt_items,
|
||||||
|
mv_id TYPE string.
|
||||||
|
|
||||||
|
METHODS:
|
||||||
|
render_items
|
||||||
|
IMPORTING
|
||||||
|
iv_sort TYPE abap_bool OPTIONAL
|
||||||
|
RETURNING
|
||||||
|
VALUE(ro_html) TYPE REF TO zcl_abapgit_html.
|
||||||
|
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CLASS ZCL_ABAPGIT_HTML_TOOLBAR IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD add.
|
||||||
|
DATA ls_item TYPE ty_item.
|
||||||
|
|
||||||
|
ASSERT iv_typ = zif_abapgit_definitions=>gc_action_type-separator " sep doesn't have action
|
||||||
|
OR iv_typ = zif_abapgit_definitions=>gc_action_type-onclick " click may have no action (assigned in JS)
|
||||||
|
OR iv_typ = zif_abapgit_definitions=>gc_action_type-dummy " dummy may have no action
|
||||||
|
OR iv_act IS INITIAL AND io_sub IS NOT INITIAL
|
||||||
|
OR iv_act IS NOT INITIAL AND io_sub IS INITIAL. " Only one supplied
|
||||||
|
|
||||||
|
ASSERT NOT ( iv_chk <> abap_undefined AND io_sub IS NOT INITIAL ).
|
||||||
|
|
||||||
|
ls_item-txt = iv_txt.
|
||||||
|
ls_item-act = iv_act.
|
||||||
|
ls_item-ico = iv_ico.
|
||||||
|
ls_item-sub = io_sub.
|
||||||
|
ls_item-opt = iv_opt.
|
||||||
|
ls_item-typ = iv_typ.
|
||||||
|
ls_item-cur = iv_cur.
|
||||||
|
ls_item-chk = iv_chk.
|
||||||
|
ls_item-aux = iv_aux.
|
||||||
|
ls_item-id = iv_id.
|
||||||
|
|
||||||
|
APPEND ls_item TO mt_items.
|
||||||
|
|
||||||
|
ENDMETHOD. "add
|
||||||
|
|
||||||
|
|
||||||
|
METHOD constructor.
|
||||||
|
mv_id = iv_id.
|
||||||
|
ENDMETHOD. "constructor
|
||||||
|
|
||||||
|
|
||||||
|
METHOD count.
|
||||||
|
rv_count = lines( mt_items ).
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD render.
|
||||||
|
|
||||||
|
DATA: lv_class TYPE string.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
lv_class = 'nav-container' ##NO_TEXT.
|
||||||
|
IF iv_right = abap_true.
|
||||||
|
lv_class = lv_class && ' float-right'.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( |<div class="{ lv_class }">| ).
|
||||||
|
ro_html->add( render_items( iv_sort = iv_sort ) ).
|
||||||
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
|
ENDMETHOD. "render
|
||||||
|
|
||||||
|
|
||||||
|
METHOD render_as_droplist.
|
||||||
|
|
||||||
|
DATA: lv_class TYPE string.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
lv_class = 'nav-container' ##NO_TEXT.
|
||||||
|
IF iv_right = abap_true.
|
||||||
|
lv_class = lv_class && ' float-right'.
|
||||||
|
ENDIF.
|
||||||
|
IF iv_corner = abap_true.
|
||||||
|
lv_class = lv_class && ' corner'.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( |<div class="{ lv_class }">| ).
|
||||||
|
ro_html->add( '<ul><li>' ).
|
||||||
|
ro_html->add_a( iv_txt = iv_label
|
||||||
|
iv_typ = zif_abapgit_definitions=>gc_action_type-dummy
|
||||||
|
iv_act = '' ).
|
||||||
|
ro_html->add( '<div class="minizone"></div>' ).
|
||||||
|
ro_html->add( render_items( iv_sort = iv_sort ) ).
|
||||||
|
ro_html->add( '</li></ul>' ).
|
||||||
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
|
ENDMETHOD. "render_as_droplist
|
||||||
|
|
||||||
|
|
||||||
|
METHOD render_items.
|
||||||
|
|
||||||
|
DATA: lv_class TYPE string,
|
||||||
|
lv_icon TYPE string,
|
||||||
|
lv_id TYPE string,
|
||||||
|
lv_check TYPE string,
|
||||||
|
lv_aux TYPE string,
|
||||||
|
lv_has_icons TYPE abap_bool.
|
||||||
|
|
||||||
|
FIELD-SYMBOLS <item> LIKE LINE OF mt_items.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
IF iv_sort = abap_true.
|
||||||
|
SORT mt_items BY txt ASCENDING AS TEXT.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
" Check has icons or check boxes
|
||||||
|
LOOP AT mt_items ASSIGNING <item> WHERE ico IS NOT INITIAL OR chk <> abap_undefined.
|
||||||
|
lv_has_icons = abap_true.
|
||||||
|
lv_class = ' class="with-icons"'.
|
||||||
|
EXIT.
|
||||||
|
ENDLOOP.
|
||||||
|
|
||||||
|
IF mv_id IS NOT INITIAL.
|
||||||
|
lv_id = | id="{ mv_id }"|.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( |<ul{ lv_id }{ lv_class }>| ).
|
||||||
|
|
||||||
|
" Render items
|
||||||
|
LOOP AT mt_items ASSIGNING <item>.
|
||||||
|
CLEAR: lv_class, lv_icon.
|
||||||
|
|
||||||
|
IF <item>-typ = zif_abapgit_definitions=>gc_action_type-separator.
|
||||||
|
ro_html->add( |<li class="separator">{ <item>-txt }</li>| ).
|
||||||
|
CONTINUE.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF lv_has_icons = abap_true.
|
||||||
|
IF <item>-chk = abap_true.
|
||||||
|
lv_icon = zcl_abapgit_html=>icon( 'check/blue' ).
|
||||||
|
lv_check = ' data-check="X"'.
|
||||||
|
ELSEIF <item>-chk = abap_false.
|
||||||
|
lv_icon = zcl_abapgit_html=>icon( 'check/grey' ).
|
||||||
|
lv_check = ' data-check=""'.
|
||||||
|
ELSE. " abap_undefined -> not a check box
|
||||||
|
lv_icon = zcl_abapgit_html=>icon( <item>-ico ).
|
||||||
|
ENDIF.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF <item>-cur = abap_true.
|
||||||
|
lv_class = ' class="current-menu-item"'.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF <item>-aux IS NOT INITIAL.
|
||||||
|
lv_aux = | data-aux="{ <item>-aux }"|.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( |<li{ lv_class }{ lv_check }{ lv_aux }>| ).
|
||||||
|
IF <item>-sub IS INITIAL.
|
||||||
|
ro_html->add_a( iv_txt = lv_icon && <item>-txt
|
||||||
|
iv_typ = <item>-typ
|
||||||
|
iv_act = <item>-act
|
||||||
|
iv_id = <item>-id
|
||||||
|
iv_opt = <item>-opt ).
|
||||||
|
ELSE.
|
||||||
|
ro_html->add_a( iv_txt = lv_icon && <item>-txt
|
||||||
|
iv_typ = zif_abapgit_definitions=>gc_action_type-dummy
|
||||||
|
iv_act = ''
|
||||||
|
iv_id = <item>-id
|
||||||
|
iv_opt = <item>-opt ).
|
||||||
|
ro_html->add( <item>-sub->render_items( iv_sort = iv_sort ) ).
|
||||||
|
ENDIF.
|
||||||
|
ro_html->add( '</li>' ).
|
||||||
|
|
||||||
|
ENDLOOP.
|
||||||
|
|
||||||
|
ro_html->add( '</ul>' ).
|
||||||
|
|
||||||
|
ENDMETHOD. "render_items
|
||||||
|
ENDCLASS.
|
18
src/ui/zcl_abapgit_html_toolbar.clas.xml
Normal file
18
src/ui/zcl_abapgit_html_toolbar.clas.xml
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
|
||||||
|
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||||
|
<asx:values>
|
||||||
|
<VSEOCLASS>
|
||||||
|
<CLSNAME>ZCL_ABAPGIT_HTML_TOOLBAR</CLSNAME>
|
||||||
|
<VERSION>1</VERSION>
|
||||||
|
<LANGU>E</LANGU>
|
||||||
|
<DESCRIPT>HTML toolbar</DESCRIPT>
|
||||||
|
<EXPOSURE>2</EXPOSURE>
|
||||||
|
<STATE>1</STATE>
|
||||||
|
<CLSCCINCL>X</CLSCCINCL>
|
||||||
|
<FIXPT>X</FIXPT>
|
||||||
|
<UNICODE>X</UNICODE>
|
||||||
|
</VSEOCLASS>
|
||||||
|
</asx:values>
|
||||||
|
</asx:abap>
|
||||||
|
</abapGit>
|
|
@ -2,237 +2,4 @@
|
||||||
*& Include ZABAPGIT_HTML
|
*& Include ZABAPGIT_HTML
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
* todo, include to be deleted later
|
||||||
* CLASS lcl_html_toolbar DEFINITION
|
|
||||||
*----------------------------------------------------------------------*
|
|
||||||
CLASS lcl_html_toolbar DEFINITION FINAL.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
|
||||||
METHODS:
|
|
||||||
constructor
|
|
||||||
IMPORTING
|
|
||||||
iv_id TYPE string OPTIONAL,
|
|
||||||
add
|
|
||||||
IMPORTING
|
|
||||||
iv_txt TYPE string
|
|
||||||
io_sub TYPE REF TO lcl_html_toolbar OPTIONAL
|
|
||||||
iv_typ TYPE c DEFAULT zif_abapgit_definitions=>gc_action_type-sapevent
|
|
||||||
iv_act TYPE string OPTIONAL
|
|
||||||
iv_ico TYPE string OPTIONAL
|
|
||||||
iv_cur TYPE abap_bool OPTIONAL
|
|
||||||
iv_opt TYPE c OPTIONAL
|
|
||||||
iv_chk TYPE abap_bool DEFAULT abap_undefined
|
|
||||||
iv_aux TYPE string OPTIONAL
|
|
||||||
iv_id TYPE string OPTIONAL,
|
|
||||||
count
|
|
||||||
RETURNING VALUE(rv_count) TYPE i,
|
|
||||||
render
|
|
||||||
IMPORTING
|
|
||||||
iv_right TYPE abap_bool OPTIONAL
|
|
||||||
iv_sort TYPE abap_bool OPTIONAL
|
|
||||||
RETURNING
|
|
||||||
VALUE(ro_html) TYPE REF TO zcl_abapgit_html,
|
|
||||||
render_as_droplist
|
|
||||||
IMPORTING
|
|
||||||
iv_label TYPE string
|
|
||||||
iv_right TYPE abap_bool OPTIONAL
|
|
||||||
iv_sort TYPE abap_bool OPTIONAL
|
|
||||||
iv_corner TYPE abap_bool OPTIONAL
|
|
||||||
RETURNING
|
|
||||||
VALUE(ro_html) TYPE REF TO zcl_abapgit_html.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
|
||||||
TYPES:
|
|
||||||
BEGIN OF ty_item,
|
|
||||||
txt TYPE string,
|
|
||||||
act TYPE string,
|
|
||||||
ico TYPE string,
|
|
||||||
sub TYPE REF TO lcl_html_toolbar,
|
|
||||||
opt TYPE char1,
|
|
||||||
typ TYPE char1,
|
|
||||||
cur TYPE abap_bool,
|
|
||||||
chk TYPE abap_bool,
|
|
||||||
aux TYPE string,
|
|
||||||
id TYPE string,
|
|
||||||
END OF ty_item.
|
|
||||||
|
|
||||||
TYPES tt_items TYPE STANDARD TABLE OF ty_item.
|
|
||||||
|
|
||||||
DATA: mt_items TYPE tt_items,
|
|
||||||
mv_id TYPE string.
|
|
||||||
|
|
||||||
METHODS:
|
|
||||||
render_items
|
|
||||||
IMPORTING
|
|
||||||
iv_sort TYPE abap_bool OPTIONAL
|
|
||||||
RETURNING
|
|
||||||
VALUE(ro_html) TYPE REF TO zcl_abapgit_html.
|
|
||||||
|
|
||||||
ENDCLASS. "lcl_html_toolbar DEFINITION
|
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
|
||||||
* CLASS lcl_html_toolbar IMPLEMENTATION
|
|
||||||
*----------------------------------------------------------------------*
|
|
||||||
CLASS lcl_html_toolbar IMPLEMENTATION.
|
|
||||||
|
|
||||||
METHOD constructor.
|
|
||||||
mv_id = iv_id.
|
|
||||||
ENDMETHOD. "constructor
|
|
||||||
|
|
||||||
METHOD count.
|
|
||||||
rv_count = lines( mt_items ).
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
METHOD add.
|
|
||||||
DATA ls_item TYPE ty_item.
|
|
||||||
|
|
||||||
ASSERT iv_typ = zif_abapgit_definitions=>gc_action_type-separator " sep doesn't have action
|
|
||||||
OR iv_typ = zif_abapgit_definitions=>gc_action_type-onclick " click may have no action (assigned in JS)
|
|
||||||
OR iv_typ = zif_abapgit_definitions=>gc_action_type-dummy " dummy may have no action
|
|
||||||
OR iv_act IS INITIAL AND io_sub IS NOT INITIAL
|
|
||||||
OR iv_act IS NOT INITIAL AND io_sub IS INITIAL. " Only one supplied
|
|
||||||
|
|
||||||
ASSERT NOT ( iv_chk <> abap_undefined AND io_sub IS NOT INITIAL ).
|
|
||||||
|
|
||||||
ls_item-txt = iv_txt.
|
|
||||||
ls_item-act = iv_act.
|
|
||||||
ls_item-ico = iv_ico.
|
|
||||||
ls_item-sub = io_sub.
|
|
||||||
ls_item-opt = iv_opt.
|
|
||||||
ls_item-typ = iv_typ.
|
|
||||||
ls_item-cur = iv_cur.
|
|
||||||
ls_item-chk = iv_chk.
|
|
||||||
ls_item-aux = iv_aux.
|
|
||||||
ls_item-id = iv_id.
|
|
||||||
|
|
||||||
APPEND ls_item TO mt_items.
|
|
||||||
|
|
||||||
ENDMETHOD. "add
|
|
||||||
|
|
||||||
METHOD render.
|
|
||||||
|
|
||||||
DATA: lv_class TYPE string.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
|
|
||||||
lv_class = 'nav-container' ##NO_TEXT.
|
|
||||||
IF iv_right = abap_true.
|
|
||||||
lv_class = lv_class && ' float-right'.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( |<div class="{ lv_class }">| ).
|
|
||||||
ro_html->add( render_items( iv_sort = iv_sort ) ).
|
|
||||||
ro_html->add( '</div>' ).
|
|
||||||
|
|
||||||
ENDMETHOD. "render
|
|
||||||
|
|
||||||
METHOD render_as_droplist.
|
|
||||||
|
|
||||||
DATA: lv_class TYPE string.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
|
|
||||||
lv_class = 'nav-container' ##NO_TEXT.
|
|
||||||
IF iv_right = abap_true.
|
|
||||||
lv_class = lv_class && ' float-right'.
|
|
||||||
ENDIF.
|
|
||||||
IF iv_corner = abap_true.
|
|
||||||
lv_class = lv_class && ' corner'.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( |<div class="{ lv_class }">| ).
|
|
||||||
ro_html->add( '<ul><li>' ).
|
|
||||||
ro_html->add_a( iv_txt = iv_label
|
|
||||||
iv_typ = zif_abapgit_definitions=>gc_action_type-dummy
|
|
||||||
iv_act = '' ).
|
|
||||||
ro_html->add( '<div class="minizone"></div>' ).
|
|
||||||
ro_html->add( render_items( iv_sort = iv_sort ) ).
|
|
||||||
ro_html->add( '</li></ul>' ).
|
|
||||||
ro_html->add( '</div>' ).
|
|
||||||
|
|
||||||
ENDMETHOD. "render_as_droplist
|
|
||||||
|
|
||||||
METHOD render_items.
|
|
||||||
|
|
||||||
DATA: lv_class TYPE string,
|
|
||||||
lv_icon TYPE string,
|
|
||||||
lv_id TYPE string,
|
|
||||||
lv_check TYPE string,
|
|
||||||
lv_aux TYPE string,
|
|
||||||
lv_has_icons TYPE abap_bool.
|
|
||||||
|
|
||||||
FIELD-SYMBOLS <item> LIKE LINE OF mt_items.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
|
|
||||||
IF iv_sort = abap_true.
|
|
||||||
SORT mt_items BY txt ASCENDING AS TEXT.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
" Check has icons or check boxes
|
|
||||||
LOOP AT mt_items ASSIGNING <item> WHERE ico IS NOT INITIAL OR chk <> abap_undefined.
|
|
||||||
lv_has_icons = abap_true.
|
|
||||||
lv_class = ' class="with-icons"'.
|
|
||||||
EXIT.
|
|
||||||
ENDLOOP.
|
|
||||||
|
|
||||||
IF mv_id IS NOT INITIAL.
|
|
||||||
lv_id = | id="{ mv_id }"|.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( |<ul{ lv_id }{ lv_class }>| ).
|
|
||||||
|
|
||||||
" Render items
|
|
||||||
LOOP AT mt_items ASSIGNING <item>.
|
|
||||||
CLEAR: lv_class, lv_icon.
|
|
||||||
|
|
||||||
IF <item>-typ = zif_abapgit_definitions=>gc_action_type-separator.
|
|
||||||
ro_html->add( |<li class="separator">{ <item>-txt }</li>| ).
|
|
||||||
CONTINUE.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF lv_has_icons = abap_true.
|
|
||||||
IF <item>-chk = abap_true.
|
|
||||||
lv_icon = zcl_abapgit_html=>icon( 'check/blue' ).
|
|
||||||
lv_check = ' data-check="X"'.
|
|
||||||
ELSEIF <item>-chk = abap_false.
|
|
||||||
lv_icon = zcl_abapgit_html=>icon( 'check/grey' ).
|
|
||||||
lv_check = ' data-check=""'.
|
|
||||||
ELSE. " abap_undefined -> not a check box
|
|
||||||
lv_icon = zcl_abapgit_html=>icon( <item>-ico ).
|
|
||||||
ENDIF.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF <item>-cur = abap_true.
|
|
||||||
lv_class = ' class="current-menu-item"'.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF <item>-aux IS NOT INITIAL.
|
|
||||||
lv_aux = | data-aux="{ <item>-aux }"|.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( |<li{ lv_class }{ lv_check }{ lv_aux }>| ).
|
|
||||||
IF <item>-sub IS INITIAL.
|
|
||||||
ro_html->add_a( iv_txt = lv_icon && <item>-txt
|
|
||||||
iv_typ = <item>-typ
|
|
||||||
iv_act = <item>-act
|
|
||||||
iv_id = <item>-id
|
|
||||||
iv_opt = <item>-opt ).
|
|
||||||
ELSE.
|
|
||||||
ro_html->add_a( iv_txt = lv_icon && <item>-txt
|
|
||||||
iv_typ = zif_abapgit_definitions=>gc_action_type-dummy
|
|
||||||
iv_act = ''
|
|
||||||
iv_id = <item>-id
|
|
||||||
iv_opt = <item>-opt ).
|
|
||||||
ro_html->add( <item>-sub->render_items( iv_sort = iv_sort ) ).
|
|
||||||
ENDIF.
|
|
||||||
ro_html->add( '</li>' ).
|
|
||||||
|
|
||||||
ENDLOOP.
|
|
||||||
|
|
||||||
ro_html->add( '</ul>' ).
|
|
||||||
|
|
||||||
ENDMETHOD. "render_items
|
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS. "lcl_html_toolbar IMPLEMENTATION
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ CLASS lcl_gui_page DEFINITION ABSTRACT.
|
||||||
TYPES: BEGIN OF ty_control,
|
TYPES: BEGIN OF ty_control,
|
||||||
redirect_url TYPE string,
|
redirect_url TYPE string,
|
||||||
page_title TYPE string,
|
page_title TYPE string,
|
||||||
page_menu TYPE REF TO lcl_html_toolbar,
|
page_menu TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
END OF ty_control.
|
END OF ty_control.
|
||||||
|
|
||||||
DATA: ms_control TYPE ty_control.
|
DATA: ms_control TYPE ty_control.
|
||||||
|
|
|
@ -89,7 +89,7 @@ CLASS lcl_gui_page_bkg DEFINITION FINAL
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
build_menu
|
build_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
render_data
|
render_data
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
||||||
RAISING zcx_abapgit_exception.
|
RAISING zcx_abapgit_exception.
|
||||||
|
|
|
@ -380,7 +380,7 @@ CLASS lcl_gui_page_boverview DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
RETURNING VALUE(rs_merge) TYPE ty_merge
|
RETURNING VALUE(rs_merge) TYPE ty_merge
|
||||||
RAISING zcx_abapgit_exception,
|
RAISING zcx_abapgit_exception,
|
||||||
build_menu
|
build_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
escape_branch
|
escape_branch
|
||||||
IMPORTING iv_string TYPE string
|
IMPORTING iv_string TYPE string
|
||||||
RETURNING VALUE(rv_string) TYPE string,
|
RETURNING VALUE(rv_string) TYPE string,
|
||||||
|
|
|
@ -234,7 +234,7 @@ CLASS lcl_gui_page_commit IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD render_menu.
|
METHOD render_menu.
|
||||||
|
|
||||||
DATA lo_toolbar TYPE REF TO lcl_html_toolbar.
|
DATA lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
CREATE OBJECT lo_toolbar.
|
CREATE OBJECT lo_toolbar.
|
||||||
|
|
|
@ -40,7 +40,7 @@ CLASS lcl_gui_page_db_dis IMPLEMENTATION.
|
||||||
|
|
||||||
DATA:
|
DATA:
|
||||||
lo_highlighter TYPE REF TO lcl_syntax_highlighter,
|
lo_highlighter TYPE REF TO lcl_syntax_highlighter,
|
||||||
lo_toolbar TYPE REF TO lcl_html_toolbar,
|
lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
||||||
ls_action TYPE lcl_persistence_db=>ty_content,
|
ls_action TYPE lcl_persistence_db=>ty_content,
|
||||||
lv_action TYPE string.
|
lv_action TYPE string.
|
||||||
|
@ -104,7 +104,7 @@ CLASS lcl_gui_page_db_edit IMPLEMENTATION.
|
||||||
METHOD render_content.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
||||||
lo_toolbar TYPE REF TO lcl_html_toolbar.
|
lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
lv_data = lcl_app=>db( )->read(
|
lv_data = lcl_app=>db( )->read(
|
||||||
|
@ -178,7 +178,7 @@ CLASS lcl_gui_page_db IMPLEMENTATION.
|
||||||
DATA: lt_data TYPE lcl_persistence_db=>tt_content,
|
DATA: lt_data TYPE lcl_persistence_db=>tt_content,
|
||||||
lv_action TYPE string,
|
lv_action TYPE string,
|
||||||
lv_trclass TYPE string,
|
lv_trclass TYPE string,
|
||||||
lo_toolbar TYPE REF TO lcl_html_toolbar.
|
lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_data> LIKE LINE OF lt_data.
|
FIELD-SYMBOLS: <ls_data> LIKE LINE OF lt_data.
|
||||||
|
|
||||||
|
|
|
@ -79,7 +79,7 @@ CLASS lcl_gui_page_diff DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
RAISING zcx_abapgit_exception.
|
RAISING zcx_abapgit_exception.
|
||||||
METHODS build_menu
|
METHODS build_menu
|
||||||
IMPORTING iv_supress_stage TYPE abap_bool
|
IMPORTING iv_supress_stage TYPE abap_bool
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar.
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
METHODS is_binary
|
METHODS is_binary
|
||||||
IMPORTING iv_d1 TYPE xstring
|
IMPORTING iv_d1 TYPE xstring
|
||||||
iv_d2 TYPE xstring
|
iv_d2 TYPE xstring
|
||||||
|
@ -275,7 +275,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD build_menu.
|
METHOD build_menu.
|
||||||
|
|
||||||
DATA: lo_sub TYPE REF TO lcl_html_toolbar,
|
DATA: lo_sub TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lt_types TYPE string_table,
|
lt_types TYPE string_table,
|
||||||
lt_users TYPE string_table.
|
lt_users TYPE string_table.
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
||||||
RAISING zcx_abapgit_exception,
|
RAISING zcx_abapgit_exception,
|
||||||
build_main_menu
|
build_main_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
render_repo
|
render_repo
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo
|
IMPORTING io_repo TYPE REF TO lcl_repo
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
RETURNING VALUE(ro_html) TYPE REF TO zcl_abapgit_html
|
||||||
|
@ -171,8 +171,8 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD build_main_menu.
|
METHOD build_main_menu.
|
||||||
|
|
||||||
DATA: lo_advsub TYPE REF TO lcl_html_toolbar,
|
DATA: lo_advsub TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lo_helpsub TYPE REF TO lcl_html_toolbar.
|
lo_helpsub TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
CREATE OBJECT ro_menu.
|
CREATE OBJECT ro_menu.
|
||||||
CREATE OBJECT lo_advsub.
|
CREATE OBJECT lo_advsub.
|
||||||
|
@ -206,8 +206,8 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
lv_key TYPE lcl_persistence_repo=>ty_repo-key,
|
lv_key TYPE lcl_persistence_repo=>ty_repo-key,
|
||||||
lv_icon TYPE string,
|
lv_icon TYPE string,
|
||||||
lo_repo LIKE LINE OF it_repo_list,
|
lo_repo LIKE LINE OF it_repo_list,
|
||||||
lo_favbar TYPE REF TO lcl_html_toolbar,
|
lo_favbar TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lo_allbar TYPE REF TO lcl_html_toolbar,
|
lo_allbar TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lt_favorites TYPE lcl_persistence_user=>tt_favorites,
|
lt_favorites TYPE lcl_persistence_user=>tt_favorites,
|
||||||
lv_repo_title TYPE string.
|
lv_repo_title TYPE string.
|
||||||
|
|
||||||
|
|
|
@ -339,7 +339,7 @@ CLASS lcl_gui_page_merge DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
build_menu
|
build_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar.
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
ENDCLASS. "lcl_gui_page_merge DEFINITION
|
ENDCLASS. "lcl_gui_page_merge DEFINITION
|
||||||
|
|
||||||
|
|
|
@ -51,7 +51,7 @@ CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
RAISING zcx_abapgit_exception,
|
RAISING zcx_abapgit_exception,
|
||||||
|
|
||||||
build_menu
|
build_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar.
|
RETURNING VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
|
@ -38,10 +38,10 @@ CLASS lcl_gui_view_repo DEFINITION FINAL.
|
||||||
build_head_menu
|
build_head_menu
|
||||||
IMPORTING iv_lstate TYPE char1
|
IMPORTING iv_lstate TYPE char1
|
||||||
iv_rstate TYPE char1
|
iv_rstate TYPE char1
|
||||||
RETURNING VALUE(ro_toolbar) TYPE REF TO lcl_html_toolbar
|
RETURNING VALUE(ro_toolbar) TYPE REF TO zcl_abapgit_html_toolbar
|
||||||
RAISING zcx_abapgit_exception,
|
RAISING zcx_abapgit_exception,
|
||||||
build_grid_menu
|
build_grid_menu
|
||||||
RETURNING VALUE(ro_toolbar) TYPE REF TO lcl_html_toolbar
|
RETURNING VALUE(ro_toolbar) TYPE REF TO zcl_abapgit_html_toolbar
|
||||||
RAISING zcx_abapgit_exception,
|
RAISING zcx_abapgit_exception,
|
||||||
render_item
|
render_item
|
||||||
IMPORTING is_item TYPE lcl_repo_content_list=>ty_repo_item
|
IMPORTING is_item TYPE lcl_repo_content_list=>ty_repo_item
|
||||||
|
@ -217,7 +217,7 @@ CLASS lcl_gui_view_repo IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD render_head_line.
|
METHOD render_head_line.
|
||||||
|
|
||||||
DATA lo_toolbar TYPE REF TO lcl_html_toolbar.
|
DATA lo_toolbar TYPE REF TO zcl_abapgit_html_toolbar.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
lo_toolbar = build_head_menu( iv_lstate = iv_lstate iv_rstate = iv_rstate ).
|
lo_toolbar = build_head_menu( iv_lstate = iv_lstate iv_rstate = iv_rstate ).
|
||||||
|
@ -262,9 +262,9 @@ CLASS lcl_gui_view_repo IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD build_head_menu.
|
METHOD build_head_menu.
|
||||||
|
|
||||||
DATA: lo_tb_advanced TYPE REF TO lcl_html_toolbar,
|
DATA: lo_tb_advanced TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lo_tb_branch TYPE REF TO lcl_html_toolbar,
|
lo_tb_branch TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lo_tb_tag TYPE REF TO lcl_html_toolbar,
|
lo_tb_tag TYPE REF TO zcl_abapgit_html_toolbar,
|
||||||
lv_key TYPE lcl_persistence_db=>ty_value,
|
lv_key TYPE lcl_persistence_db=>ty_value,
|
||||||
lv_wp_opt LIKE zif_abapgit_definitions=>gc_html_opt-crossout,
|
lv_wp_opt LIKE zif_abapgit_definitions=>gc_html_opt-crossout,
|
||||||
lv_crossout LIKE zif_abapgit_definitions=>gc_html_opt-crossout,
|
lv_crossout LIKE zif_abapgit_definitions=>gc_html_opt-crossout,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user