ProjectManager  0.2
FrameworkProjectType.h
1 /*
2  FrameworkProjectType.h
3 
4  Interface declaration of the FrameworkProjectType class for the
5  ProjectManager application.
6 
7  Copyright (C) 2005, 2006 Saso Kiselkov
8 
9  This program is free software; you can redistribute it and/or modify
10  it under the terms of the GNU General Public License as published by
11  the Free Software Foundation; either version 2 of the License, or
12  (at your option) any later version.
13 
14  This program is distributed in the hope that it will be useful,
15  but WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  GNU General Public License for more details.
18 
19  You should have received a copy of the GNU General Public License
20  along with this program; if not, write to the Free Software
21  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 */
23 
24 #import <Foundation/NSObject.h>
25 #import "../../ProjectType.h"
26 
27 #import "../../ProjectModules/MakeBuilder/MakeBuilderDelegate.h"
28 #import "../../ProjectModules/FileManager/FileManagerDelegate.h"
29 #import "../../ProjectModules/ProjectAttributes/ProjectAttributesDelegate.h"
30 #import "../../ProjectModules/SubprojectsManager/SubprojectsManagerDelegate.h"
31 
32 @class NSString,
33  NSDictionary,
34  NSArray,
35  NSMutableArray,
36  NSNotification;
37 
38 @class ProjectDocument,
42 
44 
45 @interface FrameworkProjectType : NSObject <ProjectType,
50 {
51  // weak reference
52  ProjectDocument * owner;
53 
54  FrameworkGeneralAttributes * attributes;
55 
56  NSString * principalClass;
57  NSArray * authors;
58  NSString * copyright;
59  NSString * copyrightDescription;
60 
61  FileManager * fileManager;
62  MakeBuilder * builder;
63 
64  NSString * versionName;
65  BOOL buildsSharedLibrary;
66  BOOL makesCurrentVersion;
67 
68  unsigned int oldMakeHash;
69 }
70 
71 - (void) setPrincipalClass: (NSString *) aClass;
72 - (NSString *) principalClass;
73 
74 - (void) setAuthors: (NSArray *) anArray;
75 - (NSArray *) authors;
76 
77 - (void) setCopyright: (NSString *) aCopyright;
78 - (NSString *) copyright;
79 
80 - (void) setCopyrightDescription: (NSString *) aCopyrightDescription;
81 - (NSString *) copyrightDescription;
82 
83 - (void) setBuildsSharedLibrary: (BOOL) flag;
84 - (BOOL) buildsSharedLibrary;
85 
86 - (void) setVersionName: (NSString *) aName;
87 - (NSString *) versionName;
88 
89 - (void) setMakesCurrentVersion: (BOOL) flag;
90 - (BOOL) makesCurrentVersion;
91 
92 @end
SubprojectsManagerDelegate-p
Definition: SubprojectsManagerDelegate.h:30
ProjectDocument
Definition: ProjectDocument.h:43
FrameworkGeneralAttributes
Definition: FrameworkGeneralAttributes.h:32
GNUstepAppLauncher
Definition: GNUstepAppLauncher.h:48
MakeBuilderDelegate-p
Definition: MakeBuilderDelegate.h:25
FileManagerDelegate-p
This protocol declares what methods should be implemented by a FileManager delegate object.
Definition: FileManagerDelegate.h:43
FileManager
Definition: FileManager.h:92
FrameworkProjectType
Definition: FrameworkProjectType.h:45
ProjectAttributesDelegate-p
Definition: ProjectAttributesDelegate.h:30
MakeBuilder
Definition: MakeBuilder.h:91
ProjectType-p
This protocol is adopted by project type support objects.
Definition: ProjectType.h:40