mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-05 19:40:12 +01:00
Add a generator that updates a persistent mapping of item (functions, classes, etc.) to the module names they are a member of. Remove the NO_MODULE dictionary as we're tracking all the item --> module names now. Consolidate the 2 removeWxPrefix implementations to just one. Fix taking out too much space in the class index when removing the :ref: for unknown items, which caused ReST problems. Use pyName if it is set When renaming classes we also need to change the className in the method objects Properly deal with nested classes
62 lines
2.1 KiB
Python
62 lines
2.1 KiB
Python
#---------------------------------------------------------------------------
|
|
# Name: etg/platinfo.py
|
|
# Author: Robin Dunn
|
|
#
|
|
# Created: 22-Nov-2010
|
|
# Copyright: (c) 2013 by Total Control Software
|
|
# License: wxWindows License
|
|
#---------------------------------------------------------------------------
|
|
|
|
import etgtools
|
|
import etgtools.tweaker_tools as tools
|
|
|
|
PACKAGE = "wx"
|
|
MODULE = "_core"
|
|
NAME = "platinfo" # Base name of the file to generate to for this script
|
|
DOCSTRING = ""
|
|
|
|
# The classes and/or the basename of the Doxygen XML files to be processed by
|
|
# this script.
|
|
ITEMS = [ 'wxPlatformInfo',
|
|
'wxLinuxDistributionInfo',
|
|
]
|
|
|
|
#---------------------------------------------------------------------------
|
|
|
|
def run():
|
|
# Parse the XML file(s) building a collection of Extractor objects
|
|
module = etgtools.ModuleDef(PACKAGE, MODULE, NAME, DOCSTRING)
|
|
etgtools.parseDoxyXML(module, ITEMS)
|
|
|
|
#-----------------------------------------------------------------
|
|
# Tweak the parsed meta objects in the module object as needed for
|
|
# customizing the generated code and docstrings.
|
|
|
|
|
|
c = module.find('wxPlatformInfo')
|
|
assert isinstance(c, etgtools.ClassDef)
|
|
|
|
# to avoid conflicts with wxPython's wx.PlatformInfo
|
|
c.renameClass('PlatformInformation')
|
|
|
|
c.find('GetEndianness').findOverload('end').ignore()
|
|
c.find('GetArchName').findOverload('arch').ignore()
|
|
c.find('GetOperatingSystemId').findOverload('name').ignore()
|
|
c.find('GetPortId').findOverload('portname').ignore()
|
|
c.find('GetEndiannessName').findOverload('end').ignore()
|
|
c.find('GetOperatingSystemIdName').findOverload('os').ignore()
|
|
c.find('GetOperatingSystemFamilyName').findOverload('os').ignore()
|
|
c.find('GetPortIdName').findOverload('port').ignore()
|
|
c.find('GetPortIdShortName').findOverload('port').ignore()
|
|
|
|
|
|
#-----------------------------------------------------------------
|
|
tools.doCommonTweaks(module)
|
|
tools.runGenerators(module)
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
if __name__ == '__main__':
|
|
run()
|
|
|