mac-rom/Interfaces/PInterfaces/Dialogs.p
Elliot Nunn 4325cdcc78 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 09:52:23 +08:00

271 lines
8.5 KiB
OpenEdge ABL

{************************************************************
Dialogs.p
Pascal Interface to the Dialog Manager
Copyright Apple Computer, Inc. 1985-1992
All rights reserved
Change History (most recent first):
<17> 12/8/92 JSM SoundProcPtr takes a short, just update the comment in this file
since everything is a ProcPtr here.
<16> 11/7/92 JDR Added the now publicly defined routines, StdFilterProc,
GetStdFilterProc, SetDialogDefaultItem, SetDialogCancelItem,
SetDialogTracksCursor.
<15> 6/26/92 DCL Miner Formatting Changes. Digging deep for things to do. Getting
the file ready for ETO 8.
<14> 4/6/92 DCL For New Inside Mac: Adding fancy new improved names for old
crusty routines. And getting rid of CouldDialog, FreeDialog,
CouldAlert, FreeAlert. #1025005
<13> 8/28/91 CH Updated interface headers for consistency.
<12> 7/24/91 JL Changed param name from theDITL to theHandle in AppendDITL to
match database. Updated copyright notice. Adjusted file to match
database.
<11> 6/25/91 JNG Add dialog manipulation routines from CTBUtilities.p
<10> 1/27/91 LN Checked in Database generate file from DSG.
<9> 12/3/90 RLC <ksm> Remove the private interfaces.
<8> 11/4/90 dba Added UpdateDialog (synonym for UpdtDialog).
<7> 10/10/90 JL Added Inline for SetDAFont
<6> 8/8/90 ngk Add types for procedure pointers
<5> 7/2/90 KSM Remove MarkWindowAsModal.
<4> 6/28/90 KSM Add more new calls.
<3> 6/8/90 KSM Add new DialogMgr dispatched routines.
To Do:
************************************************************}
{$IFC UNDEFINED UsingIncludes}
{$SETC UsingIncludes := 0}
{$ENDC}
{$IFC NOT UsingIncludes}
UNIT Dialogs;
INTERFACE
{$ENDC}
{$IFC UNDEFINED UsingDialogs}
{$SETC UsingDialogs := 1}
{$I+}
{$SETC DialogsIncludes := UsingIncludes}
{$SETC UsingIncludes := 1}
{$IFC UNDEFINED UsingWindows}
{$I $$Shell(PInterfaces)Windows.p}
{$ENDC}
{$IFC UNDEFINED UsingTextEdit}
{$I $$Shell(PInterfaces)TextEdit.p}
{$ENDC}
{$IFC UNDEFINED UsingEvents}
{$I $$Shell(PInterfaces)Events.p}
{$ENDC}
{$SETC UsingIncludes := DialogsIncludes}
CONST
ctrlItem = 4;
btnCtrl = 0;
chkCtrl = 1;
radCtrl = 2;
resCtrl = 3;
statText = 8;
editText = 16;
iconItem = 32;
picItem = 64;
userItem = 0;
itemDisable = 128;
ok = 1;
cancel = 2;
stopIcon = 0;
noteIcon = 1;
cautionIcon = 2;
TYPE
{ Dialog Item List Manipulation Constants }
DITLMethod = INTEGER;
CONST
overlayDITL = 0;
appendDITLRight = 1;
appendDITLBottom = 2;
TYPE
StageList = PACKED RECORD
boldItm4: 0..1; {default button item number - 1}
boxDrwn4: BOOLEAN; {true if alert box to be drawn}
sound4: 0..3; {sound number}
boldItm3: 0..1;
boxDrwn3: BOOLEAN;
sound3: 0..3;
boldItm2: 0..1;
boxDrwn2: BOOLEAN;
sound2: 0..3;
boldItm1: 0..1;
boxDrwn1: BOOLEAN;
sound1: 0..3;
END;
DialogPtr = WindowPtr;
ResumeProcPtr = ProcPtr; { PROCEDURE Resume; }
SoundProcPtr = ProcPtr; { PROCEDURE DoSound(soundNumber: INTEGER); }
ModalFilterProcPtr = ProcPtr; { FUNCTION Filter(theDialog: DialogPtr; VAR theEvent: EventRecord; VAR itemHit: INTEGER): BOOLEAN; }
DialogPeek = ^DialogRecord;
DialogRecord = RECORD
window: WindowRecord;
items: Handle;
textH: TEHandle;
editField: INTEGER;
editOpen: INTEGER;
aDefItem: INTEGER;
END;
DialogTPtr = ^DialogTemplate;
DialogTHndl = ^DialogTPtr;
DialogTemplate = RECORD
boundsRect: Rect;
procID: INTEGER;
visible: BOOLEAN;
filler1: BOOLEAN;
goAwayFlag: BOOLEAN;
filler2: BOOLEAN;
refCon: LONGINT;
itemsID: INTEGER;
title: Str255;
END;
AlertTPtr = ^AlertTemplate;
AlertTHndl = ^AlertTPtr;
AlertTemplate = RECORD
boundsRect: Rect;
itemsID: INTEGER;
stages: StageList;
END;
PROCEDURE InitDialogs(resumeProc: ResumeProcPtr);
INLINE $A97B;
PROCEDURE ErrorSound(soundProc: SoundProcPtr);
INLINE $A98C;
FUNCTION NewDialog(wStorage: Ptr;boundsRect: Rect;title: Str255;visible: BOOLEAN;
procID: INTEGER;behind: WindowPtr;goAwayFlag: BOOLEAN;refCon: LONGINT;
itmLstHndl: Handle): DialogPtr;
INLINE $A97D;
FUNCTION GetNewDialog(dialogID: INTEGER;dStorage: Ptr;behind: WindowPtr): DialogPtr;
INLINE $A97C;
PROCEDURE CloseDialog(theDialog: DialogPtr);
INLINE $A982;
PROCEDURE DisposDialog(theDialog: DialogPtr);
INLINE $A983;
PROCEDURE DisposeDialog(theDialog: DialogPtr);
INLINE $A983;
PROCEDURE ParamText(param0: Str255;param1: Str255;param2: Str255;param3: Str255);
INLINE $A98B;
PROCEDURE ModalDialog(filterProc: ModalFilterProcPtr;VAR itemHit: INTEGER);
INLINE $A991;
FUNCTION IsDialogEvent(theEvent: EventRecord): BOOLEAN;
INLINE $A97F;
FUNCTION DialogSelect(theEvent: EventRecord;VAR theDialog: DialogPtr;VAR itemHit: INTEGER): BOOLEAN;
INLINE $A980;
PROCEDURE DrawDialog(theDialog: DialogPtr);
INLINE $A981;
PROCEDURE UpdateDialog(theDialog: DialogPtr;updateRgn: RgnHandle);
INLINE $A978;
PROCEDURE UpdtDialog(theDialog: DialogPtr;updateRgn: RgnHandle);
INLINE $A978;
FUNCTION Alert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
INLINE $A985;
FUNCTION StopAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
INLINE $A986;
FUNCTION NoteAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
INLINE $A987;
FUNCTION CautionAlert(alertID: INTEGER;filterProc: ModalFilterProcPtr): INTEGER;
INLINE $A988;
PROCEDURE GetDialogItem(theDialog: DialogPtr;itemNo: INTEGER;VAR itemType: INTEGER;
VAR item: Handle;VAR box: Rect);
INLINE $A98D;
PROCEDURE GetDItem(theDialog: DialogPtr;itemNo: INTEGER;VAR itemType: INTEGER;
VAR item: Handle;VAR box: Rect);
INLINE $A98D;
PROCEDURE SetDialogItem(theDialog: DialogPtr;itemNo: INTEGER;itemType: INTEGER;
item: Handle;box: Rect);
INLINE $A98E;
PROCEDURE SetDItem(theDialog: DialogPtr;itemNo: INTEGER;itemType: INTEGER;
item: Handle;box: Rect);
INLINE $A98E;
PROCEDURE HideDialogItem(theDialog: DialogPtr;itemNo: INTEGER);
INLINE $A827;
PROCEDURE HideDItem(theDialog: DialogPtr;itemNo: INTEGER);
INLINE $A827;
PROCEDURE ShowDialogItem(theDialog: DialogPtr;itemNo: INTEGER);
INLINE $A828;
PROCEDURE ShowDItem(theDialog: DialogPtr;itemNo: INTEGER);
INLINE $A828;
PROCEDURE SelectDialogItemText(theDialog: DialogPtr;itemNo: INTEGER;strtSel: INTEGER;
endSel: INTEGER);
INLINE $A97E;
PROCEDURE SelIText(theDialog: DialogPtr;itemNo: INTEGER;strtSel: INTEGER;
endSel: INTEGER);
INLINE $A97E;
PROCEDURE GetDialogItemText(item: Handle;VAR text: Str255);
INLINE $A990;
PROCEDURE GetIText(item: Handle;VAR text: Str255);
INLINE $A990;
PROCEDURE SetDialogItemText(item: Handle;text: Str255);
INLINE $A98F;
PROCEDURE SetIText(item: Handle;text: Str255);
INLINE $A98F;
FUNCTION FindDialogItem(theDialog: DialogPtr;thePt: Point): INTEGER;
INLINE $A984;
FUNCTION FindDItem(theDialog: DialogPtr;thePt: Point): INTEGER;
INLINE $A984;
FUNCTION NewColorDialog(dStorage: Ptr;boundsRect: Rect;title: Str255;visible: BOOLEAN;
procID: INTEGER;behind: WindowPtr;goAwayFlag: BOOLEAN;refCon: LONGINT;
items: Handle): DialogPtr;
INLINE $AA4B;
FUNCTION NewCDialog(dStorage: Ptr;boundsRect: Rect;title: Str255;visible: BOOLEAN;
procID: INTEGER;behind: WindowPtr;goAwayFlag: BOOLEAN;refCon: LONGINT;
items: Handle): DialogPtr;
INLINE $AA4B;
FUNCTION GetAlertStage: INTEGER;
INLINE $3EB8,$0A9A;
FUNCTION GetAlrtStage: INTEGER;
INLINE $3EB8,$0A9A;
PROCEDURE ResetAlertStage;
INLINE $4278,$0A9A;
PROCEDURE ResetAlrtStage;
INLINE $4278,$0A9A;
PROCEDURE DialogCut(theDialog: DialogPtr);
PROCEDURE DlgCut(theDialog: DialogPtr);
PROCEDURE DialogPaste(theDialog: DialogPtr);
PROCEDURE DlgPaste(theDialog: DialogPtr);
PROCEDURE DialogCopy(theDialog: DialogPtr);
PROCEDURE DlgCopy(theDialog: DialogPtr);
PROCEDURE DialogDelete(theDialog: DialogPtr);
PROCEDURE DlgDelete(theDialog: DialogPtr);
PROCEDURE SetDialogFont(fontNum: INTEGER);
INLINE $31DF,$0AFA;
PROCEDURE SetDAFont(fontNum: INTEGER);
INLINE $31DF,$0AFA;
PROCEDURE AppendDITL(theDialog: DialogPtr;theHandle: Handle;method: DITLMethod);
FUNCTION CountDITL(theDialog: DialogPtr): INTEGER;
PROCEDURE ShortenDITL(theDialog: DialogPtr;numberItems: INTEGER);
FUNCTION StdFilterProc(theDialog: DialogPtr;event: EventRecord;VAR itemHit: INTEGER): BOOLEAN;
FUNCTION GetStdFilterProc(VAR theProc: ProcPtr ): OSErr;
INLINE $303C,$0203,$AA68;
FUNCTION SetDialogDefaultItem(theDialog: DialogPtr; newItem: INTEGER): OSErr;
INLINE $303C,$0304,$AA68;
FUNCTION SetDialogCancelItem(theDialog: DialogPtr; newItem: INTEGER): OSErr;
INLINE $303C,$0305,$AA68;
FUNCTION SetDialogTracksCursor(theDialog: DialogPtr; tracks: Boolean):OSErr;
INLINE $303C,$0306,$AA68;
{$ENDC} { UsingDialogs }
{$IFC NOT UsingIncludes}
END.
{$ENDC}