Mercurial > cpython-lru_cache-weakref
diff Mac/Python/macmain.c @ 16557:9ce9e0342cc1 legacy-trunk
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.
| author | Jack Jansen <jack.jansen@cwi.nl> |
|---|---|
| date | Sun, 11 Feb 2001 01:08:04 +0000 |
| parents | 489692e79151 |
| children | 728c11562187 |
line wrap: on
line diff
--- a/Mac/Python/macmain.c Sun Feb 11 00:46:39 2001 +0000 +++ b/Mac/Python/macmain.c Sun Feb 11 01:08:04 2001 +0000 @@ -53,9 +53,9 @@ #ifdef USE_MAC_SHARED_LIBRARY extern PyMac_AddLibResources(void); #endif -#ifdef USE_GUSI -#include "GUSISIOUX.h" -#endif +//#ifdef USE_GUSI +//#include "GUSISIOUX.h" +//#endif #define STARTUP "PythonStartup" @@ -71,6 +71,14 @@ static char **orig_argv; static int orig_argc; +/* A flag which remembers whether the user has acknowledged all the console +** output (by typing something) +*/ +#define STATE_UNKNOWN 0 +#define STATE_LASTREAD 1 +#define STATE_LASTWRITE 2 +int console_output_state = STATE_UNKNOWN; + PyMac_PrefRecord PyMac_options; static void Py_Main(int, char **); /* Forward */ @@ -544,12 +552,20 @@ void PyMac_OutputSeen() { -#ifdef GUSISIOUX_STATE_UNKNOWN - gusisioux_state = GUSISIOUX_STATE_LASTREAD; -#endif + console_output_state = STATE_LASTREAD; } /* +** Set the "unseen output" flag +*/ +void +PyMac_OutputNotSeen() +{ + console_output_state = STATE_LASTWRITE; +} + + +/* ** Terminate application */ void @@ -569,15 +585,11 @@ keep = 0; break; case POPT_KEEPCONSOLE_OUTPUT: -#ifdef GUSISIOUX_STATE_UNKNOWN - if (gusisioux_state == GUSISIOUX_STATE_LASTWRITE || - gusisioux_state == GUSISIOUX_STATE_UNKNOWN ) + if (console_output_state == STATE_LASTWRITE || + console_output_state == STATE_UNKNOWN ) keep = 1; else keep = 0; -#else - keep = 1; -#endif break; case POPT_KEEPCONSOLE_ERROR: keep = (status != 0); @@ -636,3 +648,9 @@ { return PyMac_GetPythonDir(); } + +int +PyMac_GetDelayConsoleFlag() +{ + return (int)PyMac_options.delayconsole; +} \ No newline at end of file
