@database "picture_dtc"

@Node Main "picture_dtc.doc"
@toc "Includes_&_Autodocs/Main"
    @{" picture.datatype() " Link "picture.datatype()"}
@EndNode

@Node "picture.datatype()" "picture.datatype/picture.datatype"

@{b}    NAME@{ub}
	picture.datatype -- root data type for pictures.

@{b}    FUNCTION@{ub}
	The picture.datatype is the super-class for any picture related
	classes.

@{b}    METHODS@{ub}
	OM_NEW -- Create a new picture object.

	OM_GET -- Obtain the value of an attribute.

	OM_SET -- Set the values of multiple attributes.

	OM_UPDATE -- Update the values of multiple attributes.

	OM_DISPOSE -- Dispose of a picture object.

	GM_LAYOUT -- Layout the object and notify the application of the
	    title and size.

	GM_HITTEST -- Determine if the object has been hit with the
	    mouse.

	GM_GOACTIVE -- Tell the object to go active.

	GM_HANDLEINPUT -- Handle input.

	GM_RENDER -- Cause the graphic to render.

	DTM_PROCLAYOUT -- Layout (remap) the picture on the application's
	    process.

	DTM_FRAMEBOX -- Obtain the display environment that the picture
	    requires.

	DTM_SELECT -- Select an area in the picture.

	DTM_CLEARSELECTED -- Deselect the selected area of the picture.

	DTM_COPY -- Copy the selected area of the picture to the clipboard
	    as an ILBM.  If no area is selected, then the entire picture
	    is copied.

	DTM_PRINT -- Print the selected area of the picture.  If no area
	    is selected, then the entire picture is printed.

	DTM_WRITE -- Write the selected area of the picture to a file as an
	    ILBM.  If no area is selected, then the entire picture is
	    saved.

@{b}    TAGS@{ub}
	OBP_Precision (ULONG) -- Precision to use when obtaining colors.
	    See the PRECISION_ defines in @{"<graphics/view.h>" Link "includes/graphics/view.h/Main" 0}.

	    Applicability is (I).

	PDTA_ModeID (ULONG) -- Set and get the graphic mode id of the
	    picture.

	    Applicability is (ISG).

	PDTA_BitMapHeader (struct @{"BitMapHeader" Link "includes/datatypes/pictureclass.h/Main" 94} *) -- Set and get the
	    base information for the picture.  @{"BitMapHeader" Link "includes/datatypes/pictureclass.h/Main" 94} is defined in
	    @{"<datatypes/pictureclass.h>" Link "includes/datatypes/pictureclass.h/Main" 0}

	    Applicability is (G).

	PDTA_BitMap (struct @{"BitMap" Link "includes/graphics/gfx.h/Main" 45} *) -- Pointer to a class-allocated
	    bitmap, that will end up being freed by the picture class in the
	    OM_DISPOSE method.

	    Applicability is (ISG).

	PDTA_ColorRegisters (struct @{"ColorRegister" Link "includes/datatypes/pictureclass.h/Main" 114} *) -- Color table.

	    Applicability is (G).

	PDTA_CRegs (ULONG *) -- Color table to use with @{"SetRGB32CM()" Link "graphics/SetRGB32CM()"}.

	    Applicability is (G).

	PDTA_GRegs (ULONG *) -- Color table.

	    Applicability is (G).

	PDTA_ColorTable (ULONG *) -- Shared pen table.

	    Applicability is (G).

	PDTA_ColorTable2 (ULONG *) -- Shared pen table.

	    Applicability is (G).

	PDTA_Allocated (ULONG) --  Number of shared colors allocated.

	    Applicability is (G).

	PDTA_NumColors (WORD) -- Number of colors used by the picture.

	    Applicability is (ISG).

	PDTA_NumAlloc (WORD) -- Number of colors allocated by the picture.

	    Applicability is (G).

	PDTA_Remap (BOOL) -- Indicate whether the picture should be
	    remapped or not.

	    Applicability is (I).

	PDTA_Screen (struct @{"Screen" Link "includes/intuition/screens.h/Main" 132} *) -- Pointer to the screen to remap
	    the picture to.  Only used if the object is not going to be
	    added to a window.

	    Applicability is (IS).

	PDTA_FreeSourceBitMap (BOOL) -- Indicate whether the source
	    bitmap should be freed immediately by the picture.datatype
	    after the GM_LAYOUT method is called.

	    Applicability is (IS).

	PDTA_Grab (Point *) -- Pointer to a Point structure, that
	    defines the grab point of the picture.

	    Applicability is (ISG).

	PDTA_DestBitMap (struct @{"BitMap" Link "includes/graphics/gfx.h/Main" 45} *) -- Pointer to the remapped
	    bitmap.

	    Applicability is (G).

	PDTA_ClassBitMap (struct @{"BitMap" Link "includes/graphics/gfx.h/Main" 45} *) --

	    Applicability is (ISG).

	PDTA_NumSparse (UWORD) -- Number of entries in the sparse color
	    table.

	    Applicability is (I).

	PDTA_SparseTable (UBYTE *) -- Pointer to a table of pen numbers
	    indicating which colors should be used when remapping the
	    picture.  This array must contain as many entries as indicated
	    by the PDTA_NumSparse tag.

	    Applicability is (I).

@EndNode

