Nuvoton
/
NuMaker-mbed-emWin-example
NuMaker emWin HMI
Embed:
(wiki syntax)
Show/hide line numbers
RADIO_Private.h
00001 /********************************************************************* 00002 * SEGGER Software GmbH * 00003 * Solutions for real time microcontroller applications * 00004 ********************************************************************** 00005 * * 00006 * (c) 1996 - 2018 SEGGER Microcontroller GmbH * 00007 * * 00008 * Internet: www.segger.com Support: support@segger.com * 00009 * * 00010 ********************************************************************** 00011 00012 ** emWin V5.48 - Graphical user interface for embedded applications ** 00013 All Intellectual Property rights in the Software belongs to SEGGER. 00014 emWin is protected by international copyright laws. Knowledge of the 00015 source code may not be used to write a similar product. This file may 00016 only be used in accordance with the following terms: 00017 00018 The software has been licensed by SEGGER Software GmbH to Nuvoton Technology Corporationat the address: No. 4, Creation Rd. III, Hsinchu Science Park, Taiwan 00019 for the purposes of creating libraries for its 00020 Arm Cortex-M and Arm9 32-bit microcontrollers, commercialized and distributed by Nuvoton Technology Corporation 00021 under the terms and conditions of an End User 00022 License Agreement supplied with the libraries. 00023 Full source code is available at: www.segger.com 00024 00025 We appreciate your understanding and fairness. 00026 ---------------------------------------------------------------------- 00027 Licensing information 00028 Licensor: SEGGER Software GmbH 00029 Licensed to: Nuvoton Technology Corporation, No. 4, Creation Rd. III, Hsinchu Science Park, 30077 Hsinchu City, Taiwan 00030 Licensed SEGGER software: emWin 00031 License number: GUI-00735 00032 License model: emWin License Agreement, signed February 27, 2018 00033 Licensed platform: Cortex-M and ARM9 32-bit series microcontroller designed and manufactured by or for Nuvoton Technology Corporation 00034 ---------------------------------------------------------------------- 00035 Support and Update Agreement (SUA) 00036 SUA period: 2018-03-26 - 2019-03-27 00037 Contact to extend SUA: sales@segger.com 00038 ---------------------------------------------------------------------- 00039 File : RADIO_Private.h 00040 Purpose : RADIO private header file 00041 --------------------END-OF-HEADER------------------------------------- 00042 */ 00043 00044 #ifndef RADIO_PRIVATE_H 00045 #define RADIO_PRIVATE_H 00046 00047 #include "WM.h" 00048 00049 #if GUI_WINSUPPORT 00050 00051 #include "RADIO.h" 00052 #include "WIDGET.h" 00053 #include "GUI_ARRAY.h" 00054 00055 /********************************************************************* 00056 * 00057 * Defines 00058 * 00059 ********************************************************************** 00060 */ 00061 /* Define default image inactiv */ 00062 #ifndef RADIO_IMAGE0_DEFAULT 00063 #define RADIO_IMAGE0_DEFAULT &RADIO__abmRadio[0] 00064 #endif 00065 00066 /* Define default image activ */ 00067 #ifndef RADIO_IMAGE1_DEFAULT 00068 #define RADIO_IMAGE1_DEFAULT &RADIO__abmRadio[1] 00069 #endif 00070 00071 /* Define default image check */ 00072 #ifndef RADIO_IMAGE_CHECK_DEFAULT 00073 #define RADIO_IMAGE_CHECK_DEFAULT &RADIO__bmCheck 00074 #endif 00075 00076 /* Define default font */ 00077 #ifndef RADIO_FONT_DEFAULT 00078 #if WIDGET_USE_SCHEME_SMALL 00079 #define RADIO_SPACING_DEFAULT 20 00080 #define RADIO_FONT_DEFAULT &GUI_Font13_1 00081 #elif WIDGET_USE_SCHEME_MEDIUM 00082 #define RADIO_SPACING_DEFAULT 24 00083 #define RADIO_FONT_DEFAULT &GUI_Font16_1 00084 #elif WIDGET_USE_SCHEME_LARGE 00085 #define RADIO_SPACING_DEFAULT 30 00086 #define RADIO_FONT_DEFAULT &GUI_Font24_1 00087 #endif 00088 #endif 00089 00090 /* Define vertical default spacing */ 00091 #ifndef RADIO_SPACING_DEFAULT 00092 #define RADIO_SPACING_DEFAULT 20 00093 #endif 00094 00095 /* Define default text color */ 00096 #ifndef RADIO_DEFAULT_TEXT_COLOR 00097 #define RADIO_DEFAULT_TEXT_COLOR GUI_BLACK 00098 #endif 00099 00100 /* Define default background color */ 00101 #ifndef RADIO_DEFAULT_BKCOLOR 00102 #define RADIO_DEFAULT_BKCOLOR GUI_GRAY_C0 00103 #endif 00104 00105 #ifndef RADIO_FOCUSCOLOR_DEFAULT 00106 #define RADIO_FOCUSCOLOR_DEFAULT GUI_BLACK 00107 #endif 00108 00109 #define RADIO_BORDER 2 00110 00111 /********************************************************************* 00112 * 00113 * Object definition 00114 * 00115 ********************************************************************** 00116 */ 00117 typedef struct { 00118 unsigned (* pfGetButtonSize)(RADIO_Handle hObj); 00119 WIDGET_DRAW_ITEM_FUNC * pfDrawSkin; 00120 } RADIO_SKIN_PRIVATE; 00121 00122 typedef struct { 00123 GUI_COLOR BkColor; 00124 GUI_COLOR TextColor; 00125 GUI_COLOR FocusColor; 00126 const GUI_FONT * pFont; 00127 const GUI_BITMAP * apBmRadio[2]; 00128 const GUI_BITMAP * pBmCheck; 00129 RADIO_SKIN_PRIVATE SkinPrivate; 00130 } RADIO_PROPS; 00131 00132 typedef struct { 00133 WIDGET Widget; 00134 RADIO_PROPS Props; 00135 WIDGET_SKIN const * pWidgetSkin; 00136 GUI_ARRAY TextArray; 00137 I16 Sel; /* current selection */ 00138 U16 Spacing; 00139 U16 NumItems; 00140 U8 GroupId; 00141 } RADIO_Obj; 00142 00143 /********************************************************************* 00144 * 00145 * Macros for internal use 00146 * 00147 ********************************************************************** 00148 */ 00149 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_CHECK_ALL 00150 #define RADIO_INIT_ID(p) p->Widget.DebugId = RADIO_ID 00151 #else 00152 #define RADIO_INIT_ID(p) 00153 #endif 00154 00155 #if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_CHECK_ALL 00156 RADIO_Obj * RADIO_LockH(RADIO_Handle h); 00157 #define RADIO_LOCK_H(h) RADIO_LockH(h) 00158 #else 00159 #define RADIO_LOCK_H(h) (RADIO_Obj *)GUI_LOCK_H(h) 00160 #endif 00161 00162 /********************************************************************* 00163 * 00164 * Types 00165 * 00166 ********************************************************************** 00167 */ 00168 00169 typedef void tRADIO_SetValue(RADIO_Handle hObj, int v); 00170 00171 /********************************************************************* 00172 * 00173 * Extern data 00174 * 00175 ********************************************************************** 00176 */ 00177 00178 extern RADIO_PROPS RADIO__DefaultProps; 00179 00180 extern const WIDGET_SKIN RADIO__SkinClassic; 00181 extern WIDGET_SKIN RADIO__Skin; 00182 00183 extern WIDGET_SKIN const * RADIO__pSkinDefault; 00184 00185 extern const GUI_BITMAP RADIO__abmRadio[2]; 00186 extern const GUI_BITMAP RADIO__bmCheck; 00187 extern tRADIO_SetValue* RADIO__pfHandleSetValue; 00188 00189 /********************************************************************* 00190 * 00191 * public functions (internal) 00192 * 00193 ********************************************************************** 00194 */ 00195 void RADIO__SetValue (RADIO_Handle hObj, int v); 00196 unsigned RADIO__GetButtonSize(RADIO_Handle hObj); 00197 00198 #endif /* GUI_WINSUPPORT */ 00199 #endif /* RADIO_PRIVATE_H */ 00200 00201 /************************* end of file ******************************/
Generated on Mon Mar 4 2024 07:48:13 by 1.7.2