home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 13 / AACD13.ISO / AACD / Programming / MR_Classes / Dev / Source / tcpalette / Notify.c < prev    next >
Encoding:
C/C++ Source or Header  |  2000-08-04  |  1.8 KB  |  52 lines

  1.  
  2. #define DEBUG
  3. #include <debug.h>
  4.  
  5. #include "private.h"
  6. #include "protos.h"
  7.  
  8. ULONG __saveds i_DoNotify(Class *C, struct Gadget *Gad, Msg M, ULONG Flags, Tag Tags, ...);
  9.  
  10. ULONG i_Notify(Class *C, struct Gadget *Gad, Msg M, ULONG Flags)
  11. {
  12.   struct GadData *gdata;
  13.  
  14.   gdata=INST_DATA(C, Gad);  
  15.   
  16.   return(i_DoNotify(C, Gad, M, Flags, 
  17.                       GA_ID,                            Gad->GadgetID,
  18.                       TCPALETTE_NumColors,              gdata->Pens,
  19.                       TCPALETTE_SelectedColor,          gdata->ActivePen,
  20.                       TCPALETTE_SelectedLRGB,           PACKRGB(gdata->Palette[gdata->ActivePen]),
  21.                       TCPALETTE_SelectedRGB,            &gdata->Palette[gdata->ActivePen],
  22.                       TCPALETTE_SelectedRed,            gdata->Palette[gdata->ActivePen].R>>(32-gdata->Precision),
  23.                       TCPALETTE_SelectedGreen,          gdata->Palette[gdata->ActivePen].G>>(32-gdata->Precision),
  24.                       TCPALETTE_SelectedBlue,           gdata->Palette[gdata->ActivePen].B>>(32-gdata->Precision),
  25.                       TCPALETTE_EditMode,               gdata->EditMode,
  26.                       TCPALETTE_NoUndo,                 (gdata->UndoLength?0:1),
  27.                       TAG_DONE));
  28. }
  29.  
  30. ULONG i_NotifyUndo(Class *C, struct Gadget *Gad, Msg M, ULONG Flags)
  31. {
  32.   struct GadData *gdata;
  33.  
  34.   gdata=INST_DATA(C, Gad);  
  35.   
  36.   return(i_DoNotify(C, Gad, M, Flags, 
  37.                       GA_ID,                            Gad->GadgetID,
  38.                       TCPALETTE_NoUndo,                 (gdata->UndoLength?0:1),
  39.                       TAG_DONE));
  40. }
  41.  
  42.  
  43.  
  44. ULONG __saveds i_DoNotify(Class *C, struct Gadget *Gad, Msg M, ULONG Flags, Tag Tags, ...)
  45. {
  46.   struct GadData *gdata;
  47.  
  48.   gdata=INST_DATA(C, Gad);
  49.  
  50.   return(DoSuperMethod(C,(APTR)Gad,OM_NOTIFY, &Tags, boopsi_GetGInfo(M), Flags));
  51. }
  52.