Skip to content

Commit

Permalink
New Sample: FlexBox Direction & Order (#286)
Browse files Browse the repository at this point in the history
* New Sample: FlexBox Direction & Order (1)

* New Sample: FlexBox Direction & Order (2)

* New Sample: FlexBox Direction & Order (3)

* New Sample: FlexBox Direction & Order (4)

* New Sample: FlexBox Direction & Order (5)

* New Sample: FlexBox Direction & Order (6)

* New Sample: FlexBox Direction & Order (7)

* New Sample: FlexBox Direction & Order (8)
  • Loading branch information
francisco-milan authored Jul 28, 2024
1 parent 2b7e0cd commit 59763d4
Show file tree
Hide file tree
Showing 3 changed files with 153 additions and 0 deletions.
8 changes: 8 additions & 0 deletions src/z2ui5_cl_demo_app_000.clas.abap
Original file line number Diff line number Diff line change
Expand Up @@ -932,6 +932,14 @@ CLASS z2ui5_cl_demo_app_000 IMPLEMENTATION.
class = 'sapUiTinyMarginEnd sapUiTinyMarginBottom'
).

panel->generic_tile(
header = 'Flex Box'
subheader = 'Direction & Order'
press = client->_event( 'Z2UI5_CL_DEMO_APP_245' )
mode = 'LineMode'
class = 'sapUiTinyMarginEnd sapUiTinyMarginBottom'
).

panel = page->panel(
expandable = abap_false
expanded = abap_true
Expand Down
129 changes: 129 additions & 0 deletions src/z2ui5_cl_demo_app_245.clas.abap
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
class z2ui5_cl_demo_app_245 definition
public
create public .

public section.

interfaces Z2UI5_IF_APP .

data CHECK_INITIALIZED type ABAP_BOOL .
PROTECTED SECTION.

DATA client TYPE REF TO z2ui5_if_client.

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_245 IMPLEMENTATION.


METHOD DISPLAY_VIEW.

DATA(page) = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = `abap2UI5 - Sample: Flex Box - Direction & Order`
navbuttonpress = client->_event( 'BACK' )
shownavbutton = xsdbool( client->get( )-s_draft-id_prev_app_stack IS NOT INITIAL ) ).

page->header_content(
)->button( id = `hint_icon`
icon = `sap-icon://hint`
tooltip = `Sample information`
press = client->_event( 'POPOVER' ) ).

page->header_content(
)->link(
text = 'UI5 Demo Kit'
target = '_blank'
href = 'https://sapui5.hana.ondemand.com/sdk/#/entity/sap.m.FlexBox/sample/sap.m.sample.FlexBoxDirectionOrder' ).

DATA(layout) = page->vbox(
)->panel( headertext = `Reverse, horizontal`
)->flex_box( direction = `RowReverse` alignItems = `Start`
)->button( text = `1` type = `Emphasized`
)->button( text = `2` type = `Reject`
)->button( text = `3` type = `Accept` )->get_parent( )->get_parent(

)->panel( headertext = `Top to bottom, vertical`
)->flex_box( direction = `Column` alignItems = `Start`
)->button( text = `1` type = `Emphasized`
)->button( text = `2` type = `Reject`
)->button( text = `3` type = `Accept` )->get_parent( )->get_parent(

)->panel( headertext = `Bottom to top, reverse vertical`
)->flex_box( direction = `ColumnReverse` alignItems = `Start`
)->button( text = `1` type = `Emphasized`
)->button( text = `2` type = `Reject`
)->button( text = `3` type = `Accept` )->get_parent( )->get_parent(

)->panel( headertext = `Arbitrary flex item order`
)->flex_box( alignItems = `Start`
)->button( text = `1` type = `Emphasized` class = `sapUiTinyMarginEnd` )->get(
)->layout_data(
)->flex_item_data( order = `2` )->get_parent( )->get_parent(
)->button( text = `2` type = `Reject` class = `sapUiTinyMarginEnd` )->get(
)->layout_data(
)->flex_item_data( order = `3` )->get_parent( )->get_parent(
)->button( text = `3` type = `Accept` class = `sapUiTinyMarginEnd` )->get(
)->layout_data(
)->flex_item_data( order = `1`
).

client->view_display( page->stringify( ) ).

ENDMETHOD.


METHOD ON_EVENT.

CASE client->get( )-event.
WHEN 'BACK'.
client->nav_app_leave( ).
WHEN 'POPOVER'.
z2ui5_display_popover( `hint_icon` ).
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 = `You can influence the direction and order of elements in horizontal and vertical Flex Box controls with the direction property.` ).

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 ).
ENDIF.

on_event( client ).

ENDMETHOD.
ENDCLASS.
16 changes: 16 additions & 0 deletions src/z2ui5_cl_demo_app_245.clas.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?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>Z2UI5_CL_DEMO_APP_245</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>Flex Box - Direction &amp; Order</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

0 comments on commit 59763d4

Please sign in to comment.