ProjectManager
0.2
|
This protocol is adopted by project type support objects. More...
#import <ProjectType.h>
Public Member Functions | |
(id) | - initWithDocument:infoDictionary:projectModules: |
Designated initializer. | |
(NSDictionary *) | - infoDictionary |
Should return the project's info dictionary which is suitable for being written into the project file when saving. | |
(BOOL) | - regenerateDerivedFiles |
Instructs the project to regenerate any of it's derived files, if necessary. | |
(NSString *) | - pathToSubprojectsDirectory |
In case the project type supports subprojects, this method should return a path to a directory where subprojects of the project can be stored. | |
Static Public Member Functions | |
(NSString *) | + projectTypeID |
Should return the project type ID. | |
(NSString *) | + humanReadableProjectTypeName |
Should return a human-readable, perhaps localized descriptive name of the project type. | |
(NSString *) | + projectTypeDescription |
Should return a more detailed description of the project type. | |
(NSImage *) | + projectTypeIcon |
Should return an icon of the project type (max 48x48 pixels). | |
(NSArray *) | + projectModules |
Should return an OR'ed set of project capabilities provided by this project type. | |
(NSDictionary *) | + projectTemplateDescriptions |
The project type should return a dictionary where keys are project template names and values are descriptions of the templates. | |
(NSString *) | + pathToProjectTemplate: |
The receiver should return the path to the location of the project template named `templateName'. |
This protocol is adopted by project type support objects.
Each project has a 'type' which is represented by it's projectType object. This object defines what kind of file categories exist in the project, how to construct the makefile and a bunch of other things.
- (NSDictionary *) infoDictionary |
Should return the project's info dictionary which is suitable for being written into the project file when saving.
- (id) initWithDocument: | (ProjectDocument *) | aProject | |
infoDictionary: | (NSDictionary *) | infoDict | |
projectModules: | (NSArray *) | modules | |
Designated initializer.
This message is sent to a project type object when it is initialized.
aProject | The project which owns the project type. The project type should establish a weak-reference to the project, since the project retains the project type object and a retain cycle would result. |
infoDict | The project type's saved private info dictionary. |
modules | The project's modules. |
In case the project type supports subprojects, this method should return a path to a directory where subprojects of the project can be stored.
- (BOOL) regenerateDerivedFiles |
Instructs the project to regenerate any of it's derived files, if necessary.
This step invoked in situations such as the following: