]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/gtk/_misc.py
Added style organiser dialog and list style editor page
[wxWidgets.git] / wxPython / src / gtk / _misc.py
index dc8163d473e4986a76060e3ba092c5ac23921e63..f930da8990b0d7ad8c1e57d6143c89258116283c 100644 (file)
@@ -821,9 +821,8 @@ class Caret(object):
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        val = _misc_.Caret_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _misc_.Caret_Destroy(*args, **kwargs)
 
     def IsOk(*args, **kwargs):
         """IsOk(self) -> bool"""
@@ -1541,9 +1540,8 @@ class Log(object):
     TimeStamp = staticmethod(TimeStamp)
     def Destroy(*args, **kwargs):
         """Destroy(self)"""
-        val = _misc_.Log_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _misc_.Log_Destroy(*args, **kwargs)
 
 _misc_.Log_swigregister(Log)
 
@@ -2607,7 +2605,7 @@ class ArtProvider(object):
     their own wx.ArtProvider class and easily replace standard art with
     his/her own version. It is easy thing to do: all that is needed is
     to derive a class from wx.ArtProvider, override it's CreateBitmap
-    method and register the provider with wx.ArtProvider.PushProvider::
+    method and register the provider with `wx.ArtProvider.Push`::
 
         class MyArtProvider(wx.ArtProvider):
             def __init__(self):
@@ -2617,6 +2615,98 @@ class ArtProvider(object):
                 ...
                 return bmp
 
+
+    Identifying art resources
+    -------------------------
+
+    Every bitmap is known to wx.ArtProvider under an unique ID that is
+    used when requesting a resource from it. The IDs can have one of the
+    following predefined values.  Additionally, any string recognized by
+    custom art providers registered using `Push` may be used.
+
+    GTK+ Note
+    ---------
+
+    When running under GTK+ 2, GTK+ stock item IDs (e.g. 'gtk-cdrom') may be used
+    as well.  Additionally, if wxGTK was compiled against GTK+ >= 2.4, then it is
+    also possible to load icons from current icon theme by specifying their name
+    without the extension and directory components. Icon themes recognized by GTK+
+    follow the freedesktop.org Icon Themes specification.  Note that themes are
+    not guaranteed to contain all icons, so wx.ArtProvider may return wx.NullBitmap
+    or wx.NullIcon.  The default theme is typically installed in /usr/share/icons/hicolor.
+
+        * wx.ART_ADD_BOOKMARK
+        * wx.ART_DEL_BOOKMARK
+        * wx.ART_HELP_SIDE_PANEL
+        * wx.ART_HELP_SETTINGS
+        * wx.ART_HELP_BOOK
+        * wx.ART_HELP_FOLDER
+        * wx.ART_HELP_PAGE
+        * wx.ART_GO_BACK
+        * wx.ART_GO_FORWARD
+        * wx.ART_GO_UP
+        * wx.ART_GO_DOWN
+        * wx.ART_GO_TO_PARENT
+        * wx.ART_GO_HOME
+        * wx.ART_FILE_OPEN
+        * wx.ART_FILE_SAVE
+        * wx.ART_FILE_SAVE_AS
+        * wx.ART_PRINT
+        * wx.ART_HELP
+        * wx.ART_TIP
+        * wx.ART_REPORT_VIEW
+        * wx.ART_LIST_VIEW
+        * wx.ART_NEW_DIR
+        * wx.ART_HARDDISK
+        * wx.ART_FLOPPY
+        * wx.ART_CDROM
+        * wx.ART_REMOVABLE
+        * wx.ART_FOLDER
+        * wx.ART_FOLDER_OPEN
+        * wx.ART_GO_DIR_UP
+        * wx.ART_EXECUTABLE_FILE
+        * wx.ART_NORMAL_FILE
+        * wx.ART_TICK_MARK
+        * wx.ART_CROSS_MARK
+        * wx.ART_ERROR
+        * wx.ART_QUESTION
+        * wx.ART_WARNING
+        * wx.ART_INFORMATION
+        * wx.ART_MISSING_IMAGE
+        * wx.ART_COPY
+        * wx.ART_CUT
+        * wx.ART_PASTE
+        * wx.ART_DELETE
+        * wx.ART_NEW
+        * wx.ART_UNDO
+        * wx.ART_REDO
+        * wx.ART_QUIT
+        * wx.ART_FIND
+        * wx.ART_FIND_AND_REPLACE
+
+
+    Clients
+    -------
+
+    The Client is the entity that calls wx.ArtProvider's `GetBitmap` or
+    `GetIcon` function.  Client IDs serve as a hint to wx.ArtProvider
+    that is supposed to help it to choose the best looking bitmap. For
+    example it is often desirable to use slightly different icons in menus
+    and toolbars even though they represent the same action (e.g.
+    wx.ART_FILE_OPEN). Remember that this is really only a hint for
+    wx.ArtProvider -- it is common that `wx.ArtProvider.GetBitmap` returns
+    identical bitmap for different client values!
+
+        * wx.ART_TOOLBAR
+        * wx.ART_MENU
+        * wx.ART_FRAME_ICON
+        * wx.ART_CMN_DIALOG
+        * wx.ART_HELP_BROWSER
+        * wx.ART_MESSAGE_BOX
+        * wx.ART_BUTTON
+        * wx.ART_OTHER (used for all requests that don't fit into any
+          of the categories above)
+
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     __repr__ = _swig_repr
@@ -2631,7 +2721,7 @@ class ArtProvider(object):
         their own wx.ArtProvider class and easily replace standard art with
         his/her own version. It is easy thing to do: all that is needed is
         to derive a class from wx.ArtProvider, override it's CreateBitmap
-        method and register the provider with wx.ArtProvider.PushProvider::
+        method and register the provider with `wx.ArtProvider.Push`::
 
             class MyArtProvider(wx.ArtProvider):
                 def __init__(self):
@@ -2641,6 +2731,98 @@ class ArtProvider(object):
                     ...
                     return bmp
 
+
+        Identifying art resources
+        -------------------------
+
+        Every bitmap is known to wx.ArtProvider under an unique ID that is
+        used when requesting a resource from it. The IDs can have one of the
+        following predefined values.  Additionally, any string recognized by
+        custom art providers registered using `Push` may be used.
+
+        GTK+ Note
+        ---------
+
+        When running under GTK+ 2, GTK+ stock item IDs (e.g. 'gtk-cdrom') may be used
+        as well.  Additionally, if wxGTK was compiled against GTK+ >= 2.4, then it is
+        also possible to load icons from current icon theme by specifying their name
+        without the extension and directory components. Icon themes recognized by GTK+
+        follow the freedesktop.org Icon Themes specification.  Note that themes are
+        not guaranteed to contain all icons, so wx.ArtProvider may return wx.NullBitmap
+        or wx.NullIcon.  The default theme is typically installed in /usr/share/icons/hicolor.
+
+            * wx.ART_ADD_BOOKMARK
+            * wx.ART_DEL_BOOKMARK
+            * wx.ART_HELP_SIDE_PANEL
+            * wx.ART_HELP_SETTINGS
+            * wx.ART_HELP_BOOK
+            * wx.ART_HELP_FOLDER
+            * wx.ART_HELP_PAGE
+            * wx.ART_GO_BACK
+            * wx.ART_GO_FORWARD
+            * wx.ART_GO_UP
+            * wx.ART_GO_DOWN
+            * wx.ART_GO_TO_PARENT
+            * wx.ART_GO_HOME
+            * wx.ART_FILE_OPEN
+            * wx.ART_FILE_SAVE
+            * wx.ART_FILE_SAVE_AS
+            * wx.ART_PRINT
+            * wx.ART_HELP
+            * wx.ART_TIP
+            * wx.ART_REPORT_VIEW
+            * wx.ART_LIST_VIEW
+            * wx.ART_NEW_DIR
+            * wx.ART_HARDDISK
+            * wx.ART_FLOPPY
+            * wx.ART_CDROM
+            * wx.ART_REMOVABLE
+            * wx.ART_FOLDER
+            * wx.ART_FOLDER_OPEN
+            * wx.ART_GO_DIR_UP
+            * wx.ART_EXECUTABLE_FILE
+            * wx.ART_NORMAL_FILE
+            * wx.ART_TICK_MARK
+            * wx.ART_CROSS_MARK
+            * wx.ART_ERROR
+            * wx.ART_QUESTION
+            * wx.ART_WARNING
+            * wx.ART_INFORMATION
+            * wx.ART_MISSING_IMAGE
+            * wx.ART_COPY
+            * wx.ART_CUT
+            * wx.ART_PASTE
+            * wx.ART_DELETE
+            * wx.ART_NEW
+            * wx.ART_UNDO
+            * wx.ART_REDO
+            * wx.ART_QUIT
+            * wx.ART_FIND
+            * wx.ART_FIND_AND_REPLACE
+
+
+        Clients
+        -------
+
+        The Client is the entity that calls wx.ArtProvider's `GetBitmap` or
+        `GetIcon` function.  Client IDs serve as a hint to wx.ArtProvider
+        that is supposed to help it to choose the best looking bitmap. For
+        example it is often desirable to use slightly different icons in menus
+        and toolbars even though they represent the same action (e.g.
+        wx.ART_FILE_OPEN). Remember that this is really only a hint for
+        wx.ArtProvider -- it is common that `wx.ArtProvider.GetBitmap` returns
+        identical bitmap for different client values!
+
+            * wx.ART_TOOLBAR
+            * wx.ART_MENU
+            * wx.ART_FRAME_ICON
+            * wx.ART_CMN_DIALOG
+            * wx.ART_HELP_BROWSER
+            * wx.ART_MESSAGE_BOX
+            * wx.ART_BUTTON
+            * wx.ART_OTHER (used for all requests that don't fit into any
+              of the categories above)
+
         """
         _misc_.ArtProvider_swiginit(self,_misc_.new_ArtProvider(*args, **kwargs))
         self._setCallbackInfo(self, ArtProvider)
@@ -2651,45 +2833,49 @@ class ArtProvider(object):
         """_setCallbackInfo(self, PyObject self, PyObject _class)"""
         return _misc_.ArtProvider__setCallbackInfo(*args, **kwargs)
 
-    def PushProvider(*args, **kwargs):
+    def Push(*args, **kwargs):
         """
-        PushProvider(ArtProvider provider)
+        Push(ArtProvider provider)
 
         Add new provider to the top of providers stack.
         """
-        return _misc_.ArtProvider_PushProvider(*args, **kwargs)
+        return _misc_.ArtProvider_Push(*args, **kwargs)
 
-    PushProvider = staticmethod(PushProvider)
-    def InsertProvider(*args, **kwargs):
+    Push = staticmethod(Push)
+    PushProvider = Push 
+    def Insert(*args, **kwargs):
         """
-        InsertProvider(ArtProvider provider)
+        Insert(ArtProvider provider)
 
         Add new provider to the bottom of providers stack.
         """
-        return _misc_.ArtProvider_InsertProvider(*args, **kwargs)
+        return _misc_.ArtProvider_Insert(*args, **kwargs)
 
-    InsertProvider = staticmethod(InsertProvider)
-    def PopProvider(*args, **kwargs):
+    Insert = staticmethod(Insert)
+    InsertProvider = Insert 
+    def Pop(*args, **kwargs):
         """
-        PopProvider() -> bool
+        Pop() -> bool
 
         Remove latest added provider and delete it.
         """
-        return _misc_.ArtProvider_PopProvider(*args, **kwargs)
+        return _misc_.ArtProvider_Pop(*args, **kwargs)
 
-    PopProvider = staticmethod(PopProvider)
-    def RemoveProvider(*args, **kwargs):
+    Pop = staticmethod(Pop)
+    PopProvider = Pop 
+    def Delete(*args, **kwargs):
         """
-        RemoveProvider(ArtProvider provider) -> bool
+        Delete(ArtProvider provider) -> bool
 
         Remove provider. The provider must have been added previously!  The
         provider is _not_ deleted.
         """
-        val = _misc_.ArtProvider_RemoveProvider(*args, **kwargs)
+        val = _misc_.ArtProvider_Delete(*args, **kwargs)
         args[1].thisown = 1
         return val
 
-    RemoveProvider = staticmethod(RemoveProvider)
+    Delete = staticmethod(Delete)
+    RemoveProvider = Delete 
     def GetBitmap(*args, **kwargs):
         """
         GetBitmap(String id, String client=ART_OTHER, Size size=DefaultSize) -> Bitmap
@@ -2722,9 +2908,8 @@ class ArtProvider(object):
     GetSizeHint = staticmethod(GetSizeHint)
     def Destroy(*args, **kwargs):
         """Destroy(self)"""
-        val = _misc_.ArtProvider_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _misc_.ArtProvider_Destroy(*args, **kwargs)
 
 _misc_.ArtProvider_swigregister(ArtProvider)
 ART_TOOLBAR = cvar.ART_TOOLBAR
@@ -2784,38 +2969,38 @@ ART_QUIT = cvar.ART_QUIT
 ART_FIND = cvar.ART_FIND
 ART_FIND_AND_REPLACE = cvar.ART_FIND_AND_REPLACE
 
-def ArtProvider_PushProvider(*args, **kwargs):
+def ArtProvider_Push(*args, **kwargs):
   """
-    ArtProvider_PushProvider(ArtProvider provider)
+    ArtProvider_Push(ArtProvider provider)
 
     Add new provider to the top of providers stack.
     """
-  return _misc_.ArtProvider_PushProvider(*args, **kwargs)
+  return _misc_.ArtProvider_Push(*args, **kwargs)
 
-def ArtProvider_InsertProvider(*args, **kwargs):
+def ArtProvider_Insert(*args, **kwargs):
   """
-    ArtProvider_InsertProvider(ArtProvider provider)
+    ArtProvider_Insert(ArtProvider provider)
 
     Add new provider to the bottom of providers stack.
     """
-  return _misc_.ArtProvider_InsertProvider(*args, **kwargs)
+  return _misc_.ArtProvider_Insert(*args, **kwargs)
 
-def ArtProvider_PopProvider(*args):
+def ArtProvider_Pop(*args):
   """
-    ArtProvider_PopProvider() -> bool
+    ArtProvider_Pop() -> bool
 
     Remove latest added provider and delete it.
     """
-  return _misc_.ArtProvider_PopProvider(*args)
+  return _misc_.ArtProvider_Pop(*args)
 
-def ArtProvider_RemoveProvider(*args, **kwargs):
+def ArtProvider_Delete(*args, **kwargs):
   """
-    ArtProvider_RemoveProvider(ArtProvider provider) -> bool
+    ArtProvider_Delete(ArtProvider provider) -> bool
 
     Remove provider. The provider must have been added previously!  The
     provider is _not_ deleted.
     """
-  val = _misc_.ArtProvider_RemoveProvider(*args, **kwargs)
+  val = _misc_.ArtProvider_Delete(*args, **kwargs)
   args[1].thisown = 1
   return val
 
@@ -3790,8 +3975,9 @@ class DateTime(object):
         """IsValid(self) -> bool"""
         return _misc_.DateTime_IsValid(*args, **kwargs)
 
-    Ok = IsValid 
-    def __nonzero__(self): return self.Ok() 
+    IsOk = IsValid 
+    Ok = IsOk 
+    def __nonzero__(self): return self.IsOk() 
     def GetTicks(*args, **kwargs):
         """GetTicks(self) -> time_t"""
         return _misc_.DateTime_GetTicks(*args, **kwargs)
@@ -4626,6 +4812,29 @@ class DataFormat(object):
     example, pasting data from the clipboard only if the data is in a
     format the program understands.  A data format is is used to uniquely
     identify this format.
+    On the system level, a data format is usually just a number, (which
+    may be the CLIPFORMAT under Windows or Atom under X11, for example.)
+
+    The standard format IDs are:
+
+        ================    =====================================
+        wx.DF_INVALID       An invalid format
+        wx.DF_TEXT          Text format 
+        wx.DF_BITMAP        A bitmap (wx.Bitmap)
+        wx.DF_METAFILE      A metafile (wx.Metafile, Windows only)
+        wx.DF_FILENAME      A list of filenames
+        wx.DF_HTML          An HTML string. This is only valid on
+                            Windows and non-unicode builds
+        ================    =====================================
+
+    Besies the standard formats, the application may also use custom
+    formats which are identified by their names (strings) and not numeric
+    identifiers. Although internally custom format must be created (or
+    registered) first, you shouldn't care about it because it is done
+    automatically the first time the wxDataFormat object corresponding to
+    a given format name is created.
+
+
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     __repr__ = _swig_repr
@@ -4716,6 +4925,39 @@ class DataObject(object):
     you should instead derive from `wx.PyDataObjectSimple` or use
     `wx.CustomDataObject`.
 
+    Not surprisingly, being 'smart' comes at a price of added
+    complexity. This is reasonable for the situations when you really need
+    to support multiple formats, but may be annoying if you only want to
+    do something simple like cut and paste text.
+
+    To provide a solution for both cases, wxWidgets has two predefined
+    classes which derive from wx.DataObject: `wx.DataObjectSimple` and
+    `wx.DataObjectComposite`.  `wx.DataObjectSimple` is the simplest
+    wx.DataObject possible and only holds data in a single format (such as
+    text or bitmap) and `wx.DataObjectComposite` is the simplest way to
+    implement a wx.DataObject which supports multiple simultaneous formats
+    because it achievs this by simply holding several
+    `wx.DataObjectSimple` objects.
+
+    Please note that the easiest way to use drag and drop and the
+    clipboard with multiple formats is by using `wx.DataObjectComposite`,
+    but it is not the most efficient one as each `wx.DataObjectSimple`
+    would contain the whole data in its respective formats. Now imagine
+    that you want to paste 200 pages of text in your proprietary format,
+    as well as Word, RTF, HTML, Unicode and plain text to the clipboard
+    and even today's computers are in trouble. For this case, you will
+    have to derive from wx.DataObject directly and make it enumerate its
+    formats and provide the data in the requested format on
+    demand. (**TODO**: This is currently not possible from Python.  Make
+    it so.)
+
+    Note that the platform transfer mechanisms for the clipboard and drag
+    and drop, do not copy any data out of the source application until
+    another application actually requests the data. This is in contrast to
+    the 'feel' offered to the user of a program who would normally think
+    that the data resides in the clipboard after having pressed 'Copy' -
+    in reality it is only declared to be available.
+
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     def __init__(self): raise AttributeError, "No constructor defined"
@@ -4774,6 +5016,7 @@ class DataObject(object):
         GetDataHere(self, DataFormat format) -> String
 
         Get the data bytes in the specified format, returns None on failure.
+        :todo: This should use the python buffer interface isntead...
         """
         return _misc_.DataObject_GetDataHere(*args, **kwargs)
 
@@ -4783,6 +5026,7 @@ class DataObject(object):
 
         Set the data in the specified format from the bytes in the the data string.
 
+        :todo: This should use the python buffer interface isntead...
         """
         return _misc_.DataObject_SetData(*args, **kwargs)
 
@@ -4870,6 +5114,29 @@ class PyDataObjectSimple(DataObjectSimple):
     class and overload `GetDataSize`, `GetDataHere` and `SetData` when you
     need to create your own simple single-format type of `wx.DataObject`.
 
+    Here is a simple example::
+
+        class MyDataObject(wx.PyDataObjectSimple):
+            def __init__(self):
+                wx.PyDataObjectSimple.__init__(
+                    self, wx.CustomDataFormat('MyDOFormat'))
+                self.data = ''
+
+            def GetDataSize(self):
+                return len(self.data)
+            def GetDataHere(self):
+                return self.data  # returns a string  
+            def SetData(self, data):
+                self.data = data
+                return True
+
+    Note that there is already a `wx.CustomDataObject` class that behaves
+    very similarly to this example.  The value of creating your own
+    derived class like this is to be able to do additional things when the
+    data is requested or given via the clipboard or drag and drop
+    operation, such as generate the data value or decode it into needed
+    data structures.
+
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     __repr__ = _swig_repr
@@ -4883,6 +5150,29 @@ class PyDataObjectSimple(DataObjectSimple):
         class and overload `GetDataSize`, `GetDataHere` and `SetData` when you
         need to create your own simple single-format type of `wx.DataObject`.
 
+        Here is a simple example::
+
+            class MyDataObject(wx.PyDataObjectSimple):
+                def __init__(self):
+                    wx.PyDataObjectSimple.__init__(
+                        self, wx.CustomDataFormat('MyDOFormat'))
+                    self.data = ''
+
+                def GetDataSize(self):
+                    return len(self.data)
+                def GetDataHere(self):
+                    return self.data  # returns a string  
+                def SetData(self, data):
+                    self.data = data
+                    return True
+
+        Note that there is already a `wx.CustomDataObject` class that behaves
+        very similarly to this example.  The value of creating your own
+        derived class like this is to be able to do additional things when the
+        data is requested or given via the clipboard or drag and drop
+        operation, such as generate the data value or decode it into needed
+        data structures.
+
         """
         _misc_.PyDataObjectSimple_swiginit(self,_misc_.new_PyDataObjectSimple(*args, **kwargs))
         self._setCallbackInfo(self, PyDataObjectSimple)
@@ -5048,6 +5338,7 @@ class BitmapDataObject(DataObjectSimple):
     data. It can be used without change to paste data into the `wx.Clipboard`
     or a `wx.DropSource`.
 
+    :see: `wx.PyBitmapDataObject` if you wish to override `GetBitmap` to increase efficiency.
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     __repr__ = _swig_repr
@@ -5800,7 +6091,7 @@ class Display(object):
     __repr__ = _swig_repr
     def __init__(self, *args, **kwargs): 
         """
-        __init__(self, size_t index=0) -> Display
+        __init__(self, unsigned int index=0) -> Display
 
         Set up a Display instance with the specified display.  The displays
         are numbered from 0 to GetCount() - 1, 0 is always the primary display
@@ -5811,7 +6102,7 @@ class Display(object):
     __del__ = lambda self : None;
     def GetCount(*args, **kwargs):
         """
-        GetCount() -> size_t
+        GetCount() -> unsigned int
 
         Return the number of available displays.
         """
@@ -5945,7 +6236,7 @@ DefaultVideoMode = cvar.DefaultVideoMode
 
 def Display_GetCount(*args):
   """
-    Display_GetCount() -> size_t
+    Display_GetCount() -> unsigned int
 
     Return the number of available displays.
     """
@@ -6217,5 +6508,413 @@ def GetBatteryState(*args):
     return approximate battery state
     """
   return _misc_.GetBatteryState(*args)
+#---------------------------------------------------------------------------
+
+class AboutDialogInfo(object):
+    """
+    `wx.AboutDialogInfo contains information shown in the standard About
+    dialog displayed by the `wx.AboutBox` function.  This class contains
+    the general information about the program, such as its name, version,
+    copyright and so on, as well as lists of the program developers,
+    documentation writers, artists and translators.
+
+    While all the main platforms have a native implementation of the about
+    dialog, they are often more limited than the generic version provided
+    by wxWidgets and so the generic version is used if
+    `wx.AboutDialogInfo` has any fields not supported by the native
+    version. Currently GTK+ version supports all the possible fields
+    natively but MSW and Mac versions don't support URLs, licence text nor
+    custom icons in the about dialog and if either of those is used,
+    wxAboutBox() will automatically use the generic version so you should
+    avoid specifying these fields to achieve more native look and feel.
+
+    """
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """
+        __init__(self) -> AboutDialogInfo
+
+        `wx.AboutDialogInfo contains information shown in the standard About
+        dialog displayed by the `wx.AboutBox` function.  This class contains
+        the general information about the program, such as its name, version,
+        copyright and so on, as well as lists of the program developers,
+        documentation writers, artists and translators.
+
+        While all the main platforms have a native implementation of the about
+        dialog, they are often more limited than the generic version provided
+        by wxWidgets and so the generic version is used if
+        `wx.AboutDialogInfo` has any fields not supported by the native
+        version. Currently GTK+ version supports all the possible fields
+        natively but MSW and Mac versions don't support URLs, licence text nor
+        custom icons in the about dialog and if either of those is used,
+        wxAboutBox() will automatically use the generic version so you should
+        avoid specifying these fields to achieve more native look and feel.
+
+        """
+        _misc_.AboutDialogInfo_swiginit(self,_misc_.new_AboutDialogInfo(*args, **kwargs))
+    __swig_destroy__ = _misc_.delete_AboutDialogInfo
+    __del__ = lambda self : None;
+    def SetName(*args, **kwargs):
+        """
+        SetName(self, String name)
+
+        Set the name of the program. If this method is not called, the string
+        returned by `wx.App.GetAppName` will be shown in the dialog.
+        """
+        return _misc_.AboutDialogInfo_SetName(*args, **kwargs)
+
+    def GetName(*args, **kwargs):
+        """
+        GetName(self) -> String
+
+        Returns the program name.
+        """
+        return _misc_.AboutDialogInfo_GetName(*args, **kwargs)
+
+    Name = property(GetName,SetName) 
+    def SetVersion(*args, **kwargs):
+        """
+        SetVersion(self, String version)
+
+        Set the version of the program. The version is in free format,
+        i.e. not necessarily in the x.y.z form but it shouldn't contain the
+        "version" word.
+        """
+        return _misc_.AboutDialogInfo_SetVersion(*args, **kwargs)
+
+    def HasVersion(*args, **kwargs):
+        """
+        HasVersion(self) -> bool
+
+        Returns ``True`` if the version property has been set.
+        """
+        return _misc_.AboutDialogInfo_HasVersion(*args, **kwargs)
+
+    def GetVersion(*args, **kwargs):
+        """
+        GetVersion(self) -> String
+
+        Returns the version value.
+        """
+        return _misc_.AboutDialogInfo_GetVersion(*args, **kwargs)
+
+    Version = property(GetVersion,SetVersion) 
+    def SetDescription(*args, **kwargs):
+        """
+        SetDescription(self, String desc)
+
+        Set brief, but possibly multiline, description of the program.
+        """
+        return _misc_.AboutDialogInfo_SetDescription(*args, **kwargs)
+
+    def HasDescription(*args, **kwargs):
+        """
+        HasDescription(self) -> bool
+
+        Returns ``True`` if the description property has been set.
+        """
+        return _misc_.AboutDialogInfo_HasDescription(*args, **kwargs)
+
+    def GetDescription(*args, **kwargs):
+        """
+        GetDescription(self) -> String
+
+        Returns the description value.
+        """
+        return _misc_.AboutDialogInfo_GetDescription(*args, **kwargs)
+
+    Description = property(GetDescription,SetDescription) 
+    def SetCopyright(*args, **kwargs):
+        """
+        SetCopyright(self, String copyright)
+
+        Set the short string containing the program copyright
+        information. Notice that any occurrences of "(C)" in ``copyright``
+        will be replaced by the copyright symbol (circled C) automatically,
+        which means that you can avoid using this symbol in the program source
+        code which can be problematic.
+        """
+        return _misc_.AboutDialogInfo_SetCopyright(*args, **kwargs)
+
+    def HasCopyright(*args, **kwargs):
+        """
+        HasCopyright(self) -> bool
+
+        Returns ``True`` if the copyright property has been set.
+        """
+        return _misc_.AboutDialogInfo_HasCopyright(*args, **kwargs)
+
+    def GetCopyright(*args, **kwargs):
+        """
+        GetCopyright(self) -> String
+
+        Returns the copyright value.
+        """
+        return _misc_.AboutDialogInfo_GetCopyright(*args, **kwargs)
+
+    Copyright = property(GetCopyright,SetCopyright) 
+    def SetLicence(*args, **kwargs):
+        """
+        SetLicence(self, String licence)
+
+        Set the long, multiline string containing the text of the program
+        licence.
+
+        Only GTK+ version supports showing the licence text in the native
+        about dialog currently so the generic version will be used under all
+        the other platforms if this method is called. To preserve the native
+        look and feel it is advised that you do not call this method but
+        provide a separate menu item in the "Help" menu for displaying the
+        text of your program licence.
+
+        """
+        return _misc_.AboutDialogInfo_SetLicence(*args, **kwargs)
+
+    def SetLicense(*args, **kwargs):
+        """
+        SetLicense(self, String licence)
+
+        This is the same as `SetLicence`.
+        """
+        return _misc_.AboutDialogInfo_SetLicense(*args, **kwargs)
+
+    def HasLicence(*args, **kwargs):
+        """
+        HasLicence(self) -> bool
+
+        Returns ``True`` if the licence property has been set.
+        """
+        return _misc_.AboutDialogInfo_HasLicence(*args, **kwargs)
+
+    def GetLicence(*args, **kwargs):
+        """
+        GetLicence(self) -> String
+
+        Returns the licence value.
+        """
+        return _misc_.AboutDialogInfo_GetLicence(*args, **kwargs)
+
+    Licence = property(GetLicence,SetLicence) 
+    License = Licence 
+    def SetIcon(*args, **kwargs):
+        """
+        SetIcon(self, Icon icon)
+
+        Set the icon to be shown in the dialog. By default the icon of the
+        main frame will be shown if the native about dialog supports custom
+        icons. If it doesn't but a valid icon is specified using this method,
+        the generic about dialog is used instead so you should avoid calling
+        this function for maximally native look and feel.
+        """
+        return _misc_.AboutDialogInfo_SetIcon(*args, **kwargs)
+
+    def HasIcon(*args, **kwargs):
+        """
+        HasIcon(self) -> bool
+
+        Returns ``True`` if the icon property has been set.
+        """
+        return _misc_.AboutDialogInfo_HasIcon(*args, **kwargs)
+
+    def GetIcon(*args, **kwargs):
+        """
+        GetIcon(self) -> Icon
+
+        Return the current icon value.
+        """
+        return _misc_.AboutDialogInfo_GetIcon(*args, **kwargs)
+
+    Icon = property(GetIcon,SetIcon) 
+    def _SetWebSite(*args, **kwargs):
+        """_SetWebSite(self, String url, String desc=wxEmptyString)"""
+        return _misc_.AboutDialogInfo__SetWebSite(*args, **kwargs)
+
+    def _GetWebSiteURL(*args, **kwargs):
+        """_GetWebSiteURL(self) -> String"""
+        return _misc_.AboutDialogInfo__GetWebSiteURL(*args, **kwargs)
+
+    def _GetWebSiteDescription(*args, **kwargs):
+        """_GetWebSiteDescription(self) -> String"""
+        return _misc_.AboutDialogInfo__GetWebSiteDescription(*args, **kwargs)
+
+    def HasWebSite(*args, **kwargs):
+        """HasWebSite(self) -> bool"""
+        return _misc_.AboutDialogInfo_HasWebSite(*args, **kwargs)
+
+    def SetWebSite(self, args):
+        """
+        SetWebSite(self, URL, [Description])
+
+        Set the web site property.  The ``args`` parameter can
+        either be a single string for the URL, to a 2-tuple of
+        (URL, Description) strings.
+        """
+        if type(args) in [str, unicode]:
+            self._SetWebSite(args)
+        else:
+            self._SetWebSite(args[0], args[1])
+                
+    def GetWebSite(self):
+        """
+        GetWebSite(self) --> (URL, Description)
+        """
+        return (self._GetWebSiteURL(), self._GetWebSiteDescription())
+
+    WebSite = property(GetWebSite,SetWebSite) 
+    def SetDevelopers(*args, **kwargs):
+        """
+        SetDevelopers(self, list developers)
+
+        Set the list of the developers of the program.
+        """
+        return _misc_.AboutDialogInfo_SetDevelopers(*args, **kwargs)
+
+    def AddDeveloper(*args, **kwargs):
+        """
+        AddDeveloper(self, String developer)
+
+        Add a string to the list of developers.
+        """
+        return _misc_.AboutDialogInfo_AddDeveloper(*args, **kwargs)
+
+    def HasDevelopers(*args, **kwargs):
+        """
+        HasDevelopers(self) -> bool
+
+        Returns ``True if any developers have been set.
+        """
+        return _misc_.AboutDialogInfo_HasDevelopers(*args, **kwargs)
+
+    def GetDevelopers(*args, **kwargs):
+        """
+        GetDevelopers(self) --> list
+
+        Returns the list of developers.
+        """
+        return _misc_.AboutDialogInfo_GetDevelopers(*args, **kwargs)
+
+    Developers = property(GetDevelopers,SetDevelopers) 
+    def SetDocWriters(*args, **kwargs):
+        """
+        SetDocWriters(self, list docwriters)
+
+        Set the list of the documentation writers.
+        """
+        return _misc_.AboutDialogInfo_SetDocWriters(*args, **kwargs)
+
+    def AddDocWriter(*args, **kwargs):
+        """
+        AddDocWriter(self, String docwriter)
+
+        Add a string to the list of documentation writers.
+        """
+        return _misc_.AboutDialogInfo_AddDocWriter(*args, **kwargs)
+
+    def HasDocWriters(*args, **kwargs):
+        """
+        HasDocWriters(self) -> bool
+
+        Returns ``True if any documentation writers have been set.
+        """
+        return _misc_.AboutDialogInfo_HasDocWriters(*args, **kwargs)
+
+    def GetDocWriters(*args, **kwargs):
+        """
+        GetDocWriters(self) --> list
+
+        Returns the list of documentation writers.
+        """
+        return _misc_.AboutDialogInfo_GetDocWriters(*args, **kwargs)
+
+    DocWriters = property(GetDocWriters,SetDocWriters) 
+    def SetArtists(*args, **kwargs):
+        """
+        SetArtists(self, list artists)
+
+        Set the list of artists for the program.
+        """
+        return _misc_.AboutDialogInfo_SetArtists(*args, **kwargs)
+
+    def AddArtist(*args, **kwargs):
+        """
+        AddArtist(self, String artist)
+
+        Add a string to the list of artists.
+        """
+        return _misc_.AboutDialogInfo_AddArtist(*args, **kwargs)
+
+    def HasArtists(*args, **kwargs):
+        """
+        HasArtists(self) -> bool
+
+        Returns ``True`` if any artists have been set.
+        """
+        return _misc_.AboutDialogInfo_HasArtists(*args, **kwargs)
+
+    def GetArtists(*args, **kwargs):
+        """
+        GetArtists(self) --> list
+
+        Returns the list od artists.
+        """
+        return _misc_.AboutDialogInfo_GetArtists(*args, **kwargs)
+
+    Artists = property(GetArtists,SetArtists) 
+    def SetTranslators(*args, **kwargs):
+        """
+        SetTranslators(self, list translators)
+
+        Sets the list of program translators.
+        """
+        return _misc_.AboutDialogInfo_SetTranslators(*args, **kwargs)
+
+    def AddTranslator(*args, **kwargs):
+        """
+        AddTranslator(self, String translator)
+
+        Add a string to the list of translators.
+        """
+        return _misc_.AboutDialogInfo_AddTranslator(*args, **kwargs)
+
+    def HasTranslators(*args, **kwargs):
+        """
+        HasTranslators(self) -> bool
+
+        Returns ``True`` if any translators have been set.
+        """
+        return _misc_.AboutDialogInfo_HasTranslators(*args, **kwargs)
+
+    def GetTranslators(*args, **kwargs):
+        """
+        GetTranslators(self) --> list
+
+        Returns the list of program translators.
+        """
+        return _misc_.AboutDialogInfo_GetTranslators(*args, **kwargs)
+
+    Translators = property(GetTranslators,SetTranslators) 
+    def IsSimple(*args, **kwargs):
+        """IsSimple(self) -> bool"""
+        return _misc_.AboutDialogInfo_IsSimple(*args, **kwargs)
+
+    def GetDescriptionAndCredits(*args, **kwargs):
+        """GetDescriptionAndCredits(self) -> String"""
+        return _misc_.AboutDialogInfo_GetDescriptionAndCredits(*args, **kwargs)
+
+_misc_.AboutDialogInfo_swigregister(AboutDialogInfo)
+
+
+def AboutBox(*args, **kwargs):
+  """
+    AboutBox(AboutDialogInfo info)
+
+    This function shows the standard about dialog containing the
+    information specified in ``info``. If the current platform has a
+    native about dialog which is capable of showing all the fields in
+    `wx.AboutDialogInfo`, the native dialog is used, otherwise the
+    function falls back to the generic wxWidgets version of the dialog.
+    """
+  return _misc_.AboutBox(*args, **kwargs)