Commit Graph

73 Commits

Author SHA1 Message Date
Jack Jansen 4b517854d0 In MachoPython, don't simulate argc/argv unless we have argc=1 and argv[1]
starts with "-psn_". This means the drag-and-drop continues to work as
expected, but we can now also do
/Applications/Python.app/Contents/MacOS/python script.py
from the command line, which is a lot easier with debugging. Pressing <option>
at this point also has the expected effect of opening the options dialog!
2002-01-02 22:53:38 +00:00
Just van Rossum ab57c7dcfc Moved macfsn hackery from macmain.c to macfsmodule.c so it loads
on demand instead of at startup.
2001-10-31 22:55:08 +00:00
Jack Jansen 5ded1bf5c7 Mod by Donovan Preston to allow MacPython to live in a Python.app bundle and understand the __main__.py convention used there for applets. This gives us applets that work on both OS9 and OSX! (Although "applet" may not be the correct word for something that is going to be multimegabyte:-).
But: the code is currently disabled, as it requires CodeWarrior 7 and I'm still using 6.
2001-10-30 22:48:36 +00:00
Jack Jansen 998a40a6d4 Mods by Donovan Preston (with changes by me to make them "go with the flow")
that will detect an __main__.py or __rawmain__.py in the application bundle.
This file is then exectued as the main script. We now have applets in
MachO Python!!!

The difference between __main__ and __rawmain__ is that the former gets a
complete simulated argv (so you can drop files on the applet and the script
sees them in sys.argv) while the latter skips the argv simulation and the
<option>key dialog. This keeps the AppleEvent that started the app intact,
as well as the funny "-psn_xxxx" argv[1] argument, so the script can do
with these what it wants.
2001-09-11 13:08:10 +00:00
Jack Jansen 6438e1d280 Failing to import macfsn is not a fatal error. 2001-09-11 11:29:31 +00:00
Jack Jansen dff7770b7f Changes to make these work under OSX as the main program for a
fullblown drag and drop application. To my surprise it is starting
to work already: Python actually executes a script dropped on it.

To be done:
- Make sure this still works in MacPython
- Don't lose argv[0] in the process
- Applet support
2001-09-05 22:07:52 +00:00
Jack Jansen ff5d8aaa28 Added preferences/startup options for division warning
and accepting unix-style newlines on input.

Also (finally) added a startup option to get -vv behaviour.

Moved __convert_to_newlines to main.c because that's easier with the newline option.
2001-09-01 22:37:54 +00:00
Jack Jansen cbed91b4db Merging appropriate 2.1.1 fixes back into the main trunk. 2001-08-03 13:31:36 +00:00
unknown d1054ef31a Set the default 8-bit encoding based on the system script and language. 2001-07-04 22:37:19 +00:00
Jack Jansen 15f1c08d96 - Raise console window on input. Fixes Carbon hang.
- Better handling of menu bar save/restore.
- Override abort() so it honours the "keep console window" flag.
2001-04-25 22:07:27 +00:00
Jack Jansen 657ba27dde More changes to attempt to get the menubar back on exit. Without success:-( 2001-02-17 22:02:07 +00:00
Jack Jansen 8a38714ba0 Bit the bullet and added a private GUSISIOUX for Python. This makes the delayconsole and keepopen code neater. Also tells Sioux to behave better with events, and handles cmd-. during print better. The pythonpreferences have also changed due to this. 2001-02-11 01:08:04 +00:00
Jack Jansen c00df0bbba Trigger keep-console-open on GUSISIOUX_STATE_UNKNOWN. Better than the previous complicated expression. 2001-01-16 15:54:58 +00:00
Jack Jansen 264630e855 When compiling for GUSI and Carbon disable te "keep open on unseen output", for the time being. 2001-01-11 23:04:32 +00:00
Jack Jansen 6ff228c6d2 If we're not using GUSI the "keep open on unseen output" becomes the same as "always keep open". 2001-01-09 22:24:06 +00:00
Jack Jansen 8413b47ba7 Added PyMac_OutputSeen(), which acknowledges all current output in the stdio window, i.e. it acts like input has been read insofar as the keep-console-open option is interested. 2000-10-19 22:02:16 +00:00
Jack Jansen dc86f9ebf9 Made options global (as PyMac_options) so macosmodule can access it. 2000-10-12 21:23:19 +00:00
Jack Jansen 4a5eb967b8 Keepconsole is now a 4-way option: never/errorexit/unseen output/always. Default is "unseen output". Upped the Popt version number. 2000-09-22 21:50:11 +00:00
Jack Jansen 65c3ee0f66 Use same short banner message as unix/win Python. 2000-09-08 10:20:37 +00:00
Jack Jansen 6be3480083 Removed debug output. 2000-08-25 21:58:00 +00:00
Jack Jansen 5bdbabd203 Added more prototypes. 2000-07-24 19:52:52 +00:00
Jack Jansen 660bb1d1c7 MacPython on MacOSX DP4 gets started in the wrong directory. The workaround (ifdeffed by USE_ARGV0_CHDIR) is to do a chdir() to the folder part of our executable name. 2000-07-18 09:40:39 +00:00
Jack Jansen 74a1e63a89 Test for TARGET_API_MAC_CARBON with #if in stead of #ifdef. 2000-07-14 22:37:27 +00:00
Jack Jansen 9ae898b415 ANSIfication step 2: make sure all needed prototypes are available, and all needed
header files included.
2000-07-11 21:16:03 +00:00
Jack Jansen d88296d25a ANSIfication step 1: get rid of Py_PROTO and Py_FPROTO. 2000-07-11 19:51:05 +00:00
Jack Jansen 021da55579 Removed THINK_C support. 2000-06-04 21:56:05 +00:00
Jack Jansen ee6eeb1876 Removed (within an #ifdef) Carbon-incompatabilities:
- Don't call all the toolbox init routines.
- No balloon help, so removed help code from the initial dialog.
2000-06-02 21:28:52 +00:00
Jack Jansen 0c6d037cc5 Removed string-exception preference, added tabcheck and NavService preference, upped version number. 2000-05-05 23:11:14 +00:00
Jack Jansen 2d1306b7cf Started on GUSI2 and threading support. 2000-04-07 09:10:49 +00:00
Jack Jansen 8f5725af60 First bits and pieces of appearance support: an init routine, a global flag PyMac_AppearanceCompliant (exported thru MacOS). If USE_APPEARANCE
is off the code is disabled (but the variables are still there, set to 0).
1999-12-07 23:08:10 +00:00
Jack Jansen e742487ca5 Bigger buffer size for C profiler (if profiling is enabled). 1999-09-30 11:20:11 +00:00
Jack Jansen 87c485c1ad Initialize the program name before adding shared library resources (Just). 1998-07-31 09:38:01 +00:00
Jack Jansen a7a89ebdbe Implemented nositepython and oldexceptions flags 1997-10-07 21:48:57 +00:00
Jack Jansen 36b983c2c2 Added old-exception and no-site-python options and balloon help 1997-09-09 13:53:21 +00:00
Jack Jansen ac62569fd0 sys.prefix and sys.exec_prefix are now set correctly. 1997-09-08 13:22:22 +00:00
Jack Jansen 7330b39a41 Adapted for 1.5a3: Py_SupressPrintingFlag is gone, and
Py_SetProgramName replaces Py_GetProgramName
1997-08-08 14:56:41 +00:00
Jack Jansen caa7c46ac4 - Restore SIOUX menubar just before exiting, if the console window is kept
open (so the user can quit with cmd-Q, print, etc)
- Removed a few unused routines
1997-06-12 10:49:13 +00:00
Jack Jansen e3ae0dfeb7 Removed old scheduler parameterizing calls and replaced with something
a bit easier to use and understand
1997-06-03 15:28:29 +00:00
Jack Jansen a39f1b0ce2 - Added Py_GetProgramFullPath
- Added PyMac_StopGUSISpin and have it called at exit time (fixes crash
  when exiting with sockets open)
- Added PLstr... funcs needed by gusi: those provided by StdCLib are
  broken under cfm68k
1997-05-23 15:35:14 +00:00
Jack Jansen e44545fc0b Workaround for bug in MSL and CWGUSI interaction that stopped the
"don't close window on exit" feature to work.
1997-05-07 15:48:54 +00:00
Jack Jansen 08c3be35c3 Changed the few old routine names still used to the new ones
Started working on MSL support
1997-04-08 15:27:00 +00:00
Jack Jansen c587301e2e - Changed GestaltEqu.h to Gestalt.h
- Changed FragLoader.h to CodeFragments.h
- Removed Desk.h
1997-02-24 13:59:38 +00:00
Jack Jansen 42218ce33c Added/updated copyright notices
(and the &*^$%@ resource files got binhexed again, sigh)
1997-01-31 16:15:11 +00:00
Jack Jansen 52ac037249 Added PyMac_Initialize() routine, to be used by embedding programs (in
stead of standard Py_Initialize(), which it calls).
1997-01-15 15:49:08 +00:00
Jack Jansen 8c6932136c Added profiler initialization/finalization code (if __profile__ is defined) 1997-01-07 16:19:42 +00:00
Jack Jansen daed771fbb Py_GetProgramName turns out not to be obsolete (used by _tkinter). 1996-09-09 14:48:05 +00:00
Jack Jansen 7d5f9e847a - Put all options in a struct
- Unified initialization code for interpreter and applet
- Implemented new options to skip AE-processing for argc/argv and for
  disabling interactive option setting
1996-09-07 17:09:31 +00:00
Jack Jansen 3f7d2b4319 - Rationalized override preferences support, by remembering
application resource fork RefNum and looking there only
- Added support for loading gusi prefs from Preferences file (needs
  modified GUSI, but Matthias promised he'd incorporate the fixes in
  the next release)
1996-09-06 22:21:07 +00:00
Jack Jansen 3469e997b4 Python about box implemented. Slightly convoluted, since (a) we have
to override an internal sioux routine and (b) we have to override the
"about sioux" menuitem after sioux has created its menus.
1996-09-06 00:30:45 +00:00
Jack Jansen f6865f77d4 - Fixed PyMac_DoYield:
- Update lastyield correctly
  - Do event handling if PyMac_YieldEnabled > 0 (previous cmd-. fix
    broke this)
- Use our own GUSISpin routine: fixes crash when exiting with sockets
  open and keeps windows, etc reacting consistently when waiting for
  accepts(), etc.
1996-09-04 15:24:59 +00:00