From 02e30b3c2136ddee49573930afdfced060e8fe02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20Mil=C3=A1n?= <36721657+francisco-milan@users.noreply.github.com> Date: Sat, 5 Oct 2024 14:37:29 -0600 Subject: [PATCH] New Sample: Date Range Selection - Value States - 2 (#396) --- src/z2ui5_cl_demo_app_000.clas.abap | 8 ++ src/z2ui5_cl_demo_app_294.clas.abap | 16 ++- src/z2ui5_cl_demo_app_295.clas.abap | 146 ++++++++++++++++++++++++++++ src/z2ui5_cl_demo_app_295.clas.xml | 16 +++ 4 files changed, 176 insertions(+), 10 deletions(-) create mode 100644 src/z2ui5_cl_demo_app_295.clas.abap create mode 100644 src/z2ui5_cl_demo_app_295.clas.xml diff --git a/src/z2ui5_cl_demo_app_000.clas.abap b/src/z2ui5_cl_demo_app_000.clas.abap index 4e460df..2158afa 100644 --- a/src/z2ui5_cl_demo_app_000.clas.abap +++ b/src/z2ui5_cl_demo_app_000.clas.abap @@ -749,6 +749,14 @@ CLASS z2ui5_cl_demo_app_000 IMPLEMENTATION. class = 'sapUiTinyMarginEnd sapUiTinyMarginBottom' ). + panel->generic_tile( + header = 'Date Range Selection' + subheader = 'Value States' + press = client->_event( 'Z2UI5_CL_DEMO_APP_295' ) + mode = 'LineMode' + class = 'sapUiTinyMarginEnd sapUiTinyMarginBottom' + ). + panel = page->panel( expandable = abap_false expanded = abap_true diff --git a/src/z2ui5_cl_demo_app_294.clas.abap b/src/z2ui5_cl_demo_app_294.clas.abap index 371c525..4301cbe 100644 --- a/src/z2ui5_cl_demo_app_294.clas.abap +++ b/src/z2ui5_cl_demo_app_294.clas.abap @@ -11,7 +11,7 @@ CLASS z2ui5_cl_demo_app_294 DEFINITION label TYPE string, value_state TYPE string, value_state_text TYPE string, - END OF ty_a_data . + END OF ty_a_data. DATA lt_a_data TYPE STANDARD TABLE OF ty_a_data. DATA s_text TYPE string. @@ -44,7 +44,7 @@ CLASS z2ui5_cl_demo_app_294 IMPLEMENTATION. DATA(page) = z2ui5_cl_xml_view=>factory( )->shell( )->page( - title = 'abap2UI5 - Date Picker - Value States' + title = 'abap2UI5 - Date Picker - Value States' navbuttonpress = client->_event( 'BACK' ) shownavbutton = xsdbool( client->get( )-s_draft-id_prev_app_stack IS NOT INITIAL ) ). @@ -128,16 +128,13 @@ CLASS z2ui5_cl_demo_app_294 IMPLEMENTATION. " Append entries to the internal table APPEND VALUE #( label = s_text && 'None' - value_state = 'None' - value_state_text = '' ) TO lt_a_data. + value_state = 'None' ) TO lt_a_data. APPEND VALUE #( label = s_text && 'Information' - value_state = 'Information' - value_state_text = '' ) TO lt_a_data. + value_state = 'Information' ) TO lt_a_data. APPEND VALUE #( label = s_text && 'Success' - value_state = 'Success' - value_state_text = '' ) TO lt_a_data. + value_state = 'Success' ) TO lt_a_data. APPEND VALUE #( label = s_text && 'Warning and long valueStateText' value_state = 'Warning' @@ -145,7 +142,6 @@ CLASS z2ui5_cl_demo_app_294 IMPLEMENTATION. 'It illustrates how the text wraps into two or more lines without truncation to show the full length of the message.' ) TO lt_a_data. APPEND VALUE #( label = s_text && 'Error' - value_state = 'Error' - value_state_text = '' ) TO lt_a_data. + value_state = 'Error' ) TO lt_a_data. ENDMETHOD. ENDCLASS. diff --git a/src/z2ui5_cl_demo_app_295.clas.abap b/src/z2ui5_cl_demo_app_295.clas.abap new file mode 100644 index 0000000..c71ab64 --- /dev/null +++ b/src/z2ui5_cl_demo_app_295.clas.abap @@ -0,0 +1,146 @@ +CLASS z2ui5_cl_demo_app_295 DEFINITION + PUBLIC + CREATE PUBLIC. + + PUBLIC SECTION. + + INTERFACES z2ui5_if_app. + + TYPES: + BEGIN OF ty_a_data, + label TYPE string, + value_state TYPE string, + value_state_text TYPE string, + END OF ty_a_data. + + DATA lt_a_data TYPE STANDARD TABLE OF ty_a_data. + DATA s_text TYPE string. + DATA check_initialized TYPE abap_bool. + + PROTECTED SECTION. + + DATA client TYPE REF TO z2ui5_if_client. + + METHODS z2ui5_set_data. + METHODS display_view + IMPORTING + client TYPE REF TO z2ui5_if_client. + METHODS on_event + IMPORTING + client TYPE REF TO z2ui5_if_client. + METHODS z2ui5_display_popover + IMPORTING + id TYPE string. + + PRIVATE SECTION. +ENDCLASS. + + + +CLASS z2ui5_cl_demo_app_295 IMPLEMENTATION. + + + METHOD display_view. + + DATA(page) = z2ui5_cl_xml_view=>factory( )->shell( + )->page( + title = 'abap2UI5 - Date Range Selection - Value States' + navbuttonpress = client->_event( 'BACK' ) + shownavbutton = xsdbool( client->get( )-s_draft-id_prev_app_stack IS NOT INITIAL ) ). + + page->header_content( + )->button( id = `button_hint_id` + icon = `sap-icon://hint` + tooltip = `Sample information` + press = client->_event( 'CLICK_HINT_ICON' ) ). + + page->header_content( + )->link( + text = 'UI5 Demo Kit' + target = '_blank' + href = 'https://sapui5.hana.ondemand.com/sdk/#/entity/sap.m.DateRangeSelection/sample/sap.m.sample.DateRangeSelectionValueState' ). + + page->flex_box( items = client->_bind( lt_a_data ) direction = `Column` + )->vbox( class = `sapUiTinyMargin` + )->label( text = '{LABEL}' + )->date_range_selection( + width = `100%` + valuestate = '{VALUE_STATE}' + valuestatetext = '{VALUE_STATE_TEXT}' )->get_parent( + )->get_parent( + ). + + client->view_display( page->stringify( ) ). + + ENDMETHOD. + + + METHOD on_event. + + CASE client->get( )-event. + WHEN 'BACK'. + client->nav_app_leave( ). + WHEN 'CLICK_HINT_ICON'. + z2ui5_display_popover( `button_hint_id` ). + ENDCASE. + + ENDMETHOD. + + + METHOD z2ui5_display_popover. + + DATA(view) = z2ui5_cl_xml_view=>factory_popup( ). + view->quick_view( placement = `Bottom` width = `auto` + )->quick_view_page( pageid = `sampleInformationId` + header = `Sample information` + description = `This example shows different DateRangeSelection value states.` ). + + client->popover_display( + xml = view->stringify( ) + by_id = id + ). + + ENDMETHOD. + + + METHOD z2ui5_if_app~main. + + me->client = client. + + IF check_initialized = abap_false. + check_initialized = abap_true. + display_view( client ). + z2ui5_set_data( ). + ENDIF. + + on_event( client ). + + ENDMETHOD. + + + METHOD z2ui5_set_data. + + CLEAR s_text. + CLEAR lt_a_data. + + s_text = 'DateRangeSelection with valueState '. + + " Append entries to the internal table + APPEND VALUE #( label = s_text && 'None' + value_state = 'None' ) TO lt_a_data. + + APPEND VALUE #( label = s_text && 'Information' + value_state = 'Information' ) TO lt_a_data. + + APPEND VALUE #( label = s_text && 'Success' + value_state = 'Success' ) TO lt_a_data. + + APPEND VALUE #( label = s_text && 'Warning and long valueStateText' + value_state = 'Warning' + value_state_text = 'Warning message. This is an extra long text used as a warning message. ' && + 'It illustrates how the text wraps into two or more lines without truncation to show the full length of the message.' ) TO lt_a_data. + + APPEND VALUE #( label = s_text && 'Error' + value_state = 'Error' ) TO lt_a_data. + ENDMETHOD. +ENDCLASS. diff --git a/src/z2ui5_cl_demo_app_295.clas.xml b/src/z2ui5_cl_demo_app_295.clas.xml new file mode 100644 index 0000000..97c5a6b --- /dev/null +++ b/src/z2ui5_cl_demo_app_295.clas.xml @@ -0,0 +1,16 @@ + + + + + + Z2UI5_CL_DEMO_APP_295 + E + Date Range Selection - Value States + 1 + X + X + X + + + +