ProjectManager  0.2
FrameworkGeneralAttributes.h
1 /*
2  FrameworkGeneralAttributes.h
3 
4  Interface declaration of the FrameworkGeneralAttributes class for
5  the 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 
27 
28 @class NSView;
29 
30 @class NSTableView, NSTableColumn;
31 
32 @interface FrameworkGeneralAttributes : NSObject
33 {
34  // weak reference
35  FrameworkProjectType * owner;
36 
37  id bogusWindow;
38  id view;
39 
40  id authors;
41  id copyright;
42  id copyrightDescription;
43  id principalClass;
44  id productType;
45  id versionName;
46  id makesCurrentVersion;
47 }
48 
49 - initWithOwner: (FrameworkProjectType *) anOwner;
50 
51 - (void) addAuthor: (id)sender;
52 - (void) changeCopyright: (id)sender;
53 - (void) changeCopyrightDescription: (id)sender;
54 - (void) changePrincipalClass: (id)sender;
55 - (void) changeProductType: sender;
56 - (void) changeMakesCurrentVersion: sender;
57 - (void) changeVersionName: sender;
58 - (void) moveAuthorUp: (id)sender;
59 - (void) moveAuthorDown: (id)sender;
60 - (void) removeAuthor: (id)sender;
61 
62 - (NSView *) view;
63 
64 - (int) numberOfRowsInTableView: (NSTableView *)aTableView;
65 - (id) tableView: (NSTableView *)aTableView
66 objectValueForTableColumn: (NSTableColumn *)aTableColumn
67  row: (int)rowIndex;
68 - (void) tableView: (NSTableView *)aTableView
69  setObjectValue: (id)anObject
70  forTableColumn: (NSTableColumn *)aTableColumn
71  row: (int)rowIndex;
72 
73 @end
+[BundleProjectType(Private) loadCategoryIcons]
void loadCategoryIcons()
Loads all icons for standard categories.
Definition: BundleProjectType.m:119
+[ProjectType-p projectTypeID]
NSString * projectTypeID()
Should return the project type ID.
ProjectDocument
Definition: ProjectDocument.h:43
FrameworkGeneralAttributes
Definition: FrameworkGeneralAttributes.h:32
BundleGeneralAttributes
Definition: BundleGeneralAttributes.h:32
BundleProjectType
Definition: BundleProjectType.h:45
+[ProjectType-p projectTypeDescription]
NSString * projectTypeDescription()
Should return a more detailed description of the project type.
+[ProjectType-p projectTemplateDescriptions]
NSDictionary * projectTemplateDescriptions()
The project type should return a dictionary where keys are project template names and values are desc...
-[ProjectType-p infoDictionary]
NSDictionary * infoDictionary()
Should return the project's info dictionary which is suitable for being written into the project file...
+[ProjectType-p projectTypeIcon]
NSImage * projectTypeIcon()
Should return an icon of the project type (max 48x48 pixels).
SubprojectsManager::subprojectNames
NSMutableArray * subprojectNames
Returns absolute paths to all subprojects.
Definition: SubprojectsManager.h:70
+[ProjectType-p humanReadableProjectTypeName]
NSString * humanReadableProjectTypeName()
Should return a human-readable, perhaps localized descriptive name of the project type.
-[BundleProjectType(Private) prepareInfoFile]
BOOL prepareInfoFile()
Prepares the project's info-plist file.
Definition: BundleProjectType.m:388
-[ProjectType-p regenerateDerivedFiles]
BOOL regenerateDerivedFiles()
Instructs the project to regenerate any of it's derived files, if necessary.
+[ProjectType-p projectModules]
NSArray * projectModules()
Should return an OR'ed set of project capabilities provided by this project type.
FrameworkProjectType
Definition: FrameworkProjectType.h:45
SubprojectsManager
This class is a manager of subprojects for a project.
Definition: SubprojectsManager.h:38
BundleProjectType(Private)
Definition: BundleProjectType.m:97
-[SubprojectsManagerDelegate-p pathToSubprojectsDirectory]
NSString * pathToSubprojectsDirectory()
Asks the delegate to return an absolute path to the directory where the subprojects are to be stored.
-[BundleProjectType(Private) prepareMakefile]
BOOL prepareMakefile()
Prepares the project's makefile.
Definition: BundleProjectType.m:140