// MPMorph - Amiga Morphing program
// Copyright (C) © 1993  Topicsave Limited

// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

// mpaddock@cix.compulink.co.uk

/*
 *  Source machine generated by GadToolsBox V2.0
 *  which is (c) Copyright 1991-1993 Jaba Development
 *
 *  GUI Designed by : M J P
 */

// Some editing by MJP
// e.g. joined together, a few lines added etc.

#define GetString( g )      ((( struct StringInfo * )g->SpecialInfo )->Buffer  )
#define GetNumber( g )      ((( struct StringInfo * )g->SpecialInfo )->LongInt )

#define GD_GetFile1                            0
#define GD_GetFile2                            1
#define GD_Width                               2
#define GD_Height                              3
#define GD_GetFileOne                          4
#define GD_GetFileTwo                          5
#define GD_EditPoints                          6
#define GD_SinglePicture                       7
#define GD_GetSaveName                         8
#define GD_FileOne                             9
#define GD_FileTwo                             10
#define GD_File241                             11
#define GD_File242                             12
#define GD_Frames                              13
#define GD_Start                               14
#define GD_Name                                15
#define GD_Help										  16
#define GD_SetSize									  17
#define GD_Scale										  18

#define GDX_GetFile1                           0
#define GDX_GetFile2                           1
#define GDX_Width                              2
#define GDX_Height                             3
#define GDX_GetFileOne                         4
#define GDX_GetFileTwo                         5
#define GDX_EditPoints                         6
#define GDX_SinglePicture                      7
#define GDX_GetSaveName                        8
#define GDX_FileOne                            9
#define GDX_FileTwo                            10
#define GDX_File241                            11
#define GDX_File242                            12
#define GDX_Frames                             13
#define GDX_Start                              14
#define GDX_Name                               15
#define GDX_Help										  16
#define GDX_SetSize									  17
#define GDX_Scale										  18

#define MPMorph_CNT 19

extern struct IntuitionBase *IntuitionBase;
extern struct Library       *GadToolsBase;

extern struct Screen        *Scr;
extern UBYTE                 *PubScreenName;
extern APTR                  VisualInfo;
extern struct Window        *MPMorphWnd;
extern struct Gadget        *MPMorphGList;
extern struct Menu          *MPMorphMenus;
extern struct IntuiMessage   MPMorphMsg;
extern UWORD                 MPMorphZoom[4];
extern struct Gadget        *MPMorphGadgets[19];
extern struct IClass        *getClass;
extern struct _Object       *getImage;
extern UWORD                 MPMorphLeft;
extern UWORD                 MPMorphTop;
extern UWORD                 MPMorphWidth;
extern UWORD                 MPMorphHeight;
extern const char				  Version[];
//extern UBYTE                *MPMorphWdt;
extern struct TextAttr      *Font, Attr;
extern UWORD                 FontX, FontY;
extern UWORD                 OffX, OffY;
extern struct NewMenu        MPMorphNewMenu[];
extern UWORD                 MPMorphGTypes[];
extern struct NewGadget      MPMorphNGad[];
extern ULONG                 MPMorphGTags[];

// Bottom of Help Gadget
extern int							BottomHelp;
extern UBYTE					 *SinglePictureLabels[];

extern int GetFile1Clicked( void );
extern int GetFile2Clicked( void );
extern int GetFileOneClicked( void );
extern int GetFileTwoClicked( void );
extern int EditPointsClicked( void );
extern int SinglePictureClicked( void );
extern int GetSaveNameClicked( void );
extern int FileOneClicked( void );
extern int FileTwoClicked( void );
extern int File241Clicked( void );
extern int File242Clicked( void );
extern int FramesClicked( void );
extern int StartClicked( void );
extern int NameClicked( void );
extern int SetSizeClicked( void );
extern int ScaleClicked( void );
extern int MPMorphMenuNew( void );
extern int MPMorphMenuOpen( void );
extern int MPMorphMenuSave( void );
extern int MPMorphMenuSaveAs( void );
extern int MPMorphMenuDelete( void );
extern int MPMorphMenuAbout( void );
extern int MPMorphMenuQuit( void );
extern int MPMorphMenuEditPoints( void );
extern int MPMorphMenuRecent1( void );
extern int MPMorphMenuRecent2( void );
extern int MPMorphMenuRecent3( void );
extern int MPMorphMenuRecent4( void );
extern int MPMorphMenuRecent5( void );

extern int SetupScreen( void );
extern void CloseDownScreen( void );
extern int HandleMPMorphIDCMP( void );
extern int MPMorphCloseWindow(void);
extern int MPMorphMenuHelp(void);
extern int MPMorphVanillaKey(void);
extern int MPMorphRawKey(void);
extern int OpenMPMorphWindow( void );
extern void CloseMPMorphWindow( void );
