TitleBoxP.h 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. /*
  2. * CDE - Common Desktop Environment
  3. *
  4. * Copyright (c) 1993-2012, The Open Group. All rights reserved.
  5. *
  6. * These libraries and programs are free software; you can
  7. * redistribute them and/or modify them under the terms of the GNU
  8. * Lesser General Public License as published by the Free Software
  9. * Foundation; either version 2 of the License, or (at your option)
  10. * any later version.
  11. *
  12. * These libraries and programs are distributed in the hope that
  13. * they will be useful, but WITHOUT ANY WARRANTY; without even the
  14. * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  15. * PURPOSE. See the GNU Lesser General Public License for more
  16. * details.
  17. *
  18. * You should have received a copy of the GNU Lesser General Public
  19. * License along with these libraries and programs; if not, write
  20. * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
  21. * Floor, Boston, MA 02110-1301 USA
  22. */
  23. /* $XConsortium: TitleBoxP.h /main/3 1995/10/26 09:34:57 rswiston $ */
  24. /**---------------------------------------------------------------------
  25. ***
  26. *** file: TitleBoxP.h
  27. ***
  28. *** project: MotifPlus Widgets
  29. ***
  30. *** description: Private include file for DtTitleBox class.
  31. ***
  32. ***
  33. *** (c) Copyright 1990 by Hewlett-Packard Company.
  34. ***
  35. ***
  36. ***-------------------------------------------------------------------*/
  37. #ifndef _DtTitleBoxP_h
  38. #define _DtTitleBoxP_h
  39. #include <Xm/XmP.h>
  40. #include <Dt/TitleBox.h>
  41. /*-------------------------------------------------------------
  42. ** Class Structure
  43. */
  44. /* Class Part
  45. */
  46. typedef struct _DtTitleBoxClassPart
  47. {
  48. caddr_t extension;
  49. } DtTitleBoxClassPart;
  50. /* Full Class Record
  51. */
  52. typedef struct _DtTitleBoxClassRec
  53. {
  54. CoreClassPart core_class;
  55. CompositeClassPart composite_class;
  56. ConstraintClassPart constraint_class;
  57. XmManagerClassPart manager_class;
  58. DtTitleBoxClassPart title_box_class;
  59. } DtTitleBoxClassRec;
  60. /* Actual Class
  61. */
  62. extern DtTitleBoxClassRec dtTitleBoxClassRec;
  63. /*-------------------------------------------------------------
  64. ** Instance Structure
  65. */
  66. /* Instance Part
  67. */
  68. typedef struct _DtTitleBoxPart
  69. {
  70. Widget work_area;
  71. Widget title_area;
  72. XmString title_string;
  73. XmFontList font_list;
  74. Dimension margin_width;
  75. Dimension margin_height;
  76. Dimension old_width;
  77. Dimension old_height;
  78. Dimension old_shadow_thickness;
  79. Dimension title_spacing;
  80. unsigned char title_position;
  81. unsigned char title_alignment;
  82. unsigned char shadow_type;
  83. } DtTitleBoxPart;
  84. /* Full Instance Record
  85. */
  86. typedef struct _DtTitleBoxRec
  87. {
  88. CorePart core;
  89. CompositePart composite;
  90. ConstraintPart constraint;
  91. XmManagerPart manager;
  92. DtTitleBoxPart title_box;
  93. } DtTitleBoxRec;
  94. /*-------------------------------------------------------------
  95. ** Constraint Structure
  96. */
  97. /* Constraint Part
  98. */
  99. typedef struct _DtTitleBoxConstraintPart
  100. {
  101. unsigned char child_type;
  102. } DtTitleBoxConstraintPart, * DtTitleBoxConstraint;
  103. /* Full Constraint Record
  104. */
  105. typedef struct _DtTitleBoxConstraintRec
  106. {
  107. XmManagerConstraintPart manager_constraint;
  108. DtTitleBoxConstraintPart title_box_constraint;
  109. } DtTitleBoxConstraintRec, * DtTitleBoxConstraintPtr;
  110. /*-------------------------------------------------------------
  111. ** Class and Instance Macros
  112. */
  113. /* DtTitleBox Class Macros
  114. */
  115. /* DtTitleBox Instance Macros
  116. */
  117. #define M_TitleBoxConstraint(w) \
  118. (&((DtTitleBoxConstraintPtr) (w)->core.constraints)->title_box_constraint)
  119. #define M_WorkArea(m) (m -> title_box.work_area)
  120. #define M_TitleArea(m) (m -> title_box.title_area)
  121. #define M_TitleString(m) (m -> title_box.title_string)
  122. #define M_TitleSpacing(m) (m -> title_box.title_spacing)
  123. #define M_TitlePosition(m) (m -> title_box.title_position)
  124. #define M_TitleAlignment(m) (m -> title_box.title_alignment)
  125. #define M_FontList(m) (m -> title_box.font_list)
  126. #define M_ShadowType(m) (m -> title_box.shadow_type)
  127. #define M_MarginWidth(m) (m -> title_box.margin_width)
  128. #define M_MarginHeight(m) (m -> title_box.margin_height)
  129. #define M_OldWidth(m) (m -> title_box.old_width)
  130. #define M_OldHeight(m) (m -> title_box.old_height)
  131. #define M_OldShadowThickness(m) (m -> title_box.old_shadow_thickness)
  132. #endif /* _DtTitleBoxP_h */
  133. /* DON'T ADD ANYTHING AFTER THIS #endif */