home *** CD-ROM | disk | FTP | other *** search
/ The CDPD Public Domain Collection for CDTV 3 / CDPDIII.bin / pd / programming / utils / dialoglib / vspring.c < prev    next >
C/C++ Source or Header  |  1993-03-07  |  1KB  |  57 lines

  1. #include <libraries/gadtools.h>
  2. #include <proto/utility.h>
  3. #include "dialog.h"
  4. #ifdef DEBUG1
  5.     #include <stdio.h>
  6. #endif
  7.  
  8. static VOID setupVSpring( DialogElement *de )
  9. {
  10.     if( !de )
  11.         return;
  12.  
  13.     setMinLeftExtent( de, 0 );
  14.     setMaxLeftExtent( de, 0 );
  15.     setMinRightExtent( de, 0 );
  16.     setMaxRightExtent( de, 0 );
  17.     setMinHeight( de, 0 );
  18.     setMaxHeight( de, MAX_SPACE );
  19. }
  20.  
  21. #ifdef DEBUG1
  22. VOID debug_layoutVSpring( DialogElement *de, LayoutMessage *lm )
  23. {
  24.     printf(
  25.     "layoutVSpring : x %d, y %d, width %d, height %d, left %d, right %d, top %d, bottom %d\n",
  26.         lm->lm_X, lm->lm_Y, lm->lm_Width, lm->lm_Height,
  27.         lm->lm_Left, lm->lm_Right, lm->lm_Top, lm->lm_Bottom );
  28. }
  29. #endif
  30.  
  31. ULONG dispatchVSpring( struct Hook *hook, DialogElement *de, DialogMessage *dm )
  32. {
  33.     ULONG result;
  34.  
  35.     switch( dm->dm_MethodID )
  36.     {
  37.     case DIALOGM_GETSTRUCT:
  38.         result = DESF_VBaseline;
  39.         break;
  40.     case DIALOGM_SETUP:
  41.         setupVSpring( de );
  42.         break;
  43.     case DIALOGM_LAYOUT:
  44. #ifdef DEBUG1
  45.         debug_layoutVSpring( de, (LayoutMessage *)dm );
  46. #endif
  47.         result = DIALOGERR_OK;
  48.         break;
  49.     case DIALOGM_MATCH:
  50.         result = 0;
  51.         break;
  52.     case DIALOGM_CLEAR:
  53.         break;
  54.     }
  55.     return result;
  56. }
  57.