menu.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #ifndef __MENU_H
  2. #define __MENU_H
  3. /*************************************************************************
  4. *
  5. * Used with ICCARM and AARM.
  6. *
  7. * (c) Copyright IAR Systems 2003
  8. *
  9. * File name : config.h
  10. * Description : Define common defenition
  11. *
  12. * History :
  13. * 1. Data : Feb 10, 2005
  14. * Author : Stanimir Bonev
  15. * Description : Create
  16. *
  17. * $Revision: 1.1 $
  18. **************************************************************************/
  19. #include "includes.h"
  20. #define END_OF_STR '\0'
  21. #define VARIABLE_DATA 1
  22. #define END_OF_VAR_DATA 2
  23. typedef char MEMU_STING_DEF ;
  24. /* Menu XY coodinate type def*/
  25. typedef LPC_INT8U MENU_COORDINATE_XY_DEF;
  26. typedef void (*MENU_USER_FUNC_DEF)(MEMU_STING_DEF * pVarArg, MEMU_IND_DEF * MenuIndex, MEMU_TIME_OUT_DEF * MenuTO);
  27. typedef struct
  28. {
  29. MENU_EVENT_TYPE_DEF EventType;
  30. MEMU_IND_DEF MenuIndex;
  31. MEMU_TIME_OUT_DEF MenuTO;
  32. MEMU_STING_DEF * pVarArg;
  33. MENU_USER_FUNC_DEF UserFunc;
  34. MENU_USER_FUNC_DEF UserFunc1;
  35. } MENU_ACTION_SHAIN_DEF;
  36. typedef struct
  37. {
  38. const MEMU_STING_DEF * MenuText;
  39. MEMU_XY_DEF X;
  40. MEMU_XY_DEF Y;
  41. } MENU_VISUAL_DEF;
  42. typedef enum
  43. {
  44. MENU_OK = 0, /* command pass */
  45. MENU_LANG_ERROR, /* not valid language */
  46. MENU_IND_ERROR, /* not valid menu index */
  47. MENU_EVET_STACK_OVERFLOW, /* Event stack overflow */
  48. MENU_SHOW_OUT_OF_VISUAL, /* String out of visual space */
  49. MENU_SHOW_ERROR, /* Error into LCD driver module */
  50. MENU_TO_ERROR, /* Menu tome out is to long */
  51. }MENU_ERROR_CODE_DEF;
  52. MENU_ERROR_CODE_DEF MenuInit (MENU_LANG_TYPE_DEF Language,
  53. MEMU_IND_DEF MainMenuInd, MEMU_STING_DEF *pVarData, MEMU_TIME_OUT_DEF MenuTO);
  54. MENU_ERROR_CODE_DEF MenuSetEvent (MENU_EVENT_TYPE_DEF MenuEvent);
  55. MENU_ERROR_CODE_DEF Menu (void);
  56. MENU_EVENT_TYPE_DEF MenuGetInd(void);
  57. MENU_ACTION_SHAIN_DEF * MenuGetActionChain(MEMU_IND_DEF MenuInd);
  58. MENU_VISUAL_DEF * MenuGetVisualChain(MENU_LANG_TYPE_DEF Language,MEMU_IND_DEF MenuInd);
  59. #endif /* __MENU_H */