home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 13 / AACD13.ISO / AACD / Programming / MR_Classes / Dev / Source / tcpalette / Domain.c < prev    next >
Encoding:
C/C++ Source or Header  |  2000-07-11  |  941 b   |  49 lines

  1. #include "private.h"
  2.  
  3. ULONG gad_Domain(Class *C, struct Gadget *Gad, struct gpDomain *D)
  4. {
  5.   struct GadData *gdata=0; 
  6.   
  7.   if(Gad) gdata=INST_DATA(C, Gad);
  8.  
  9.   D->gpd_Domain.Left=0;
  10.   D->gpd_Domain.Top=0;
  11.  
  12.   switch(D->gpd_Which)
  13.   {
  14.     case GDOMAIN_NOMINAL:
  15.       if(gdata)
  16.       {
  17.         D->gpd_Domain.Width =sqrt(gdata->Pens) * 12 + 8;
  18.         D->gpd_Domain.Height=sqrt(gdata->Pens) * 12 + 8;
  19.       }
  20.       else
  21.       {
  22.         D->gpd_Domain.Width=100;
  23.         D->gpd_Domain.Height=50;
  24.       }
  25.       break;
  26.       
  27.     case GDOMAIN_MAXIMUM:
  28.       D->gpd_Domain.Width=16000;
  29.       D->gpd_Domain.Height=16000;
  30.       break;
  31.     
  32.     case GDOMAIN_MINIMUM:
  33.     default:
  34.       if(gdata)
  35.       {
  36.         D->gpd_Domain.Width =sqrt(gdata->Pens) * 8 + 8;
  37.         D->gpd_Domain.Height=sqrt(gdata->Pens) * 8 + 8;
  38.       }
  39.       else
  40.       {
  41.         D->gpd_Domain.Width=  50;
  42.         D->gpd_Domain.Height= 50;
  43.       }
  44.       break;
  45.  
  46.   }
  47.   return(1);
  48. }
  49.