#include <Global/Main_Global.h>

SAVEDS void Proj_Open( Object *Fishing)
{
 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);               
         if(!(App->ProjWindow = NewObject(App->Project_Class->mcc_Class,NULL,TAG_DONE)))
                 MUI_Request(NULL,NULL,NULL, "Warning...","_Continue","Failed To Create Project Class!");                 
         DoMethod(App->Application,OM_ADDMEMBER,App->ProjWindow);      
                                                              	
         if(Exists = Lock(Buffer,ACCESS_READ))
          {         
          	UnLock(Exists);    
          	Load_Project(Buffer);
          }                                             	          	
          else
            strcat(Buffer,".prj");
            
         set(App->ProjWindow,MUIA_Project_File,Buffer);          
         set(App->ProjWindow,MUIA_Window_Open,TRUE);         
         
         Free_Memory(Buffer);        
     }                                     
  MUI_FreeAslRequest(Requester);  
 
}


SAVEDS void Proj_AddItem( Object *wqw)
{
 
   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!");
           set(NewSource,MUIA_Source_File,Buffer);
           DoMethod(App->Lister,MUIM_List_InsertSingle,NewSource,MUIV_List_Insert_Top);   
           Free_Memory(Buffer);                     
          }
          else
          Dead=TRUE;
          
     MUI_FreeAslRequest(Requester);
    }
}






SAVEDS void Enviroment_Prefs( Object *weq)
{
 DoMethod(App->Application,MUIM_Application_OpenConfigWindow,0);

}

SAVEDS void ProjectMenu_Save( Object *wqw)
{
/*  struct FileRequester *Requester;
  Object *ActiveSource;
  char	*DirName;
  char	*Buffer;


  DoMethod(App->SourceList,MUIM_List_GetEntry,0,&ActiveSource);
  get(ActiveSource,MUIA_Source_FilePath,&DirName);
 
 Requester = AllocAslRequestTags( ASL_FileRequest,ASL_Hail,"Save Project File.",
	 			  ASLFR_InitialDrawer,DirName,
				  ASLFR_PositiveText,"Save",ASLFR_NegativeText,"Cancel",
				  TAG_DONE);
 if(!AslRequest(Requester,NULL))          
            printf("Development Error: 2\a ** UNFINSHED WORK **\n");
          else
          {
          
           Buffer = Allocate_Memory(1024);
           PrepFileName(Buffer,Requester);                      
        
           if(!Save_Project(Buffer))
                printf("Development Error: 2\a ** UNFINSHED WORK **\n");
        
           Free_Memory(Buffer);
     	   FreeAslRequest(Requester);
          }
          
          */
}