home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / coders / boopsi / dragclass / source / icon.class < prev    next >
Text File  |  1977-12-31  |  2KB  |  104 lines

  1. //
  2. //    just a little test how to plot an icon into
  3. //    a window ...
  4. //
  5. //    the question is : how can I make a bob from an image ?
  6. //
  7.  
  8.  
  9. CLASS        icon
  10. SUPERCLASS  "gadgetclass",NULL
  11. VERSION     iconimagetest 1.0 (20-04-94)
  12. FIRST_METH_NUM          144
  13. FIRST_ATTR_NUM    TAG_USER+1900
  14. INCLUDES
  15.     <intuition/gadgetclass.h>
  16. PRIVATE_INCLUDES
  17.     <workbench/workbench.h>
  18.     <assert.h>
  19.     <string.h>
  20.  
  21. LIBRARIES
  22.     exec
  23.     intuition
  24.     utility
  25.     graphics
  26.     icon
  27.  
  28. PRIVATE_DEFINES
  29.     GADOB ((struct Gadget *)o)
  30.     IDO inst->data
  31.     IDG inst->dg
  32.  
  33. CONTENTS
  34.     struct DiskObject *data;
  35.     struct Gadget      *dg;
  36.     ULONG           flags;
  37.  
  38. OBJ_INIT
  39.  
  40.  
  41. METHOD GM_RENDER struct gpRender*
  42.     ULONG t;
  43.     t = GADOB->GadgetType;
  44.     GADOB->GadgetType = GTYP_BOOLGADGET;
  45.     RefreshGList(GADOB, msg->gpr_GInfo->gi_Window, msg->gpr_GInfo->gi_Requester, 1);
  46.     GADOB->GadgetType = t;
  47.  
  48.     return 0;
  49.  
  50. METHOD GM_GOACTIVE struct gpInput*
  51.     GADOB->Flags ^= GFLG_SELECTED;
  52.     method_GM_RENDER(cl, o, (struct gpRender *)msg, inst);
  53.     return GMR_NOREUSE;
  54.  
  55. METHOD GM_HITTEST struct gpHitTest*
  56.     return GMR_GADGETHIT;
  57.  
  58. // GOINACTIVE
  59. // LAYOUT
  60. // HANDLEINPUT
  61. // HELPTEST
  62.  
  63. ATTRIBUTE IGA_DiskObject
  64.     $I IDO= (APTR)val; IDG= &IDO->do_Gadget; GADOB->GadgetRender=IDG->GadgetRender;GADOB->SelectRender= IDG->SelectRender; GADOB->Flags= (GADOB->Flags& GFLG_GADGHIGHBITS )|IDG->Flags;
  65.     $S IDO= (APTR)val; IDG= &IDO->do_Gadget; GADOB->GadgetRender=IDG->GadgetRender;GADOB->SelectRender= IDG->SelectRender; GADOB->Flags= (GADOB->Flags& GFLG_GADGHIGHBITS )|IDG->Flags; retval= 1;
  66.     $G val= (ULONG)IDO;
  67.  
  68.  
  69.  
  70. TEST_SUPPORT
  71.  
  72.     APTR dobj = NULL;
  73.     void freeDO(void) {
  74.     if (dobj) {
  75.         FreeDiskObject(dobj);
  76.         dobj = NULL;
  77.     } /* if */
  78.     }
  79.     APTR getDO(void) {
  80.     atexit(freeDO);
  81.  
  82.     dobj=GetDiskObjectNew("RAM:env");
  83.     assert(dobj != NULL);
  84.     return dobj;
  85.     }
  86.  
  87.  
  88. TEST_WINDOW
  89.     WA_IDCMP, IDCMP_CLOSEWINDOW,
  90.     WA_Title, "Class TestWindow",
  91.     WA_Width, 300,
  92.     WA_Height, 100,
  93.  
  94.  
  95.  
  96. TEST_OBJECT test_ob
  97.     GA_Top,    50,
  98.     GA_Left,    50,
  99.     GA_Width,    50,
  100.     GA_Height,    50,
  101.    IGA_DiskObject, getDO(),
  102.  
  103.  
  104.