options.
* Framework/PCProject.m: Added code to put files into packages when
saving.
* Headers/ProjectCenter/PCProject.h: Added ivar for file wrapper
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28137 72102866-910b-0410-8b05-ffd578937521
(parseCompilerLine:): Implemented gcc output for compiling and linking.
Set currentBuildFile var on file compilation.
(cleanupAfterMake),(build:),(parseBuildLine:),(buildDidTerminate): Update
status field of builder panel and project window.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28126 72102866-910b-0410-8b05-ffd578937521
to NSMutableString.
(buildArguments): Always use messages=yes argument internally.
"Verbose ouput" option (Build Options panel) just toogle if build
shows as with make argument 'messages=yes' or not.
(line:startsWithString:): Implemented line start detection.
(parseMakeLine:): Inital implementation of parsing make tool
output.
(parseCompilerLine:): Add for future implementation.
(logBuildString:newLine:): Remove error: argument as it's not used.
Method outputs to build view.
(parseBuildLine:): Add implementation of entry point of build output
parsing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28125 72102866-910b-0410-8b05-ffd578937521
Category 'Logging' is for general logging methods, 'BuildLogging'
for stantard output processing, 'ErrorLogging' for error output
processing.
(logBuildString:newLine:): New name of logString:error:newLine:.
Use new name across the file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28119 72102866-910b-0410-8b05-ffd578937521
(initWithProject:): Listen to PCProjectDictDidChangeNotification notification.
(awakeFromNib): Move loading of project properties from here...
(loadProjectProperties): ...to here. This is a notification action.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28115 72102866-910b-0410-8b05-ffd578937521
(buildTargets): Return default build targets only if project file
doesn't contains list them.
* Framework/PCProjectBuilder.m:
(prebuildCheck): Create build directory only if preference was set.
(build:): Set initial "=== started ===" string.
* Framework/PCProjectInspector.m:
(createBuildAttributes): Set target and action for table view.
(searchOrderPopupDidChange:): Add support for "Build Targets".
(setSearchOrderButtonsState): Enable "Remove" button only if item in
list was selected.
(syncSearchOrder): Add support for "Build Targets".
* Documentation/TODO: Add some tasks and update status of others.
* Headers/ProjectCenter/PCDefines.h: Add key for build targets support.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28099 72102866-910b-0410-8b05-ffd578937521
* PCPrefController.m: Implemented set/get of preferences value dependent. All
values are stored in preferences as NSString values and converted upon
request to specified type.
* Modules/Preferences/EditorFSC/PCEditorFSCPrefs.m: Use new methods of
PCPrefController. Implemented setting of editor fonts.
(setDefaults): Removed.
* Modules/Preferences/Build/PCBuildPrefs.m,
* Modules/Preferences/Misc/PCMiscPrefs.m,
* Modules/Preferences/Saving/PCSavingPrefs.m: Use new methods of PCPrefController.
(setDefaults): Removed.
* Framework/PCProjectLoadedFiles.m,
* Framework/PCMakefileFactory.m,
* Framework/PCProject.m,
* Framework/PCProjectLauncherPanel.m,
* Framework/PCFileManager.m,
* Framework/PCProjectBrowser.m,
* Framework/PCProjectBuilder.m,
* Framework/PCEditorManager.m,
* Framework/PCProjectLoadedFilesPanel.m,
* Framework/PCProjectLauncher.m,
* Framework/PCProjectBuilderPanel.m,
* Framework/PCProjectWindow.m,
* PCAppController.m,
* Framework/PCProjectManager.m: Use new methods of PCPrefController.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28074 72102866-910b-0410-8b05-ffd578937521
Remove use of preferences code.
(doubleClick:): Change support of external editor (add support for .app
editors).
* Framework/PCProjectWindow.m: Start implementing two-mode handling of
tear-off windows. New handling will support two modes: 1. all windows
are opened inside projet window and 2. Build, Launch/Debug, Loaded Files
(Project Find in future) are opened as tear-off windows. This simplifiles
the code and in my opinion more intuitive then current implementation.
* Modules/Editors/ProjectCenter/PCEditor.m:
(_createWindow): Change window attribute ReleasedWhenClosed to NO.
* PCPrefController.m: Add new parameter 'notify' to method setObject. This
parameter is usefull for situation when open and save panels saves its values.
For example: when project are opened 'Open Project' panel save last opened dir
to PC prefernces and post notificaion about prefs changes. Newly created
objects of projects may lead to PC segfault.
* Modules/Preferences/Build/PCBuildPrefs.m,
* Modules/Preferences/Interface/PCInterfacePrefs.m,
* Modules/Preferences/Saving/PCSavingPrefs.m,
* Modules/Preferences/Misc/PCMiscPrefs.m,
* Framework/PCFileManager: Use new preferences setObject method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28038 72102866-910b-0410-8b05-ffd578937521
as loadable module. See Changelog for details.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27969 72102866-910b-0410-8b05-ffd578937521
(close): Implemented. Closes not only project but also non
project files editors.
* Framework/PCProject.m: Clean and alert panels in various situations.
* Framework/PCProjectEditor.m: Move closeAllEditors, saveEditedFiles:,
saveAllFiles and saveFileAs: methods to PCEditorManager. Use
<CodeEditor> close: methods instead of closeFile:save:.
(saveFileAs:): Use superclass method.
* Framework/PCEditorManager.m: Adopt moved methods.
(modifiedFiles): Implemented. Return array of file paths.
(hasModifiedFiles): Implemented for future use (e.g. prebuild check
in ProjectBuilder).
(reviewUnsaved:): Implemented. Go through modified files' editors
and close which results in opening of alert "Save?" panels.
* PCAppController.m:
(applicationShouldTerminate:): Use PCProjectManager close method
instead of closeAllProjects.
* Modules/Editors/ProjectCenter/PCEditor.m:
(_createWindow): Set "edited" flag according to current state.
(saveFile): Add alert panel on fail.
(closeFile:save:): Rewritten to properly process 'save' flag.
* Headers/Protocols/CodeEditor.h: Added close: method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27873 72102866-910b-0410-8b05-ffd578937521
(click:): Do not call editor if subproject name selected.
(fileNameIconImage): Set "FileProject" icon if subproject name selected.
* Framework/PCProjectManager.m: Remove unused methods projectPath and
selectedFileName.
* Framework/PCFileManager.m: Add alert panels if operation ends with
error.
* Framework/PCMakefileFactory.m: Add alert panels on error of creating
files.
* Framework/PCProjectBuilder.m: Review all situations when alert panels
should be opened. Panels text corrected according to OpenStep UIG.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27864 72102866-910b-0410-8b05-ffd578937521
(showInfoPanel:): Use appController intead of [NSApp delegate].
* GNUmakefile: Change version to 0.5.1.
* Resources/Info-gnustep.plist: ditto.
* Framework/PCProjectManager.m:
(open): Move ordering front project window for here...
(openProjectAt:): to here.
* Framework/PCProjectBrowser.m:
(nameOfSelectedCategory): Edit comment text.
* Framework/PCLogController.m:
(showPanel): Call makeKeyAndOrderFront instead of orderFront.
* Headers/PCInfoController.[hm]:
(showInfoWindow:): Get version info from Info-gnustep.plist.
* PCPrefController.m:
(showPanel:): Call makeKeyAndOrderFront instead of orderFront.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27861 72102866-910b-0410-8b05-ffd578937521
(subprojectNew): Use renamed [projectManager openNewSubprojectPanel]
method.
* Framework/PCProjectManager.m: Change all alert panel names according to
operation performed. Edit messages text of alert panels. Cleanup.
(newSubproject): Rename to openNewSubprojectPanel which is more informative.
(createSubproject): Change method definition to createSubproject:(id)sender
and merge code with old createSubproject:(id)sender.
(controlTextDidChange:): Activate 'Create' button only if subproject with
enetered name doesn't exist in project.
* Framework/PCProjectBrowser.m:
(nameOfSelectedCategory): Fix bug which prevent from removing subprojects.
Now selected category is checked against superproject category list. When
subproject name selected, name of superproject's category is returned. As
side effect ProjectBrowser tries to load editor for selected subproject's
name. Need to fix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27838 72102866-910b-0410-8b05-ffd578937521
Make "Add Files" panel run in modal mode.
* Framework/PCProject.m: Corrections in alert panel names.
* Framework/PCFileCreator.[mh]: Partial rewrite. Check existance of files
wich will be added. Make panel run in modal mode. Add "Add Header File"
option button.
* Documentation/TODO: Update.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27826 72102866-910b-0410-8b05-ffd578937521
(dealloc): Replace DEVELOPMENT with DEBUG
* Framework/PCProjectBrowser.m:
(fileNameIconPath): Implement new method.
* Framework/PCFileNameIcon.m:
(mouseDown:) Finish drag&drop implementation.
(init): Do not set image by default.
(dealloc): Replace DEVELOPMENT with DEBUG.
(setDelegate:): Use ASSIGN.
(updateIcon): Cleanup.
* Framework/English.lproj/ProjectInspector.gorm: Remove
'Hide on deactivate' attribute to panel. It allows drag&drop
operations for external applications (e.g. Workspace).
* Modules/Projects/Application/PCAppProject.*: Use PCFileNameIcon
in inspector to use drag&drop functionality. Cleanup.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27798 72102866-910b-0410-8b05-ffd578937521
* Make modifications to files which use PCPrefController
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27698 72102866-910b-0410-8b05-ffd578937521
* Framework/GNUmakefile: Include PCFileNameField.h and
PCFileNameIcon.h in ProjectCenter_HEADER_FILES as
referenced by PCProjectInspector.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27613 72102866-910b-0410-8b05-ffd578937521
method. Also add it to the launcher dealloc method.
* Headers/ProjectCenter/PCProjectLauncher.h: Add an ivar for the debugger.
* Modules/Debuggers/ProjectCenter/PCDebugger.m: Add dealloc to shut down
the debugger window when it's dealloc.
* Modules/Debuggers/ProjectCenter/PCDebuggerView.m: Don't set status when
terminated, since it causes a crash.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27445 72102866-910b-0410-8b05-ffd578937521
non-project editors. Use PCEditorManager instead. Remove
PCFileManager's dalegate code(FileManagerDelegates category).
(-newFile): Call PCFileCreator's method newFileInProject:.
* Framework/PCFileManager.[mh]: Move code related to creation of
new file in project from here
* Framework/PCFileCreator.[mh]: to here.
(-createFile): Add additional check before adding file to
project (fixes bug #17493).
* Framework/English.lproj/NewFile.gorm: Set owner to PCFileCreator.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@26024 72102866-910b-0410-8b05-ffd578937521
* Headers/ProjectCenter/PCEditormanager.h: Added.
* PCMenuController.m: (-fileSaveAs:): move code to
PCProjectManager.m.
* Headers/ProjectCenter/PCEditorManager.h: New file.
* Framework/PCEditorManager.m: New file. Superclass for
PCProjectEditor.
* Framework/PCProjectManager.m: Use PCEditorManager.
Implement opening files outside of projects (fixes bug #15992).
* Framework/PCProjectLoadedFiles.m: Use PCEditorManager.
* Framework/PCProject.m: (-setProjectManager:): Use new
method of initializing PCProjectEditor.
* Framework/GNUmakefile: Add PCEditorManager.[hm].
* Framework/PCProjectBrowser.m: Made use of
PCProjectEditor's editorForFile: method.
* Framework/PCProjectEditor.m: Remove initializing of extern
variables (moved into PCEditorManager). Use '_componentView'
var instead of 'componentView'. The same with _scrollView and
_project.
(-initWithProject:): renamed into init. Removed code duplicated
with superclass' code.
(-dealloc): Removed code duplicated with superclass' code.
(-editorForFile🔑): Removed. Code moved into superclass'
editorForFile: method.
(-openEditorForCategoryPath:windowed:): Code that determines
existance of file and if file is plain text move into
[super openEditorForFile:editable:windowed:]. Changed file
opening coditions. Made use of [<CodeEditor> fileStructureItemSelected]
method. Code that determines classes and methods in category path
was removed.
(openEditorForFile:categoryPath:editable:windowed:): Removed in favour
of superclass' method.
(activeEditor): Ditto.
(allEditors): Ditto.
(closeActiveEditor:): Ditto.
(closeEditorForFile:): Ditto.
(saveFile): Ditto.
(saveFileTo:): Ditto.
(revertFileToSaved): Ditto.
(editorDidResignActive:): Ditto.
(editorDidChangeFileName:): Ditto.
(closeAllEditors:): Cleanup.
(saveFileAs:): Made use of new -openEditorForFile:editable:windowed:
method.
* Framework/PCProjectWindow.m: Made usage of editorManager method
of <CodeEditor> protocol.
* Modules/Editors/ProjectCenter/PCEditorView.m:
(becomeFirstResponder): Use new -becomeFirstResponder: method of
PCEditor class.
* Modules/Editors/ProjectCenter/PCEditor.h: Change name of var
projectEditor to _editorManager. Add parameter (PCEditorView *)view
to becomeFistResponder and resignFirstResponder methods. Add some
comments.
* Modules/Editors/ProjectCenter/PCEditor.m: Rename method
-openFileAtPath:categoryPath:projectEditor:editable: to
-openFileAtPath:editorManager:editable. Rename -projectEditor method
to -editorManager. Change becomeFistResponder and resignFirstResponder
methods' definitions.
(fileStructureItemSelected:): Add initial implementation of action
code according to the type of selected item.
* Headers/Protocols/CodeEditor.h: Change definition of
-openFileAtPath:categoryPath:projectEditor:editable: mathod to
-openFileAtPath:editorManager:editable. Remove methods
scrollToClassName: and scrollToMethodName:. Rename projectEditor
method into editorManager.
* Headers/ProjectCenter/PCProjectEditor.h: Made PCProjectEditor
as subclass of PCEditorManager. Add prefix '_' to variables.
(-initWithProject:): renamed into init.
(setProject:): Added.
Removed methods and variables duplicated with superclass.
* Headers/ProjectCenter/PCProjectManager.h: Add editorManager var.
(-saveFileAs:): renamed to saveFileAs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@25991 72102866-910b-0410-8b05-ffd578937521
* Headers/ProjectCenter/PCBundleManager.h: Make massive cleaup.
some methods changed, some deleted, some added.
* Framework/PCProjectManager.m,
* Framework/PCProjectEditor.m: Make use of changed PCBundleManager.
* TextFinder.m:
(-enterSelection:): Add sanity check for text variable.
(-jumpToSelection:): Ditto.
* Modules/Parsers/ProjectCenter/Resources/Info.table: Fix value of
"Name" key.
* Headers/Protocols/CodeEditor.h: Remove declaration of
openExternalEditor:withPath:projectEditor: method. It will be provided
by Custom.editor bundle (will be added soon).
* Headers/ProjectCenter/PCProjectEditor.h: Cleanup.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@25504 72102866-910b-0410-8b05-ffd578937521
(-preferencesDidChange:): Show Builder and Launcher panels only
they are visible in project window (fixes bug #20858).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@25423 72102866-910b-0410-8b05-ffd578937521
(-filesForOpenOfType:multiple:title:accView:): Removed
(-fileForSaveOfType:title:accView:): Removed.
(-filesForAddOfTypes:): Removed.
(-filesOfTypes:operation:multiple:title:accView:): Implemented.
Replaces removed methods.
(-_panelForOperation:title:accView:): New method. Returns panel
for specified operation type.
(-_saveLastDirectoryForPanel:): New method. Saves last opened
directory for operation type (panel).
(-panel:isValidFilename:): Validate directory as correct filename
if project is opening and directory has PC.project file.
* Headers/ProjectCenter/PCFileManager.h: Added new variable 'operation'
and declaraion of new mathods.
* Framework/PCProjectManager.m: Use new methods of PCFileManager.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@25422 72102866-910b-0410-8b05-ffd578937521
* Framework/PCProjectr.m: Ditto.
* Framework/PCMakefileFactory.m: Support for root build directory added.
* Framework/PCProjectBuilder.m: Code cleanup.
* Framework/PCProjectEditor.m: Enable usage of parser. Start testing process.
* Framework/PCProjectWindows.m: Enable tooltips for buttons.
* Framework/PCPrefController.m: setRootBuildDir: fix.
* PCAppController.m: applicationWillTerminate: Remove file from build dir on
application quit. This code still needs review (also removed build dir because of
use PCFileManager's method).
* Modules/Editors/ProjectCenter/PCEditor.m: browserItemsForItem: Crashes if file
is not supported by parser. Fixed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@24353 72102866-910b-0410-8b05-ffd578937521