Package Name: dialogs
with Interfaces.C.Extensions; use Interfaces.C.Extensions;
with Interfaces.C.Strings; use Interfaces.C.Strings;
with Types; use Types;
with Quickdraw; use Quickdraw;
with Events; use Events;
with TextEdit; use TextEdit;
with Windows; use Windows;
package Dialogs is
--
-- File: Dialogs.h
--
-- Contains: Dialog Manager interfaces.
--
-- Version: Technology: System 7.5
-- Package: Universal Interfaces 21 in ÒMPW LatestÓ on ETO #18
--
-- Copyright: © 1984-1995 by Apple Computer, Inc.
-- All rights reserved.
--
-- original names for dialog item constants
ctrlItem : constant := 4;
btnCtrl : constant := 0;
chkCtrl : constant := 1;
radCtrl : constant := 2;
resCtrl : constant := 3;
statText : constant := 8;
editText : constant := 16;
iconItem : constant := 32;
picItem : constant := 64;
userItem : constant := 0;
itemDisable : constant := 128;
ok : constant := 1;
cancel : constant := 2;
stopIcon : constant := 0;
noteIcon : constant := 1;
cautionIcon : constant := 2;
-- new, more standard names for dialog item constants
kControlDialogItem : constant := ctrlItem;
kButtonDialogItem : constant := ctrlItem + btnCtrl;
kCheckBoxDialogItem : constant := ctrlItem + chkCtrl;
kRadioButtonDialogItem : constant := ctrlItem + radCtrl;
kResourceControlDialogItem : constant := ctrlItem + resCtrl;
kStaticTextDialogItem : constant := statText;
kEditTextDialogItem : constant := editText;
kIconDialogItem : constant := iconItem;
kPictureDialogItem : constant := picItem;
kUserDialogItem : constant := userItem;
kItemDisableBit : constant := itemDisable;
kStdOkItemIndex : constant := ok;
kStdCancelItemIndex : constant := cancel;
kStopIcon : constant := stopIcon;
kNoteIcon : constant := noteIcon;
kCautionIcon : constant := cautionIcon;
subtype DITLMethod is Short_Integer;
subtype StageList is Short_Integer;
subtype DialogPropertyTag is OSType;
subtype DialogPtr is WindowPtr;
subtype DialogRef is DialogPtr;
type SoundProcPtr is Access procedure
(soundNumber : in Short_Integer);
type ModalFilterProcPtr is access function
(theDialog : in DialogPtr;
theEvent : access EventRecord;
itemHit : access Short_Integer)
return Boolean;
type UserItemProcPtr is Access procedure
(theWindow : in WindowPtr;
itemNo : in Short_Integer);
subtype SoundUPP is UniversalProcPtr;
subtype ModalFilterUPP is UniversalProcPtr;
subtype UserItemUPP is UniversalProcPtr;
uppSoundProcInfo : constant := 16#00000080#; -- PROCEDURE (2 byte param);
uppModalFilterProcInfo : constant := 16#00000FD0#; -- FUNCTION (4 byte param, 4 byte param, 4 byte param): 1 byte result;
uppUserItemProcInfo : constant := 16#000002C0#; -- PROCEDURE (4 byte param, 2 byte param);
type DialogRecord is
record
window : WindowRecord;
items : Handle;
textH : TEHandle;
editField : Short_Integer;
editOpen : Short_Integer;
aDefItem : Short_Integer;
end record;
type DialogPeek is Access DialogRecord;
type DialogTemplate is
record
boundsRect : Rect;
procID : Short_Integer;
visible : Boolean;
filler1 : Boolean;
goAwayFlag : Boolean;
filler2 : Boolean;
refCon : Long_Integer;
itemsID : Short_Integer;
title : Str255;
end record;
type DialogTPtr is Access DialogTemplate;
type DialogTHndl is Access DialogTPtr;
type AlertTemplate is
record
boundsRect : Rect;
itemsID : Short_Integer;
stages : StageList;
end record;
type AlertTPtr is Access AlertTemplate;
type AlertTHndl is Access AlertTPtr;
procedure InitDialogs
(ignored : in Void_Ptr);
pragma Import (C, InitDialogs, "InitDialogs", "InitDialogs");
procedure ErrorSound
(soundProc : in SoundUPP);
pragma Import (C, ErrorSound, "ErrorSound", "ErrorSound");
function NewDialog
(wStorage : in Void_Ptr;
boundsRect : access Rect;
title : access Str255;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
itmLstHndl : in Handle)
return DialogRef;
pragma Import (C, NewDialog, "NewDialog", "NewDialog");
function GetNewDialog
(dialogID : in Short_Integer;
dStorage : in Void_Ptr;
behind : in WindowRef)
return DialogRef;
pragma Import (C, GetNewDialog, "GetNewDialog", "GetNewDialog");
procedure CloseDialog
(theDialog : in DialogRef);
pragma Import (C, CloseDialog, "CloseDialog", "CloseDialog");
procedure DisposeDialog
(theDialog : in DialogRef);
pragma Import (C, DisposeDialog, "DisposeDialog", "DisposeDialog");
procedure ParamText
(param0 : access Str255;
param1 : access Str255;
param2 : access Str255;
param3 : access Str255);
pragma Import (C, ParamText, "ParamText", "ParamText");
procedure ModalDialog
(modalFilter : in ModalFilterUPP;
itemHit : access Short_Integer);
pragma Import (C, ModalDialog, "ModalDialog", "ModalDialog");
function IsDialogEvent
(theEvent : access EventRecord)
return Boolean;
pragma Import (C, IsDialogEvent, "IsDialogEvent", "IsDialogEvent");
function DialogSelect
(theEvent : access EventRecord;
theDialog : access DialogRef;
itemHit : access Short_Integer)
return Boolean;
pragma Import (C, DialogSelect, "DialogSelect", "DialogSelect");
procedure DrawDialog
(theDialog : in DialogRef);
pragma Import (C, DrawDialog, "DrawDialog", "DrawDialog");
procedure UpdateDialog
(theDialog : in DialogRef;
updateRgn : in RgnHandle);
pragma Import (C, UpdateDialog, "UpdateDialog", "UpdateDialog");
function Alert
(alertID : in Short_Integer;
modalFilter : in ModalFilterUPP)
return Short_Integer;
pragma Import (C, Alert, "Alert", "Alert");
function StopAlert
(alertID : in Short_Integer;
modalFilter : in ModalFilterUPP)
return Short_Integer;
pragma Import (C, StopAlert, "StopAlert", "StopAlert");
function NoteAlert
(alertID : in Short_Integer;
modalFilter : in ModalFilterUPP)
return Short_Integer;
pragma Import (C, NoteAlert, "NoteAlert", "NoteAlert");
function CautionAlert
(alertID : in Short_Integer;
modalFilter : in ModalFilterUPP)
return Short_Integer;
pragma Import (C, CautionAlert, "CautionAlert", "CautionAlert");
procedure GetDialogItem
(theDialog : in DialogRef;
itemNo : in Short_Integer;
itemType : access Short_Integer;
item : access Handle;
box : access Rect);
pragma Import (C, GetDialogItem, "GetDialogItem", "GetDialogItem");
procedure SetDialogItem
(theDialog : in DialogRef;
itemNo : in Short_Integer;
itemType : in Short_Integer;
item : in Handle;
box : access Rect);
pragma Import (C, SetDialogItem, "SetDialogItem", "SetDialogItem");
procedure HideDialogItem
(theDialog : in DialogRef;
itemNo : in Short_Integer);
pragma Import (C, HideDialogItem, "HideDialogItem", "HideDialogItem");
procedure ShowDialogItem
(theDialog : in DialogRef;
itemNo : in Short_Integer);
pragma Import (C, ShowDialogItem, "ShowDialogItem", "ShowDialogItem");
procedure SelectDialogItemText
(theDialog : in DialogRef;
itemNo : in Short_Integer;
strtSel : in Short_Integer;
endSel : in Short_Integer);
pragma Import (C, SelectDialogItemText, "SelectDialogItemText", "SelectDialogItemText");
procedure GetDialogItemText
(item : in Handle;
text : access Str255);
pragma Import (C, GetDialogItemText, "GetDialogItemText", "GetDialogItemText");
procedure SetDialogItemText
(item : in Handle;
text : access Str255);
pragma Import (C, SetDialogItemText, "SetDialogItemText", "SetDialogItemText");
function FindDialogItem
(theDialog : in DialogRef;
thePt : in Point)
return Short_Integer;
pragma Import (C, FindDialogItem, "FindDialogItem", "FindDialogItem");
function NewColorDialog
(dStorage : in Void_Ptr;
boundsRect : access Rect;
title : access Str255;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
items : in Handle)
return DialogRef;
pragma Import (C, NewColorDialog, "NewColorDialog", "NewColorDialog");
function GetAlertStage
return Short_Integer;
pragma Import (C, GetAlertStage, "GetAlertStage", "GetAlertStage");
function newdialogC
(wStorage : in Void_Ptr;
boundsRect : access Rect;
title : in Chars_Ptr;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
itmLstHndl : in Handle)
return DialogRef;
pragma Import (C, newdialogC, "newdialog", "newdialog");
function newdialog
(wStorage : in Void_Ptr;
boundsRect : access Rect;
title : in Chars_Ptr;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
itmLstHndl : in Handle)
return DialogRef
renames newdialogC;
function newdialog
(wStorage : in Void_Ptr;
boundsRect : access Rect;
title : in String;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
itmLstHndl : in Handle)
return DialogRef;
function newcolordialogC
(dStorage : in Void_Ptr;
boundsRect : access Rect;
title : in Chars_Ptr;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
items : in Handle)
return DialogRef;
pragma Import (C, newcolordialogC, "newcolordialog", "newcolordialog");
function newcolordialog
(dStorage : in Void_Ptr;
boundsRect : access Rect;
title : in Chars_Ptr;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
items : in Handle)
return DialogRef
renames newcolordialogC;
function newcolordialog
(dStorage : in Void_Ptr;
boundsRect : access Rect;
title : in String;
visible : in Boolean;
procID : in Short_Integer;
behind : in WindowRef;
goAwayFlag : in Boolean;
refCon : in Long_Integer;
items : in Handle)
return DialogRef;
procedure ResetAlertStage;
pragma Import (C, ResetAlertStage, "ResetAlertStage", "ResetAlertStage");
procedure DialogCut
(theDialog : in DialogRef);
pragma Import (C, DialogCut, "DialogCut", "DialogCut");
procedure DialogPaste
(theDialog : in DialogRef);
pragma Import (C, DialogPaste, "DialogPaste", "DialogPaste");
procedure DialogCopy
(theDialog : in DialogRef);
pragma Import (C, DialogCopy, "DialogCopy", "DialogCopy");
procedure DialogDelete
(theDialog : in DialogRef);
pragma Import (C, DialogDelete, "DialogDelete", "DialogDelete");
procedure SetDialogFont
(value : in Short_Integer);
pragma Import (C, SetDialogFont, "SetDialogFont", "SetDialogFont");
procedure paramtextC
(param0 : in Chars_Ptr;
param1 : in Chars_Ptr;
param2 : in Chars_Ptr;
param3 : in Chars_Ptr);
pragma Import (C, paramtextC, "paramtext", "paramtext");
procedure paramtext
(param0 : in Chars_Ptr;
param1 : in Chars_Ptr;
param2 : in Chars_Ptr;
param3 : in Chars_Ptr)
renames paramtextC;
procedure paramtext
(param0 : in String;
param1 : in String;
param2 : in String;
param3 : in String);
procedure getdialogitemtextC
(item : in Handle;
text : in Chars_Ptr);
pragma Import (C, getdialogitemtextC, "getdialogitemtext", "getdialogitemtext");
procedure getdialogitemtext
(item : in Handle;
text : in Chars_Ptr)
renames getdialogitemtextC;
procedure setdialogitemtextC
(item : in Handle;
text : in Chars_Ptr);
pragma Import (C, setdialogitemtextC, "setdialogitemtext", "setdialogitemtext");
procedure setdialogitemtext
(item : in Handle;
text : in Chars_Ptr)
renames setdialogitemtextC;
procedure setdialogitemtext
(item : in Handle;
text : in String);
function finddialogitemC
(theDialog : in DialogRef;
thePt : access Point)
return Short_Integer;
pragma Import (C, finddialogitemC, "finddialogitem", "finddialogitem");
function finddialogitem
(theDialog : in DialogRef;
thePt : access Point)
return Short_Integer
renames finddialogitemC;
procedure AppendDITL
(theDialog : in DialogRef;
theHandle : in Handle;
method : in DITLMethod);
pragma Import (C, AppendDITL, "AppendDITL", "AppendDITL");
function CountDITL
(theDialog : in DialogRef)
return Short_Integer;
pragma Import (C, CountDITL, "CountDITL", "CountDITL");
procedure ShortenDITL
(theDialog : in DialogRef;
numberItems : in Short_Integer);
pragma Import (C, ShortenDITL, "ShortenDITL", "ShortenDITL");
function StdFilterProc
(theDialog : in DialogRef;
event : access EventRecord;
itemHit : access Short_Integer)
return Boolean;
pragma Import (C, StdFilterProc, "StdFilterProc", "StdFilterProc");
function GetStdFilterProc
(theProc : access ModalFilterUPP)
return OSErr;
pragma Import (C, GetStdFilterProc, "GetStdFilterProc", "GetStdFilterProc");
function SetDialogDefaultItem
(theDialog : in DialogRef;
newItem : in Short_Integer)
return OSErr;
pragma Import (C, SetDialogDefaultItem, "SetDialogDefaultItem", "SetDialogDefaultItem");
function SetDialogCancelItem
(theDialog : in DialogRef;
newItem : in Short_Integer)
return OSErr;
pragma Import (C, SetDialogCancelItem, "SetDialogCancelItem", "SetDialogCancelItem");
function SetDialogTracksCursor
(theDialog : in DialogRef;
tracks : in Boolean)
return OSErr;
pragma Import (C, SetDialogTracksCursor, "SetDialogTracksCursor", "SetDialogTracksCursor");
end Dialogs;