Package Name: palettes
with Types; use Types;
with Quickdraw; use Quickdraw;
package Palettes is
--
-- File: Palettes.h
--
-- Contains: Palette Manager Interfaces.
--
-- Version: Technology: System 7.5
-- Package: Universal Interfaces 2.1 in ÒMPW LatestÓ on ETO #18
--
-- Copyright: © 1984-1995 by Apple Computer, Inc.
-- All rights reserved.
--
pmCourteous : constant := 0; -- Record use of color on each device touched.*/
pmTolerant : constant := 16#0002#; -- render ciRGB if ciTolerance is exceeded by best match.*/
pmAnimated : constant := 16#0004#; -- reserve an index on each device touched and render ciRGB.*/
pmExplicit : constant := 16#0008#; -- no reserve, no render, no record; stuff index into port.*/
pmWhite : constant := 16#0010#;
pmBlack : constant := 16#0020#;
pmInhibitG2 : constant := 16#0100#;
pmInhibitC2 : constant := 16#0200#;
pmInhibitG4 : constant := 16#0400#;
pmInhibitC4 : constant := 16#0800#;
pmInhibitG8 : constant := 16#1000#;
pmInhibitC8 : constant := 16#2000#;
-- NSetPalette Update Constants */
pmNoUpdates : constant := 16#8000#; -- no updates
pmBkUpdates : constant := 16#A000#; -- background updates only
pmFgUpdates : constant := 16#C000#; -- foreground updates only
pmAllUpdates : constant := 16#E000#; -- all updates
type Short_Integer_Vec_3 is array (0 .. 2) of Short_Integer;
type ColorInfo is
record
ciRGB : RGBColor; -- true RGB value
ciUsage : Short_Integer; -- color usag
ciTolerance : Short_Integer; -- tolerance valu
ciDataFields : Short_Integer_Vec_3; -- private field
end record;
type ColorInfo_Vec_1 is array (0 .. 0) of ColorInfo;
type Short_Integer_Vec_7 is array (0 .. 6) of Short_Integer;
type Palette is
record
pmEntries : Short_Integer; -- entries in pmTabl
pmDataFields : Short_Integer_Vec_7; -- private field
pmInfo : ColorInfo_Vec_1;
end record;
type PalettePtr is Access Palette;
type PaletteHandle is Access PalettePtr;
procedure InitPalettes;
pragma Import (C, InitPalettes, "InitPalettes", "InitPalettes");
function NewPalette
(entries : in Short_Integer;
srcColors : in CTabHandle;
srcUsage : in Short_Integer;
srcTolerance : in Short_Integer)
return PaletteHandle;
pragma Import (C, NewPalette, "NewPalette", "NewPalette");
function GetNewPalette
(PaletteID : in Short_Integer)
return PaletteHandle;
pragma Import (C, GetNewPalette, "GetNewPalette", "GetNewPalette");
procedure DisposePalette
(srcPalette : in PaletteHandle);
pragma Import (C, DisposePalette, "DisposePalette", "DisposePalette");
procedure ActivatePalette
(srcWindow : in WindowPtr);
pragma Import (C, ActivatePalette, "ActivatePalette", "ActivatePalette");
procedure SetPalette
(dstWindow : in WindowPtr;
srcPalette : in PaletteHandle;
cUpdates : in Boolean);
pragma Import (C, SetPalette, "SetPalette", "SetPalette");
procedure NSetPalette
(dstWindow : in WindowPtr;
srcPalette : in PaletteHandle;
nCUpdates : in Short_Integer);
pragma Import (C, NSetPalette, "NSetPalette", "NSetPalette");
function GetPalette
(srcWindow : in WindowPtr)
return PaletteHandle;
pragma Import (C, GetPalette, "GetPalette", "GetPalette");
procedure CopyPalette
(srcPalette : in PaletteHandle;
dstPalette : in PaletteHandle;
srcEntry : in Short_Integer;
dstEntry : in Short_Integer;
dstLength : in Short_Integer);
pragma Import (C, CopyPalette, "CopyPalette", "CopyPalette");
procedure PmForeColor
(dstEntry : in Short_Integer);
pragma Import (C, PmForeColor, "PmForeColor", "PmForeColor");
procedure PmBackColor
(dstEntry : in Short_Integer);
pragma Import (C, PmBackColor, "PmBackColor", "PmBackColor");
procedure AnimateEntry
(dstWindow : in WindowPtr;
dstEntry : in Short_Integer;
srcRGB : access RGBColor);
pragma Import (C, AnimateEntry, "AnimateEntry", "AnimateEntry");
procedure AnimatePalette
(dstWindow : in WindowPtr;
srcCTab : in CTabHandle;
srcIndex : in Short_Integer;
dstEntry : in Short_Integer;
dstLength : in Short_Integer);
pragma Import (C, AnimatePalette, "AnimatePalette", "AnimatePalette");
procedure GetEntryColor
(srcPalette : in PaletteHandle;
srcEntry : in Short_Integer;
dstRGB : access RGBColor);
pragma Import (C, GetEntryColor, "GetEntryColor", "GetEntryColor");
procedure SetEntryColor
(dstPalette : in PaletteHandle;
dstEntry : in Short_Integer;
srcRGB : access RGBColor);
pragma Import (C, SetEntryColor, "SetEntryColor", "SetEntryColor");
procedure GetEntryUsage
(srcPalette : in PaletteHandle;
srcEntry : in Short_Integer;
dstUsage : access Short_Integer;
dstTolerance : access Short_Integer);
pragma Import (C, GetEntryUsage, "GetEntryUsage", "GetEntryUsage");
procedure SetEntryUsage
(dstPalette : in PaletteHandle;
dstEntry : in Short_Integer;
srcUsage : in Short_Integer;
srcTolerance : in Short_Integer);
pragma Import (C, SetEntryUsage, "SetEntryUsage", "SetEntryUsage");
procedure CTab2Palette
(srcCTab : in CTabHandle;
dstPalette : in PaletteHandle;
srcUsage : in Short_Integer;
srcTolerance : in Short_Integer);
pragma Import (C, CTab2Palette, "CTab2Palette", "CTab2Palette");
procedure Palette2CTab
(srcPalette : in PaletteHandle;
dstCTab : in CTabHandle);
pragma Import (C, Palette2CTab, "Palette2CTab", "Palette2CTab");
function Entry2Index
(entry_Id : in Short_Integer)
return Long_Integer;
pragma Import (C, Entry2Index, "Entry2Index", "Entry2Index");
procedure RestoreDeviceClut
(gd : in GDHandle);
pragma Import (C, RestoreDeviceClut, "RestoreDeviceClut", "RestoreDeviceClut");
procedure ResizePalette
(p : in PaletteHandle;
size : in Short_Integer);
pragma Import (C, ResizePalette, "ResizePalette", "ResizePalette");
procedure SaveFore
(c : access ColorSpec);
pragma Import (C, SaveFore, "SaveFore", "SaveFore");
procedure SaveBack
(c : access ColorSpec);
pragma Import (C, SaveBack, "SaveBack", "SaveBack");
procedure RestoreFore
(c : access ColorSpec);
pragma Import (C, RestoreFore, "RestoreFore", "RestoreFore");
procedure RestoreBack
(c : access ColorSpec);
pragma Import (C, RestoreBack, "RestoreBack", "RestoreBack");
function SetDepth
(gd : in GDHandle;
depth : in Short_Integer;
whichFlags : in Short_Integer;
flags : in Short_Integer)
return OSErr;
pragma Import (C, SetDepth, "SetDepth", "SetDepth");
function HasDepth
(gd : in GDHandle;
depth : in Short_Integer;
whichFlags : in Short_Integer;
flags : in Short_Integer)
return Short_Integer;
pragma Import (C, HasDepth, "HasDepth", "HasDepth");
function PMgrVersion
return Short_Integer;
pragma Import (C, PMgrVersion, "PMgrVersion", "PMgrVersion");
procedure SetPaletteUpdates
(p : in PaletteHandle;
updates : in Short_Integer);
pragma Import (C, SetPaletteUpdates, "SetPaletteUpdates", "SetPaletteUpdates");
function GetPaletteUpdates
(p : in PaletteHandle)
return Short_Integer;
pragma Import (C, GetPaletteUpdates, "GetPaletteUpdates", "GetPaletteUpdates");
function GetGray
(device : in GDHandle;
backGround : access RGBColor;
foreGround : access RGBColor)
return Boolean;
pragma Import (C, GetGray, "GetGray", "GetGray");
end Palettes;