RT1050 GUI demo using emWin library

Committer:
alejandroRL
Date:
Thu Sep 20 19:16:34 2018 +0000
Revision:
0:dd702039127a
emWin GUI Demo for RT1050

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alejandroRL 0:dd702039127a 1 /*********************************************************************
alejandroRL 0:dd702039127a 2 * SEGGER Microcontroller GmbH & Co. KG *
alejandroRL 0:dd702039127a 3 * Solutions for real time microcontroller applications *
alejandroRL 0:dd702039127a 4 **********************************************************************
alejandroRL 0:dd702039127a 5 * *
alejandroRL 0:dd702039127a 6 * (c) 1996 - 2016 SEGGER Microcontroller GmbH & Co. KG *
alejandroRL 0:dd702039127a 7 * *
alejandroRL 0:dd702039127a 8 * Internet: www.segger.com Support: support@segger.com *
alejandroRL 0:dd702039127a 9 * *
alejandroRL 0:dd702039127a 10 **********************************************************************
alejandroRL 0:dd702039127a 11
alejandroRL 0:dd702039127a 12 ** emWin V5.38 - Graphical user interface for embedded applications **
alejandroRL 0:dd702039127a 13 All Intellectual Property rights in the Software belongs to SEGGER.
alejandroRL 0:dd702039127a 14 emWin is protected by international copyright laws. Knowledge of the
alejandroRL 0:dd702039127a 15 source code may not be used to write a similar product. This file may
alejandroRL 0:dd702039127a 16 only be used in accordance with the following terms:
alejandroRL 0:dd702039127a 17
alejandroRL 0:dd702039127a 18 The software has been licensed to NXP Semiconductors USA, Inc. whose
alejandroRL 0:dd702039127a 19 registered office is situated at 411 E. Plumeria Drive, San Jose,
alejandroRL 0:dd702039127a 20 CA 95134, USA solely for the purposes of creating libraries for
alejandroRL 0:dd702039127a 21 NXPs M0, M3/M4 and ARM7/9 processor-based devices, sublicensed and
alejandroRL 0:dd702039127a 22 distributed under the terms and conditions of the NXP End User License
alejandroRL 0:dd702039127a 23 Agreement.
alejandroRL 0:dd702039127a 24 Full source code is available at: www.segger.com
alejandroRL 0:dd702039127a 25
alejandroRL 0:dd702039127a 26 We appreciate your understanding and fairness.
alejandroRL 0:dd702039127a 27 ----------------------------------------------------------------------
alejandroRL 0:dd702039127a 28 Licensing information
alejandroRL 0:dd702039127a 29
alejandroRL 0:dd702039127a 30 Licensor: SEGGER Microcontroller Systems LLC
alejandroRL 0:dd702039127a 31 Licensed to: NXP Semiconductors, 1109 McKay Dr, M/S 76, San Jose, CA 95131, USA
alejandroRL 0:dd702039127a 32 Licensed SEGGER software: emWin
alejandroRL 0:dd702039127a 33 License number: GUI-00186
alejandroRL 0:dd702039127a 34 License model: emWin License Agreement, dated August 20th 2011
alejandroRL 0:dd702039127a 35 Licensed product: -
alejandroRL 0:dd702039127a 36 Licensed platform: NXP's ARM 7/9, Cortex-M0,M3,M4
alejandroRL 0:dd702039127a 37 Licensed number of seats: -
alejandroRL 0:dd702039127a 38 ----------------------------------------------------------------------
alejandroRL 0:dd702039127a 39 File : IMAGE.h
alejandroRL 0:dd702039127a 40 Purpose : Image include
alejandroRL 0:dd702039127a 41 --------------------END-OF-HEADER-------------------------------------
alejandroRL 0:dd702039127a 42 */
alejandroRL 0:dd702039127a 43
alejandroRL 0:dd702039127a 44 #ifndef IMAGE_H
alejandroRL 0:dd702039127a 45 #define IMAGE_H
alejandroRL 0:dd702039127a 46
alejandroRL 0:dd702039127a 47 #include "WM.h"
alejandroRL 0:dd702039127a 48 #include "DIALOG_Intern.h"
alejandroRL 0:dd702039127a 49 #include "WIDGET.h"
alejandroRL 0:dd702039127a 50
alejandroRL 0:dd702039127a 51 #if GUI_WINSUPPORT
alejandroRL 0:dd702039127a 52
alejandroRL 0:dd702039127a 53 #if defined(__cplusplus)
alejandroRL 0:dd702039127a 54 extern "C" { // Make sure we have C-declarations in C++ programs
alejandroRL 0:dd702039127a 55 #endif
alejandroRL 0:dd702039127a 56
alejandroRL 0:dd702039127a 57 /*********************************************************************
alejandroRL 0:dd702039127a 58 *
alejandroRL 0:dd702039127a 59 * Defines
alejandroRL 0:dd702039127a 60 *
alejandroRL 0:dd702039127a 61 **********************************************************************
alejandroRL 0:dd702039127a 62 */
alejandroRL 0:dd702039127a 63 #define IMAGE_CF_MEMDEV (1 << 0) // Widget uses an internal memory device which speeds up use of compressed images (GIF, JPEG, PNG)
alejandroRL 0:dd702039127a 64 #define IMAGE_CF_TILE (1 << 1) // Uses tiling to fill up the whole area of the widget
alejandroRL 0:dd702039127a 65 #define IMAGE_CF_ALPHA (1 << 2) // Needs to be set if alpha blending is required (PNG)
alejandroRL 0:dd702039127a 66 #define IMAGE_CF_ATTACHED (1 << 3) // Widget size is fixed to the parent border
alejandroRL 0:dd702039127a 67 #define IMAGE_CF_AUTOSIZE (1 << 4) // Widget size is taken from the attached image
alejandroRL 0:dd702039127a 68
alejandroRL 0:dd702039127a 69 /*********************************************************************
alejandroRL 0:dd702039127a 70 *
alejandroRL 0:dd702039127a 71 * Types
alejandroRL 0:dd702039127a 72 *
alejandroRL 0:dd702039127a 73 **********************************************************************
alejandroRL 0:dd702039127a 74 */
alejandroRL 0:dd702039127a 75 typedef WM_HMEM IMAGE_Handle;
alejandroRL 0:dd702039127a 76
alejandroRL 0:dd702039127a 77 /*********************************************************************
alejandroRL 0:dd702039127a 78 *
alejandroRL 0:dd702039127a 79 * Public functions
alejandroRL 0:dd702039127a 80 *
alejandroRL 0:dd702039127a 81 **********************************************************************
alejandroRL 0:dd702039127a 82 */
alejandroRL 0:dd702039127a 83 IMAGE_Handle IMAGE_CreateEx (int x0, int y0, int xSize, int ySize, WM_HWIN hParent, int WinFlags, int ExFlags, int Id);
alejandroRL 0:dd702039127a 84 IMAGE_Handle IMAGE_CreateUser (int x0, int y0, int xSize, int ySize, WM_HWIN hParent, int WinFlags, int ExFlags, int Id, int NumExtraBytes);
alejandroRL 0:dd702039127a 85 IMAGE_Handle IMAGE_CreateIndirect(const GUI_WIDGET_CREATE_INFO * pCreateInfo, WM_HWIN hWinParent, int x0, int y0, WM_CALLBACK * cb);
alejandroRL 0:dd702039127a 86
alejandroRL 0:dd702039127a 87 void IMAGE_Callback(WM_MESSAGE * pMsg);
alejandroRL 0:dd702039127a 88
alejandroRL 0:dd702039127a 89 /*********************************************************************
alejandroRL 0:dd702039127a 90 *
alejandroRL 0:dd702039127a 91 * Member functions
alejandroRL 0:dd702039127a 92 *
alejandroRL 0:dd702039127a 93 **********************************************************************
alejandroRL 0:dd702039127a 94 */
alejandroRL 0:dd702039127a 95 int IMAGE_GetUserData(IMAGE_Handle hObj, void * pDest, int NumBytes);
alejandroRL 0:dd702039127a 96 void IMAGE_SetBitmap (IMAGE_Handle hWin, const GUI_BITMAP * pBitmap);
alejandroRL 0:dd702039127a 97 void IMAGE_SetBMP (IMAGE_Handle hObj, const void * pData, U32 FileSize);
alejandroRL 0:dd702039127a 98 void IMAGE_SetBMPEx (IMAGE_Handle hObj, GUI_GET_DATA_FUNC * pfGetData, void * pVoid);
alejandroRL 0:dd702039127a 99 void IMAGE_SetDTA (IMAGE_Handle hObj, const void * pData, U32 FileSize);
alejandroRL 0:dd702039127a 100 void IMAGE_SetDTAEx (IMAGE_Handle hObj, GUI_GET_DATA_FUNC * pfGetData, void * pVoid);
alejandroRL 0:dd702039127a 101 void IMAGE_SetGIF (IMAGE_Handle hObj, const void * pData, U32 FileSize);
alejandroRL 0:dd702039127a 102 void IMAGE_SetGIFEx (IMAGE_Handle hObj, GUI_GET_DATA_FUNC * pfGetData, void * pVoid);
alejandroRL 0:dd702039127a 103 void IMAGE_SetJPEG (IMAGE_Handle hObj, const void * pData, U32 FileSize);
alejandroRL 0:dd702039127a 104 void IMAGE_SetJPEGEx (IMAGE_Handle hObj, GUI_GET_DATA_FUNC * pfGetData, void * pVoid);
alejandroRL 0:dd702039127a 105 void IMAGE_SetPNG (IMAGE_Handle hObj, const void * pData, U32 FileSize);
alejandroRL 0:dd702039127a 106 void IMAGE_SetPNGEx (IMAGE_Handle hObj, GUI_GET_DATA_FUNC * pfGetData, void * pVoid);
alejandroRL 0:dd702039127a 107 int IMAGE_SetUserData(IMAGE_Handle hObj, const void * pSrc, int NumBytes);
alejandroRL 0:dd702039127a 108
alejandroRL 0:dd702039127a 109
alejandroRL 0:dd702039127a 110 #if defined(__cplusplus)
alejandroRL 0:dd702039127a 111 }
alejandroRL 0:dd702039127a 112 #endif
alejandroRL 0:dd702039127a 113
alejandroRL 0:dd702039127a 114 #endif // GUI_WINSUPPORT
alejandroRL 0:dd702039127a 115 #endif // IMAGE_H
alejandroRL 0:dd702039127a 116
alejandroRL 0:dd702039127a 117 /*************************** End of file ****************************/