Remove all trailing spaces

No real changes, just clean up sources by removing trailing spaces from
all the non-generated files.

This should hopefully avoid future commits mixing significant changes
with insignificant whitespace ones.
This commit is contained in:
Vadim Zeitlin
2019-01-30 17:28:08 +01:00
parent ae94f4da9c
commit 8fbca5cb70
320 changed files with 1611 additions and 1611 deletions

View File

@@ -10,7 +10,7 @@
@defgroup group_class_webview WebView
@ingroup group_class
The wxWebView library is a set of classes for viewing complex web documents and
The wxWebView library is a set of classes for viewing complex web documents and
for internet browsing. It is built around a series of backends, and exposes
common functions for them.

View File

@@ -19,7 +19,7 @@ and keep in mind that the wxWidgets function takes as last parameter the
locale which should be internally used for locale-dependent operations.
Last, note that when the @c wxHAS_XLOCALE_SUPPORT symbol is not defined,
then wxWidgets will provide implementations of these functions itself
then wxWidgets will provide implementations of these functions itself
and that they are not granted to be thread-safe (and they will work only with the
C locale; see @ref xlocale_avail).

View File

@@ -29,7 +29,7 @@ identifiers are all in the range between @c wxID_LOWEST and
@c wxID_HIGHEST and, accordingly, the user code should avoid defining its
own constants in this range (e.g. by using wxNewId()).
Refer to @ref page_stockitems "the list of stock items" for the subset of standard IDs
Refer to @ref page_stockitems "the list of stock items" for the subset of standard IDs
which are stock IDs as well.
*/

View File

@@ -103,7 +103,7 @@ without express or implied warranty.
@verbinclude "lgpl.txt"
@page page_copyright_xserver The Open Group and DEC License
@verbinclude "xserver.txt"
*/

View File

@@ -914,7 +914,7 @@ control.
The wxWebView sample demonstarates the various capabilities of the wxWebView
control. It is set up as a simple single window web browser, but with support
for many of the more complex wxWebView features, including browsing through
for many of the more complex wxWebView features, including browsing through
archives.
@sampledir{webview}

View File

@@ -21,7 +21,7 @@ debugging. Both assertions and debug logging are also used by wxWidgets itself
so you may encounter them even if you don't use either of these features
yourself.
@see wxLog, @ref group_funcmacro_log, @ref group_funcmacro_debug
@see wxLog, @ref group_funcmacro_log, @ref group_funcmacro_debug

View File

@@ -86,7 +86,7 @@ use Wx ':docview'; # import constants (optional)
@endcode
@endWxPerlOnly
@see @ref group_class_docview,
@see @ref group_class_docview,

View File

@@ -614,7 +614,7 @@ custom event types.
Finally, you will need to generate and post your custom events.
Generation is as simple as instancing your custom event class and initializing
its internal fields.
For posting events to a certain event handler there are two possibilities:
For posting events to a certain event handler there are two possibilities:
using wxEvtHandler::AddPendingEvent or using wxEvtHandler::QueueEvent.
Basically you will need to use the latter when doing inter-thread communication;
when you use only the main thread you can also safely use the former.

View File

@@ -19,9 +19,9 @@ as well as several standard implementations of it and a family of functions to
use with them.
First of all, no knowledge of wxLog classes is needed to use them. For this,
you should only know about @ref group_funcmacro_log "wxLogXXX() functions".
All of them have the same syntax as @e printf() or @e vprintf() , i.e. they
take the format string as the first argument and respectively a variable number
you should only know about @ref group_funcmacro_log "wxLogXXX() functions".
All of them have the same syntax as @e printf() or @e vprintf() , i.e. they
take the format string as the first argument and respectively a variable number
of arguments or a variable argument list pointer. Here are all of them:
@li wxLogFatalError() which is like wxLogError(), but also terminates the program
@@ -161,8 +161,8 @@ works.
wxWidgets has the notion of a <em>log target</em>: it is just a class deriving
from wxLog. As such, it implements the virtual functions of the base class
which are called when a message is logged. Only one log target is @e active at
any moment, this is the one used by @ref group_funcmacro_log "wxLogXXX() functions".
The normal usage of a log object (i.e. object of a class derived from wxLog) is
any moment, this is the one used by @ref group_funcmacro_log "wxLogXXX() functions".
The normal usage of a log object (i.e. object of a class derived from wxLog) is
to install it as the active target with a call to @e SetActiveTarget() and it
will be used automatically by all subsequent calls to
@ref group_funcmacro_log "wxLogXXX() functions".
@@ -263,7 +263,7 @@ GUI is (already/still) available when your log target as used as wxWidgets
automatically switches to using wxLogStderr if it isn't.
There are several methods which may be overridden in the derived class to
customize log messages handling: wxLog::DoLogRecord(), wxLog::DoLogTextAtLevel()
customize log messages handling: wxLog::DoLogRecord(), wxLog::DoLogTextAtLevel()
and wxLog::DoLogText().
The last method is the simplest one: you should override it if you simply

View File

@@ -733,10 +733,10 @@ accomplish the task:
@code
// Have property editor focus on Enter
propgrid->AddActionTrigger( wxPG_ACTION_EDIT, WXK_RETURN );
// Have Enter work as action trigger even when editor is focused
propgrid->DedicateKey( WXK_RETURN );
// Let Enter also navigate to the next property
propgrid->AddActionTrigger( wxPG_ACTION_NEXT_PROPERTY, WXK_RETURN );

View File

@@ -15,7 +15,7 @@ Sizers, as represented by the wxSizer class and its descendants in the
wxWidgets class hierarchy, have become the method of choice to define the
layout of controls in dialogs in wxWidgets because of their ability to create
visually appealing dialogs independent of the platform, taking into account
the differences in size and style of the individual controls.
the differences in size and style of the individual controls.
The next section describes and shows what can be done with sizers. The
following sections briefly describe how to program with individual sizer
@@ -211,7 +211,7 @@ window will preserve it is original size, @c wxGROW flag (same as @c wxEXPAND) f
the window to grow with the sizer, and @c wxSHAPED flag tells the window to change
it is size proportionally, preserving original aspect ratio. When @c wxGROW flag
is not used, the item can be aligned within available space. @c wxALIGN_LEFT,
@c wxALIGN_TOP, @c wxALIGN_RIGHT, @c wxALIGN_BOTTOM, @c wxALIGN_CENTER_HORIZONTAL
@c wxALIGN_TOP, @c wxALIGN_RIGHT, @c wxALIGN_BOTTOM, @c wxALIGN_CENTER_HORIZONTAL
and @c wxALIGN_CENTER_VERTICAL do what they say. @c wxALIGN_CENTRE (same as
@c wxALIGN_CENTER) is defined as (<tt>wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL</tt>).
Default alignment is <tt>wxALIGN_LEFT | wxALIGN_TOP</tt>.
@@ -267,7 +267,7 @@ MyDialog::MyDialog(wxFrame *parent, wxWindowID id, const wxString &title )
}
@endcode
Note that the recommended way of specifying flags to wxSizer is via wxSizerFlags.
Note that the recommended way of specifying flags to wxSizer is via wxSizerFlags.
This class greatly eases the burden of passing flags to a wxSizer.
Here's how you'd do the previous example with wxSizerFlags:
@@ -313,18 +313,18 @@ MyDialog::MyDialog(wxFrame *parent, wxWindowID id, const wxString &title )
@section overview_sizer_types Other Types of Sizers
wxStdDialogButtonSizer is a sizer that creates button layouts in dialogs
which conform to the standard button spacing and ordering defined by
wxStdDialogButtonSizer is a sizer that creates button layouts in dialogs
which conform to the standard button spacing and ordering defined by
the platform or toolkit's user interface guidelines (if such things exist).
As a convenience, wxDialog::CreateButtonSizer() can be used to create this sizer.
wxWrapSizer is a sizer that lays out its items in a single line, like a box
sizer -- as long as there is space available in that direction. Once all available
space in the primary direction has been used, a new line is added and items
are added there.
wxWrapSizer is a sizer that lays out its items in a single line, like a box
sizer -- as long as there is space available in that direction. Once all available
space in the primary direction has been used, a new line is added and items
are added there.
wxGridBagSizer is a rather special kind of sizer which, unlike the other
classes, allows to directly put the elements at the given position in the
sizer.
sizer.
*/

View File

@@ -16,14 +16,14 @@ class CBuilder:
output_dir = os.path.abspath(os.path.join(self.output_dir, "c"))
if not os.path.exists(output_dir):
os.makedirs(output_dir)
for aclass in self.doxyparser.classes:
# This bit doesn't work, because the aclass.name is not the same as
# those listed in common
if aclass.name in excluded_classes:
#print "Skipping %s" % aclass.name
continue
self.make_c_header(output_dir, aclass)
@@ -46,7 +46,7 @@ class CBuilder:
def make_c_methods(self, aclass):
retval = ""
wxc_classname = 'wxC' + aclass.name[2:].capitalize()
for amethod in aclass.constructors:
@@ -59,13 +59,13 @@ class CBuilder:
if amethod.name.startswith('m_'):
# for some reason, public members are listed as methods
continue
args = '(' + wxc_classname + '* obj'
if amethod.argsstring.find('()') != -1:
args += ')'
else:
else:
args += ', ' + amethod.argsstring[1:].strip()
retval += """
// %s
%s %s%s;\n

View File

@@ -15,7 +15,7 @@ excluded_classes = [
"wxArchiveIterator",
"wxArchiveNotifier",
"wxArchiveOutputStream",
"wxArray< T >",
"wxArray< T >",
"wxArrayString",
"wxAutomationObject",
"wxBufferedInputStream",
@@ -160,5 +160,5 @@ def make_enums(aclass):
retval += ", "
retval += "\n"
retval += "};\n\n"
return retval

View File

@@ -38,23 +38,23 @@ class ClassDefinition:
self.includes = []
self.bases = []
self.enums = {}
def __str__(self):
str_repr = """
Class: %s
Bases: %s
Includes: %s
Brief Description:
Brief Description:
%s
Detailed Description:
%s
""" % (self.name, string.join(self.bases, ", "), self.includes, self.brief_description, self.detailed_description)
str_repr += "Methods:\n"
for method in self.methods:
str_repr += str(method)
return str_repr
class MethodDefinition:
@@ -66,20 +66,20 @@ class MethodDefinition:
self.params = []
self.brief_description = ""
self.detailed_description = ""
def __str__(self):
str_repr = """
Method: %s
Return Type: %s
Params: %r
Prototype: %s
Brief Description:
Brief Description:
%s
Detailed Description:
%s
""" % (self.name, self.return_type, self.params, self.definition + self.argsstring, self.brief_description, self.detailed_description)
return str_repr
return str_repr
def getTextValue(node, recursive=False):
text = ""
@@ -89,7 +89,7 @@ def getTextValue(node, recursive=False):
if child.nodeType == child.TEXT_NODE:
# Add a space to ensure we have a space between qualifiers and parameter names
text += child.nodeValue.strip() + " "
return text.strip()
def doxyMLToText(node):
@@ -104,7 +104,7 @@ class DoxyMLParser:
for aclass in self.classes:
if aclass.name == name:
return aclass
return None
def get_enums_and_functions(self, filename, aclass):
@@ -119,17 +119,17 @@ class DoxyMLParser:
def is_derived_from_base(self, aclass, abase):
base = get_first_value(aclass.bases)
while base and base != "":
if base == abase:
return True
parentclass = self.find_class(base)
if parentclass:
base = get_first_value(parentclass.bases)
else:
base = None
return False
def parse(self, filename):
@@ -138,7 +138,7 @@ class DoxyMLParser:
new_class = self.parse_class(node)
self.classes.append(new_class)
self.get_enums_and_functions(filename, new_class)
def parse_class(self, class_node):
new_class = ClassDefinition()
new_class.name = getTextValue(class_node.getElementsByTagName("compoundname")[0])
@@ -156,21 +156,21 @@ class DoxyMLParser:
self.parse_methods(new_class, class_node)
return new_class
def parse_enum(self, new_class, enum, root):
enum_name = ""
enum_values = []
for node in enum.childNodes:
if node.nodeName == "name":
enum_name = getTextValue(node)
elif node.nodeName == "enumvalue":
enum_values.append(getTextValue(node.getElementsByTagName("name")[0]))
new_class.enums[enum_name] = enum_values
def parse_methods(self, new_class, root):
for method in root.getElementsByTagName("memberdef"):
for method in root.getElementsByTagName("memberdef"):
new_method = MethodDefinition()
for node in method.childNodes:
if node.nodeName == "name":
@@ -187,10 +187,10 @@ class DoxyMLParser:
if child.nodeType == child.ELEMENT_NODE:
param[child.nodeName] = getTextValue(child)
new_method.params.append(param)
if self.verbose:
print "Adding %s" % (new_method.name + new_method.argsstring)
if new_method.name == new_class.name:
new_class.constructors.append(new_method)
elif new_method.name == "~" + new_class.name:
@@ -199,30 +199,30 @@ class DoxyMLParser:
new_class.methods.append(new_method)
if __name__ == "__main__":
option_dict = {
option_dict = {
"report" : (False, "Print out the classes and methods found by this script."),
"verbose" : (False, "Provide status updates and other information."),
}
parser = optparse.OptionParser(usage="usage: %prog [options] <doxyml files to parse>\n" + __description__, version="%prog 1.0")
for opt in option_dict:
default = option_dict[opt][0]
action = "store"
if type(default) == types.BooleanType:
action = "store_true"
parser.add_option("--" + opt, default=default, action=action, dest=opt, help=option_dict[opt][1])
options, arguments = parser.parse_args()
if len(arguments) < 1:
parser.print_usage()
sys.exit(1)
doxyparse = DoxyMLParser(verbose = options.verbose)
for arg in arguments:
doxyparse.parse(arg)
doxyparse.parse(arg)
if options.report:
for aclass in doxyparse.classes:

View File

@@ -12,42 +12,42 @@ import swig_tools
from common import *
if __name__ == "__main__":
option_dict = {
option_dict = {
"output_dir" : ("output", "Directory to output bindings to"),
"sip" : (True, "Produce SIP bindings"),
"swig" : (True, "Produce SWIG bindings."),
"c" : (True, "Produce C wrappers."),
}
parser = optparse.OptionParser(usage="usage: %prog <doxyml files to parse>\n" , version="%prog 1.0")
for opt in option_dict:
default = option_dict[opt][0]
action = "store"
if type(default) == types.BooleanType:
action = "store_true"
parser.add_option("--" + opt, default=default, action=action, dest=opt, help=option_dict[opt][1])
options, arguments = parser.parse_args()
if len(arguments) < 1:
parser.print_usage()
sys.exit(1)
doxyparse = doxymlparser.DoxyMLParser()
for arg in arguments:
doxyparse.parse(arg)
if options.sip:
builder = sip_tools.SIPBuilder(doxyparse, options.output_dir)
builder.make_bindings()
if options.swig:
builder = swig_tools.SWIGBuilder(doxyparse, options.output_dir)
builder.make_bindings()
if options.c:
builder = c_tools.CBuilder(doxyparse, options.output_dir)
builder.make_bindings()

View File

@@ -11,12 +11,12 @@ class SIPBuilder:
output_dir = os.path.abspath(os.path.join(self.output_dir, "sip"))
if not os.path.exists(output_dir):
os.makedirs(output_dir)
for aclass in self.doxyparser.classes:
if aclass.name in excluded_classes:
print "Skipping %s" % aclass.name
continue
header_name = aclass.name[2:].lower()
filename = os.path.join(output_dir, "_" + header_name + ".sip")
enums_text = make_enums(aclass)
@@ -24,7 +24,7 @@ class SIPBuilder:
base_class = get_first_value(aclass.bases)
if base_class != "":
base_class = ": %s" % base_class
text = """
%s
class %s %s
@@ -45,12 +45,12 @@ public:
def make_sip_methods(self, aclass):
retval = ""
for amethod in aclass.constructors + aclass.methods:
transfer = ""
# FIXME: we need to come up with a way of filtering the methods out by various criteria
# including parameters and method name, and how to deal with overloads
# including parameters and method name, and how to deal with overloads
if aclass.name in ignored_methods:
should_ignore = False
for method in ignored_methods[aclass.name]:
@@ -66,19 +66,19 @@ public:
print "param type = %s, amethod.param type = %s" % (params[i], amethod.params[i]["type"])
should_ignore = False
break
if should_ignore:
continue
# We need to let SIP know when wx is responsible for deleting the object.
# We do this if the class is derived from wxWindow, since wxTLW manages child windows
# and wxApp deletes all wxTLWs on shutdown
if amethod in aclass.constructors and self.doxyparser.is_derived_from_base(aclass, "wxWindow"):
transfer = "/Transfer/"
if amethod.name.startswith("operator"):
continue
retval += " %s %s%s%s;\n\n" % (amethod.return_type.replace("virtual ", ""), amethod.name, amethod.argsstring, transfer)
return retval

View File

@@ -11,13 +11,13 @@ class SWIGBuilder:
output_dir = os.path.abspath(os.path.join(self.output_dir, "swig"))
if not os.path.exists(output_dir):
os.makedirs(output_dir)
for aclass in self.doxyparser.classes:
header_name = aclass.name[2:].lower()
if aclass.name in excluded_classes:
#print "Skipping %s" % aclass.name
continue
filename = os.path.join(output_dir, "_" + header_name + ".i")
enums_text = make_enums(aclass)
method_text = self.make_swig_methods(aclass)
@@ -37,25 +37,25 @@ public:
afile.write(text)
afile.close()
def make_swig_methods(self, aclass):
retval = ""
retval += """
%%pythonAppend %s "self._setOORInfo(self)"
%%pythonAppend %s() ""
%%typemap(out) %s*; // turn off this typemap
""" % (aclass.name, aclass.name, aclass.name)
for amethod in aclass.constructors:
retval += " %s%s;\n\n" % (amethod.name, amethod.argsstring)
retval += """
// Turn it back on again
%%typemap(out) %s* { $result = wxPyMake_wxObject($1, $owner); }
%%typemap(out) %s* { $result = wxPyMake_wxObject($1, $owner); }
""" % aclass.name
for amethod in aclass.methods:
retval += " %s %s%s;\n\n" % (amethod.return_type, amethod.name, amethod.argsstring)
return retval