Phoenix: few additional fixes to some of the samples, plus better formatting for the remaining troublesome docs classes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxPython/Phoenix/trunk@73114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Andrea Gavana
2012-12-03 20:50:04 +00:00
parent 983d3c4c35
commit b117617572
7 changed files with 108 additions and 29 deletions

View File

@@ -1,10 +1,10 @@
# provide the message parameters for the MIME type manager
class MailMessageParameters(wx.FileType.MessageParameters):
class MailMessageParameters(wx.MessageParameters):
def __init__(self, filename, mimetype):
wx.FileType.MessageParameters.__init__(self, filename, mimetype)
wx.MessageParameters.__init__(self, filename, mimetype)
def GetParamValue(self, name):
@@ -13,6 +13,6 @@
if name.lower() == "charset":
return "US-ASCII"
else:
return wx.FileType.MessageParameters.GetParamValue(name)
return wx.MessageParameters.GetParamValue(name)

View File

@@ -1,4 +1,4 @@
if not wx.FontMapper.Get().IsEncodingAvailable(enc, facename):
success, alt = wx.FontMapper.Get().GetAltForEncoding(enc, facename, False)
if success:
@@ -8,5 +8,6 @@
else:
# ...failure (or we may try iso8859-1/7bit ASCII)...
pass
# ...display text...

View File

@@ -1,11 +1,12 @@
# self.embeddedHelpWindow is a wx.html.HtmlHelpWindow
# self.embeddedHtmlHelp is a wx.html.HtmlHelpController
# Create embedded HTML Help window
self.embeddedHelpWindow = wx.html.HtmlHelpWindow
self.embeddedHtmlHelp.UseConfig(config, rootPath) # Set your own config object here
self.embeddedHtmlHelp.SetHelpWindow(self.embeddedHelpWindow)
self.embeddedHelpWindow.Create(self, wx.ID_ANY, wx.DefaultPosition, self.GetClientSize(),
wx.TAB_TRAVERSAL|wx.BORDER_NONE, wx.html.HF_DEFAULT_STYLE)
self.embeddedHtmlHelp.AddBook("doc.zip")
def EmbedHTML(self):
# self.embeddedHelpWindow is a wx.html.HtmlHelpWindow
# self.embeddedHtmlHelp is a wx.html.HtmlHelpController
# Create embedded HTML Help window
self.embeddedHelpWindow = wx.html.HtmlHelpWindow
self.embeddedHtmlHelp.UseConfig(config, rootPath) # Set your own config object here
self.embeddedHtmlHelp.SetHelpWindow(self.embeddedHelpWindow)
self.embeddedHelpWindow.Create(self, wx.ID_ANY, wx.DefaultPosition, self.GetClientSize(),
wx.TAB_TRAVERSAL|wx.BORDER_NONE, wx.html.HF_DEFAULT_STYLE)
self.embeddedHtmlHelp.AddBook("doc.zip")

View File

@@ -523,10 +523,6 @@ class ParameterList(Node):
self.py_parameters = odict()
for pdef in xml_item.items:
if pdef.out or pdef.ignored:
continue
name = pdef.name
parameter = Parameter(self, pdef)
self.py_parameters[name] = parameter
@@ -550,10 +546,13 @@ class ParameterList(Node):
name = element_name.strip()
if name not in self.py_parameters:
return
if name in self.py_parameters:
return self.py_parameters[name]
return self.py_parameters[name]
if '_' in name:
name = name[0:name.index('_')]
if name in self.py_parameters:
return self.py_parameters[name]
# -----------------------------------------------------------------------
@@ -611,7 +610,14 @@ class ParameterList(Node):
signature = name + '(%s)'%arguments
arguments = arguments.split(',')
py_parameters = list(self.py_parameters.keys())
py_parameters = []
for key, parameter in self.py_parameters.items():
pdef = parameter.pdef
if pdef.out or pdef.ignored:
continue
py_parameters.append(key)
message = '\nSEVERE: Incompatibility between function/method signature and list of parameters in `%s`:\n\n' \
'The parameter `%s` appears in the method signature but could not be found in the parameter list.\n\n' \
@@ -675,6 +681,15 @@ class ParameterList(Node):
docstrings = ''
for name, parameter in list(self.py_parameters.items()):
pdef = parameter.pdef
if pdef.out or pdef.ignored:
continue
## print name
## print parameter.Join()
## print
if parameter.type.strip():
docstrings += ':param `%s`: %s\n'%(name, parameter.Join().lstrip('\n'))
docstrings += ':type `%s`: %s\n'%(name, parameter.type)
@@ -1271,7 +1286,12 @@ class Table(Node):
table = '\n\n' + spacer + '.. include:: %s\n\n'%possible_rest_input
if self.element.tail and self.element.tail.strip():
table += ConvertToPython(self.element.tail.rstrip())
rest = ConvertToPython(self.element.tail.rstrip())
split = rest.splitlines()
for index, r in enumerate(split):
table += spacer + r
if index < len(split)-1:
table += '\n'
return table
@@ -1437,7 +1457,13 @@ class Snippet(Node):
docstrings += code.rstrip() + '\n\n'
if self.element.tail and len(self.element.tail.strip()) > 1:
spacer = ('Section' in self.GetHierarchy() and [' '] or [''])[0]
hierarchy = self.GetHierarchy()
spacer = ''
if 'Section' in hierarchy:
spacer = ' '*4
elif 'Parameter' in hierarchy:
spacer = ' '
tail = ConvertToPython(self.element.tail.lstrip())
tail = tail.replace('\n', ' ')
docstrings += spacer + tail.replace(' ', ' ')

View File

@@ -102,14 +102,46 @@ NO_MODULE = {
# -- wxDataView -- #
# Widgets
'DataViewItemObjectMapper': 'dataview.',
'PyDataViewModel' : 'dataview.',
# Enums/constants
'DataViewCellMode' : 'dataview.',
'DataViewCellRenderState' : 'dataview.',
'DataViewColumnFlags' : 'dataview.',
'DataViewItemObjectMapper': 'dataview.',
'PyDataViewModel' : 'dataview.',
# -- wxHTML -- #
# Widgets
# Enums/constants
'HTMLCursor' : 'html.',
'HtmlOpeningStatus' : 'html.',
'HtmlScriptMode' : 'html.',
'HtmlSelectionState' : 'html.',
'HtmlURLType' : 'html.',
# -- wxHTML2 -- #
# Widgets
# Enums/constants
'WebViewBackend' : 'html2.',
'WebViewNavigationError' : 'html2.',
'WebViewReloadFlags' : 'html2.',
'WebViewZoom' : 'html2.',
'WebViewZoomType' : 'html2.',
# -- wxXML -- #
# Widgets
# Enums/constants
'XmlDocumentLoadFlag' : 'xml.',
'XmlNodeType' : 'xml.',
# -- wxXRC -- #
# Widgets
# Enums/constants
'XmlResourceFlags' : 'xrc.',
}
# Other C++ specific things to strip away

View File

@@ -169,11 +169,14 @@ def BuildEnumsAndMethods(sphinxDir):
text = text.replace('EmptyString', "''")
# Replace ArrayXXX stuff...
for cpp in ['ArrayString()', 'ArrayInt()', 'ArrayDouble()', 'ArrayString']:
text = text.replace(cpp, '[]')
# Remove lines with "Event macros" in them...
text = text.replace('Event macros:', '')
text = TooltipsOnInheritance(text, class_summary)
text = AddSpacesToLinks(text)
if text != orig_text:
fid = textfile_open(input, 'wt')
@@ -336,6 +339,17 @@ def RemoveUnreferenced(input, class_summary, enum_base, unreferenced_classes, te
# ----------------------------------------------------------------------- #
def AddSpacesToLinks(text):
regex = re.findall('\w:ref:`(.*?)`', text)
for reg in regex:
text = text.replace(':ref:`%s`'%reg, ' :ref:`%s`'%reg)
return text
# ----------------------------------------------------------------------- #
def ReformatFunctions(file):
text_file = os.path.splitext(file)[0] + '.txt'

View File

@@ -288,8 +288,13 @@ def PythonizeType(ptype):
if 'Image.' in ptype:
ptype = ptype.split('.')[-1]
if 'FileName' in ptype:
ptype = 'string'
if ptype.endswith('&'):
ptype = ':class:`%s`'%ptype[0:-1]
ptype = ptype[0:-1]
if ' ' not in ptype:
ptype = ':class:`%s`'%ptype
return ptype