#
# SystemView Description File
#
# Copyright 2019-2026 MicroEJ Corp. All rights reserved.
# MicroEJ Corp. PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.

#===========
# NamedTypes 
#===========

NamedType Bool 0=false
NamedType Bool 1=true

# --------------
# MicroUI Events
# --------------

NamedType UIEvent 0=COMMAND
NamedType UIEvent 1=BUTTON
NamedType UIEvent 2=POINTER
NamedType UIEvent 3=STATE
NamedType UIEvent 4=UNKNOWN
NamedType UIEvent 5=CALLSERIALLY
NamedType UIEvent 6=STOP
NamedType UIEvent 7=INPUT
NamedType UIEvent 8=SHOW_DISPLAYABLE
NamedType UIEvent 9=HIDE_DISPLAYABLE
NamedType UIEvent 11=PENDING_FLUSH
NamedType UIEvent 12=FORCE_FLUSH
NamedType UIEvent 13=REPAINT_DISPLAYABLE
NamedType UIEvent 14=REPAINT_CURRENT_DISPLAYABLE
NamedType UIEvent 15=KF_STOP_FEATURE
NamedType UIEvent *="%u"

# ------------
# Image Events
# ------------

NamedType UINewImage 0=MUTABLE_IMAGE
NamedType UINewImage 1=IMAGE_FROM_PATH
NamedType UINewImage 2=IMAGE_FROM_INPUTSTREAM

NamedType UIImageData 0=BUFFER
NamedType UIImageData 1=RAW
NamedType UIImageData 2=ENCODED
NamedType UIImageData 3=RAW_EXTERNAL
NamedType UIImageData 4=ENCODED_EXTERNAL
NamedType UIImageData 5=MEMORY_INPUTSTREAM
NamedType UIImageData 6=BYTEARRAY_INPUTSTREAM
NamedType UIImageData 7=GENERIC_INPUTSTREAM
NamedType UIImageData 8=LINK_IMAGE

NamedType UIImageFormat 0=DISPLAY
NamedType UIImageFormat 1=ARGB1565_RLE
NamedType UIImageFormat 2=ARGB8888
NamedType UIImageFormat 3=RGB888
NamedType UIImageFormat 4=RGB565
NamedType UIImageFormat 5=ARGB1555
NamedType UIImageFormat 6=ARGB4444
NamedType UIImageFormat 7=A4
NamedType UIImageFormat 8=A8
NamedType UIImageFormat 9=LRGB888
NamedType UIImageFormat 10=LARGB8888
NamedType UIImageFormat 11=A2
NamedType UIImageFormat 12=A1
NamedType UIImageFormat 13=C4
NamedType UIImageFormat 14=C2
NamedType UIImageFormat 15=C1
NamedType UIImageFormat 16=AC44
NamedType UIImageFormat 17=AC22
NamedType UIImageFormat 18=AC11
NamedType UIImageFormat 19=F8
NamedType UIImageFormat 20=F4
NamedType UIImageFormat 21=F2
NamedType UIImageFormat 22=F1
NamedType UIImageFormat 23=A8_RLE
NamedType UIImageFormat 24=ARGB8888_PRE
NamedType UIImageFormat 25=ARGB1555_PRE
NamedType UIImageFormat 26=ARGB4444_PRE
NamedType UIImageFormat 80=DEFAULT
NamedType UIImageFormat 248=CUSTOM7
NamedType UIImageFormat 249=CUSTOM6
NamedType UIImageFormat 250=CUSTOM5
NamedType UIImageFormat 251=CUSTOM4
NamedType UIImageFormat 252=CUSTOM3
NamedType UIImageFormat 253=CUSTOM2
NamedType UIImageFormat 254=CUSTOM1
NamedType UIImageFormat 255=CUSTOM0
NamedType UIImageFormat *="%u"

# --------------
# Drawing Events
# --------------

NamedType UIDrawAsync 0="Drawing operation done"
NamedType UIDrawAsync 1="Drawing operation delayed"

NamedType UIDestination  *="dest=0x%x"
NamedType UIFlush  *="flush=%u"
NamedType UISource  *="image=0x%x"
NamedType UIDiameter *="diameter=%u"
NamedType UIAlpha *="alpha=%u"
NamedType UIThickness *="thickness=%u"
NamedType UIFade *="fade=%u"
NamedType UIString *="%u characters"

NamedType UIApprox 0="(bilinear)"
NamedType UIApprox 1="(nearest neighbor)"

NamedType UIFlip 0="flip=none"
NamedType UIFlip 1="flip=mirror90"
NamedType UIFlip 2="flip=270"
NamedType UIFlip 3="flip=mirror"
NamedType UIFlip 4="flip=180"
NamedType UIFlip 5="flip=mirror270"
NamedType UIFlip 6="flip=mirror180"
NamedType UIFlip 7="flip=90"

# ------------------
# Old Drawing Events
# ------------------

# Deprecated (kept for backward compatibility UI Pack < 14.4.1)

NamedType UIDrawAlgo 1=WRITE_PIXEL
NamedType UIDrawAlgo 2=DRAW_LINE
NamedType UIDrawAlgo 3=DRAW_HORIZONTALLINE
NamedType UIDrawAlgo 4=DRAW_VERTICALLINE
NamedType UIDrawAlgo 5=DRAW_RECTANGLE
NamedType UIDrawAlgo 6=FILL_RECTANGLE
NamedType UIDrawAlgo 7=UNKNOWN
NamedType UIDrawAlgo 8=DRAW_ROUNDEDRECTANGLE
NamedType UIDrawAlgo 9=FILL_ROUNDEDRECTANGLE
NamedType UIDrawAlgo 10=DRAW_CIRCLEARC
NamedType UIDrawAlgo 11=FILL_CIRCLEARC
NamedType UIDrawAlgo 12=DRAW_ELLIPSEARC
NamedType UIDrawAlgo 13=FILL_ELLIPSEARC
NamedType UIDrawAlgo 14=DRAW_ELLIPSE
NamedType UIDrawAlgo 15=FILL_ELLIPSE
NamedType UIDrawAlgo 16=DRAW_CIRCLE
NamedType UIDrawAlgo 17=FILL_CIRCLE
NamedType UIDrawAlgo 18=DRAW_ARGB
NamedType UIDrawAlgo 19=DRAW_IMAGE
NamedType UIDrawAlgo 20=DRAW_STRING
NamedType UIDrawAlgo 21=STRING_WIDTH

NamedType UIDrawAlgo 50=DRAW_POLYGON
NamedType UIDrawAlgo 51=FILL_POLYGON
NamedType UIDrawAlgo 52=GET_ARGB
NamedType UIDrawAlgo 53=DRAW_STRING
NamedType UIDrawAlgo 54=DRAW_DEFORMED_STRING
NamedType UIDrawAlgo 55=DRAW_DEFORMED_IMAGE
NamedType UIDrawAlgo 56=DRAW_CHAR_ROTATION_BILINEAR
NamedType UIDrawAlgo 57=DRAW_CHAR_ROTATION_SIMPLE
NamedType UIDrawAlgo 58=STRING_WIDTH
NamedType UIDrawAlgo 59=READ_PIXEL

NamedType UIDrawAlgo 100=DRAW_THICK_FADED_POINT
NamedType UIDrawAlgo 101=DRAW_THICK_FADED_LINE
NamedType UIDrawAlgo 102=DRAW_THICK_FADED_CIRCLE
NamedType UIDrawAlgo 103=DRAW_THICK_FADED_CIRCLE_ARC
NamedType UIDrawAlgo 104=DRAW_THICK_FADED_ELLIPSE
NamedType UIDrawAlgo 105=DRAW_THICK_LINE
NamedType UIDrawAlgo 106=DRAW_THICK_CIRCLE
NamedType UIDrawAlgo 107=DRAW_THICK_ELLIPSE
NamedType UIDrawAlgo 108=DRAW_THICK_CIRCLEARC

NamedType UIDrawAlgo 200=DRAW_FLIPPED_IMAGE
NamedType UIDrawAlgo 201=DRAW_ROTATED_IMAGE_NEARESTNEIGHBOR
NamedType UIDrawAlgo 202=DRAW_ROTATED_IMAGE_BILINEAR
NamedType UIDrawAlgo 203=DRAW_SCALED_IMAGE_NEARESTNEIGHBOR
NamedType UIDrawAlgo 204=DRAW_SCALED_IMAGE_BILINEAR
NamedType UIDrawAlgo 205=DRAW_SCALED_STRING_BILINEAR
NamedType UIDrawAlgo 206=DRAW_CHAR_WITH_ROTATION_BILINEAR
NamedType UIDrawAlgo 207=DRAW_CHAR_WITH_ROTATION_NEARESTNEIGHBOR

#=======
# Events
#=======

# ---------------
# MicroUI Library
# ---------------

# [0-9]: 10 events

# Deprecated (kept for backward compatibility UI Pack < 14.5.2)
6        UI_ImageData        type=%UINewImage data=%UIImageData id=0x%x size=%u*%u

0        UI_ExecuteGenEvent  type=%UIEvent (generatorID=%u data=0x%x)   | event=%UIEvent done
1        UI_UnknownEvent     drop=0x%x
2        UI_InputEvent       type=%UIEvent (generatorID=%u, event=0x%x) | event=%UIEvent done
3        UI_DisplayEvent     event=%UIEvent (0x%x)                      | event=%UIEvent done
4        UI_UserEvent        event=0x%x                                 | event=0x%x done
5        UI_NewImage         type=%UINewImage                         | id=0x%x
7        UI_ImageData        type=%UINewImage data=%UIImageData id=0x%x size=%u*%u format=%UIImageFormat

# -----------------------
# MicroUI Graphics Engine
# -----------------------

# [10-19]: 10 events

# Deprecated (kept for backward compatibility UI Pack < 14.4.1)
10       UI_FlushStart      region=(%u,%u)(%ux%u)
11       UI_FlushDone       flush done
12       UI_DrawInternal    draw=%UIDrawAlgo                   | draw=%UIDrawAlgo done
13       UI_Draw            draw=%UIDrawAlgo                   | draw=%UIDrawAlgo done

15       UI_GPUDrawDone     asynchronous drawing operation done
16       UI_Flush           %UIFlush %UIDestination region=(%u,%u)(%ux%u)
17       UI_FlushDone       %UIFlush %UIDestination

# ---------------------
# MicroUI Events Engine
# ---------------------

# [20-29]: 10 events

20       UI_InvalidEvent    invalid=0x%x
21       UI_QueueFull       drop=0x%x
22       UI_AddEvent        add=0x%x (index=%u queueLength=%u)
23       UI_ReplaceEvent    replace=0x%x by 0x%x (index=%u queueLength=%u)
24       UI_ReadEvent       read=0x%x (index=%u)

# ---------------------
# MicroUI LED Engine
# ---------------------

# [30-39]: 10 events

# ----------------
# MicroUI C Module
# ----------------

# [40-139]: 100 events

# Deprecated (kept for backward compatibility UI Pack < 14.4.1)
40       UI_Draw              %UIDrawAlgo  |  %UIDrawAsync
50       BRS_NewRegion        region (%u,%u) to (%u,%u)
53       BRS_AddRegion        (%u,%u) to (%u,%u)
54       BRS_RemoveRegion     (%u,%u) to (%u,%u)
55       BRS_RestoreRegion    (%u,%u) to (%u,%u)
56       BRS_ClearList     

51       BRS_FlushSingleRect  %UIFlush %UIDestination (region (%u,%u) to (%u,%u))
52       BRS_FlushMultiRect   %UIFlush %UIDestination (%u regions)
57       BRS_RestoreRegion    region=(%u,%u)(%ux%u)

60       UI_GetPixel               %UISource %d,%d
61       UI_GetImageARGB           %UISource from %d,%d size=%dx%d
62       UI_StringWidth            %UIString
63       UI_SetForegroundColor     %UIDestination color=0x%x
64       UI_SetBackgroundColor     %UIDestination color=0x%x
65       UI_RemoveBackgroundColor  %UIDestination
# // clip seen as a container (use a START event)
66       UI_SetClip                %UIDestination region=(%u,%u)(%ux%u) | (force START event)
67       UI_OutOfClip              %UIDestination
# // region seen as a drawing (use a STANDALONE event)
68       UI_DrawnRegion            %UIDestination clipDisabled=%Bool region=(%u,%u)(%ux%u)

80       UI_WritePixel            %UIDestination %d,%d | %UIDrawAsync
81       UI_DrawLine              %UIDestination %d,%d to %d,%d | %UIDrawAsync
82       UI_DrawHorizontalLine    %UIDestination %d,%d length=%d | %UIDrawAsync
83       UI_DrawVerticalLine      %UIDestination %d,%d length=%d | %UIDrawAsync
84       UI_DrawRectangle         %UIDestination anchor=%d,%d size=%dx%d | %UIDrawAsync
85       UI_FillRectangle         %UIDestination anchor=%d,%d size=%dx%d | %UIDrawAsync
86       UI_DrawRoundedRectangle  %UIDestination anchor=%d,%d size=%dx%d corner=%dx%d | %UIDrawAsync
87       UI_FillRoundedRectangle  %UIDestination anchor=%d,%d size=%dx%d corner=%dx%d | %UIDrawAsync
88       UI_DrawCircleArc         %UIDestination anchor=%d,%d %UIDiameter start=%d angle=%d | %UIDrawAsync
89       UI_FillCircleArc         %UIDestination anchor=%d,%d %UIDiameter start=%d angle=%d | %UIDrawAsync
90       UI_DrawEllipseArc        %UIDestination anchor=%d,%d size=%dx%d start=%d angle=%d | %UIDrawAsync
91       UI_FillEllipseArc        %UIDestination anchor=%d,%d size=%dx%d start=%d angle=%d | %UIDrawAsync
92       UI_DrawEllipse           %UIDestination anchor=%d,%d size=%dx%d | %UIDrawAsync
93       UI_FillEllipse           %UIDestination anchor=%d,%d size=%dx%d | %UIDrawAsync
94       UI_DrawCircle            %UIDestination anchor=%d,%d %UIDiameter | %UIDrawAsync
95       UI_FillCircle            %UIDestination anchor=%d,%d %UIDiameter | %UIDrawAsync
96       UI_DrawImage             %UIDestination %UISource from %d,%d size=%dx%d anchor=%d,%d %UIAlpha | %UIDrawAsync
97       UI_DrawString            %UIDestination %UIString anchor=%d,%d | %UIDrawAsync
98       UI_DrawRenderableString  %UIDestination %UIString anchor=%d,%d | %UIDrawAsync

110      UI_DrawThickFadedPoint      %UIDestination %d,%d %UIThickness %UIFade | %UIDrawAsync
111      UI_DrawThickFadedLine       %UIDestination %d,%d to %d,%d %UIThickness %UIFade | %UIDrawAsync
112      UI_DrawThickFadedCircle     %UIDestination anchor=%d,%d %UIDiameter %UIThickness %UIFade | %UIDrawAsync
113      UI_DrawThickFadedCircleArc  %UIDestination anchor=%d,%d %UIDiameter start=%d angle=%d %UIThickness %UIFade | %UIDrawAsync
114      UI_DrawThickFadedEllipse    %UIDestination anchor=%d,%d size=%dx%d %UIThickness %UIFade | %UIDrawAsync
115      UI_DrawThickLine            %UIDestination %d,%d to %d,%d %UIThickness | %UIDrawAsync
116      UI_DrawThickCircle          %UIDestination anchor=%d,%d %UIDiameter %UIThickness | %UIDrawAsync
117      UI_DrawThickEllipse         %UIDestination anchor=%d,%d size=%dx%d %UIThickness | %UIDrawAsync
118      UI_DrawThickCircleArc       %UIDestination anchor=%d,%d %UIDiameter start=%d angle=%d %UIThickness %UIFade | %UIDrawAsync
119      UI_DrawPolygon              %UIDestination lenght=%u | %UIDrawAsync
120      UI_FillPolygon              %UIDestination lenght=%u | %UIDrawAsync

130      UI_DrawFlippedImage            %UIDestination %UISource from %d,%d size=%dx%d anchor=%d,%d %UIFlip %UIAlpha | %UIDrawAsync
131      UI_DrawRotatedImage            %UIDestination %UISource anchor=%d,%d center=%d,%d angle=%d %UIAlpha %UIApprox | %UIDrawAsync
132      UI_DrawScaledImage             %UIDestination %UISource anchor=%d,%d factor=%dx%d %UIAlpha %UIApprox | %UIDrawAsync
133      UI_DrawScaledString            %UIDestination %UIString anchor=%d,%d factor=%dx%d %UIApprox | %UIDrawAsync
134      UI_DrawScaledRenderableString  %UIDestination %UIString anchor=%d,%d factor=%dx%d %UIApprox | %UIDrawAsync
135      UI_DrawRotatedCharacter        %UIDestination char=%c anchor=%d,%d center=%d,%d angle=%d %UIAlpha %UIApprox | %UIDrawAsync
136      UI_DrawImageDeformed           %UIDestination %UISource | %UIDrawAsync

