From f044e090c4c8aeed0480fc56fec01e651d811680 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Thu, 26 Dec 2002 22:10:53 +0000 Subject: [PATCH] Changed the input field for the interpreter to use (in the preferences window) to a combobox listing the known interpreters. --- Mac/OSX/PythonLauncher/FileSettings.h | 2 ++ Mac/OSX/PythonLauncher/FileSettings.m | 6 ++++-- .../PreferenceWindow.nib/classes.nib | 4 ++-- .../PreferenceWindow.nib/info.nib | 10 +++++----- .../PreferenceWindow.nib/objects.nib | Bin 4920 -> 7678 bytes .../PreferencesWindowController.h | 5 +++++ .../PreferencesWindowController.m | 16 ++++++++++++++++ .../PythonLauncher.pbproj/project.pbxproj | 14 +++++++++++++- Mac/OSX/PythonLauncher/factorySettings.plist | 5 +++++ 9 files changed, 52 insertions(+), 10 deletions(-) diff --git a/Mac/OSX/PythonLauncher/FileSettings.h b/Mac/OSX/PythonLauncher/FileSettings.h index ea69b58bb192..80c11f1e5274 100755 --- a/Mac/OSX/PythonLauncher/FileSettings.h +++ b/Mac/OSX/PythonLauncher/FileSettings.h @@ -23,6 +23,7 @@ @interface FileSettings : NSObject { NSString *interpreter; // The pathname of the interpreter to use + NSArray *interpreters; // List of known interpreters BOOL debug; // -d option: debug parser BOOL verbose; // -v option: verbose import BOOL inspect; // -i option: interactive mode after script @@ -54,5 +55,6 @@ //- (void)applyUserDefaults: (NSString *)filetype; - (void)applyValuesFromDict: (NSDictionary *)dict; - (void)reset; +- (NSArray *) interpreters; @end diff --git a/Mac/OSX/PythonLauncher/FileSettings.m b/Mac/OSX/PythonLauncher/FileSettings.m index 89772f66b992..b2961d297a8e 100755 --- a/Mac/OSX/PythonLauncher/FileSettings.m +++ b/Mac/OSX/PythonLauncher/FileSettings.m @@ -104,7 +104,6 @@ int i; NSString *filename; NSDictionary *dict; - NSArray *interpreters; static NSDictionary *factorySettings; self = [super init]; @@ -163,6 +162,7 @@ fsdefaults = [FileSettings getFactorySettingsForFileType: filetype]; self = [self initWithFileSettings: fsdefaults]; if (!self) return self; + interpreters = [fsdefaults->interpreters retain]; [self applyUserDefaults: filetype]; prefskey = [filetype retain]; return self; @@ -247,9 +247,11 @@ tabs?" -t":"", others, script, - with_terminal? "&& exit" : " &"]; + with_terminal? "&& echo Exit status: $? && exit 1" : " &"]; } +- (NSArray *) interpreters { return interpreters;}; + // FileSettingsSource protocol - (NSString *) interpreter { return interpreter;}; - (BOOL) debug { return debug;}; diff --git a/Mac/OSX/PythonLauncher/PreferenceWindow.nib/classes.nib b/Mac/OSX/PythonLauncher/PreferenceWindow.nib/classes.nib index 2a07ee11c65f..43a1936d65fa 100644 --- a/Mac/OSX/PythonLauncher/PreferenceWindow.nib/classes.nib +++ b/Mac/OSX/PythonLauncher/PreferenceWindow.nib/classes.nib @@ -2,7 +2,7 @@ IBClasses = ( {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }, { - ACTIONS = {do_apply = id; do_filetype = id; do_reset = id; }; + ACTIONS = {"do_apply" = id; "do_filetype" = id; "do_reset" = id; }; CLASS = PreferencesWindowController; LANGUAGE = ObjC; OUTLETS = { @@ -16,7 +16,7 @@ others = NSTextField; tabs = NSButton; verbose = NSButton; - with_terminal = NSButton; + "with_terminal" = NSButton; }; SUPERCLASS = NSWindowController; } diff --git a/Mac/OSX/PythonLauncher/PreferenceWindow.nib/info.nib b/Mac/OSX/PythonLauncher/PreferenceWindow.nib/info.nib index 952d977cd40c..f5b17b60588b 100644 --- a/Mac/OSX/PythonLauncher/PreferenceWindow.nib/info.nib +++ b/Mac/OSX/PythonLauncher/PreferenceWindow.nib/info.nib @@ -1,16 +1,16 @@ - - + + IBDocumentLocation - 237 -80 356 240 0 0 1280 938 + 126 59 356 240 0 0 1024 746 IBFramework Version - 263.2 + 291.0 IBOpenObjects 5 IBSystem Version - 5S66 + 6G30 diff --git a/Mac/OSX/PythonLauncher/PreferenceWindow.nib/objects.nib b/Mac/OSX/PythonLauncher/PreferenceWindow.nib/objects.nib index 8c3102db5c5a4ac799a68c181fba1153de16a872..f220e5cb142f106a1ba026f0a01d2fd7ecd4cb26 100644 GIT binary patch literal 7678 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 bhm%c7f)&rm>UmX)UlA6lV2)-5fA;!cIJExb literal 4920 zc-oCvYitzP6~1Ge#n_l&Odx>Tjv}N4C{RO48YhJHgNFs!hP5Fn1u~w!Yfn8pv&_t5 zJAbNiW=H*zNY%<7d84YLrL7WD)6}A9yR@a1s*;c^1x1RGkSZa5SSutXBqXbrEYox5 z&b|x|v5a@;%z5AQ_%1c|)@Xu8P0OHC+^)_$LfCPfRb7$Jw(kC)QQ7K{EXgK!9jCS{ z!YL$`<}B?=)6(OdxMkd_3Zp2nMJz+n283}(*tV(1pfPGtO{V5aMT_dg?Yd?ex~fvc zO}UPsZ1g}V)D<~OwWLkhxKpEq!(jr%=YW{Bq<)nK3MVJ)x~)NKoKWbn>2e5Z&s3wAbzE_$MdP+GH=fQo4WPcW6K#ZB6tFWn+0Zj;4eFX0kqsqbxj-TA z7+Foo*v}t7ek`Ow&FVt1$Em3&4Vi8k_ka(qb;hLuiZah}OYMVH9*RrGkn5(L-+O<6 zH>>%Zqsj=4Ml8vquIn_OP3Vcf1p3t~TZ*o=@T@j=MSAc>Thg+0t(~f>UDeD34Z`qg z%uylOrTaWTKELk;p+}z+Vl%Q;-*84UQm_DPf9C)wrn?s7L30_ZuqQhvW3? zfj`0NtN@qz@o(|X<3Yl=`mPA%HKA)!YLM}?b2XjH5N9R&84G@#UuWvl(`W*id+CUE zK%r`M!(YMgy7$FHjN&opqOMiOoX7Eih`J!y_Y{8s}Ue8BuvOB za8BzZ)Uu$?OfjY#VoXt~h`rI`ewIpI_9M(W)iSTmeX;D#CG)S5A=gj6$ze_p& zv3`n|5^)PzW?6Fm-w^-bD%~(_;e;(Tt;1NF)-85s{MIVyc@g$Z?w_ z4-FW4Qj3;lTPQz~6;|;m{^LIB!+KkI+khG~8oxCeD?2rd8VQ5K-?H+#T^`t#qSAyd zyk(Qz8Z6!1nhM2Jg|h*rFC0&5qN0hC*h`JLqDiVa>`&B^fjiC$(^UM~7PiUf8>+?* zy?N~M#f#YOO@%)6CsxFtV%5-Wlan~HhZRd6gpzS9!qvNMVO zl=D=K>rpC7F(8O0Uv5QP51(P{q)k5bZGE`3t;X(zrNou@sMtShQ5lSt^gnur{#Khz z`}(Js*1w@cF>$#Ehau`Q(NrwDBQaXCGy4oX+iWu9+nHI~&JXr$zM0vjPaq6 z7*nMIv&Ai{Tqw;LH`opXHo1a6;b(fLY&&c`XA46R5Wd9ELT~<~d@JC9z;lMY_@m6t zS67ihfgsqzWn1_wD!@-J4ljd1Y?8Kx4{af|5jjE|%bWj_d)*d(c~}?=K_mNp%$xbU zZ;po2=I}10oN6VkjO_)X3~~Jp_M3F(0^+;I0N)+#>nvcrizR$VQol=m{9DM~r3#@J z0-?5`vc(QvPR6OWv@8tIX>UI7&E>t>yvIQ!hrGQso=^ez*~0(E0e>n8X!wwptE*&N z*v+#ymKY&uy1ooEyBuZqNE%f!K{W`O+-yp4YETQLbs4d%FHH&8Z1Rmw>~sp!G2z|G zdXMs6ZN{6=0l;AGNSQ1>f#23K0UB0TM@Su9rtx$enP#X&y%zKz6-_Me<w zd^C;X;)S)Z+CDZ&v{g8*90uVWO;nq{MFJX@U`WReX$BOWJT;h*;2GO&`FW1^0um0i20+4tXA6np zMgDxD5%`s^)FV4{)BYfe>Sqh_w4lhD+&!eP0J?#QwuKwGg~Zw@Rq23K@P2+m_5~gk z1f)bl9SyYHe;V=O(}<6rMx1>baqdatuH3z)I`$=w$a%{nI09s3@e4AxmRNp_XL5HI z>xM;~+3Qq=l{Y%r=@YE~Z8rZZ+g{6>!z}YMyY*vs=S_C|4R&J(>+WWI_p^tuuzPQ@ z*&i|b6LxnmQ+~?!cQW=G)6cSZdRb^2I~if^huF+Mwx^XH?P9G5S-zPq>|wd>Ecy<6 z_avJT*rOIUy@l2OkllZso$6zAyI9>a_F5aeu$6TlVUc4jeull?&d$Bd22L?cVne6d w;iD`YVtvQiz60#$PWE6oJJ!Pv9?tY<2;PuZceb_bvMwDkU;qs3_@6uf2Pq^MivR!s diff --git a/Mac/OSX/PythonLauncher/PreferencesWindowController.h b/Mac/OSX/PythonLauncher/PreferencesWindowController.h index a2a4c74ed6e7..57821c5b37c4 100644 --- a/Mac/OSX/PythonLauncher/PreferencesWindowController.h +++ b/Mac/OSX/PythonLauncher/PreferencesWindowController.h @@ -29,4 +29,9 @@ - (void)controlTextDidChange:(NSNotification *)aNotification; +- (unsigned int)comboBox:(NSComboBox *)aComboBox indexOfItemWithStringValue:(NSString *)aString; +- (id)comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(int)index; +- (int)numberOfItemsInComboBox:(NSComboBox *)aComboBox; + + @end diff --git a/Mac/OSX/PythonLauncher/PreferencesWindowController.m b/Mac/OSX/PythonLauncher/PreferencesWindowController.m index 79344f6a4d04..e7ddfdd7800a 100644 --- a/Mac/OSX/PythonLauncher/PreferencesWindowController.m +++ b/Mac/OSX/PythonLauncher/PreferencesWindowController.m @@ -90,5 +90,21 @@ [self update_display]; }; +// NSComboBoxDataSource protocol +- (unsigned int)comboBox:(NSComboBox *)aComboBox indexOfItemWithStringValue:(NSString *)aString +{ + return [[settings interpreters] indexOfObjectIdenticalTo: aString]; +} + +- (id)comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(int)index +{ + return [[settings interpreters] objectAtIndex: index]; +} + +- (int)numberOfItemsInComboBox:(NSComboBox *)aComboBox +{ + return [[settings interpreters] count]; +} + @end diff --git a/Mac/OSX/PythonLauncher/PythonLauncher.pbproj/project.pbxproj b/Mac/OSX/PythonLauncher/PythonLauncher.pbproj/project.pbxproj index 93bd1ead6b0b..2cfdaf123930 100755 --- a/Mac/OSX/PythonLauncher/PythonLauncher.pbproj/project.pbxproj +++ b/Mac/OSX/PythonLauncher/PythonLauncher.pbproj/project.pbxproj @@ -132,6 +132,7 @@ 4A9504D0FFE6A4CB11CA0CBA, 4A9504D1FFE6A4CB11CA0CBA, ); + hasScannedForEncodings = 1; isa = PBXProject; mainGroup = 2A37F4AAFDCFA73011CA2CEA; projectDirPath = ""; @@ -169,11 +170,13 @@ refType = 4; }; 2A37F4ACFDCFA73011CA2CEA = { + fileEncoding = 30; isa = PBXFileReference; path = MyDocument.m; refType = 4; }; 2A37F4AEFDCFA73011CA2CEA = { + fileEncoding = 30; isa = PBXFileReference; path = MyDocument.h; refType = 4; @@ -190,6 +193,7 @@ refType = 4; }; 2A37F4B0FDCFA73011CA2CEA = { + fileEncoding = 30; isa = PBXFileReference; path = main.m; refType = 4; @@ -400,7 +404,6 @@ "; - shouldUseHeadermap = 1; }; 2A37F4C7FDCFA73011CA2CEA = { buildActionMask = 2147483647; @@ -515,11 +518,13 @@ //F53 //F54 F52A90CD02EB5C6A01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = FileSettings.m; refType = 4; }; F52A90CE02EB5C6A01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = FileSettings.h; refType = 4; @@ -581,6 +586,7 @@ }; }; F5A42167038BDD8E0110C447 = { + fileEncoding = 30; isa = PBXFileReference; path = factorySettings.plist; refType = 4; @@ -603,11 +609,13 @@ }; }; F5A4C14002F2055C01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = PreferencesWindowController.h; refType = 4; }; F5A4C14102F2055C01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = PreferencesWindowController.m; refType = 4; @@ -625,11 +633,13 @@ }; }; F5A4C14402F2070D01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = MyAppDelegate.m; refType = 4; }; F5A4C14502F2070D01000102 = { + fileEncoding = 30; isa = PBXFileReference; path = MyAppDelegate.h; refType = 4; @@ -647,6 +657,7 @@ }; }; F5AA9C6A02F8042D0110C447 = { + fileEncoding = 30; isa = PBXFileReference; path = doscript.h; refType = 4; @@ -670,6 +681,7 @@ }; }; F5AAA21D02F8115D0110C447 = { + fileEncoding = 30; isa = PBXFileReference; path = doscript.m; refType = 4; diff --git a/Mac/OSX/PythonLauncher/factorySettings.plist b/Mac/OSX/PythonLauncher/factorySettings.plist index 5b81d7d4130b..46092b5d443f 100644 --- a/Mac/OSX/PythonLauncher/factorySettings.plist +++ b/Mac/OSX/PythonLauncher/factorySettings.plist @@ -39,6 +39,11 @@ /sw/bin/python /Library/Frameworks/Python.framework/Versions/Current/bin/python /usr/bin/python + /usr/local/bin/pythonw + /sw/bin/pythonw + /Library/Frameworks/Python.framework/Versions/Current/Resources/Python.app/Contents/MacOS/python + /usr/bin/pythonw + /Applications/MacPython-OSX/python-additions/Python.app/Contents/MacOS/python nosite -- 2.47.3