ProjectManager
0.2
|
00001 /* 00002 SubprojectsManager.h 00003 00004 Interface declaration of the SubprojectsManager class for the 00005 ProjectManager application. 00006 00007 Copyright (C) 2005, 2006 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 "../../ProjectModule.h" 00025 00026 @class NSDictionary, 00027 NSMutableDictionary, 00028 NSBox, 00029 NSNotification, 00030 NSOutlineView, 00031 NSTableColumn, 00032 NSFileManager; 00033 00034 @class ProjectDocument; 00035 00036 @protocol SubprojectsManagerDelegate; 00037 00038 @interface SubprojectsManager : NSObject <ProjectModule> 00039 { 00040 // weak references 00041 ProjectDocument * document; 00042 id <SubprojectsManagerDelegate> delegate; 00043 00044 id bogusWindow, view; 00045 id outline; 00046 00067 NSMutableArray * subprojects; 00068 // an unsorted list of names of all subproject names 00069 NSMutableArray * subprojectNames; 00070 00071 // file operation errors from the file manager 00072 NSDictionary * fileOpErrorDict; 00073 } 00074 00075 - (NSArray *) subprojectNames; 00076 00077 - (id)outlineView: (NSOutlineView *)outlineView 00078 child: (int)index 00079 ofItem: (id)item; 00080 - (BOOL)outlineView: (NSOutlineView *)outlineView 00081 isItemExpandable: (id)item; 00082 - (int)outlineView: (NSOutlineView *)outlineView 00083 numberOfChildrenOfItem: (id)item; 00084 - (id)outlineView: (NSOutlineView *)outlineView 00085 objectValueForTableColumn:(NSTableColumn *)tableColumn 00086 byItem:(id)item; 00087 - (void)outlineView: (NSOutlineView *)outlineView 00088 setObjectValue: (id)object 00089 forTableColumn: (NSTableColumn *)tableColumn 00090 byItem: (id)item; 00091 00092 - (BOOL) fileManager: (NSFileManager*)fileManager 00093 shouldProceedAfterError: (NSDictionary*)errorDictionary; 00094 00095 - (void) fileManager: (NSFileManager*)fileManager 00096 willProcessPath: (NSString*)path; 00097 00098 - (void) newSubprojectAction: sender; 00099 - (void) addSubprojectAction: sender; 00100 - (void) removeSubprojectAction: sender; 00101 - (void) openSubprojectAction: sender; 00102 - (void) newSubprojectCategoryAction: sender; 00103 - (void) removeSubprojectCategoryAction: sender; 00104 00105 @end