Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
cbed91b4
Commit
cbed91b4
authored
Aug 03, 2001
by
Jack Jansen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Merging appropriate 2.1.1 fixes back into the main trunk.
parent
cb60dae6
Changes
26
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
162 additions
and
122 deletions
+162
-122
Mac/Contrib/osam/OSAm.prj
Mac/Contrib/osam/OSAm.prj
+0
-0
Mac/Contrib/osam/ScriptRunner.c
Mac/Contrib/osam/ScriptRunner.c
+19
-0
Mac/Demo/PICTbrowse/ICONbrowse.py
Mac/Demo/PICTbrowse/ICONbrowse.py
+2
-2
Mac/Demo/PICTbrowse/PICTbrowse.py
Mac/Demo/PICTbrowse/PICTbrowse.py
+2
-2
Mac/Demo/PICTbrowse/PICTbrowse2.py
Mac/Demo/PICTbrowse/PICTbrowse2.py
+3
-3
Mac/Demo/PICTbrowse/oldPICTbrowse.py
Mac/Demo/PICTbrowse/oldPICTbrowse.py
+3
-3
Mac/Demo/mlte/mlted.py
Mac/Demo/mlte/mlted.py
+3
-1
Mac/Demo/textedit/ped.py
Mac/Demo/textedit/ped.py
+3
-1
Mac/Demo/waste/htmled.py
Mac/Demo/waste/htmled.py
+4
-3
Mac/Demo/waste/swed.py
Mac/Demo/waste/swed.py
+3
-1
Mac/Demo/waste/wed.py
Mac/Demo/waste/wed.py
+3
-1
Mac/Distributions/(vise)/Python 2.1.vct
Mac/Distributions/(vise)/Python 2.1.vct
+0
-0
Mac/Distributions/binary.include
Mac/Distributions/binary.include
+8
-4
Mac/Distributions/dev.include
Mac/Distributions/dev.include
+16
-3
Mac/Include/macbuildno.h
Mac/Include/macbuildno.h
+1
-1
Mac/Include/pythonresources.h
Mac/Include/pythonresources.h
+3
-0
Mac/Lib/FrameWork.py
Mac/Lib/FrameWork.py
+4
-0
Mac/Modules/ae/aescan.py
Mac/Modules/ae/aescan.py
+0
-1
Mac/Modules/macfsmodule.c
Mac/Modules/macfsmodule.c
+26
-1
Mac/Modules/res/resscan.py
Mac/Modules/res/resscan.py
+0
-1
Mac/Python/macglue.c
Mac/Python/macglue.c
+1
-1
Mac/Python/macmain.c
Mac/Python/macmain.c
+5
-0
Mac/ReadMe
Mac/ReadMe
+12
-16
Mac/Relnotes
Mac/Relnotes
+40
-76
Mac/Resources/dialogs.rsrc
Mac/Resources/dialogs.rsrc
+0
-0
Mac/_checkversion.py
Mac/_checkversion.py
+1
-1
No files found.
Mac/Contrib/osam/OSAm.prj
View file @
cbed91b4
No preview for this file type
Mac/Contrib/osam/ScriptRunner.c
View file @
cbed91b4
...
...
@@ -21,7 +21,26 @@
#include <script.h>
#include <resources.h>
#ifdef TARGET_API_MAC_CARBON
static
p2cstr
(
StringPtr
p
)
{
unsigned
char
*
c
=
p
;
int
len
=
c
[
0
];
strncpy
((
char
*
)
c
+
1
,
(
char
*
)
c
,
len
);
c
[
len
]
=
0
;
}
static
c2pstr
(
const
char
*
cc
)
{
char
*
c
=
(
char
*
)
cc
;
/* Ouch */
int
len
=
strlen
(
c
);
if
(
len
>
255
)
len
=
255
;
strncpy
(
c
,
c
+
1
,
len
);
c
[
0
]
=
len
;
}
#endif
OSAError
LoadScriptingComponent
(
ComponentInstance
*
scriptingComponent
);
...
...
Mac/Demo/PICTbrowse/ICONbrowse.py
View file @
cbed91b4
...
...
@@ -119,9 +119,9 @@ class MyDialog(FrameWork.DialogWindow):
def
open
(
self
,
id
,
contents
):
self
.
id
=
id
FrameWork
.
DialogWindow
.
open
(
self
,
ID_MAIN
)
self
.
wid
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
dlg
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
contents
=
contents
self
.
ctl
=
self
.
wid
.
GetDialogItemAsControl
(
MAIN_LIST
)
self
.
ctl
=
self
.
dlg
.
GetDialogItemAsControl
(
MAIN_LIST
)
h
=
self
.
ctl
.
GetControlData_Handle
(
Controls
.
kControlListBoxPart
,
Controls
.
kControlListBoxListHandleTag
)
self
.
list
=
List
.
as_List
(
h
)
...
...
Mac/Demo/PICTbrowse/PICTbrowse.py
View file @
cbed91b4
...
...
@@ -97,9 +97,9 @@ class MyDialog(FrameWork.DialogWindow):
def
open
(
self
,
id
,
contents
):
self
.
id
=
id
FrameWork
.
DialogWindow
.
open
(
self
,
ID_MAIN
)
self
.
wid
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
dlg
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
contents
=
contents
self
.
ctl
=
self
.
wid
.
GetDialogItemAsControl
(
MAIN_LIST
)
self
.
ctl
=
self
.
dlg
.
GetDialogItemAsControl
(
MAIN_LIST
)
h
=
self
.
ctl
.
GetControlData_Handle
(
Controls
.
kControlListBoxPart
,
Controls
.
kControlListBoxListHandleTag
)
self
.
list
=
List
.
as_List
(
h
)
...
...
Mac/Demo/PICTbrowse/PICTbrowse2.py
View file @
cbed91b4
...
...
@@ -98,7 +98,7 @@ class PICTwindow(FrameWork.Window):
def
fitrect
(
self
):
"""Return self.pictrect scaled to fit in window"""
graf
=
self
.
wid
.
GetWindowPort
()
graf
=
self
.
dlg
.
GetWindowPort
()
screenrect
=
graf
.
portRect
picwidth
=
self
.
pictrect
[
2
]
-
self
.
pictrect
[
0
]
picheight
=
self
.
pictrect
[
3
]
-
self
.
pictrect
[
1
]
...
...
@@ -119,9 +119,9 @@ class MyDialog(FrameWork.DialogWindow):
def
open
(
self
,
id
,
contents
):
self
.
id
=
id
FrameWork
.
DialogWindow
.
open
(
self
,
ID_MAIN
)
self
.
wid
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
dlg
.
SetDialogDefaultItem
(
MAIN_SHOW
)
self
.
contents
=
contents
self
.
ctl
=
self
.
wid
.
GetDialogItemAsControl
(
MAIN_LIST
)
self
.
ctl
=
self
.
dlg
.
GetDialogItemAsControl
(
MAIN_LIST
)
h
=
self
.
ctl
.
GetControlData_Handle
(
Controls
.
kControlListBoxPart
,
Controls
.
kControlListBoxListHandleTag
)
self
.
list
=
List
.
as_List
(
h
)
...
...
Mac/Demo/PICTbrowse/oldPICTbrowse.py
View file @
cbed91b4
...
...
@@ -96,8 +96,8 @@ class MyDialog(FrameWork.DialogWindow):
def
open
(
self
,
id
,
contents
):
self
.
id
=
id
FrameWork
.
DialogWindow
.
open
(
self
,
ID_MAIN
)
self
.
wid
.
SetDialogDefaultItem
(
MAIN_SHOW
)
tp
,
h
,
rect
=
self
.
wid
.
GetDialogItem
(
MAIN_LIST
)
self
.
dlg
.
SetDialogDefaultItem
(
MAIN_SHOW
)
tp
,
h
,
rect
=
self
.
dlg
.
GetDialogItem
(
MAIN_LIST
)
rect2
=
rect
[
0
]
+
1
,
rect
[
1
]
+
1
,
rect
[
2
]
-
17
,
rect
[
3
]
-
17
# Scroll bar space
self
.
list
=
List
.
LNew
(
rect2
,
(
0
,
0
,
1
,
len
(
contents
)),
(
0
,
0
),
0
,
self
.
wid
,
0
,
1
,
1
,
1
)
...
...
@@ -145,7 +145,7 @@ class MyDialog(FrameWork.DialogWindow):
self
.
parent
.
showPICT
(
resid
)
def
do_rawupdate
(
self
,
window
,
event
):
tp
,
h
,
rect
=
self
.
wid
.
GetDialogItem
(
MAIN_LIST
)
tp
,
h
,
rect
=
self
.
dlg
.
GetDialogItem
(
MAIN_LIST
)
Qd
.
SetPort
(
self
.
wid
)
Qd
.
FrameRect
(
rect
)
self
.
list
.
LUpdate
(
self
.
wid
.
GetWindowPort
().
visRgn
)
...
...
Mac/Demo/mlte/mlted.py
View file @
cbed91b4
...
...
@@ -24,7 +24,7 @@ class MlteWindow(Window):
self
.
path
=
path
self
.
name
=
name
r
=
windowbounds
(
400
,
400
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
x55555555
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
)
self
.
wid
=
w
flags
=
MacTextEditor
.
kTXNDrawGrowIconMask
|
MacTextEditor
.
kTXNWantHScrollBarMask
|
\
MacTextEditor
.
kTXNWantVScrollBarMask
...
...
@@ -361,6 +361,8 @@ class Mlted(Application):
def
idle
(
self
,
event
):
if
self
.
active
:
self
.
active
.
do_idle
(
event
)
else
:
Qd
.
SetCursor
(
Qd
.
qd
.
arrow
)
def
main
():
Mlte
.
TXNInitTextension
(
0
)
...
...
Mac/Demo/textedit/ped.py
View file @
cbed91b4
...
...
@@ -19,7 +19,7 @@ class TEWindow(ScrolledWindow):
self
.
path
=
path
self
.
name
=
name
r
=
windowbounds
(
400
,
400
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
x55555555
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
)
self
.
wid
=
w
x0
,
y0
,
x1
,
y1
=
self
.
wid
.
GetWindowPort
().
portRect
x0
=
x0
+
4
...
...
@@ -338,6 +338,8 @@ class Ped(Application):
def
idle
(
self
,
*
args
):
if
self
.
active
:
self
.
active
.
do_idle
()
else
:
Qd
.
SetCursor
(
Qd
.
qd
.
arrow
)
def
main
():
App
=
Ped
()
...
...
Mac/Demo/waste/htmled.py
View file @
cbed91b4
...
...
@@ -15,7 +15,6 @@ import Scrap
import
os
import
macfs
import
MACFS
import
regsub
import
string
import
htmllib
...
...
@@ -47,7 +46,7 @@ class WasteWindow(ScrolledWindow):
self
.
path
=
path
self
.
name
=
name
r
=
windowbounds
(
400
,
400
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
x55555555
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
)
self
.
wid
=
w
vr
=
LEFTMARGIN
,
0
,
r
[
2
]
-
r
[
0
]
-
15
,
r
[
3
]
-
r
[
1
]
-
15
dr
=
(
0
,
0
,
vr
[
2
],
0
)
...
...
@@ -445,7 +444,7 @@ class WasteWindow(ScrolledWindow):
self
.
ted
.
WEInsert
(
data
,
None
,
None
)
def
send_literal_data
(
self
,
data
):
data
=
regsub
.
gsub
(
'
\
n
'
,
'
\
r
'
,
data
)
data
=
string
.
replace
(
data
,
'
\
n
'
,
'
\
r
'
)
data
=
string
.
expandtabs
(
data
)
self
.
ted
.
WEInsert
(
data
,
None
,
None
)
...
...
@@ -775,6 +774,8 @@ class Wed(Application):
def
idle
(
self
,
event
):
if
self
.
active
:
self
.
active
.
do_idle
(
event
)
else
:
Qd
.
SetCursor
(
Qd
.
qd
.
arrow
)
def
newRuler
(
self
,
obj
):
"""Insert a new ruler. Make it as wide as the window minus 2 pxls"""
...
...
Mac/Demo/waste/swed.py
View file @
cbed91b4
...
...
@@ -34,7 +34,7 @@ class WasteWindow(ScrolledWindow):
self
.
path
=
path
self
.
name
=
name
r
=
windowbounds
(
400
,
400
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
x55555555
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
)
self
.
wid
=
w
vr
=
0
,
0
,
r
[
2
]
-
r
[
0
]
-
15
,
r
[
3
]
-
r
[
1
]
-
15
dr
=
(
0
,
0
,
10240
,
0
)
...
...
@@ -603,6 +603,8 @@ class Wed(Application):
def
idle
(
self
,
event
):
if
self
.
active
:
self
.
active
.
do_idle
(
event
)
else
:
Qd
.
SetCursor
(
Qd
.
qd
.
arrow
)
def
getfontnames
():
names
=
[]
...
...
Mac/Demo/waste/wed.py
View file @
cbed91b4
...
...
@@ -25,7 +25,7 @@ class WasteWindow(ScrolledWindow):
self
.
path
=
path
self
.
name
=
name
r
=
windowbounds
(
400
,
400
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
x55555555
)
w
=
Win
.
NewWindow
(
r
,
name
,
1
,
0
,
-
1
,
1
,
0
)
self
.
wid
=
w
vr
=
0
,
0
,
r
[
2
]
-
r
[
0
]
-
15
,
r
[
3
]
-
r
[
1
]
-
15
dr
=
(
0
,
0
,
10240
,
0
)
...
...
@@ -411,6 +411,8 @@ class Wed(Application):
def
idle
(
self
,
event
):
if
self
.
active
:
self
.
active
.
do_idle
(
event
)
else
:
Qd
.
SetCursor
(
Qd
.
qd
.
arrow
)
def
main
():
App
=
Wed
()
...
...
Mac/Distributions/(vise)/Python 2.1.vct
View file @
cbed91b4
No preview for this file type
Mac/Distributions/binary.include
View file @
cbed91b4
...
...
@@ -105,6 +105,10 @@
(':Mac:Build', None)
(':Mac:Compat:Icon', None)
(':Mac:Contrib:AECaptureParser', '')
(':Mac:Contrib:BBPy.lm:BBpy.r', None)
(':Mac:Contrib:BBPy.lm:Python', '')
(':Mac:Contrib:BBPy.lm:Python Keywords.rsrc', None)
(':Mac:Contrib:BBPy.lm:PythonBBLM.txt', '')
(':Mac:Contrib:BBPy:PythonSlave.py', '')
(':Mac:Contrib:BBPy:README', '')
(':Mac:Contrib:BBPy:Run as Python', '')
...
...
@@ -208,7 +212,7 @@
(':pystone.py', None)
(':setup.py', None)
(':site-packages', None)
(':
Mac:Contrib:BBPy.lm:Python', ''
)
(':
Mac:Contrib:BBPy.lm:PythonBBLM.txt', ''
)
(':
Mac:Contrib:BBPy.lm:BBpy.r
', None)
(':Mac:Contrib:
BBPy.lm:Python Keywords.rsrc', None
)
(':
Extensions:example3:README', None
)
(':
Extensions:example2:README', None
)
(':
Extensions:example:README
', None)
(':Mac:Contrib:
osam:OSAm.carbon.slb', ''
)
Mac/Distributions/dev.include
View file @
cbed91b4
...
...
@@ -116,6 +116,9 @@
(':Mac:Build:TE.mcp.exp', None)
(':Mac:Build:TE.mcp.xml', None)
(':Mac:Build:TE.mcp.xml.out', None)
(':Mac:Build:_dummy_tkinter.mcp', None)
(':Mac:Build:_dummy_tkinter.mcp.exp', None)
(':Mac:Build:_dummy_tkinter.old.mcp', None)
(':Mac:Build:_symtable.carbon.mcp', None)
(':Mac:Build:_symtable.carbon.mcp.exp', None)
(':Mac:Build:_symtable.carbon.mcp.xml', None)
...
...
@@ -452,6 +455,16 @@
(':readmefiles', None)
(':setup.py', None)
(':site-packages', None)
(':Mac:Build:_dummy_tkinter.old.mcp', None)
(':Mac:Build:_dummy_tkinter.mcp.exp', None)
(':Mac:Build:_dummy_tkinter.mcp', None)
(':Extensions:example', None)
(':Extensions:example2', None)
(':Extensions:example3', None)
(':Mac:Demo:mlte:mlted.py', None)
(':Mac:Build:Mlte.mcp.xml', None)
(':Mac:Build:Mlte.mcp.exp', None)
(':Mac:Build:Mlte.mcp', None)
(':Mac:Build:Mlte.carbon.mcp.xml', None)
(':Mac:Build:Mlte.carbon.mcp.exp', None)
(':Mac:Build:Mlte.carbon.mcp', None)
(':Mac:Build:CF.carbon.mcp.xml', None)
(':Mac:Build:CF.carbon.mcp.exp', None)
(':Mac:Build:CF.carbon.mcp', None)
Mac/Include/macbuildno.h
View file @
cbed91b4
#define BUILD 9
2
#define BUILD 9
7
Mac/Include/pythonresources.h
View file @
cbed91b4
...
...
@@ -95,6 +95,9 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
/* No preferences file name resource */
#define NOPREFNAME_ID BASE_ID+9
/* Not a script */
#define NOTASCRIPT_ID BASE_ID+10
/* EditPythonPrefs range. Needed here to forestall conflicts with applets */
#define EDITPYTHONPREFS_MIN 508
#define EDITPYTHONPREFS_MAX 511
...
...
Mac/Lib/FrameWork.py
View file @
cbed91b4
...
...
@@ -1010,6 +1010,10 @@ class DialogWindow(Window):
def
close
(
self
):
self
.
do_postclose
()
def
do_postclose
(
self
):
self
.
dlg
=
None
Window
.
do_postclose
(
self
)
def
do_itemhit
(
self
,
item
,
event
):
print
'Dialog %s, item %d hit'
%
(
self
.
dlg
,
item
)
...
...
Mac/Modules/ae/aescan.py
View file @
cbed91b4
...
...
@@ -5,7 +5,6 @@
import
sys
import
os
import
string
import
regsub
import
MacOS
BGENDIR
=
os
.
path
.
join
(
sys
.
prefix
,
':Tools:bgen:bgen'
)
...
...
Mac/Modules/macfsmodule.c
View file @
cbed91b4
...
...
@@ -367,6 +367,7 @@ _mfs_GetFSSpecFromFSSpec(PyObject *self, FSSpec *fssp)
static
int
_mfs_GetFSSpecFromFSRef
(
PyObject
*
self
,
FSSpec
*
fssp
)
{
#if !TARGET_API_MAC_OS8
static
FSRef
*
fsrp
;
if
(
is_mfsrobject
(
self
)
)
{
...
...
@@ -374,6 +375,7 @@ _mfs_GetFSSpecFromFSRef(PyObject *self, FSSpec *fssp)
if
(
FSGetCatalogInfo
(
&
((
mfsrobject
*
)
self
)
->
fsref
,
kFSCatInfoNone
,
NULL
,
NULL
,
fssp
,
NULL
)
==
noErr
)
return
1
;
}
#endif
return
0
;
}
...
...
@@ -381,10 +383,12 @@ _mfs_GetFSSpecFromFSRef(PyObject *self, FSSpec *fssp)
static
int
_mfs_GetFSRefFromFSRef
(
PyObject
*
self
,
FSRef
*
fsrp
)
{
#if !TARGET_API_MAC_OS8
if
(
is_mfsrobject
(
self
)
)
{
*
fsrp
=
((
mfsrobject
*
)
self
)
->
fsref
;
return
1
;
}
#endif
return
0
;
}
...
...
@@ -392,10 +396,12 @@ _mfs_GetFSRefFromFSRef(PyObject *self, FSRef *fsrp)
static
int
_mfs_GetFSRefFromFSSpec
(
PyObject
*
self
,
FSRef
*
fsrp
)
{
#if !TARGET_API_MAC_OS8
if
(
is_mfssobject
(
self
)
)
{
if
(
FSpMakeFSRef
(
&
((
mfssobject
*
)
self
)
->
fsspec
,
fsrp
)
==
noErr
)
return
1
;
}
#endif
return
0
;
}
...
...
@@ -524,6 +530,10 @@ mfss_FSpMakeFSRef(self, args)
mfssobject
*
self
;
PyObject
*
args
;
{
#if TARGET_API_MAC_OS8
PyErr_SetString
(
PyExc_NotImplementedError
,
"FSRef objects not supported on this platform"
);
return
0
;
#else
OSErr
err
;
FSRef
fsref
;
...
...
@@ -535,6 +545,7 @@ mfss_FSpMakeFSRef(self, args)
return
NULL
;
}
return
(
PyObject
*
)
newmfsrobject
(
&
fsref
);
#endif
}
/* XXXX These routines should be replaced by a wrapper to the *FInfo routines */
...
...
@@ -766,7 +777,7 @@ statichere PyTypeObject Mfsstype = {
/* End of code for FSSpec objects */
/* -------------------------------------------------------- */
#if !TARGET_API_MAC_OS8
static
PyObject
*
mfsr_as_fsspec
(
self
,
args
)
mfsrobject
*
self
;
...
...
@@ -871,6 +882,7 @@ statichere PyTypeObject Mfsrtype = {
};
/* End of code for FSRef objects */
#endif
/* !TARGET_API_MAC_OS8 */
/* -------------------------------------------------------- */
static
PyObject
*
...
...
@@ -1002,11 +1014,16 @@ mfs_FSRef(self, args)
PyObject
*
self
;
/* Not used */
PyObject
*
args
;
{
#if TARGET_API_MAC_OS8
PyErr_SetString
(
PyExc_NotImplementedError
,
"FSRef objects not supported on this platform"
);
return
0
;
#else
FSRef
fsr
;
if
(
!
PyArg_ParseTuple
(
args
,
"O&"
,
PyMac_GetFSRef
,
&
fsr
))
return
NULL
;
return
(
PyObject
*
)
newmfsrobject
(
&
fsr
);
#endif
}
static
PyObject
*
...
...
@@ -1172,6 +1189,9 @@ static struct PyMethodDef mfs_methods[] = {
int
PyMac_GetFSRef
(
PyObject
*
v
,
FSRef
*
fsr
)
{
#if TARGET_API_MAC_OS8
return
0
;
#else
OSErr
err
;
/* If it's an FSRef we're also okay. */
...
...
@@ -1186,12 +1206,17 @@ PyMac_GetFSRef(PyObject *v, FSRef *fsr)
}
PyErr_SetString
(
PyExc_TypeError
,
"FSRef argument should be existing FSRef, FSSpec or (OSX only) pathname"
);
return
0
;
#endif
}
/* Convert FSSpec to PyObject */
PyObject
*
PyMac_BuildFSRef
(
FSRef
*
v
)
{
#if TARGET_API_MAC_OS8
return
NULL
;
#else
return
(
PyObject
*
)
newmfsrobject
(
v
);
#endif
}
/*
...
...
Mac/Modules/res/resscan.py
View file @
cbed91b4
...
...
@@ -5,7 +5,6 @@
import
sys
import
os
import
string
import
regsub
import
MacOS
BGENDIR
=
os
.
path
.
join
(
sys
.
prefix
,
':Tools:bgen:bgen'
)
...
...
Mac/Python/macglue.c
View file @
cbed91b4
...
...
@@ -227,7 +227,7 @@ char *PyMac_getscript()
case
smCyrillic
:
return
"mac-cyrillic"
;
default:
return
"
mac-roman
"
;
/* better than nothing */
return
"
ascii
"
;
/* better than nothing */
}
}
...
...
Mac/Python/macmain.c
View file @
cbed91b4
...
...
@@ -486,6 +486,11 @@ PyMac_InitApplication()
PyMac_FixGUSIcd
();
#endif
}
/* Check that the first argument is a text file */
if
(
PyMac_getfiletype
(
argv
[
1
])
!=
'
TEXT
'
)
{
Alert
(
NOTASCRIPT_ID
,
NULL
);
exit
(
0
);
}
}
Py_Main
(
argc
,
argv
);
}
...
...
Mac/ReadMe
View file @
cbed91b4
How
to
install
Python
2.1
on
your
Macintosh
-------------------------------------------
How
to
install
Python
2.1
.1
on
your
Macintosh
-------------------------------------------
--
This
is
a
MacPython
that
can
run
on
classic
MacOS
(
from
8.1
onwards
)
and
natively
on
MacOSX
.
The
installer
tries
to
work
out
whether
you
can
use
the
Carbon
version
or
not
.
This
is
also
the
first
MacPython
distribution
to
be
packaged
as
an
active
installer
,
which
only
downloads
the
parts
you
actually
need
.
Let
me
hear
about
problems
in
these
areas
.
use
the
Carbon
version
or
not
.
You
should
definitely
read
the
Relnotes
file
too
.
...
...
@@ -13,8 +11,6 @@ A special note about the active installer: do not background it, it may hang
your
machine
.
This
is
a
general
problem
with
Vise
active
installers
,
MindVision
are
working
on
it
.
If
you
installed
a
2.1
beta
on
MacOSX
you
MUST
read
the
uninstall
section
below
.
------
If
this
is
your
first
encounter
with
Python
:
you
definitely
need
the
...
...
@@ -30,7 +26,7 @@ now. The documentation is in HTML format, start with index.html.
Caveats
-------
Aside
from
the
general
new
Python
2.1
features
compared
to
2.0
the
main
Aside
from
the
general
new
Python
2.1
.1
features
compared
to
2.0
the
main
feature
of
this
release
is
Carbon
support
.
This
installer
installs
MacPython
for
classic
PPC
MacOS
,
MacPython
for
Carbon
...
...
@@ -82,8 +78,8 @@ After installing
It
is
probably
a
good
idea
to
run
the
automatic
tests
.
Start
Python
and
"import test.autotest"
.
T
wo
tests
will
fail
on
MacOS9
,
both
with
MemoryErrors
:
test_longexp
and
test_zlib
(
on
MacOSX
nothing
should
fail
).
T
hree
tests
will
fail
on
MacOS9
,
all
with
MemoryErrors
:
test_longexp
,
test_sha
and
test_zlib
(
on
MacOSX
nothing
should
fail
).
If
you
increase
the
PythonInterpreter
memory
partition
size
they
will
pass
(
but
for
longexp
you
have
to
increase
it
by
an
...
...
@@ -108,7 +104,7 @@ Uninstalling
Two items are installed in the system folder: the interpreter shared
libraries PythonCore and PythonCoreCarbon lives in the Extensions folder and the
"Python 2.1 Preferences" file in the Python subfolder in the
"Python 2.1
.1
Preferences" file in the Python subfolder in the
Preferences folder. All the rest of Python lives in the folder you
installed in.
...
...
@@ -117,7 +113,7 @@ in OSX that is triggered by Python: if any orphaned aliases are left in
/Library/CFMSupport your machine will start to behave very badly. 2.1
beta installers triggered this problem if you simply threw away your Python folder,
so if you installed a 2.1beta you should clean out the aliases in /Library/CFMSupport
too. Th
is final 2.1 installer always copies
the shared libraries on OSX, so it does
too. Th
e final 2.1 installer always copied
the shared libraries on OSX, so it does
not have the problem anymore.
Things to see
...
...
@@ -157,9 +153,9 @@ that this means you can keep your older version around if you are unsure
whether to upgrade. The bad news is that your old preference settings
are lost and you have to set them again.
After you are satisfied that 2.1 works as expected you can trash
After you are satisfied that 2.1
.1
works as expected you can trash
anything in the system folder that has "python" in the name and not
"2.1".
"2.1
.1
".
As of 2.1 the ConfigurePython applets will try to detect incompatible preferences
files and offer to remove them. This means that re-running ConfigurePython after
...
...
@@ -191,8 +187,8 @@ course. Mac-specific thanks go to the pythonmac-sig, Just van Rossum,
Corran Webster, Tony Ingraldi, Erik van Blokland, Bill Bedford, Chris
Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David
Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn,
Tom Bridgman
Russel Owen and all the other people who provided feedback,
code or both!
Tom Bridgman
, Russel Owen, Pascal Oberndoerfer and all the other people
who provided feedback,
code or both!
MacPython includes waste, a TextEdit replacement which is (c) 1998 Marco Piovanelli.
...
...
Mac/Relnotes
View file @
cbed91b4
Changes in 2.1
since 2.0
Changes in 2.1
.1 since 2.1
--------------------------
These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder)
for machine-independent changes. Changes since 2.1b2 are
marked with [*] and at the bottom of the list.
- This release is optionally Carbon-based, so it runs natively on MacOS 8.1 or
later and MacOSX. (Note that on MacOSX MacPython will run as a normal Mac application,
if you want to run Python from the BSD commandline get a unix-Python distribution
from www.python.org).
- Alternatively there is a classic PPC interpreter as well. There are two reasons you
might want to use this: (a) you have a pre-MacOS9 system and don't want to install
CarbonLib, or (b) you need Tkinter, for which no Carbon version is available yet.
- Distutils is included and seems to work. On 8.1 you may want to get Apple's
CarbonLib installer even if you plan to run classic, it contains the newer Appearance
Mgr which Python needs (according to rumour).
- There's a new module (package, actually) mkcwproject which builds CodeWarrior
projects from simple templates. See Distutils or :Mac:scripts:genpluginprojects.py
for examples of use.
- The Numerical extension has moved to :Lib:site-python from :Extensions. As Numerical
is now distutils-based you can easily install newer versions when they become
available.
- The Help and ctb modules are not available under Carbon because that functionality is
not in Carbon.
- Windows and Dialogs can now be different beasts, so you may have to call
dlg.GetDialogWindow() where you used to be able to call window methods straight
on the dialog. This also has consequences for code using FrameWork.DialogWindow.
THIS IS AN INCOMPATIBLE CHANGE.
- ctl.GetControlDataHandle() has been renamed to GetControlData_Handle(), and similarly
for the other variants of GetControlData and SetControlData. This was needed
because Carbon defines a completely different routine with the name GetControlDataHandle.
THIS IS AN INCOMPATIBLE CHANGE.
- Method mac.xstat() has disappeared. THIS IS AN INCOMPATIBLE CHANGE.
- Menu.SetPopupData() and GetPopupData() are gone. Use SetPopupMenuHandle() and
SetPopupMenuID() (and the getters) in stead. THIS IS AN INCOMPATIBLE CHANGE.
- Various methods have disappeared when running under Carbon. The script
:Mac:scripts:missingcarbonmethods.py can check your sources, but you need unix to run
it. Or use it as documentation and search by hand. THIS IS AN INCOMPATIBLE CHANGE.
- The good news is that "direct access to toolbox structs" still works from Python,
so Python programmers have a lot less to fix than C programmers.
That's because the lowlevel code simply uses the accessors internally. The accessors
are available both in Carbon and Classic MacPython.
- Scrap under Carbon is, you guessed it, the Carbon Scrap Manager. Some workarounds are
provided, though. THIS IS AN INCOMPATIBLE CHANGE.
- The Internet Config routines that are missing from Carbon have been removed. This
is no problem if you use the "ic" module, but may be if you use "icglue" directly.
THIS IS AN INCOMPATIBLE CHANGE.
- Various old toolbox names (CountMItems, EnableItem, etc) have disappeared. Use the
new forms (CountMenuItems, EnableMenuItem, etc). THIS IS AN INCOMPATIBLE CHANGE.
- Waste now uses Waste 2.0.
- The default memory size for the interpreter has been upped again.
- The MacOS error messages have been updated to reflect the current state of
things. This was long overdue.
- The crash in BuildApplication has been fixed.
- struct.pack related problems (in Audio_Mac, for example) have been fixed.
- (src/dev/cvs only): The project files now use the .mcp extension in stead of .prj.
Projects for almost all plugins and the img modules are automatically generated
with :Mac:scripts:genpluginprojects.py (also called by fullbuild). The .mcp files
are not in the repository, if you don't want to use genpluginprojects you can import
the .mcp.xml files in CodeWarrior.
- ConfigurePython has been replace by two applets: ConfigurePythonClassic and
ConfigurePythonCarbon. These will select either execution model for machines
supporting both, and it will also build all the standard applets.
- PythonInterpreterCarbon and PythonInterpreterClassic are now files of type "Atmp", not
"APPL", so there should not be any confusion as to what the real application is
(PythonInterpreter).
- A BBEdit language module by Chris Stern is included in the :Mac:Contrib folder.
- The ConfigurePython applets will now detect if the preference file refers to a different
folder than where they live. They offer to remove the preference file in this case.
- Import case-check was broken in 2.1b1, this is fixed.
- A side-effect of the previous fix is that getpass works again.
- BuildApplication was broken under Carbon. Fixed.
- Morefindertools functionality integrated into findertools. [*]
- ped.py from Mac:Demo crashed, this has been fixed by making Win.WhichWindow more robust. [*]
- Tkinter mainloop is now a little less aggressive in eating events. [*]
- The Python console window is raised to the front when input is read. This fixes a hang
(for Carbon only) when crashing with a modal dialog open. [*]
- The menu bar is (again) restored when Python is terminating. [*]
for machine-independent changes.
- Handling non-ascii characters in sys.path on non-MacRoman systems should be fixed,
iff MacPython has a codec for the charset. Otherwise you should get an error, at least.
Pathnames in sys.path also retain their original case again.
- IDE could crash on corrupt preferences. Fixed.
- IDE will now work if you use either pre or sre as re.
- Evt.WaitNextEvent could give an error when bit 15 was set, which could cause a problem
with IDE in classic mode. Fixed.
- MacOS8.X users in classic mode had problems with Fm not loading, which also caused
IDE not working. Fixed.
- Fm.IsAntiAliasedTextEnabled and Fm.SetAntiAliasedTextEnabled have gone for now, to
fix the problem above.
- Disabled the Tkinter file I/O event handler, which was there but didn't work anyway.
- Problems with loading dynamic modules that are part of a package into BuildApplication-
generated programs were fixed.
- The order of the EasyDialogs yes/no/cancel buttons has been conformed to the Mac
standard.
- Handling of Dialogs and Windows that were not created by Python is a bit more graceful
now, which may fix some crashes.
- Ctl.SendControlMessage has gone. But it didn't work anyway.
- Various problems with the TextEdit and Waste demos have been fixed.
- Embedding/extending only: in preparation to allowing the use of MacPython modules in
unix-Python on OSX the xxx_New and xxx_Convert routines are now optionally vectored via
glue routines in macglue.c. The only change that may be needed for embedders/extenders is
that you may want to include pymactoolbox.h in your sources.
- Embedding/extending only: Most MacPython source is now much more Mach-O friendly, and
should work with Universal Headers 3.4.
- Experimental: an Mlte module has been added, an interface to the Multi Lingual Text
Engine. There is a minimal example in :Mac:Demos:mlte.
- Experimental: some support for FSRef objects has been added. You can do little more that
convert them to/from FSSpecs. Carbon only.
- Experimental: the CF module has some support for CoreFoundation types. CFString
and CFURL work, to a degree, and can be converted to/from Python strings and Unicode
objects. Carbon only.
What is not in this distribution
--------------------------------
...
...
@@ -92,6 +51,9 @@ Known problems
This list is probably incomplete, more problems may be listed on the MacPython homepage,
http://www.cwi.nl/~jack/macpython.html.
- MacPython 2.1.1 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X
machine, it will quickly deadlock during I/O operations. The GUSI I/O library is suspected,
hints/clues/workarounds are solicited.
- Tkinter does not work under Carbon.
- The IDE and Tkinter do not work together. Run tkinter programs under PythonInterpreter.
- Tkinter file events do not work, unless you have opened the file through Tcl (but then
...
...
@@ -102,3 +64,5 @@ http://www.cwi.nl/~jack/macpython.html.
- PythonInterpreter used interactively will eat a lot of processor cycles. You should use
PythonIDE for interactive work and PythonInterpreter for scripts only. This is especially
true under OSX.
- AliasMenu 2.2 conflicts with the Carbon version of Python. This is most likely a problem
with AliasMenu (which is from 1999, and thus predates Carbon altogether).
Mac/Resources/dialogs.rsrc
View file @
cbed91b4
No preview for this file type
Mac/_checkversion.py
View file @
cbed91b4
...
...
@@ -5,7 +5,7 @@ _checkversion.py file"""
import
pyversioncheck
_PACKAGE
=
"MacPython"
_VERSION
=
"2.1"
_VERSION
=
"2.1
.1
"
_URL
=
"http://www.cwi.nl/~jack/macpythonversion.txt"
try
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment