- edited description
Add support of Image widget
Issue #249
new
Implementation reason
Loading
and Login
screens in cgraphic
program requires to show ChocoOS
logo. If the task #248 is finished, it is possible to draw images in the color map by using oC_ColorMap_DrawImage
, but WidgetScreen
module has to provide a possibility to draw an image also to allow for integration with other widgets - otherwise for example opacity will be not possible
Generic Description
The WidgetScreen
module should allow for adding Image
widgets. New widget type should be added, and function for drawing Image
widget should be implemented. The widget should support drawing strings from widget definition field String
.
Required Interface
typedef enum { oC_WidgetScreen_WidgetType_None = 0 , < ... > oC_WidgetScreen_WidgetType_Image , oC_WidgetScreen_WidgetType_NumberOfTypes } oC_WidgetScreen_WidgetType_t; typedef enum { WidgetType_TextBox = oC_WidgetScreen_WidgetType_TextBox, WidgetType_PushButton = oC_WidgetScreen_WidgetType_PushButton, WidgetType_CheckBox = oC_WidgetScreen_WidgetType_CheckBox, WidgetType_RadioButton = oC_WidgetScreen_WidgetType_RadioButton, WidgetType_ProgressBar = oC_WidgetScreen_WidgetType_ProgressBar, WidgetType_Image = oC_WidgetScreen_WidgetType_Image, WidgetType_NumberOfTypes = oC_WidgetScreen_WidgetType_NumberOfTypes, } WidgetType_t; // Draws image widget // It should use function `oC_ColorMap_DrawImage` to draw image and `DrawString` to // draw a string inside the image static void DrawImage( Widget_t * Widget , oC_ColorMap_t * ColorMap, oC_Pixel_Position_t ScreenPosition ); static const WidgetHandlersDefinition_t WidgetHandlersDefinition[oC_WidgetScreen_WidgetType_NumberOfTypes] = { [ WidgetType_TextBox ] = { .DrawWidget = DrawTextBox , .UpdateState = NULL , .RegisterActivity = NULL , .CheckDefinition = NULL } , [ WidgetType_Image ] = { .DrawWidget = DrawImage , .UpdateState = NULL , .RegisterActivity = NULL , .CheckDefinition = NULL } , };
Bitbucket
https://bitbucket.org/chocos/chocos/issues/249/add-support-of-image-widget
Trello
Link to trello board: https://trello.com/c/nAmr8xSt
Story
- [ #240 ] - Preparation of the sample graphic program
List of requirements
Comments (4)
-
reporter -
reporter - edited description
-
reporter - edited description
- changed title to Add support of Image widget
-
reporter - edited description
- Log in to comment