Commit f87da528 authored by Jack Jansen's avatar Jack Jansen

need() now returns the refno of the resource file opened, or None if the

specified resource was already available and no file was opened.
parent 315d4379
......@@ -12,7 +12,9 @@ def need(restype, resid, filename=None, modname=None):
are required parameters, and identify the resource for which to test. If it
is available we are done. If it is not available we look for a file filename
(default: modname with .rsrc appended) either in the same folder as
where modname was loaded from, or otherwise across sys.path."""
where modname was loaded from, or otherwise across sys.path.
Returns the refno of the resource file opened (or None)"""
if modname is None and filename is None:
raise ArgumentError, "Either filename or modname argument (or both) must be given"
......@@ -23,14 +25,14 @@ def need(restype, resid, filename=None, modname=None):
except Res.Error:
pass
else:
return
return None
else:
try:
h = Res.GetNamedResource(restype, resid)
except Res.Error:
pass
else:
return
return None
# Construct a filename if we don't have one
if not filename:
......@@ -59,10 +61,11 @@ def need(restype, resid, filename=None, modname=None):
else:
raise ResourceFileNotFoundError, filename
Res.FSpOpenResFile(pathname, 1)
refno = Res.FSpOpenResFile(pathname, 1)
# And check that the resource exists now
if type(resid) is type(1):
h = Res.GetResource(restype, resid)
else:
h = Res.GetNamedResource(restype, resid)
return refno
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment