GUIslice  0.16.0
Embedded GUI in C
Internal Functions

These functions are internal to the GUIslice implementation and are not intended to be called by user code and subject to change even in minor releases. More...

Collaboration diagram for Internal Functions:

Modules

 Internal: Misc Functions
 
 Internal: Element Functions
 
 Internal: Page Functions
 
 Internal: Element Collection Functions
 
 Internal: Element Collection Event Functions
 
 Internal: Tracking Functions
 
 Internal: Cleanup Functions
 

Variables

int16_t gslc_tsRect::x
 X coordinate of corner. More...
 
int16_t gslc_tsRect::y
 Y coordinate of corner. More...
 
uint16_t gslc_tsRect::w
 Width of region. More...
 
uint16_t gslc_tsRect::h
 Height of region. More...
 
int16_t gslc_tsPt::x
 X coordinate. More...
 
int16_t gslc_tsPt::y
 Y coordinate. More...
 
uint8_t gslc_tsColor::r
 RGB red value. More...
 
uint8_t gslc_tsColor::g
 RGB green value. More...
 
uint8_t gslc_tsColor::b
 RGB blue value. More...
 
gslc_teEventType gslc_tsEvent::eType
 Event type. More...
 
uint8_t gslc_tsEvent::nSubType
 Event sub-type. More...
 
void * gslc_tsEvent::pvScope
 Event target scope (eg. Page,Collection,Event) More...
 
void * gslc_tsEvent::pvData
 Generic data pointer for event. More...
 
gslc_teTouch gslc_tsEventTouch::eTouch
 Touch state. More...
 
int16_t gslc_tsEventTouch::nX
 Touch X coordinate (or param1) More...
 
int16_t gslc_tsEventTouch::nY
 Touch Y coordinate (or param2) More...
 
int16_t gslc_tsFont::nId
 Font ID specified by user. More...
 
gslc_teFontRefType gslc_tsFont::eFontRefType
 Font reference type. More...
 
gslc_teFontRefMode gslc_tsFont::eFontRefMode
 Font reference mode. More...
 
const void * gslc_tsFont::pvFont
 Void ptr to the font reference (type defined by driver) More...
 
uint16_t gslc_tsFont::nSize
 Font size. More...
 
const unsigned char * gslc_tsImgRef::pImgBuf
 Pointer to input image buffer in memory [RAM,FLASH]. More...
 
const char * gslc_tsImgRef::pFname
 Pathname to input image file [FILE,SD]. More...
 
gslc_teImgRefFlags gslc_tsImgRef::eImgFlags
 Image reference flags. More...
 
void * gslc_tsImgRef::pvImgRaw
 Ptr to raw output image data (for pre-loaded images) More...
 
gslc_tsElemgslc_tsElemRef::pElem
 Pointer to element in memory [RAM,FLASH]. More...
 
gslc_teElemRefFlags gslc_tsElemRef::eElemFlags
 Element reference flags. More...
 
int16_t gslc_tsElem::nId
 Element ID specified by user. More...
 
uint8_t gslc_tsElem::nFeatures
 Element feature vector (appearance/behavior)) More...
 
int16_t gslc_tsElem::nType
 Element type enumeration. More...
 
gslc_tsRect gslc_tsElem::rElem
 Rect region containing element. More...
 
int16_t gslc_tsElem::nGroup
 Group ID that the element belongs to. More...
 
gslc_tsColor gslc_tsElem::colElemFrame
 Color for frame. More...
 
gslc_tsColor gslc_tsElem::colElemFill
 Color for background fill. More...
 
gslc_tsColor gslc_tsElem::colElemFrameGlow
 Color to use for frame when glowing. More...
 
gslc_tsColor gslc_tsElem::colElemFillGlow
 Color to use for fill when glowing. More...
 
gslc_tsImgRef gslc_tsElem::sImgRefNorm
 Image reference to draw (normal) More...
 
gslc_tsImgRef gslc_tsElem::sImgRefGlow
 Image reference to draw (glowing) More...
 
gslc_tsElemRefgslc_tsElem::pElemRefParent
 Parent element reference. More...
 
char * gslc_tsElem::pStrBuf
 Ptr to text string buffer to overlay. More...
 
uint8_t gslc_tsElem::nStrBufMax
 Size of string buffer. More...
 
gslc_teTxtFlags gslc_tsElem::eTxtFlags
 Flags associated with text buffer. More...
 
gslc_tsColor gslc_tsElem::colElemText
 Color of overlay text. More...
 
gslc_tsColor gslc_tsElem::colElemTextGlow
 Color of overlay text when glowing. More...
 
int8_t gslc_tsElem::eTxtAlign
 Alignment of overlay text. More...
 
int8_t gslc_tsElem::nTxtMarginX
 Margin of overlay text within rect region (x offset) More...
 
int8_t gslc_tsElem::nTxtMarginY
 Margin of overlay text within rect region (y offset) More...
 
gslc_tsFontgslc_tsElem::pTxtFont
 Ptr to Font for overlay text. More...
 
void * gslc_tsElem::pXData
 Ptr to extended data structure. More...
 
GSLC_CB_EVENT gslc_tsElem::pfuncXEvent
 UNUSED: Callback func ptr for event tree (draw,touch,tick) More...
 
GSLC_CB_DRAW gslc_tsElem::pfuncXDraw
 Callback func ptr for custom drawing. More...
 
GSLC_CB_TOUCH gslc_tsElem::pfuncXTouch
 Callback func ptr for touch. More...
 
GSLC_CB_TICK gslc_tsElem::pfuncXTick
 Callback func ptr for timer/main loop tick. More...
 
gslc_tsElemgslc_tsCollect::asElem
 Array of elements. More...
 
uint16_t gslc_tsCollect::nElemMax
 Maximum number of elements to allocate (in RAM) More...
 
uint16_t gslc_tsCollect::nElemCnt
 Number of elements allocated. More...
 
int16_t gslc_tsCollect::nElemAutoIdNext
 Next Element ID for auto-assignment. More...
 
gslc_tsElemRefgslc_tsCollect::asElemRef
 Array of element references. More...
 
uint16_t gslc_tsCollect::nElemRefMax
 Maximum number of element references to allocate. More...
 
uint16_t gslc_tsCollect::nElemRefCnt
 Number of element references allocated. More...
 
gslc_tsElemRefgslc_tsCollect::pElemRefTracked
 Element reference currently being touch-tracked (NULL for none) More...
 
int16_t gslc_tsCollect::nElemIndFocused
 Element index currently in focus (eg. by keyboard/pin control), GSLC_IND_NONE for none. More...
 
gslc_tsCollect gslc_tsPage::sCollect
 Collection of elements on page. More...
 
int16_t gslc_tsPage::nPageId
 Page identifier. More...
 
gslc_tsRect gslc_tsPage::rBounds
 Bounding rect for page elements. More...
 
gslc_teInputRawEvent gslc_tsInputMap::eEvent
 The input event. More...
 
int16_t gslc_tsInputMap::nVal
 The value associated with the input event. More...
 
gslc_teAction gslc_tsInputMap::eAction
 Resulting action. More...
 
int16_t gslc_tsInputMap::nActionVal
 The value for the output action. More...
 
uint16_t gslc_tsGui::nDispW
 Width of the display (pixels) More...
 
uint16_t gslc_tsGui::nDispH
 Height of the display (pixels) More...
 
uint16_t gslc_tsGui::nDisp0W
 Width of the display (pixels) in native orientation. More...
 
uint16_t gslc_tsGui::nDisp0H
 Height of the display (pixels) in native orientation. More...
 
uint8_t gslc_tsGui::nDispDepth
 Bit depth of display (bits per pixel) More...
 
uint8_t gslc_tsGui::nRotation
 Adafruit GFX Rotation of display. More...
 
uint8_t gslc_tsGui::nTouchRotation
 Touchscreen rotation offset vs display. More...
 
uint8_t gslc_tsGui::nSwapXY
 Adafruit GFX Touch Swap x and y axes. More...
 
uint8_t gslc_tsGui::nFlipX
 Adafruit GFX Touch Flip x axis. More...
 
uint8_t gslc_tsGui::nFlipY
 Adafruit GFX Touch Flip x axis. More...
 
int16_t gslc_tsGui::nTouchCalXMin
 Calibration X minimum reading. More...
 
int16_t gslc_tsGui::nTouchCalXMax
 Calibration X maximum reading. More...
 
int16_t gslc_tsGui::nTouchCalYMin
 Calibration Y minimum reading. More...
 
int16_t gslc_tsGui::nTouchCalYMax
 Calibration Y maximum reading. More...
 
int16_t gslc_tsGui::nTouchCalPressMin
 Calibration minimum pressure threshold. More...
 
int16_t gslc_tsGui::nTouchCalPressMax
 Calibration maximum pressure threshold. More...
 
gslc_tsFontgslc_tsGui::asFont
 Collection of loaded fonts. More...
 
uint8_t gslc_tsGui::nFontMax
 Maximum number of fonts to allocate. More...
 
uint8_t gslc_tsGui::nFontCnt
 Number of fonts allocated. More...
 
uint8_t gslc_tsGui::nRoundRadius
 Radius for rounded elements. More...
 
gslc_tsColor gslc_tsGui::sTransCol
 Color used for transparent image regions (GSLC_BMP_TRANS_EN=1) More...
 
gslc_tsElem gslc_tsGui::sElemTmp
 Temporary element. More...
 
gslc_tsElemRef gslc_tsGui::sElemRefTmp
 Temporary element reference. More...
 
gslc_tsElem gslc_tsGui::sElemTmpProg
 Temporary element for Flash compatibility. More...
 
gslc_teInitStat gslc_tsGui::eInitStatTouch
 Status of touch initialization. More...
 
int16_t gslc_tsGui::nTouchLastX
 Last touch event X coord. More...
 
int16_t gslc_tsGui::nTouchLastY
 Last touch event Y coord. More...
 
uint16_t gslc_tsGui::nTouchLastPress
 Last touch event pressure (0=none)) More...
 
bool gslc_tsGui::bTouchRemapEn
 Enable touch remapping? More...
 
bool gslc_tsGui::bTouchRemapYX
 Enable touch controller swapping of X & Y. More...
 
void * gslc_tsGui::pvDriver
 Driver-specific members (gslc_tsDriver*) More...
 
bool gslc_tsGui::bRedrawPartialEn
 Driver supports partial page redraw. More...
 
gslc_tsImgRef gslc_tsGui::sImgRefBkgnd
 Image reference for background. More...
 
uint8_t gslc_tsGui::nFrameRateCnt
 Diagnostic frame rate count. More...
 
uint8_t gslc_tsGui::nFrameRateStart
 Diagnostic frame rate timestamp. More...
 
gslc_tsPagegslc_tsGui::asPage
 Array of all pages defined in system. More...
 
uint8_t gslc_tsGui::nPageMax
 Maximum number of pages that can be defined. More...
 
uint8_t gslc_tsGui::nPageCnt
 Current number of pages defined. More...
 
gslc_tsPagegslc_tsGui::apPageStack [GSLC_STACK__MAX]
 Stack of pages. More...
 
bool gslc_tsGui::abPageStackActive [GSLC_STACK__MAX]
 Whether page in stack can receive touch events. More...
 
bool gslc_tsGui::abPageStackDoDraw [GSLC_STACK__MAX]
 Whether page in stack is still actively drawn. More...
 
bool gslc_tsGui::bScreenNeedRedraw
 Screen requires a redraw. More...
 
bool gslc_tsGui::bScreenNeedFlip
 Screen requires a page flip. More...
 
bool gslc_tsGui::bInvalidateEn
 A region of the display has been invalidated. More...
 
gslc_tsRect gslc_tsGui::rInvalidateRect
 The rect region that has been invalidated. More...
 
GSLC_CB_PIN_POLL gslc_tsGui::pfuncPinPoll
 Callback func ptr for pin polling. More...
 
gslc_tsInputMapgslc_tsGui::asInputMap
 Array of input maps. More...
 
uint8_t gslc_tsGui::nInputMapMax
 Maximum number of input maps. More...
 
uint8_t gslc_tsGui::nInputMapCnt
 Current number of input maps. More...
 
uint8_t gslc_tsGui::nInputMode
 Input mode: 0=navigate, 1=edit. More...
 

Detailed Description

These functions are internal to the GUIslice implementation and are not intended to be called by user code and subject to change even in minor releases.

Variable Documentation

bool gslc_tsGui::abPageStackActive[GSLC_STACK__MAX]

Whether page in stack can receive touch events.

bool gslc_tsGui::abPageStackDoDraw[GSLC_STACK__MAX]

Whether page in stack is still actively drawn.

gslc_tsPage* gslc_tsGui::apPageStack[GSLC_STACK__MAX]

Stack of pages.

gslc_tsElem* gslc_tsCollect::asElem

Array of elements.

gslc_tsElemRef* gslc_tsCollect::asElemRef

Array of element references.

gslc_tsFont* gslc_tsGui::asFont

Collection of loaded fonts.

gslc_tsInputMap* gslc_tsGui::asInputMap

Array of input maps.

gslc_tsPage* gslc_tsGui::asPage

Array of all pages defined in system.

uint8_t gslc_tsColor::b

RGB blue value.

bool gslc_tsGui::bInvalidateEn

A region of the display has been invalidated.

bool gslc_tsGui::bRedrawPartialEn

Driver supports partial page redraw.

If true, only changed elements are redrawn during next page redraw command. If false, entire page is redrawn when any element has been updated prior to next page redraw command.

bool gslc_tsGui::bScreenNeedFlip

Screen requires a page flip.

bool gslc_tsGui::bScreenNeedRedraw

Screen requires a redraw.

bool gslc_tsGui::bTouchRemapEn

Enable touch remapping?

bool gslc_tsGui::bTouchRemapYX

Enable touch controller swapping of X & Y.

gslc_tsColor gslc_tsElem::colElemFill

Color for background fill.

gslc_tsColor gslc_tsElem::colElemFillGlow

Color to use for fill when glowing.

gslc_tsColor gslc_tsElem::colElemFrame

Color for frame.

gslc_tsColor gslc_tsElem::colElemFrameGlow

Color to use for frame when glowing.

gslc_tsColor gslc_tsElem::colElemText

Color of overlay text.

gslc_tsColor gslc_tsElem::colElemTextGlow

Color of overlay text when glowing.

gslc_teAction gslc_tsInputMap::eAction

Resulting action.

gslc_teElemRefFlags gslc_tsElemRef::eElemFlags

Element reference flags.

gslc_teInputRawEvent gslc_tsInputMap::eEvent

The input event.

gslc_teFontRefMode gslc_tsFont::eFontRefMode

Font reference mode.

gslc_teFontRefType gslc_tsFont::eFontRefType

Font reference type.

gslc_teImgRefFlags gslc_tsImgRef::eImgFlags

Image reference flags.

gslc_teInitStat gslc_tsGui::eInitStatTouch

Status of touch initialization.

gslc_teTouch gslc_tsEventTouch::eTouch

Touch state.

int8_t gslc_tsElem::eTxtAlign

Alignment of overlay text.

gslc_teTxtFlags gslc_tsElem::eTxtFlags

Flags associated with text buffer.

gslc_teEventType gslc_tsEvent::eType

Event type.

uint8_t gslc_tsColor::g

RGB green value.

uint16_t gslc_tsRect::h

Height of region.

int16_t gslc_tsInputMap::nActionVal

The value for the output action.

uint16_t gslc_tsGui::nDisp0H

Height of the display (pixels) in native orientation.

uint16_t gslc_tsGui::nDisp0W

Width of the display (pixels) in native orientation.

uint8_t gslc_tsGui::nDispDepth

Bit depth of display (bits per pixel)

uint16_t gslc_tsGui::nDispH

Height of the display (pixels)

uint16_t gslc_tsGui::nDispW

Width of the display (pixels)

int16_t gslc_tsCollect::nElemAutoIdNext

Next Element ID for auto-assignment.

uint16_t gslc_tsCollect::nElemCnt

Number of elements allocated.

int16_t gslc_tsCollect::nElemIndFocused

Element index currently in focus (eg. by keyboard/pin control), GSLC_IND_NONE for none.

uint16_t gslc_tsCollect::nElemMax

Maximum number of elements to allocate (in RAM)

uint16_t gslc_tsCollect::nElemRefCnt

Number of element references allocated.

uint16_t gslc_tsCollect::nElemRefMax

Maximum number of element references to allocate.

uint8_t gslc_tsElem::nFeatures

Element feature vector (appearance/behavior))

uint8_t gslc_tsGui::nFlipX

Adafruit GFX Touch Flip x axis.

uint8_t gslc_tsGui::nFlipY

Adafruit GFX Touch Flip x axis.

uint8_t gslc_tsGui::nFontCnt

Number of fonts allocated.

uint8_t gslc_tsGui::nFontMax

Maximum number of fonts to allocate.

uint8_t gslc_tsGui::nFrameRateCnt

Diagnostic frame rate count.

uint8_t gslc_tsGui::nFrameRateStart

Diagnostic frame rate timestamp.

int16_t gslc_tsElem::nGroup

Group ID that the element belongs to.

int16_t gslc_tsFont::nId

Font ID specified by user.

int16_t gslc_tsElem::nId

Element ID specified by user.

uint8_t gslc_tsGui::nInputMapCnt

Current number of input maps.

uint8_t gslc_tsGui::nInputMapMax

Maximum number of input maps.

uint8_t gslc_tsGui::nInputMode

Input mode: 0=navigate, 1=edit.

uint8_t gslc_tsGui::nPageCnt

Current number of pages defined.

int16_t gslc_tsPage::nPageId

Page identifier.

uint8_t gslc_tsGui::nPageMax

Maximum number of pages that can be defined.

uint8_t gslc_tsGui::nRotation

Adafruit GFX Rotation of display.

uint8_t gslc_tsGui::nRoundRadius

Radius for rounded elements.

uint16_t gslc_tsFont::nSize

Font size.

uint8_t gslc_tsElem::nStrBufMax

Size of string buffer.

uint8_t gslc_tsEvent::nSubType

Event sub-type.

uint8_t gslc_tsGui::nSwapXY

Adafruit GFX Touch Swap x and y axes.

int16_t gslc_tsGui::nTouchCalPressMax

Calibration maximum pressure threshold.

int16_t gslc_tsGui::nTouchCalPressMin

Calibration minimum pressure threshold.

int16_t gslc_tsGui::nTouchCalXMax

Calibration X maximum reading.

int16_t gslc_tsGui::nTouchCalXMin

Calibration X minimum reading.

int16_t gslc_tsGui::nTouchCalYMax

Calibration Y maximum reading.

int16_t gslc_tsGui::nTouchCalYMin

Calibration Y minimum reading.

uint16_t gslc_tsGui::nTouchLastPress

Last touch event pressure (0=none))

int16_t gslc_tsGui::nTouchLastX

Last touch event X coord.

int16_t gslc_tsGui::nTouchLastY

Last touch event Y coord.

uint8_t gslc_tsGui::nTouchRotation

Touchscreen rotation offset vs display.

int8_t gslc_tsElem::nTxtMarginX

Margin of overlay text within rect region (x offset)

int8_t gslc_tsElem::nTxtMarginY

Margin of overlay text within rect region (y offset)

int16_t gslc_tsElem::nType

Element type enumeration.

int16_t gslc_tsInputMap::nVal

The value associated with the input event.

int16_t gslc_tsEventTouch::nX

Touch X coordinate (or param1)

int16_t gslc_tsEventTouch::nY

Touch Y coordinate (or param2)

gslc_tsElem* gslc_tsElemRef::pElem

Pointer to element in memory [RAM,FLASH].

gslc_tsElemRef* gslc_tsElem::pElemRefParent

Parent element reference.

Used during redraw to notify parent elements that they require redraw as well. Primary usage is in compound elements. NOTE: Although this field is only used in GLSC_COMPOUND mode, it is not wrapped in an ifdef because the ElemCreate*_P() function macros currently initialize this field.

gslc_tsElemRef* gslc_tsCollect::pElemRefTracked

Element reference currently being touch-tracked (NULL for none)

const char* gslc_tsImgRef::pFname

Pathname to input image file [FILE,SD].

GSLC_CB_PIN_POLL gslc_tsGui::pfuncPinPoll

Callback func ptr for pin polling.

GSLC_CB_DRAW gslc_tsElem::pfuncXDraw

Callback func ptr for custom drawing.

GSLC_CB_EVENT gslc_tsElem::pfuncXEvent

UNUSED: Callback func ptr for event tree (draw,touch,tick)

GSLC_CB_TICK gslc_tsElem::pfuncXTick

Callback func ptr for timer/main loop tick.

GSLC_CB_TOUCH gslc_tsElem::pfuncXTouch

Callback func ptr for touch.

const unsigned char* gslc_tsImgRef::pImgBuf

Pointer to input image buffer in memory [RAM,FLASH].

char* gslc_tsElem::pStrBuf

Ptr to text string buffer to overlay.

gslc_tsFont* gslc_tsElem::pTxtFont

Ptr to Font for overlay text.

void* gslc_tsEvent::pvData

Generic data pointer for event.

This member is used to either pass a pointer to a simple data datatype (such as Element or Collection) or to a another structure that contains multiple fields.

void* gslc_tsGui::pvDriver

Driver-specific members (gslc_tsDriver*)

const void* gslc_tsFont::pvFont

Void ptr to the font reference (type defined by driver)

void* gslc_tsImgRef::pvImgRaw

Ptr to raw output image data (for pre-loaded images)

void* gslc_tsEvent::pvScope

Event target scope (eg. Page,Collection,Event)

void* gslc_tsElem::pXData

Ptr to extended data structure.

uint8_t gslc_tsColor::r

RGB red value.

gslc_tsRect gslc_tsPage::rBounds

Bounding rect for page elements.

gslc_tsRect gslc_tsElem::rElem

Rect region containing element.

gslc_tsRect gslc_tsGui::rInvalidateRect

The rect region that has been invalidated.

gslc_tsCollect gslc_tsPage::sCollect

Collection of elements on page.

gslc_tsElemRef gslc_tsGui::sElemRefTmp

Temporary element reference.

gslc_tsElem gslc_tsGui::sElemTmp

Temporary element.

gslc_tsElem gslc_tsGui::sElemTmpProg

Temporary element for Flash compatibility.

gslc_tsImgRef gslc_tsGui::sImgRefBkgnd

Image reference for background.

gslc_tsImgRef gslc_tsElem::sImgRefGlow

Image reference to draw (glowing)

gslc_tsImgRef gslc_tsElem::sImgRefNorm

Image reference to draw (normal)

gslc_tsColor gslc_tsGui::sTransCol

Color used for transparent image regions (GSLC_BMP_TRANS_EN=1)

uint16_t gslc_tsRect::w

Width of region.

int16_t gslc_tsRect::x

X coordinate of corner.

int16_t gslc_tsPt::x

X coordinate.

int16_t gslc_tsRect::y

Y coordinate of corner.

int16_t gslc_tsPt::y

Y coordinate.