Embedded SDK
Embedded SDK
Classes | Typedefs | Enumerations | Functions
nbgl_page.h File Reference

API of the Advanced BOLOS Graphical Library, for predefined pages. More...

#include "nbgl_layout.h"
#include "nbgl_obj.h"
#include "nbgl_types.h"
#include "nbgl_content.h"
Include dependency graph for nbgl_page.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  nbgl_pageContent_s
 This structure contains data to build a page in multi-pages mode (nbgl_pageDrawGenericContent) More...
 
struct  nbgl_pageNavWithTap_s
 Structure containing all information to create a navigation with "tap". More...
 
struct  nbgl_pageNavWithButtons_s
 Structure containing all information to create a navigation with buttons in bottom nav bar. More...
 
struct  nbgl_pageMultiScreensDescription_s
 Structure containing all specific information when creating a multi-screens page. More...
 
struct  nbgl_pageConfirmationDescription_s
 Structure containing all specific information when creating a confirmation page. More...
 
struct  nbgl_pageAddressConfirmationDescription_s
 Structure containing all specific information when creating a address confirmation page. This page contains the address in a tag/value format, and a white button to dipsplay the same address as a QRCode in a modal window. At the bottom 2 buttons allow to confirm or invalidate the address. More...
 
struct  nbgl_pageInfoDescription_s
 Structure containing all specific information when creating an information page. More...
 

Typedefs

typedef nbgl_contentInfoLongPress_t nbgl_pageInfoLongPress_t
 Deprecated, kept for retro compatibility. More...
 
typedef struct nbgl_pageContent_s nbgl_pageContent_t
 This structure contains data to build a page in multi-pages mode (nbgl_pageDrawGenericContent) More...
 
typedef void * nbgl_page_t
 type shared externally More...
 
typedef struct nbgl_pageNavWithTap_s nbgl_pageNavWithTap_t
 Structure containing all information to create a navigation with "tap". More...
 
typedef struct nbgl_pageNavWithButtons_s nbgl_pageNavWithButtons_t
 Structure containing all information to create a navigation with buttons in bottom nav bar. More...
 
typedef struct nbgl_pageMultiScreensDescription_s nbgl_pageNavigationInfo_t
 Structure containing all specific information when creating a multi-screens page. More...
 
typedef struct nbgl_pageConfirmationDescription_s nbgl_pageConfirmationDescription_t
 Structure containing all specific information when creating a confirmation page. More...
 
typedef struct nbgl_pageAddressConfirmationDescription_s nbgl_pageAddressConfirmationDescription_t
 Structure containing all specific information when creating a address confirmation page. This page contains the address in a tag/value format, and a white button to dipsplay the same address as a QRCode in a modal window. At the bottom 2 buttons allow to confirm or invalidate the address. More...
 
typedef struct nbgl_pageInfoDescription_s nbgl_pageInfoDescription_t
 Structure containing all specific information when creating an information page. More...
 

Enumerations

enum  nbgl_pageButtonStyle_t {
  NO_BUTTON_STYLE = 0 , SETTINGS_ICON , QUIT_ICON , INFO_ICON ,
  QUIT_APP_TEXT
}
 The different types of top-right / bottom button. More...
 
enum  nbgl_pageNavigationType_t { NAV_WITH_TAP , NAV_WITH_BUTTONS }
 The different types of navigation in a multi-screens page. More...
 

Functions

nbgl_page_tnbgl_pageDrawLedgerInfo (nbgl_layoutTouchCallback_t onActionCallback, const nbgl_screenTickerConfiguration_t *ticker, const char *text, int tapActionToken)
 draw a page with a centered text in large case, with a round check icon More...
 
nbgl_page_tnbgl_pageDrawSpinner (nbgl_layoutTouchCallback_t onActionCallback, const char *text)
 draw a spinner page with the given parameters. The spinner will "rotate" automatically every 800 ms More...
 
nbgl_page_tnbgl_pageDrawInfo (nbgl_layoutTouchCallback_t onActionCallback, const nbgl_screenTickerConfiguration_t *ticker, const nbgl_pageInfoDescription_t *info)
 draw a page with a centered info (icon and/or texts) with a touchable footer, in a potential "tapable" area, with an optional top-right button, with an optional bottom button More...
 
nbgl_page_tnbgl_pageDrawConfirmation (nbgl_layoutTouchCallback_t onActionCallback, const nbgl_pageConfirmationDescription_t *info)
 draw a confirmation page, with a centered info (icon and/or text), a button to confirm and a footer to cancel More...
 
nbgl_page_tnbgl_pageDrawGenericContentExt (nbgl_layoutTouchCallback_t onActionCallback, const nbgl_pageNavigationInfo_t *nav, nbgl_pageContent_t *content, bool modal)
 draw a generic content page, with the given content, and if nav parameter is not NULL, with the given navigation controls (either with navigation bar or with "tap" and "back") More...
 
nbgl_page_tnbgl_pageDrawGenericContent (nbgl_layoutTouchCallback_t onActionCallback, const nbgl_pageNavigationInfo_t *nav, nbgl_pageContent_t *content)
 draw a generic content page, with the given content, and if nav parameter is not NULL, with the given navigation controls (either with navigation bar or with "tap" and "back") More...
 
int nbgl_pageRelease (nbgl_page_t *)
 Release the page obtained with any of the nbgl_pageDrawXXX() functions. More...
 

Detailed Description

API of the Advanced BOLOS Graphical Library, for predefined pages.

Definition in file nbgl_page.h.

Typedef Documentation

◆ nbgl_page_t

typedef void* nbgl_page_t

type shared externally

Definition at line 81 of file nbgl_page.h.

◆ nbgl_pageAddressConfirmationDescription_t

Structure containing all specific information when creating a address confirmation page. This page contains the address in a tag/value format, and a white button to dipsplay the same address as a QRCode in a modal window. At the bottom 2 buttons allow to confirm or invalidate the address.

◆ nbgl_pageConfirmationDescription_t

Structure containing all specific information when creating a confirmation page.

◆ nbgl_pageContent_t

This structure contains data to build a page in multi-pages mode (nbgl_pageDrawGenericContent)

◆ nbgl_pageInfoDescription_t

Structure containing all specific information when creating an information page.

◆ nbgl_pageInfoLongPress_t

Deprecated, kept for retro compatibility.

Definition at line 46 of file nbgl_page.h.

◆ nbgl_pageNavigationInfo_t

Structure containing all specific information when creating a multi-screens page.

◆ nbgl_pageNavWithButtons_t

Structure containing all information to create a navigation with buttons in bottom nav bar.

◆ nbgl_pageNavWithTap_t

Structure containing all information to create a navigation with "tap".

Enumeration Type Documentation

◆ nbgl_pageButtonStyle_t

The different types of top-right / bottom button.

Enumerator
NO_BUTTON_STYLE 

no button.

SETTINGS_ICON 

settings (wheel) icon in the button.

QUIT_ICON 

quit (X) icon in the button.

INFO_ICON 

info (i) icon in the button.

QUIT_APP_TEXT 

A full width button with "Quit app" text (only for bottom button)

Definition at line 35 of file nbgl_page.h.

◆ nbgl_pageNavigationType_t

The different types of navigation in a multi-screens page.

Enumerator
NAV_WITH_TAP 

move forward with "tap" and possibly backward with top left arrow

NAV_WITH_BUTTONS 

move forward and backward with buttons in bottom nav bar

Definition at line 87 of file nbgl_page.h.

Function Documentation

◆ nbgl_pageDrawConfirmation()

nbgl_page_t* nbgl_pageDrawConfirmation ( nbgl_layoutTouchCallback_t  onActionCallback,
const nbgl_pageConfirmationDescription_t info 
)

draw a confirmation page, with a centered info (icon and/or text), a button to confirm and a footer to cancel

Parameters
onActionCallbackcommon callback for all actions on this page
infostructure describing the centered info and other controls of this page
Returns
the page context (or NULL if error)

Definition at line 455 of file nbgl_page.c.

◆ nbgl_pageDrawGenericContent()

nbgl_page_t* nbgl_pageDrawGenericContent ( nbgl_layoutTouchCallback_t  onActionCallback,
const nbgl_pageNavigationInfo_t nav,
nbgl_pageContent_t content 
)

draw a generic content page, with the given content, and if nav parameter is not NULL, with the given navigation controls (either with navigation bar or with "tap" and "back")

Parameters
onActionCallbackcommon callback for all actions on this page
navstructure describing the navigation controls of this page (no navigation if NULL)
contentstructure describing the main content of this page
Returns
the page context (or NULL if error)

Definition at line 625 of file nbgl_page.c.

◆ nbgl_pageDrawGenericContentExt()

nbgl_page_t* nbgl_pageDrawGenericContentExt ( nbgl_layoutTouchCallback_t  onActionCallback,
const nbgl_pageNavigationInfo_t nav,
nbgl_pageContent_t content,
bool  modal 
)

draw a generic content page, with the given content, and if nav parameter is not NULL, with the given navigation controls (either with navigation bar or with "tap" and "back")

Parameters
onActionCallbackcommon callback for all actions on this page
navstructure describing the navigation controls of this page (no navigation if NULL)
contentstructure describing the main content of this page
modalset to true to draw as a modal
Returns
the page context (or NULL if error)

Definition at line 496 of file nbgl_page.c.

◆ nbgl_pageDrawInfo()

nbgl_page_t* nbgl_pageDrawInfo ( nbgl_layoutTouchCallback_t  onActionCallback,
const nbgl_screenTickerConfiguration_t ticker,
const nbgl_pageInfoDescription_t info 
)

draw a page with a centered info (icon and/or texts) with a touchable footer, in a potential "tapable" area, with an optional top-right button, with an optional bottom button

Parameters
onActionCallbackcommon callback for all actions on this page
tickerticker configuration, set to NULL to disable it
infostructure describing the centered info and other controls of this page
Returns
the page context (or NULL if error)

Definition at line 337 of file nbgl_page.c.

◆ nbgl_pageDrawLedgerInfo()

nbgl_page_t* nbgl_pageDrawLedgerInfo ( nbgl_layoutTouchCallback_t  onActionCallback,
const nbgl_screenTickerConfiguration_t ticker,
const char *  text,
int  tapActionToken 
)

draw a page with a centered text in large case, with a round check icon

Parameters
onActionCallbackcommon callback for all actions on this page
tickerticker configuration, set to NULL to disable it
texttext in LEDGER style (UPPER CASE only)
tapActionTokentoken passed to onActionCallback, on a tap event
Returns
the page context (or NULL if error)

Definition at line 264 of file nbgl_page.c.

◆ nbgl_pageDrawSpinner()

nbgl_page_t* nbgl_pageDrawSpinner ( nbgl_layoutTouchCallback_t  onActionCallback,
const char *  text 
)

draw a spinner page with the given parameters. The spinner will "rotate" automatically every 800 ms

Parameters
onActionCallbackcommon callback for all actions on this page (unused, so set to NULL)
texttext to use under spinner
Returns
the page context (or NULL if error)

Definition at line 307 of file nbgl_page.c.

◆ nbgl_pageRelease()

int nbgl_pageRelease ( nbgl_page_t page)

Release the page obtained with any of the nbgl_pageDrawXXX() functions.

Parameters
pagepage to release
Returns
>= 0 if OK

Definition at line 638 of file nbgl_page.c.