Edit.h
上传用户:zbk8730
上传日期:2017-08-10
资源大小:12168k
文件大小:6k
源码类别:

uCOS

开发平台:

C/C++

  1. /*
  2. *********************************************************************************************************
  3. *                                                uC/GUI
  4. *                        Universal graphic software for embedded applications
  5. *
  6. *                       (c) Copyright 2002, Micrium Inc., Weston, FL
  7. *                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
  8. *
  9. *              礐/GUI is protected by international copyright laws. Knowledge of the
  10. *              source code may not be used to write a similar product. This file may
  11. *              only be used in accordance with a license and should not be redistributed
  12. *              in any way. We appreciate your understanding and fairness.
  13. *
  14. ----------------------------------------------------------------------
  15. File        : EDIT.H
  16. Purpose     : EDIT include
  17. --------------------END-OF-HEADER-------------------------------------
  18. */
  19. #ifndef EDIT_H
  20. #define EDIT_H
  21. #include "WM.H"
  22. #include "Dialog.h"      /* Req. for Create indirect data structure */
  23. #if GUI_WINSUPPORT
  24. /*********************************************************************
  25. *
  26. *       Defaults for configuration switches
  27. *
  28. **********************************************************************
  29. The following are defaults for config switches which affect the
  30. interface specified in this module
  31. */
  32. /*********************************************************************
  33. *
  34. *       Defines
  35. *
  36. **********************************************************************
  37. */
  38. /************************************************************
  39. *
  40. *       States
  41. */
  42. /*********************************************************************
  43. *
  44. *       Types
  45. *
  46. **********************************************************************
  47. */
  48. typedef WM_HMEM EDIT_Handle;
  49. /*
  50.       *************************************************************
  51.       *                                                           *
  52.       *                 Create function(s)                        *
  53.       *                                                           *
  54.       *                   (Constructors)                          *
  55.       *                                                           *
  56.       *************************************************************
  57. */
  58. /* Note: the parameters to a create function may vary.
  59.          Some widgets may have multiple create functions */
  60. EDIT_Handle EDIT_Create        (int x0, int y0, int xsize, int ysize, int ID, int MaxLen, int Flags);
  61. EDIT_Handle EDIT_CreateAsChild (int x0, int y0, int xsize, int ysize, WM_HWIN hParent, int Id, int Flags, int MaxLen);
  62. EDIT_Handle EDIT_CreateIndirect(const GUI_WIDGET_CREATE_INFO* pCreateInfo, WM_HWIN hWinParent, int x0, int y0, WM_CALLBACK* pCallback);
  63. /*
  64.       *************************************************************
  65.       *                                                           *
  66.       *                 Standard member functions                 *
  67.       *                                                           *
  68.       *************************************************************
  69. */
  70. #define EDIT_EnableMemdev(hObj)  WM_EnableMemdev(hObj)
  71. #define EDIT_DisableMemdev(hObj) WM_DisableMemdev(hObj)
  72. #define EDIT_Delete(hObj)        WM_DeleteWindow(hObj)
  73. #define EDIT_Paint(hObj)         WM_Paint(hObj)
  74. #define EDIT_Invalidate(hObj)    WM_InvalidateWindow(hObj)
  75. /*
  76.       *************************************************************
  77.       *                                                           *
  78.       *           Individual member functions                     *
  79.       *                                                           *
  80.       *************************************************************
  81. */
  82. /* Methods changing preferences */
  83. void EDIT_SetDefaultFont(const GUI_FONT* pFont);
  84. void EDIT_SetDefaultTextAlign(int Align);
  85. /* Query preferences */
  86. const GUI_FONT* EDIT_GetDefaultFont(void);
  87. /* Methods changing properties */
  88. void EDIT_SetText     (EDIT_Handle hObj, const char* s);
  89. void EDIT_SetBkColor  (EDIT_Handle hObj, int Index, GUI_COLOR color);
  90. void EDIT_SetTextColor(EDIT_Handle hObj, int Index, GUI_COLOR color);
  91. void EDIT_SetFont     (EDIT_Handle hObj, const GUI_FONT* pfont);
  92. void EDIT_AddKey      (EDIT_Handle hObj, int Key);
  93. void EDIT_SetTextAlign(EDIT_Handle hObj, int Align);
  94. void EDIT_SetCursor   (EDIT_Handle hObj);
  95. void EDIT_ClearCursor (EDIT_Handle hObj);
  96. void EDIT_SetMaxLen   (EDIT_Handle hObj, int MaxLen);
  97. /* Get/Set user input */
  98. void EDIT_GetText (EDIT_Handle hObj, char* sDest, int MaxLen);
  99. I32  EDIT_GetValue(EDIT_Handle hObj);
  100. void EDIT_SetValue(EDIT_Handle hObj, I32 Value);
  101. /*********************************************************************
  102. *
  103. *             Routines for editing values
  104. *
  105. **********************************************************************
  106. */
  107. void  EDIT_SetHexMode(EDIT_Handle hEdit, U32 Value, U32 Min, U32 Max);
  108. void  EDIT_SetBinMode(EDIT_Handle hEdit, U32 Value, U32 Min, U32 Max);
  109. void  EDIT_SetDecMode(EDIT_Handle hEdit, I32 Value, I32 Min, I32 Max, int Shift, U8 Flags);
  110. void  EDIT_SetFloatMode(EDIT_Handle hEdit, float Value, float Min, float Max, int Shift, U8 Flags);
  111. U32   GUI_EditHex(U32 Value, U32 Min, U32 Max, int Len, int xsize);
  112. U32   GUI_EditBin(U32 Value, U32 Min, U32 Max, int Len, int xsize);
  113. I32   GUI_EditDec(I32 Value, I32 Min, I32 Max, int Len, int xsize, int Shift, U8 Flags);
  114. float GUI_EditFloat(float Value, float Min, float Max, int Len, int xsize, int Shift, U8 Flags);
  115. void  GUI_EditString(char * pString, int Len, int xsize);
  116. /*********************************************************************
  117. *
  118. *             Flags
  119. *
  120. **********************************************************************
  121. */
  122. /* Signed or normal mode */
  123. #define GUI_EDIT_NORMAL 0
  124. #define GUI_EDIT_SIGNED 1
  125. /* Edit modes */
  126. #define GUI_EDIT_MODE_INSERT    0
  127. #define GUI_EDIT_MODE_OVERWRITE 1
  128. #endif   /* GUI_WINSUPPORT */
  129. #endif   /* EDIT_H */