This section describes the rules used to translate C++ names to Scheme names. If these rules fail to identify a translation, consult the appendix, which contains a full listing of wxWindows/wxMedia C++ names and their Scheme translations.
All C++ names -- which involve uppercase and lowercase letters plus underscores (`_') -- are translated to Scheme names which contain only lowercase letters, hyphens (`-'), colons (`:'), and percent signs (`%').
C++ names that are prefixed with ``wx'' are prefixed with ``wx:'' in the Scheme translation. For example, the global function name ``wxYield'' becomes ``wx:yield''. wxWindows global functions are always prefixed with ``wx:'', even if the ``wx'' is missing in the C++ name (e.g. ``FileNameFromPath'' is translated ``wx:file-name-from-path'').
All class names end with ``%''. Thus, the class name ``wxFrame'' is translated ``wx:frame%''.
Most wxWindows C++ names are made up of words that are broken by capitalization. Those words are broken by hyphens in the Scheme translation. For example, the method name ``OnClose'' becomes ``on-close''. wxWindows method names are not prefixed with ``wx:''.
C++ names representing wxWindows constants are made up of words in ALL CAPS separated by underscores (with a ``wx'' prefix). Again, the words are broken by hyphens in Scheme, but an additional ``const-'' prefix is added after the ``wx:'' prefix. For example, ``wxDEFAULT_FRAME'' becomes ``wx:const-default-frame''. Even if the C++ constant name is missing the ``wx'' prefix (as with ``MM_TWIPS''), the Scheme translation will still have the ``wx:'' prefix (``wx:const-mm-twips'').
In Scheme, a function which returns a boolean value should have a name ending in ``?''. The C++ to Scheme name translation attempts to adhere to this heuristic. For example, the wxFrame method ``Iconized'' translates to a Scheme method named ``iconized?''.
A C++ class instance variable is never translated directly to Scheme. Instead, getter and setter methods are (sometimes) created. The getter name will be the translaion of the variable name prefixed with ``get-''. The setter name similarly uses the ``set-'' prefix. When the instance variable has a boolean value, the getter name is suffixed with ``?''.