#include <Global/Main_Global.h>

/* Project Has To Take A Character Pointer */

__saveds	void	Proj_Open(	Object	*Application	)

/*******************************************************/
{

 struct FileRequester *Requester;
 char	*Buffer;
 BPTR	Exists;
 
 Requester = MUI_AllocAslRequestTags( ASL_FileRequest,ASL_Hail,"Open Project.",
 		   		      ASLFR_InitialPattern,"#?.prj",
 				      ASLFR_InitialDrawer,"Projects:",
 				      ASLFR_Window,Get(App->MainWindow->Editor_Window,MUIA_Window_Window),
 				      ASLFR_DoPatterns,FALSE,
 				      ASLFR_RejectIcons,TRUE,
                                      TAG_DONE );
                                  
 if(MUI_AslRequest(Requester,NULL))        
     {        
         Buffer = Allocate_Memory(1024);       
         PrepFileName(Buffer,Requester);                          
         DoMethod(App->ProjWindow,MUIM_Project_Open,Buffer);                                                         	                                        
         Free_Memory(Buffer);        
     }                                     
 MUI_FreeAslRequest(Requester);   

}


__saveds	void	Proj_Close(	Object	*Application	)
/*******************************************************/
{
  DoMethod(Get(App->ProjWindow,MUIA_Project_Lister),MUIM_List_Clear);
  DoMethod(App->ProjWindow,MUIM_Project_Close);    
}


__saveds 	void 	Proj_AddItem( 	Object 	*Application	)
/*******************************************************/
{
 
   struct	FileRequester	*Requester;
   Object	*NewSource;
   BOOL		Dead=FALSE;
   char		*Buffer;
   
   while(!Dead)
   {
  Requester = MUI_AllocAslRequestTags(	ASL_FileRequest,ASL_Hail,"Please Select LoadFile.",  	     				        
       					ASLFR_PositiveText,"Load",ASLFR_NegativeText,"Cancel",
       					ASLFR_InitialDrawer,"Projects:",
       					ASLFR_Window,Get(App->MainWindow->Editor_Window,MUIA_Window_Window),
       					TAG_DONE);
       if(MUI_AslRequest(Requester,NULL))                               
          {          
           Buffer = Allocate_Memory(1024);
           PrepFileName(Buffer,Requester);
           if(!(NewSource = NewObject(App->Source_Class->mcc_Class,NULL,TAG_DONE)))
               MUI_Request(NULL,NULL,NULL, "Warning...","_Continue","Failed To Create Source Class!");
           DoMethod(Get(Application,MUIA_ApplicationObject),OM_ADDMEMBER,NewSource);
          // set(NewSource,MUIA_Source_File,Buffer);
           DoMethod(Get(App->ProjWindow,MUIA_Project_Lister),MUIM_List_InsertSingle,NewSource,MUIV_List_Insert_Top);   
           Free_Memory(Buffer);                     
          }
          else
          Dead=TRUE;
          
     MUI_FreeAslRequest(Requester);
    }
}


__saveds 	void 	Proj_RemItem( 	Object 	*Application	)
/*******************************************************/
{
 DoMethod(Get(App->ProjWindow,MUIA_Project_Lister),MUIM_List_Remove,MUIV_List_Remove_Active);
}





__saveds	void	Enviroment_Prefs( Object *Application	)
/*****************************************************(*/
{
 DoMethod(App->Application,MUIM_Application_OpenConfigWindow,0);
}

