1
0

missing.h 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. /*++
  2. Copyright (c) 2013 Minoca Corp.
  3. This file is licensed under the terms of the GNU General Public License
  4. version 3. Alternative licensing terms are available. Contact
  5. info@minocacorp.com for details. See the LICENSE file at the root of this
  6. project for complete licensing information.
  7. Module Name:
  8. missing.h
  9. Abstract:
  10. This header contains definitions that should be in the standard headers
  11. but are for some reason missing in MinGW. If these ever get added, this
  12. should be removed.
  13. Author:
  14. Evan Green 6-Sep-2013
  15. --*/
  16. //
  17. // ------------------------------------------------------------------- Includes
  18. //
  19. //
  20. // ---------------------------------------------------------------- Definitions
  21. //
  22. #define CFM_BACKCOLOR 0x04000000
  23. #define LVGF_NONE 0x00000000
  24. #define LVGF_HEADER 0x00000001
  25. #define LVGF_FOOTER 0x00000002
  26. #define LVGF_STATE 0x00000004
  27. #define LVGF_ALIGN 0x00000008
  28. #define LVGF_GROUPID 0x00000010
  29. #if _WIN32_WINNT >= 0x0600
  30. #define LVGF_SUBTITLE 0x00000100
  31. #define LVGF_TASK 0x00000200
  32. #define LVGF_DESCRIPTIONTOP 0x00000400
  33. #define LVGF_DESCRIPTIONBOTTOM 0x00000800
  34. #define LVGF_TITLEIMAGE 0x00001000
  35. #define LVGF_EXTENDEDIMAGE 0x00002000
  36. #define LVGF_ITEMS 0x00004000
  37. #define LVGF_SUBSET 0x00008000
  38. #define LVGF_SUBSETITEMS 0x00010000
  39. #endif
  40. #define LVGS_NORMAL 0x00000000
  41. #define LVGS_COLLAPSED 0x00000001
  42. #define LVGS_HIDDEN 0x00000002
  43. #define LVGS_NOHEADER 0x00000004
  44. #define LVGS_COLLAPSIBLE 0x00000008
  45. #define LVGS_FOCUSED 0x00000010
  46. #define LVGS_SELECTED 0x00000020
  47. #define LVGS_SUBSETED 0x00000040
  48. #define LVGS_SUBSETLINKFOCUSED 0x00000080
  49. //
  50. // ------------------------------------------------------ Data Type Definitions
  51. //
  52. typedef struct tagLVGROUP {
  53. UINT cbSize;
  54. UINT mask;
  55. LPWSTR pszHeader;
  56. int cchHeader;
  57. LPWSTR pszFooter;
  58. int cchFooter;
  59. int iGroupId;
  60. UINT stateMask;
  61. UINT state;
  62. UINT uAlign;
  63. #if _WIN32_WINNT >= 0x0600
  64. LPWSTR pszSubtitle;
  65. UINT cchSubtitle;
  66. LPWSTR pszTask;
  67. UINT cchTask;
  68. LPWSTR pszDescriptionTop;
  69. UINT cchDescriptionTop;
  70. LPWSTR pszDescriptionBottom;
  71. UINT cchDescriptionBottom;
  72. int iTitleImage;
  73. int iExtendedImage;
  74. int iFirstItem;
  75. UINT cItems;
  76. LPWSTR pszSubsetTitle;
  77. UINT cchSubsetTitle;
  78. #endif
  79. } LVGROUP, *PLVGROUP;
  80. //
  81. // -------------------------------------------------------------------- Globals
  82. //
  83. //
  84. // -------------------------------------------------------- Function Prototypes
  85. //