{ gemsubs.pas } FUNCTION Init_Gem : integer ; EXTERNAL ; PROCEDURE Exit_Gem ; EXTERNAL ; FUNCTION Do_Alert( alert : Str255 ; def_btn : integer ) : integer ; EXTERNAL ; PROCEDURE Obj_SetState( dial : Dialog_Ptr ; index : Tree_Index ; state : integer ; redraw : boolean ) ; EXTERNAL ; FUNCTION Obj_State( dial : Dialog_Ptr ; index : Tree_Index ) : integer ; EXTERNAL ; FUNCTION Obj_Flags( dial : Dialog_Ptr ; index : Tree_Index ) : integer ; EXTERNAL ; PROCEDURE Obj_SetFlags( dial : Dialog_Ptr; index : Tree_Index; flags : INTEGER ); EXTERNAL; FUNCTION Get_In_File( VAR path, name : Path_Name ) : boolean ; EXTERNAL ; FUNCTION Get_Out_File( prompt : Str255 ; VAR name : Path_Name ) : boolean ; EXTERNAL ; PROCEDURE Draw_Menu( menu : Menu_Ptr ) ; EXTERNAL ; PROCEDURE Erase_Menu( menu : Menu_Ptr ) ; EXTERNAL ; PROCEDURE Menu_Hilight( menu : Menu_Ptr ; title : Tree_Index ) ; EXTERNAL ; PROCEDURE Menu_Normal( menu : Menu_Ptr ; title : Tree_Index ) ; EXTERNAL ; PROCEDURE Menu_Check(menu : Menu_Ptr ; item : Tree_Index ; checked : boolean ); EXTERNAL ; PROCEDURE Menu_Enable( menu : Menu_Ptr ; item : Tree_Index ) ; EXTERNAL ; PROCEDURE Menu_Disable( menu : Menu_Ptr ; item : Tree_Index ) ; EXTERNAL ; PROCEDURE Menu_Text(menu : Menu_Ptr ; item : Tree_Index ; mtext : Str255); EXTERNAL ; FUNCTION New_Window( w_type : integer ; VAR title : Window_Title ; x_max, y_max, w_max, h_max : integer ) : integer ; EXTERNAL ; PROCEDURE Open_Window( handle : integer ; x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Close_Window( handle : integer ) ; EXTERNAL ; PROCEDURE Delete_Window( handle : integer ) ; EXTERNAL ; PROCEDURE Set_WSize( handle, x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Set_WName( handle : integer ; VAR title : Window_Title ) ; EXTERNAL ; PROCEDURE Set_WInfo( handle : integer ; VAR info : Window_Title ) ; EXTERNAL ; PROCEDURE Border_Rect( wind : integer ; VAR x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Work_Rect( wind : integer ; VAR x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE First_Rect( wind : integer ; VAR x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Next_Rect( wind : integer ; VAR x, y, w, h : integer ) ; EXTERNAL ; FUNCTION Rect_Intersect ( x1, y1, w1, h1 : integer; VAR x2, y2, w2, h2 : integer ) : boolean ; EXTERNAL ; FUNCTION Front_Window : integer ; EXTERNAL ; PROCEDURE Bring_To_Front( handle : integer ) ; EXTERNAL ; PROCEDURE Set_Window( handle : integer ) ; EXTERNAL ; FUNCTION Get_Window : integer ; EXTERNAL ; PROCEDURE Set_Clip( x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Draw_Mode( mode : Draw_Modes ) ; EXTERNAL ; PROCEDURE Set_Color( reg : Color_Reg ; red, green, blue : integer ) ; EXTERNAL ; PROCEDURE Line_Color( color : Color_Reg ) ; EXTERNAL ; PROCEDURE Line_Style( style : Line_Types ) ; EXTERNAL ; PROCEDURE Plot( x, y : integer ) ; EXTERNAL ; PROCEDURE Paint_Color( color : Color_Reg ) ; EXTERNAL ; PROCEDURE Paint_Style( style : integer ) ; EXTERNAL ; PROCEDURE Paint_Outline( on : boolean ) ; EXTERNAL ; PROCEDURE Text_Color( color : Color_Reg ) ; EXTERNAL ; PROCEDURE Text_Style( style : integer ) ; EXTERNAL ; PROCEDURE Line( x1, y1, x2, y2 : integer ) ; EXTERNAL ; PROCEDURE Paint_Rect( x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Paint_Round_Rect( x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Frame_Round_Rect( x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Frame_Rect( x, y, w, h : integer ) ; EXTERNAL ; PROCEDURE Draw_String( x, y : integer ; s : Str255 ) ; EXTERNAL ; PROCEDURE Set_MForm( VAR form : Mouse_Form ) ; EXTERNAL ; PROCEDURE Set_Mouse( m_type : Mouse_Type ) ; EXTERNAL ; PROCEDURE Hide_Mouse ; EXTERNAL ; PROCEDURE Show_Mouse ; EXTERNAL ; FUNCTION Get_Event( emask, bmask, bstate, n_clicks : integer ; ticks : long_integer ; m1_flag : boolean ; m1x, m1y, m1w, m1h : integer ; m2_flag : boolean ; m2x, m2y, m2w, m2h : integer ; VAR message : Message_Buffer ; VAR key, brtn, bclick, mx, my, kstate : integer ) : integer ; EXTERNAL ; PROCEDURE Begin_Update ; EXTERNAL ; PROCEDURE End_Update ; EXTERNAL ; PROCEDURE Begin_Mouse; EXTERNAL; PROCEDURE End_Mouse; EXTERNAL; PROCEDURE Wind_Get( handle, request : integer ; VAR v1, v2, v3, v4 : integer ); EXTERNAL ; PROCEDURE Wind_Set( handle, request, v1, v2, v3, v4 : integer ) ; EXTERNAL ; PROCEDURE Clear_Screen ; EXTERNAL ; FUNCTION Load_Resource( fn : Str255 ) : boolean ; EXTERNAL ; PROCEDURE Find_Menu( index : integer ; VAR menu : Menu_Ptr ) ; EXTERNAL ; PROCEDURE Find_Dialog( index : integer ; VAR dial : Dialog_Ptr ) ; EXTERNAL ; PROCEDURE Find_Alert( index : integer ; VAR alert : Str255 ) ; EXTERNAL ; PROCEDURE Free_Resource ; EXTERNAL ; FUNCTION IO_State : Boolean ; EXTERNAL ; FUNCTION IO_Result : Short_Integer ; EXTERNAL ; PROCEDURE IO_Check ( YesNo : Boolean ) ; EXTERNAL ; PROCEDURE Obj_Draw ( dial : Dialog_Ptr; index,depth : INTEGER; x_clip,y_clip,w_clip,h_clip : INTEGER ); EXTERNAL; PROCEDURE Obj_Size ( dial: Dialog_Ptr; index: INTEGER; VAR x,y,w,h: INTEGER ); EXTERNAL; { end of Pascal standard library }