Use the convenience method to determine better defaults for make and gdb

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@37588 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Riccardo Mottola 2014-01-13 10:50:50 +00:00
parent d6cf2a702d
commit f76a08b9a0
3 changed files with 46 additions and 15 deletions

View file

@ -1,3 +1,13 @@
2014-01-13 Riccardo Mottola <rm@gnu.org>
* Framework/PCFileManager.m
* Headers/ProjectCenter/PCFileManager.h
Convenience method to find executables, by Richard Frith-Macdonald
* Modules/Preferences/Build/PCBuildPrefs.m
* Modules/Preferences/Misc/PCMiscPrefs.m
Use the convenience method to determine better defaults for make and gdb.
2013-12-17 Riccardo Mottola <rm@gnu.org> 2013-12-17 Riccardo Mottola <rm@gnu.org>
* Framework/PCProjectLauncher.m * Framework/PCProjectLauncher.m

View file

@ -63,10 +63,6 @@
- (void)dealloc - (void)dealloc
{ {
#ifdef DEBUG
NSLog (@"PCBuildPrefs: dealloc");
#endif
[[NSNotificationCenter defaultCenter] removeObserver:self]; [[NSNotificationCenter defaultCenter] removeObserver:self];
RELEASE(buildingView); RELEASE(buildingView);
@ -74,12 +70,28 @@
[super dealloc]; [super dealloc];
} }
// Protocol // Protocol
- (void)readPreferences - (void)readPreferences
{ {
NSString *val; NSString *val;
BOOL bVal; BOOL bVal;
int state; int state;
NSString *buildToolDefault;
PCFileManager *pcfm = [PCFileManager defaultManager];
/* some heuristic to find the best make default */
buildToolDefault = [pcfm findExecutableToolFrom:
[NSArray arrayWithObjects:
@"usr/local/bin/gmake",
@"usr/bin/gmake",
@"usr/local/bin/make",
@"usr/bin/make",
@"bin/make",
nil]];
NSLog(@"Build tool found: %@", buildToolDefault);
val = [prefs stringForKey:SuccessSound defaultValue:@""]; val = [prefs stringForKey:SuccessSound defaultValue:@""];
[successField setStringValue:val]; [successField setStringValue:val];
@ -89,8 +101,9 @@
val = [prefs stringForKey:RootBuildDirectory defaultValue:@""]; val = [prefs stringForKey:RootBuildDirectory defaultValue:@""];
[rootBuildDirField setStringValue:val]; [rootBuildDirField setStringValue:val];
val = [prefs stringForKey:BuildTool defaultValue:PCDefaultBuildTool]; val = [prefs stringForKey:BuildTool defaultValue:buildToolDefault];
[buildToolField setStringValue:val]; if (val)
[buildToolField setStringValue:val];
bVal = [prefs boolForKey:DeleteCacheWhenQuitting defaultValue:YES]; bVal = [prefs boolForKey:DeleteCacheWhenQuitting defaultValue:YES];
state = bVal ? NSOnState : NSOffState; state = bVal ? NSOnState : NSOffState;

View file

@ -63,10 +63,6 @@
- (void)dealloc - (void)dealloc
{ {
#ifdef DEBUG
NSLog (@"PCMiscPrefs: dealloc");
#endif
[[NSNotificationCenter defaultCenter] removeObserver:self]; [[NSNotificationCenter defaultCenter] removeObserver:self];
RELEASE(miscView); RELEASE(miscView);
@ -80,6 +76,17 @@
NSString *val; NSString *val;
BOOL bVal; BOOL bVal;
int state; int state;
NSString *debuggerToolDefault;
PCFileManager *pcfm = [PCFileManager defaultManager];
/* some heuristic to find the best debugger default */
debuggerToolDefault = [pcfm findExecutableToolFrom:
[NSArray arrayWithObjects:
@"usr/local/bin/gdb",
@"usr/bin/gdb",
@"bin/gdb",
nil]];
NSLog(@"Debugger tool found: %@", debuggerToolDefault);
bVal = [prefs boolForKey:PromptOnQuit defaultValue:YES]; bVal = [prefs boolForKey:PromptOnQuit defaultValue:YES];
state = bVal ? NSOnState : NSOffState; state = bVal ? NSOnState : NSOffState;
@ -101,8 +108,9 @@
state = bVal ? NSOnState : NSOffState; state = bVal ? NSOnState : NSOffState;
[useTearOffWindows setState:state]; [useTearOffWindows setState:state];
val = [prefs stringForKey:Debugger defaultValue:PCDefaultDebugger]; val = [prefs stringForKey:Debugger defaultValue:debuggerToolDefault];
[debuggerField setStringValue:val]; if (val)
[debuggerField setStringValue:val];
val = [prefs stringForKey:Editor defaultValue:@"ProjectCenter"]; val = [prefs stringForKey:Editor defaultValue:@"ProjectCenter"];
[editorField setStringValue:val]; [editorField setStringValue:val];