From a5ffeb69ab814618d9b4d77eba3aa2e03b1b9625 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Sat, 1 Sep 2001 22:36:29 +0000 Subject: [PATCH] Added preferences/startup options for division warning and accepting unix-style newlines on input. --- Mac/Include/pythonresources.h | 7 ++++++- Mac/Lib/pythonprefs.py | 12 +++++++----- Mac/Resources/dialogs.rsrc | Bin 18570 -> 19016 bytes Mac/Resources/pythonpath.r | 6 ++++++ Mac/scripts/EditPythonPrefs.py | 16 +++++++++------- Mac/scripts/EditPythonPrefs.rsrc | Bin 10118 -> 9692 bytes 6 files changed, 28 insertions(+), 13 deletions(-) diff --git a/Mac/Include/pythonresources.h b/Mac/Include/pythonresources.h index 9f8b2c452a..01c96ffec4 100644 --- a/Mac/Include/pythonresources.h +++ b/Mac/Include/pythonresources.h @@ -77,6 +77,9 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #define OPT_NOSITE 14 #define OPT_HELP 15 #define OPT_NONAVSERV 16 +#define OPT_VERBOSEVERBOSE 19 +#define OPT_DIVISIONWARN 20 +#define OPT_UNIXNEWLINES 21 /* Dialog for 'No preferences directory' */ #define NOPREFDIR_ID BASE_ID+5 @@ -140,7 +143,7 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #define PYTHONOPTIONS_ID 228 #define PYTHONOPTIONSOVERRIDE_ID 229 -#define POPT_VERSION_CURRENT 7 /* Current version number */ +#define POPT_VERSION_CURRENT 8 /* Current version number */ #define POPT_KEEPCONSOLE_NEVER 0 #define POPT_KEEPCONSOLE_OUTPUT 1 #define POPT_KEEPCONSOLE_ERROR 2 @@ -162,6 +165,8 @@ typedef struct PyMac_PrefRecord { unsigned char nosite; unsigned char nonavservice; unsigned char delayconsole; + unsigned char divisionwarn; + unsigned char unixnewlines; } PyMac_PrefRecord; #endif diff --git a/Mac/Lib/pythonprefs.py b/Mac/Lib/pythonprefs.py index 0ae3e36915..da28d02e83 100644 --- a/Mac/Lib/pythonprefs.py +++ b/Mac/Lib/pythonprefs.py @@ -16,14 +16,14 @@ OVERRIDE_POPT_ID = 229 OVERRIDE_GUSI_ID = 10241 # version -CUR_VERSION=7 +CUR_VERSION=8 preffilename = PstringLoader(AnyResLoader('STR ', resname=PREFNAME_NAME)).load() pref_fss = preferencefile(preffilename, 'Pyth', 'pref') class PoptLoader(VersionLoader): def __init__(self, loader): - VersionLoader.__init__(self, "bbbbbbbbbbbbbb", loader) + VersionLoader.__init__(self, "bbbbbbbbbbbbbbbb", loader) def versioncheck(self, data): if data[0] == CUR_VERSION: @@ -51,7 +51,7 @@ class GusiLoader: newdata = tp + cr + self.data[8:] self.loader.save(newdata) -popt_default_default = NullLoader(chr(CUR_VERSION) + 8*'\0') +popt_default_default = NullLoader(chr(CUR_VERSION) + 14*'\0' + '\001') popt_default = AnyResLoader('Popt', POPT_ID, default=popt_default_default) popt_loader = ResLoader(pref_fss, 'Popt', POPT_ID, default=popt_default) popt = PoptLoader(popt_loader) @@ -85,7 +85,8 @@ class PythonOptions: dict['version'], dict['inspect'], dict['verbose'], dict['optimize'], \ dict['unbuffered'], dict['debugging'], dummy, dict['keep_console'], \ dict['nointopt'], dict['noargs'], dict['tabwarn'], \ - dict['nosite'], dict['nonavservice'], dict['delayconsole'] = flags + dict['nosite'], dict['nonavservice'], dict['delayconsole'], \ + dict['divisionwarn'], dict['unixnewlines'] = flags return dict def save(self, dict): @@ -96,7 +97,8 @@ class PythonOptions: flags = dict['version'], dict['inspect'], dict['verbose'], dict['optimize'], \ dict['unbuffered'], dict['debugging'], 0, dict['keep_console'], \ dict['nointopt'], dict['noargs'], dict['tabwarn'], \ - dict['nosite'], dict['nonavservice'], dict['delayconsole'] + dict['nosite'], dict['nonavservice'], dict['delayconsole'], \ + dict['divisionwarn'], dict['unixnewlines'] self.popt.save(flags) def AppletOptions(file): diff --git a/Mac/Resources/dialogs.rsrc b/Mac/Resources/dialogs.rsrc index 1e219b267459e6d12be38550b2231784da26634e..711bd5b26bc24a62d401f5b564fcd9edb4bc393c 100644 GIT binary patch delta 1101 zcmYLIU2GIp6h3#h(=IiI5S121I892y*h1xj?rvAu#WtaB(iV1Oki?j~JGa{@(>vqL zo$hWlHh>98)U>%gnE0S#!n-!aXaXj_s3B1kc<75E5Pl5WzVP4+SkKIqn9SUJ=A7^R z%sJn=u*818$QB1)7<~u;n*hf4(v1L&uHq^{VfE{=W0~cv`H$H0r-xS9i=#I#?Rod` zy#oW#LXZds-+oqGiC%3T+Q0Dc=rlIn5G^;XIHJGm*ws_WaoTnS)@?O|RbO!B`Z(33 zk4mV}txMr!_iI=lIZ;N@uvG%&Sm(a9WewE~S9I6`(j#3(@q(&vdn)$l5_#CL9h>`2 zT(I0~I47jSAgsRg;4s)%cJ7BvR#Qv%y|x1Vjq?_(r|PrQAH?4 z#ZdtgYxaCpOwg2yH;@9let_g#v1OFm;)>_`dtRo7q|)$w)EM?2{K^(tx+Qfyl*Wc8 z%@%cgwq|||Y4}{vXLp-lk#t3Wk?kJ(j->0X-F$XfRKgm1+z%+b8!9hUiGMG2vJ9MV zZ7n)=-VEZHz3>6c=*QWvgDg+x2{Ly~%A~@$pNVUpU=y&`YEFoG;U~H`AQ-^OByVpm1wA#XtsRXu(%vLPPY(OAJ9ln>b1UO zscm5B#aBD^Uqe0m)=-z;l0T~-4)yev3mXm*xdFQ1BD-V^7~cb93D+SCGSE)86Z*@{ zsK&mn&;7qE0Bui7lgG;~pXjrNQ|2!KnIH9|!l3y(LguF4UwnV3@dqjI$Iithy*T*N6@bB$v33>C0T{EfytclMkR8*zj-2Vu-btL+*8vW9#`52hoXI?e z0_3LjPe(57Or>av!&v<%j3BV31aAC5@XOkL{g!!`z}IwX_#30JwA?n*kaZek{-X)PQZ=f}}e{3BDNz=)dkA*0j0@y(mYBm&E@ zY?1c4Xw#zF*-D2pXw^cHKnXW)k}wKgq$>+IF@5uNbMN7t^ZoFh#c44yB_^win#%#? z0nG#aOF-~fR|y0vXIndKL_4hq+lv8Z7>8MbsKK&m7mgfTS2CvTGY+;5`uf!tIB=a- zeW%o$jD|?~Pu3wqEh)K;bbVF*x5i?}jb}`1$s2>@9p^Jg59xO3j6M0XH+B7XL6J}pTm#IjsPftlbuEnGt^H@XnpV1t? z%?4kfnzqY3ZB8gOdA^Xo)s@iKI@gQfqq0ais`n?(8405|%0(_ri#K9Z`2ZoTvogo^ zRr%?cHP6MdwmT)uZv($BR3V3j?Ab9tGBPtil1fpLw=!MqSrbks_rd^j|8;kCT~Ssj zSU;$)1KyuBTklpkCA@!WtNwxA#(jL(XsE%dz6abh^t8c!dc2)12b&NiQ@N*yv!Zi&k37jvlyd=mT1>$pMDKX4oE#$D^7_Wv%i*?|`Z+ diff --git a/Mac/Resources/pythonpath.r b/Mac/Resources/pythonpath.r index b116f596a8..d599023d64 100644 --- a/Mac/Resources/pythonpath.r +++ b/Mac/Resources/pythonpath.r @@ -26,6 +26,8 @@ type 'Popt' { byte sitePython = 0, noSitePython = 1; byte navService = 0, noNavService = 1; byte noDelayConsole = 0, delayConsole = 1; + byte noDivisionWarning = 0, divisionWarning = 1; + byte noUnixNewlines = 0, unixNewlines = 1; }; type 'TMPL' { @@ -55,6 +57,8 @@ resource 'TMPL' (PYTHONOPTIONS_ID, "Popt") { "No site-python support", 'DBYT', "No NavServices in macfs", 'DBYT', "Delay console window", 'DBYT', + "Warnings for old-style division", 'DBYT', + "Allow unix newlines on textfile input",'DBYT', } }; @@ -75,6 +79,8 @@ resource 'Popt' (PYTHONOPTIONS_ID, "Options") { sitePython, navService, noDelayConsole, + noDivisionWarning, + unixNewlines, }; /* The sys.path initializer */ diff --git a/Mac/scripts/EditPythonPrefs.py b/Mac/scripts/EditPythonPrefs.py index 833e60789b..d9a0c5d3e5 100644 --- a/Mac/scripts/EditPythonPrefs.py +++ b/Mac/scripts/EditPythonPrefs.py @@ -54,6 +54,8 @@ opt_dialog_map = [ "nointopt", "noargs", "delayconsole", + "divisionwarn", + "unixnewlines", ] opt_dialog_dict = {} for i in range(len(opt_dialog_map)): @@ -61,15 +63,15 @@ for i in range(len(opt_dialog_map)): opt_dialog_dict[opt_dialog_map[i]] = i # 1 thru 10 are the options # The GUSI creator/type and delay-console -OD_CREATOR_ITEM = 18 -OD_TYPE_ITEM = 19 +OD_CREATOR_ITEM = 20 +OD_TYPE_ITEM = 21 OD_OK_ITEM = 1 OD_CANCEL_ITEM = 2 -OD_HELP_ITEM = 20 -OD_KEEPALWAYS_ITEM = 14 -OD_KEEPOUTPUT_ITEM = 15 -OD_KEEPERROR_ITEM = 16 -OD_KEEPNEVER_ITEM = 17 +OD_HELP_ITEM = 22 +OD_KEEPALWAYS_ITEM = 16 +OD_KEEPOUTPUT_ITEM = 17 +OD_KEEPERROR_ITEM = 18 +OD_KEEPNEVER_ITEM = 19 def optinteract(options): """Let the user interact with the options dialog""" diff --git a/Mac/scripts/EditPythonPrefs.rsrc b/Mac/scripts/EditPythonPrefs.rsrc index fafc9083d6a96d49d502cc8c062d210214f92c63..321ec4f4dd8234f89733a7ceada1f07dddbd1cab 100644 GIT binary patch literal 9692 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 I<3HH{0*(KmvH$=8 -- 2.50.1