[comp.sys.mac.programmer] Making a new ColorTable

rtp1@tank.uchicago.edu (raymond thomas pierrehumbert) (03/16/90)

I need to make a new ColorTable to go with an offscreen PixMap (that is
later going to be CopyBitted to the screen).  I'm working in Think C 3.x.
How do I do it?  Making the ColorTable itself is not a problem.  I
can put in a declaration
      ColorTable **myCTab; 
and set (**myCTab).ctSeed, (**myCTab).ctSize, etc, but the problem
comes with setting (**myCTab).ctTable , which is supposed to be a
CSpecArray.  I can make the CSpec array by defining
      ColorSpec *mycolors;
or
      ColorSpec mycolors[256];
but when I try to do
      (**myCTab).ctTable = mycolors;
the compiler gives me an "illegal pointer arithmetic" error.  If 
I try to do any reasonable type cast, I get an "illegal cast" error.
What am I doing wrong?
     The reason I need to set up a ColorTable is that I want to
display a pixel buffer to the screen, where the pixel values correspond
to the entry indices used in the SetEntryColor call to the Palette
manager.  Hence, I have to set the ctTable.value field appropriately
to get the right colors. 
.