when creating a new project in PC and do not arbitrarily strip
extensions from the project name.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@31706 72102866-910b-0410-8b05-ffd578937521
* Framework/PCProject.m:
(-assignProjectDict:): Fix setting projectPath to project
dir (not to *.pcproj dir).
* Framework/PCFilemanager.m:
(-filesOfTypes:operation:multiple:title:accView:): Set allowed
file types to panel of types is not nil.
(-panel:isValidFilename): Use set allowed file types to panel.
2010-07-30 Sergii Stoian <stoyan255@ukr.net>
* Framework/PCProject.m:
(-subprojectWithName:): Pass to openProjectAt: subproject dir.
openProjectat: can now handle this situation.
* Framework/PCProjectManager.m:
(-openProjectAt:): Implement handling of 'aPath' argument as
project file and as project dir. Select *.pcproj if exists then
try to load PC.project.
(-openProject): Implement intelligent selection of project file
when selected *.pcproj, PC.project or project dir.
* Framework/PCFilemanager.m:
(-filesOfTypes:operation:multiple:title:accView:): Remove code
specific for opening projects (moved to PCProjectManager's
openProject).
(-panel:isValidFilename): Fix handling project file detection.
(-filesWithExtension:atPath:includeDirs:): New method. Returns
list of files with specified extension. Also returns dirs if
'includeDirs' set to YES.
2010-07-28 Sergii Stoian <stoyan255@ukr.net>
* Framework/PCProject.m:
(close:): Fix closing of subprojects. Remove subproject from
Projectmanager's list of loaded projects.
* Framework/PCLogController.m:
(-init): Change font size to systemFontSize.
2010-07-24 Sergii Stoian <stoyan255@ukr.net>
* Headers/ProjectCenter/PCProjectBuilder.m:
* Framework/PCProjectBuilder.m:
(cleanupAfterMake:): Added new argument (NSString) to method
containing current status text. Before status text in project window
always stated "...terminated".
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@31093 72102866-910b-0410-8b05-ffd578937521
where ProjectCenter would not quit after opening a subproject.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@30721 72102866-910b-0410-8b05-ffd578937521
* Framework/PCProjectManager.m: Fix issue reported with loading of
subprojects from an aggregate project. Changed loadProjectAt: method
to handle both the current and old file locations.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28288 72102866-910b-0410-8b05-ffd578937521
to be key in order to save file. This was causing files in
tear-off editors to not be saved. This change is in the saveFile
method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28260 72102866-910b-0410-8b05-ffd578937521
(dealloc): Replace if() check with TEST_RELEASE.
(openFileAtPath:): Use class variable instead of method's local.
(saveFile): Call saveFile to project editor if project is active and
project window has key state. Call non-project editor manager otherwise.
* PCPrefController.m:
(stringForKey:defaultValue:): Set value to non-existent key only if
defaultValue is not 'nil' ('nil' when called via stringForKey: method).
(boolForKey:defaultValue:): Set value to non-existent key only if
defaultValue has positive value (has '-1' when called via boolForKey: method).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28095 72102866-910b-0410-8b05-ffd578937521
(openProjectAt:): Setactive project to loaded after all initalization
completed.
* Framework/PCProject.m:
(saveProjectWindowsAndPanels): Save project windows and panels
according to preferences setting.
(close:): Remove unsused code.
* Framework/PCProjectBuilder.m: Cleanup.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28087 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
(convertLegacyProject:atPath:): Correctly convert legacy application project.
* Framework/PCEditorManager.m;
(openEditorForFile:editable:windowed:): Don't open lert panel if file is
not text file. Situation when editor for non text files called to be opened
must be reviewd.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@28040 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
(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
bug #25565. There was an extra semi-colon after the if
statement in this method which was causing it to return
before bringing the project window to the fron
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27853 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
(validateMenuItem:): Enable "File" menu items for files opened
witout project. It fixes bug #25311 (now file saved).
* Framework/PCProjectManager.m:
(openFileAtPath:): Call to orderFrontEditorForFile: explicitly because
of last change in PCEditorManager.
* Framework/PCProjectBrowser.m:
(doubleClick:): Do not open file in separate window with PCProjectEditor
not PCProjectManager.
* Framework/PCProjectEditor.m:
(openEditorForCategoryPath:windowed:): Cleanup.
* Framework/PCEditorManager.m:
(openEditorForFile:editable:windowed:): Remove call to
orderFrontEditorForFile:.
* Modules/Editors/ProjectCenter/PCEditor.m:
(_createWindow): Modify default size and position of window.
(openFileAtPath:editorManager:editable:): Remove creation of internal view.
Create it when first requested (editorView and componentView methods).
(windowDidBecomeKey:) No need to set first responder. It seems first responder
remembered by window correctly.
(windowDidResignKey:): Call resignFirstResponder: to notify others.
* Modules/Projects/Application/PCAppProject.m:
(dealloc): TODO added.
* Documentation/TODO: Mark "Finish FileNameIcon..." task as done.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@27807 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
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
(-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