mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
SAP GUI for HTML: Fix dialog buttons (#6566)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
parent
20ec92d224
commit
f8b4ec0026
|
@ -137,6 +137,7 @@ CLASS zcl_abapgit_html_form DEFINITION
|
|||
autofocus TYPE string,
|
||||
END OF ty_attr .
|
||||
|
||||
DATA mv_webgui TYPE abap_bool.
|
||||
DATA mt_fields TYPE zif_abapgit_html_form=>ty_fields .
|
||||
DATA:
|
||||
mt_commands TYPE STANDARD TABLE OF zif_abapgit_html_form=>ty_command .
|
||||
|
@ -180,6 +181,10 @@ CLASS zcl_abapgit_html_form DEFINITION
|
|||
IMPORTING
|
||||
!ii_html TYPE REF TO zif_abapgit_html
|
||||
!is_cmd TYPE zif_abapgit_html_form=>ty_command .
|
||||
METHODS render_command_link
|
||||
IMPORTING
|
||||
!ii_html TYPE REF TO zif_abapgit_html
|
||||
!is_cmd TYPE zif_abapgit_html_form=>ty_command .
|
||||
METHODS render_field_hidden
|
||||
IMPORTING
|
||||
!ii_html TYPE REF TO zif_abapgit_html
|
||||
|
@ -189,7 +194,7 @@ ENDCLASS.
|
|||
|
||||
|
||||
|
||||
CLASS ZCL_ABAPGIT_HTML_FORM IMPLEMENTATION.
|
||||
CLASS zcl_abapgit_html_form IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD checkbox.
|
||||
|
@ -262,6 +267,8 @@ CLASS ZCL_ABAPGIT_HTML_FORM IMPLEMENTATION.
|
|||
ro_form->mv_form_id = |form_{ lv_ts }|.
|
||||
ENDIF.
|
||||
|
||||
ro_form->mv_webgui = zcl_abapgit_ui_factory=>get_frontend_services( )->is_webgui( ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
|
@ -451,13 +458,20 @@ CLASS ZCL_ABAPGIT_HTML_FORM IMPLEMENTATION.
|
|||
|
||||
METHOD render_command.
|
||||
|
||||
" HTML GUI supports only links for submitting forms
|
||||
IF mv_webgui = abap_true.
|
||||
render_command_link(
|
||||
is_cmd = is_cmd
|
||||
ii_html = ii_html ).
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
CASE is_cmd-cmd_type.
|
||||
WHEN zif_abapgit_html_form=>c_cmd_type-link.
|
||||
|
||||
ii_html->add_a(
|
||||
iv_txt = is_cmd-label
|
||||
iv_act = is_cmd-action
|
||||
iv_class = 'dialog-commands' ).
|
||||
render_command_link(
|
||||
is_cmd = is_cmd
|
||||
ii_html = ii_html ).
|
||||
|
||||
WHEN zif_abapgit_html_form=>c_cmd_type-button.
|
||||
|
||||
|
@ -480,6 +494,22 @@ CLASS ZCL_ABAPGIT_HTML_FORM IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD render_command_link.
|
||||
|
||||
DATA lv_class TYPE string VALUE 'dialog-commands'.
|
||||
|
||||
IF is_cmd-cmd_type = zif_abapgit_html_form=>c_cmd_type-input_main.
|
||||
lv_class = lv_class && ' main'.
|
||||
ENDIF.
|
||||
|
||||
ii_html->add_a(
|
||||
iv_txt = is_cmd-label
|
||||
iv_act = is_cmd-action
|
||||
iv_class = lv_class ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD render_field.
|
||||
|
||||
DATA:
|
||||
|
|
|
@ -105,6 +105,57 @@ CLASS ltcl_popups_mock IMPLEMENTATION.
|
|||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_sapgui_mock DEFINITION FINAL FOR TESTING
|
||||
DURATION SHORT
|
||||
RISK LEVEL HARMLESS.
|
||||
|
||||
PUBLIC SECTION.
|
||||
|
||||
INTERFACES:
|
||||
zif_abapgit_frontend_services.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_sapgui_mock IMPLEMENTATION.
|
||||
|
||||
METHOD zif_abapgit_frontend_services~clipboard_export.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_browse.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_create.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~directory_exist.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~execute.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~file_download.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~file_upload.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_file_separator.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_gui_version.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~get_system_directory.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~gui_is_available.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_java.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_sapgui_for_windows.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~is_webgui.
|
||||
rv_is_webgui = abap_false.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~open_ie_devtools.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~show_file_open_dialog.
|
||||
ENDMETHOD.
|
||||
METHOD zif_abapgit_frontend_services~show_file_save_dialog.
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_test_form DEFINITION
|
||||
FOR TESTING
|
||||
RISK LEVEL HARMLESS
|
||||
|
@ -113,7 +164,8 @@ CLASS ltcl_test_form DEFINITION
|
|||
|
||||
PRIVATE SECTION.
|
||||
DATA:
|
||||
mo_popups_mock TYPE REF TO ltcl_popups_mock.
|
||||
mo_popups_mock TYPE REF TO ltcl_popups_mock,
|
||||
mo_sapgui_mock TYPE REF TO ltcl_sapgui_mock.
|
||||
|
||||
METHODS setup.
|
||||
METHODS validate1 FOR TESTING RAISING zcx_abapgit_exception.
|
||||
|
@ -134,6 +186,9 @@ CLASS ltcl_test_form IMPLEMENTATION.
|
|||
CREATE OBJECT mo_popups_mock TYPE ltcl_popups_mock.
|
||||
zcl_abapgit_ui_injector=>set_popups( mo_popups_mock ).
|
||||
|
||||
CREATE OBJECT mo_sapgui_mock TYPE ltcl_sapgui_mock.
|
||||
zcl_abapgit_ui_injector=>set_frontend_services( mo_sapgui_mock ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD validate1.
|
||||
|
|
|
@ -1323,7 +1323,6 @@ table.unit_tests {
|
|||
text-decoration: none;
|
||||
padding: 6px 12px;
|
||||
border-radius: 3px;
|
||||
font-size: smaller;
|
||||
}
|
||||
.dialog li.dialog-commands input[type="button"],
|
||||
.dialog li.dialog-commands input[type="submit"] {
|
||||
|
@ -1332,6 +1331,7 @@ table.unit_tests {
|
|||
border-radius: 3px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.dialog li.dialog-commands a.main,
|
||||
.dialog li.dialog-commands input[type="submit"].main {
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
|
|
@ -209,15 +209,13 @@ div.log { color: var(--theme-greyscale-dark); }
|
|||
color: var(--theme-primary-font-color-reduced);
|
||||
background-color: var(--theme-container-background-color);
|
||||
}
|
||||
.dialog li.dialog-commands a {
|
||||
border-color: #ccc;
|
||||
background-color: var(--theme-greyscale-dark);
|
||||
}
|
||||
.dialog li.dialog-commands a,
|
||||
.dialog li.dialog-commands input[type="submit"] {
|
||||
border-color: #ccc;
|
||||
background-color: var(--theme-greyscale-dark);
|
||||
color: #fff;
|
||||
}
|
||||
.dialog li.dialog-commands a.main,
|
||||
.dialog li.dialog-commands input[type="submit"].main {
|
||||
background-color: #64a8ff;
|
||||
color: #fff;
|
||||
|
|
|
@ -459,14 +459,13 @@ table.settings_tab input:focus {
|
|||
border-color: #ccc;
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
.dialog li.dialog-commands a {
|
||||
border-color: #ccc;
|
||||
background-color: #ddd;
|
||||
}
|
||||
.dialog li.dialog-commands a,
|
||||
.dialog li.dialog-commands input[type="submit"] {
|
||||
border-color: #ccc;
|
||||
background-color: #ddd;
|
||||
color: #000;
|
||||
}
|
||||
.dialog li.dialog-commands a.main,
|
||||
.dialog li.dialog-commands input[type="submit"].main {
|
||||
background-color: #64a8ff;
|
||||
color: #fff;
|
||||
|
|
Loading…
Reference in New Issue
Block a user