ProjectManager  0.2
AggregateProjectType.h
00001 /*
00002     AggregateProjectType.h
00003 
00004     Interface declaration of the AggregateProjectType class for the
00005     ProjectManager application.
00006 
00007     Copyright (C) 2005  Saso Kiselkov
00008 
00009     This program is free software; you can redistribute it and/or modify
00010     it under the terms of the GNU General Public License as published by
00011     the Free Software Foundation; either version 2 of the License, or
00012     (at your option) any later version.
00013 
00014     This program is distributed in the hope that it will be useful,
00015     but WITHOUT ANY WARRANTY; without even the implied warranty of
00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017     GNU General Public License for more details.
00018 
00019     You should have received a copy of the GNU General Public License
00020     along with this program; if not, write to the Free Software
00021     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00022 */
00023 
00024 #import <Foundation/NSObject.h>
00025 #import "../../ProjectType.h"
00026 
00027 #import "../../ProjectModules/MakeBuilder/MakeBuilderDelegate.h"
00028 #import "../../ProjectModules/ProjectAttributes/ProjectAttributesDelegate.h"
00029 #import "../../ProjectModules/SubprojectsManager/SubprojectsManagerDelegate.h"
00030 
00031 @class NSString,
00032        NSDictionary,
00033        NSArray,
00034        NSMutableArray,
00035        NSNotification;
00036 
00037 @class ProjectDocument,
00038        MakeBuilder;
00039 
00040 @interface AggregateProjectType : NSObject <ProjectType,
00041                                             ProjectAttributesDelegate,
00042                                             MakeBuilderDelegate,
00043                                             SubprojectsManagerDelegate>
00044 {
00045   unsigned int oldMakeHash;
00046 
00047   // weak reference
00048   ProjectDocument * owner;
00049 
00050   MakeBuilder * builder;
00051 }
00052 
00053 @end