home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / x / volume10 / xt-examples / part03 / MinMaxP.h < prev    next >
C/C++ Source or Header  |  1990-11-04  |  3KB  |  92 lines

  1. /***********************************************************
  2. Copyright 1990 by Digital Equipment Corporation, Maynard, Massachusetts.
  3.  
  4.                         All Rights Reserved
  5.  
  6. Permission to use, copy, modify, and distribute these examples for any
  7. purpose and without fee is hereby granted, provided that the above
  8. copyright notice appear in all copies and that both that copyright
  9. notice and this permission notice appear in supporting documentation,
  10. and that the name of Digital not be used in advertising or publicity
  11. pertaining to distribution of the software without specific, written
  12. prior permission.
  13.  
  14. DIGITAL AND THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
  15. SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
  16. FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT
  17. OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
  18. OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
  19. OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  20. OR PERFORMANCE OF THIS SOFTWARE.
  21.  
  22. ******************************************************************/
  23.  
  24. /* Make it safe to include this file more than once. */
  25.  
  26. #ifndef MINMAXP_H
  27. #define MINMAXP_H
  28.  
  29. /* Include the public header file for MinMax */
  30.  
  31. #include "MinMax.h"
  32.  
  33. /* Define the MinMax instance part */
  34.  
  35. typedef struct {
  36.   /* New resource fields */
  37.     Dimension    margin;        /* Extra space to leave on edges */
  38.  
  39.   /* New internal fields */
  40.     Widget    last_focus;    /* Child that last had the focus */
  41. } MinMaxPart;
  42.  
  43. /* Define the full instance record */
  44.  
  45. typedef struct _MinMaxRec {
  46.     CorePart        core;
  47.     CompositePart    composite;
  48.     ConstraintPart    constraint;
  49.     MinMaxPart        minMax;
  50. } MinMaxRec;
  51.  
  52. /* Define class part structure */
  53.  
  54. typedef struct {
  55.     XtPointer        extension;
  56. } MinMaxClassPart;
  57.  
  58. /* Define the full class record */
  59.  
  60. typedef struct _MinMaxClassRec {
  61.     CoreClassPart    core_class;
  62.     CompositeClassPart    composite_class;
  63.     ConstraintClassPart    constraint_class;
  64.     MinMaxClassPart    minMax_class;
  65. } MinMaxClassRec, *MinMaxClass;
  66.  
  67. /* Define constraint part structure */
  68.  
  69. typedef struct {
  70.   /* New resource fields */
  71.     short        min_width;
  72.     short        max_width;
  73.     short        min_height;
  74.     short        max_height;
  75. } MinMaxConstraintPart;
  76.  
  77. /* Define the full constraint record */
  78.  
  79. typedef struct _MinMaxConstraintRec {
  80.     MinMaxConstraintPart minMax;
  81. } MinMaxConstraintRec, *MinMaxConstraint;
  82.  
  83.  
  84. /* External definition for class record */
  85.  
  86. extern MinMaxClassRec minMaxClassRec;
  87.  
  88. /* End of preprocessor directives */
  89.  
  90. #endif /* MINMAXP_H */
  91.  
  92.