DEFINITION MODULE OptDataTypesL {"datatypes.library",-39};
(* 01-Jun-93/bp *)

FROM SYSTEM IMPORT ADDRESS;
FROM IntuitionD IMPORT ObjectPtr,RequesterPtr,WindowPtr;
IMPORT R, d:DataTypesD;

CONST
  datatypesName="datatypes.library";

VAR
  dataTypesVersion:INTEGER;
  dataTypesBase:d.DataTypesBasePtr;


PROCEDURE(*39*) AddDTObject(
                 win{R.A0}:WindowPtr;
                 req{R.A1}:RequesterPtr;
                 o{R.A2}:ObjectPtr;
                 pos{R.D0}:LONGINT
                 ):LONGINT; CODE -72;

PROCEDURE(*39*) DisposeDTObject(
                 o{R.A0}:ObjectPtr
                 ); CODE -54;

PROCEDURE(*39*) DoAsyncLayout(
                 o{R.A0}:ObjectPtr;
                 gpl{R.A1}:ADDRESS
                 ):LONGCARD; CODE -84;

PROCEDURE(*39*) DoDTMethodA(
                 o{R.A0}:ObjectPtr;
                 win{R.A1}:WindowPtr;
                 req{R.A2}:RequesterPtr;
                 msg{R.A3}:ADDRESS
                 ):ADDRESS; CODE -90;
(* keine Doku:
PROCEDURE(*39*) DrawDTObjectA(
                 rp{R.A0}:;
                 o{R.A1}:;
                 x{R.D0}:;
                 y{R.D1}:;
                 w{R.D2}:;
                 h{R.D3}:;
                 th{R.D4}:;
                 tv{R.D5}:;
                 attrs{R.A2}:
                 ):; CODE -126;
*)
PROCEDURE(*39*) GetDTAttrsA(
                 o{R.A0}:ObjectPtr;
                 attrs{R.A2}:ADDRESS
                 ):LONGCARD; CODE -66;

PROCEDURE(*39*) GetDTMethods(
                 object{R.A0}:ObjectPtr
                 ):ADDRESS; CODE -102;

PROCEDURE(*39*) GetDTString(
                 id{R.D0}:LONGCARD
                 ):ADDRESS; CODE -138;

PROCEDURE(*39*) GetDTTriggerMethods(
                 object{R.A0}:ObjectPtr
                 ):ADDRESS; CODE -108;

PROCEDURE(*39*) NewDTObjectA(
                 name{R.D0}:ADDRESS;
                 attrs{R.A0}:ADDRESS
                 ):ObjectPtr; CODE -48;

PROCEDURE(*39*) ObtainDataTypeA(
                 type{R.D0}:LONGCARD;
(* Nicht ADDRESS, sonst implizite Konvertierung bei BPTR: *)
                 handle{R.A0}:LONGCARD;
                 attrs{R.A1}:ADDRESS
                 ):d.DataTypePtr; CODE -36;
(* keine Doku:
PROCEDURE(*39*) ObtainDTDrawInfoA(
                 o{R.A0}:;
                 attrs{R.A1}:
                 ):; CODE -120;
*)
PROCEDURE(*39*) PrintDTObjectA(
                 o{R.A0}:ObjectPtr;
                 w{R.A1}:WindowPtr;
                 r{R.A2}:RequesterPtr;
                 msg{R.A3}:d.dtPrintPtr
                 ):BOOLEAN; CODE -114;

PROCEDURE(*39*) RefreshDTObjectA(
                 o{R.A0}:ObjectPtr;
                 win{R.A1}:WindowPtr;
                 req{R.A2}:RequesterPtr;
                 attrs{R.A3}:ADDRESS
                 ); CODE -78;

PROCEDURE(*39*) ReleaseDataType(
                 dt{R.A0}:d.DataTypePtr
                 ); CODE -42;
(* keine Doku:
PROCEDURE(*39*) ReleaseDTDrawInfo(
                 o{R.A0}:;
                 handle{R.A1}:
                 ):; CODE -132;
*)
PROCEDURE(*39*) RemoveDTObject(
                 win{R.A0}:WindowPtr;
                 o{R.A1}:ObjectPtr
                 ):LONGINT; CODE -96;
(* keine Doku: ist für ARexx!
PROCEDURE(*39*) RLDispatch(
                 rmsg{R.A0}:;
                 result{R.A1}:
                 ):; CODE -30;
*)
PROCEDURE(*39*) SetDTAttrsA(
                 o{R.A0}:ObjectPtr;
                 win{R.A1}:WindowPtr;
                 req{R.A2}:RequesterPtr;
                 attrs{R.A3}:ADDRESS
                 ); CODE -60;

END OptDataTypesL.lib-39
