Headers for emWin lib

Dependents:   DISCO-F746NG_rtos_test

Committer:
redbird
Date:
Sat Mar 26 22:49:50 2016 +0000
Revision:
0:1bf8f02b0770
new code integration

Who changed what in which revision?

UserRevisionLine numberNew contents of line
redbird 0:1bf8f02b0770 1 /*********************************************************************
redbird 0:1bf8f02b0770 2 * SEGGER Microcontroller GmbH & Co. KG *
redbird 0:1bf8f02b0770 3 * Solutions for real time microcontroller applications *
redbird 0:1bf8f02b0770 4 **********************************************************************
redbird 0:1bf8f02b0770 5 * *
redbird 0:1bf8f02b0770 6 * (c) 1996 - 2014 SEGGER Microcontroller GmbH & Co. KG *
redbird 0:1bf8f02b0770 7 * *
redbird 0:1bf8f02b0770 8 * Internet: www.segger.com Support: support@segger.com *
redbird 0:1bf8f02b0770 9 * *
redbird 0:1bf8f02b0770 10 **********************************************************************
redbird 0:1bf8f02b0770 11
redbird 0:1bf8f02b0770 12 ** emWin V5.24 - Graphical user interface for embedded applications **
redbird 0:1bf8f02b0770 13 All Intellectual Property rights in the Software belongs to SEGGER.
redbird 0:1bf8f02b0770 14 emWin is protected by international copyright laws. Knowledge of the
redbird 0:1bf8f02b0770 15 source code may not be used to write a similar product. This file may
redbird 0:1bf8f02b0770 16 only be used in accordance with the following terms:
redbird 0:1bf8f02b0770 17
redbird 0:1bf8f02b0770 18 The software has been licensed to NXP Semiconductors USA, Inc. whose
redbird 0:1bf8f02b0770 19 registered office is situated at 411 E. Plumeria Drive, San Jose,
redbird 0:1bf8f02b0770 20 CA 95134, USA solely for the purposes of creating libraries for
redbird 0:1bf8f02b0770 21 NXPs M0, M3/M4 and ARM7/9 processor-based devices, sublicensed and
redbird 0:1bf8f02b0770 22 distributed under the terms and conditions of the NXP End User License
redbird 0:1bf8f02b0770 23 Agreement.
redbird 0:1bf8f02b0770 24 Full source code is available at: www.segger.com
redbird 0:1bf8f02b0770 25
redbird 0:1bf8f02b0770 26 We appreciate your understanding and fairness.
redbird 0:1bf8f02b0770 27 ----------------------------------------------------------------------
redbird 0:1bf8f02b0770 28 File : IMAGE_Private.h
redbird 0:1bf8f02b0770 29 Purpose : Private IMAGE include
redbird 0:1bf8f02b0770 30 --------------------END-OF-HEADER-------------------------------------
redbird 0:1bf8f02b0770 31 */
redbird 0:1bf8f02b0770 32
redbird 0:1bf8f02b0770 33 #ifndef IMAGE_PRIVATE_H
redbird 0:1bf8f02b0770 34 #define IMAGE_PRIVATE_H
redbird 0:1bf8f02b0770 35
redbird 0:1bf8f02b0770 36 #include "IMAGE.h"
redbird 0:1bf8f02b0770 37 #include "GUI_Private.h"
redbird 0:1bf8f02b0770 38
redbird 0:1bf8f02b0770 39 #if GUI_WINSUPPORT
redbird 0:1bf8f02b0770 40
redbird 0:1bf8f02b0770 41 /*********************************************************************
redbird 0:1bf8f02b0770 42 *
redbird 0:1bf8f02b0770 43 * Private config defaults
redbird 0:1bf8f02b0770 44 *
redbird 0:1bf8f02b0770 45 **********************************************************************
redbird 0:1bf8f02b0770 46 */
redbird 0:1bf8f02b0770 47 #ifndef IMAGE_SUPPORT_TRANSPARENCY
redbird 0:1bf8f02b0770 48 #define IMAGE_SUPPORT_TRANSPARENCY WM_SUPPORT_TRANSPARENCY
redbird 0:1bf8f02b0770 49 #endif
redbird 0:1bf8f02b0770 50
redbird 0:1bf8f02b0770 51 /*********************************************************************
redbird 0:1bf8f02b0770 52 *
redbird 0:1bf8f02b0770 53 * Object definition
redbird 0:1bf8f02b0770 54 *
redbird 0:1bf8f02b0770 55 **********************************************************************
redbird 0:1bf8f02b0770 56 */
redbird 0:1bf8f02b0770 57 typedef struct {
redbird 0:1bf8f02b0770 58 U32 Flags;
redbird 0:1bf8f02b0770 59 } IMAGE_PROPS;
redbird 0:1bf8f02b0770 60
redbird 0:1bf8f02b0770 61 typedef struct {
redbird 0:1bf8f02b0770 62 WIDGET Widget;
redbird 0:1bf8f02b0770 63 IMAGE_PROPS Props;
redbird 0:1bf8f02b0770 64 const void * pData; // Data pointer of the object to be drawn (Bitmap, BMP, GIF, JPEG, PNG)
redbird 0:1bf8f02b0770 65 void (* pfDrawImageAt) (IMAGE_Handle hObj, int xPos, int yPos); // Object specific (Bitmap, BMP, GIF, JPEG, PNG) code
redbird 0:1bf8f02b0770 66 void (* pfPaint) (IMAGE_Handle hObj); // Drawing method specific (Default, Tiled, Magnified) code
redbird 0:1bf8f02b0770 67 void (* pfGetImageSize)(IMAGE_Handle hObj, int * pxSize, int * pySize); // Returns the image size of the attached item
redbird 0:1bf8f02b0770 68 void (* pfOnTimer) (IMAGE_Handle hObj); // Timer function for animated images (currently only animated GIFs are supported)
redbird 0:1bf8f02b0770 69 U32 FileSize;
redbird 0:1bf8f02b0770 70 //
redbird 0:1bf8f02b0770 71 // Data items used by IAMGE_GIF.c
redbird 0:1bf8f02b0770 72 //
redbird 0:1bf8f02b0770 73 int NumImages; // Number of (sub)images
redbird 0:1bf8f02b0770 74 int CurrentImage; // Image index used for animated images
redbird 0:1bf8f02b0770 75 GUI_TIMER_HANDLE hTimer; // Timer used for animated images
redbird 0:1bf8f02b0770 76 //
redbird 0:1bf8f02b0770 77 // Data items used by IAMGE_DTA.c
redbird 0:1bf8f02b0770 78 //
redbird 0:1bf8f02b0770 79 GUI_BITMAP Bitmap; // Bitmap structure
redbird 0:1bf8f02b0770 80 GUI_LOGPALETTE Palette; // Palette structure
redbird 0:1bf8f02b0770 81 //
redbird 0:1bf8f02b0770 82 // Data items used by Image_...Ex() - functions
redbird 0:1bf8f02b0770 83 //
redbird 0:1bf8f02b0770 84 void * pVoid; // Void pointer passed to GetData() function
redbird 0:1bf8f02b0770 85 GUI_GET_DATA_FUNC * pfGetData; // Pointer to GetData() function
redbird 0:1bf8f02b0770 86 //
redbird 0:1bf8f02b0770 87 // Data items used if memory devices are available and IMAGE_CF_MEMDEV has been set
redbird 0:1bf8f02b0770 88 //
redbird 0:1bf8f02b0770 89 #if GUI_SUPPORT_MEMDEV
redbird 0:1bf8f02b0770 90 GUI_MEMDEV_Handle hMem;
redbird 0:1bf8f02b0770 91 #endif
redbird 0:1bf8f02b0770 92 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_CHECK_ALL
redbird 0:1bf8f02b0770 93 int DebugId;
redbird 0:1bf8f02b0770 94 #endif
redbird 0:1bf8f02b0770 95 } IMAGE_OBJ;
redbird 0:1bf8f02b0770 96
redbird 0:1bf8f02b0770 97 /*********************************************************************
redbird 0:1bf8f02b0770 98 *
redbird 0:1bf8f02b0770 99 * Macros for internal use
redbird 0:1bf8f02b0770 100 *
redbird 0:1bf8f02b0770 101 **********************************************************************
redbird 0:1bf8f02b0770 102 */
redbird 0:1bf8f02b0770 103 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_CHECK_ALL
redbird 0:1bf8f02b0770 104 #define IMAGE_INIT_ID(pObj) (pObj->DebugId = IMAGE_ID)
redbird 0:1bf8f02b0770 105 #else
redbird 0:1bf8f02b0770 106 #define IMAGE_INIT_ID(pObj)
redbird 0:1bf8f02b0770 107 #endif
redbird 0:1bf8f02b0770 108
redbird 0:1bf8f02b0770 109 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_CHECK_ALL
redbird 0:1bf8f02b0770 110 IMAGE_OBJ * IMAGE__LockH(IMAGE_Handle hObj);
redbird 0:1bf8f02b0770 111 #define IMAGE_LOCK_H(hObj) IMAGE__LockH(hObj)
redbird 0:1bf8f02b0770 112 #else
redbird 0:1bf8f02b0770 113 #define IMAGE_LOCK_H(hObj) (IMAGE_OBJ *)GUI_LOCK_H(hObj)
redbird 0:1bf8f02b0770 114 #endif
redbird 0:1bf8f02b0770 115
redbird 0:1bf8f02b0770 116 /*********************************************************************
redbird 0:1bf8f02b0770 117 *
redbird 0:1bf8f02b0770 118 * Module internal data
redbird 0:1bf8f02b0770 119 *
redbird 0:1bf8f02b0770 120 **********************************************************************
redbird 0:1bf8f02b0770 121 */
redbird 0:1bf8f02b0770 122 extern IMAGE_PROPS IMAGE__DefaultProps;
redbird 0:1bf8f02b0770 123
redbird 0:1bf8f02b0770 124 /*********************************************************************
redbird 0:1bf8f02b0770 125 *
redbird 0:1bf8f02b0770 126 * Private functions
redbird 0:1bf8f02b0770 127 *
redbird 0:1bf8f02b0770 128 **********************************************************************
redbird 0:1bf8f02b0770 129 */
redbird 0:1bf8f02b0770 130 void IMAGE__SetWindowSize(IMAGE_Handle hObj);
redbird 0:1bf8f02b0770 131 void IMAGE__FreeAttached (IMAGE_Handle hObj, int LeaveTimer);
redbird 0:1bf8f02b0770 132
redbird 0:1bf8f02b0770 133 #endif // GUI_WINSUPPORT
redbird 0:1bf8f02b0770 134 #endif // IMAGE_PRIVATE_H
redbird 0:1bf8f02b0770 135
redbird 0:1bf8f02b0770 136 /*************************** End of file ****************************/