]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/gtk/_core.py
Update GraphcsContext/Path dummy classes
[wxWidgets.git] / wxPython / src / gtk / _core.py
index c47529ceb6a805d2911c95ff97569b2f37ba09d0..881b0030dee09fc3e221520823f9cba4af3fbf78 100644 (file)
@@ -122,7 +122,6 @@ CB_SIMPLE = _core_.CB_SIMPLE
 CB_DROPDOWN = _core_.CB_DROPDOWN
 CB_SORT = _core_.CB_SORT
 CB_READONLY = _core_.CB_READONLY
-CB_FILENAME = _core_.CB_FILENAME
 RA_HORIZONTAL = _core_.RA_HORIZONTAL
 RA_VERTICAL = _core_.RA_VERTICAL
 RA_SPECIFY_ROWS = _core_.RA_SPECIFY_ROWS
@@ -195,6 +194,7 @@ ID_REDO = _core_.ID_REDO
 ID_HELP = _core_.ID_HELP
 ID_PRINT = _core_.ID_PRINT
 ID_PRINT_SETUP = _core_.ID_PRINT_SETUP
+ID_PAGE_SETUP = _core_.ID_PAGE_SETUP
 ID_PREVIEW = _core_.ID_PREVIEW
 ID_ABOUT = _core_.ID_ABOUT
 ID_HELP_CONTENTS = _core_.ID_HELP_CONTENTS
@@ -205,6 +205,7 @@ ID_HELP_INDEX = _core_.ID_HELP_INDEX
 ID_HELP_SEARCH = _core_.ID_HELP_SEARCH
 ID_CLOSE_ALL = _core_.ID_CLOSE_ALL
 ID_PREFERENCES = _core_.ID_PREFERENCES
+ID_EDIT = _core_.ID_EDIT
 ID_CUT = _core_.ID_CUT
 ID_COPY = _core_.ID_COPY
 ID_PASTE = _core_.ID_PASTE
@@ -224,6 +225,7 @@ ID_VIEW_SORTDATE = _core_.ID_VIEW_SORTDATE
 ID_VIEW_SORTNAME = _core_.ID_VIEW_SORTNAME
 ID_VIEW_SORTSIZE = _core_.ID_VIEW_SORTSIZE
 ID_VIEW_SORTTYPE = _core_.ID_VIEW_SORTTYPE
+ID_FILE = _core_.ID_FILE
 ID_FILE1 = _core_.ID_FILE1
 ID_FILE2 = _core_.ID_FILE2
 ID_FILE3 = _core_.ID_FILE3
@@ -275,18 +277,6 @@ ID_ZOOM_OUT = _core_.ID_ZOOM_OUT
 ID_UNDELETE = _core_.ID_UNDELETE
 ID_REVERT_TO_SAVED = _core_.ID_REVERT_TO_SAVED
 ID_HIGHEST = _core_.ID_HIGHEST
-ACCEL_ALT = _core_.ACCEL_ALT
-ACCEL_CTRL = _core_.ACCEL_CTRL
-ACCEL_SHIFT = _core_.ACCEL_SHIFT
-ACCEL_NORMAL = _core_.ACCEL_NORMAL
-PD_AUTO_HIDE = _core_.PD_AUTO_HIDE
-PD_APP_MODAL = _core_.PD_APP_MODAL
-PD_CAN_ABORT = _core_.PD_CAN_ABORT
-PD_ELAPSED_TIME = _core_.PD_ELAPSED_TIME
-PD_ESTIMATED_TIME = _core_.PD_ESTIMATED_TIME
-PD_REMAINING_TIME = _core_.PD_REMAINING_TIME
-PD_SMOOTH = _core_.PD_SMOOTH
-PD_CAN_SKIP = _core_.PD_CAN_SKIP
 MENU_TEAROFF = _core_.MENU_TEAROFF
 MB_DOCKABLE = _core_.MB_DOCKABLE
 NO_FULL_REPAINT_ON_RESIZE = _core_.NO_FULL_REPAINT_ON_RESIZE
@@ -688,6 +678,9 @@ MOD_ALL = _core_.MOD_ALL
 UPDATE_UI_NONE = _core_.UPDATE_UI_NONE
 UPDATE_UI_RECURSE = _core_.UPDATE_UI_RECURSE
 UPDATE_UI_FROMIDLE = _core_.UPDATE_UI_FROMIDLE
+Layout_Default = _core_.Layout_Default
+Layout_LeftToRight = _core_.Layout_LeftToRight
+Layout_RightToLeft = _core_.Layout_RightToLeft
 #---------------------------------------------------------------------------
 
 class Object(object):
@@ -712,10 +705,10 @@ class Object(object):
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        val = _core_.Object_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _core_.Object_Destroy(*args, **kwargs)
 
+    ClassName = property(GetClassName,doc="See `GetClassName`") 
 _core_.Object_swigregister(Object)
 _wxPySetDictionary = _core_._wxPySetDictionary
 cvar = _core_.cvar
@@ -847,6 +840,14 @@ class Size(object):
         """
         return _core_.Size_DecTo(*args, **kwargs)
 
+    def IncBy(*args, **kwargs):
+        """IncBy(self, int dx, int dy)"""
+        return _core_.Size_IncBy(*args, **kwargs)
+
+    def DecBy(*args, **kwargs):
+        """DecBy(self, int dx, int dy)"""
+        return _core_.Size_DecBy(*args, **kwargs)
+
     def Scale(*args, **kwargs):
         """
         Scale(self, float xscale, float yscale)
@@ -1190,6 +1191,22 @@ class Rect(object):
         """SetBottomRight(self, Point p)"""
         return _core_.Rect_SetBottomRight(*args, **kwargs)
 
+    def GetTopRight(*args, **kwargs):
+        """GetTopRight(self) -> Point"""
+        return _core_.Rect_GetTopRight(*args, **kwargs)
+
+    def SetTopRight(*args, **kwargs):
+        """SetTopRight(self, Point p)"""
+        return _core_.Rect_SetTopRight(*args, **kwargs)
+
+    def GetBottomLeft(*args, **kwargs):
+        """GetBottomLeft(self) -> Point"""
+        return _core_.Rect_GetBottomLeft(*args, **kwargs)
+
+    def SetBottomLeft(*args, **kwargs):
+        """SetBottomLeft(self, Point p)"""
+        return _core_.Rect_SetBottomLeft(*args, **kwargs)
+
     def GetLeft(*args, **kwargs):
         """GetLeft(self) -> int"""
         return _core_.Rect_GetLeft(*args, **kwargs)
@@ -1330,21 +1347,37 @@ class Rect(object):
         """
         return _core_.Rect___ne__(*args, **kwargs)
 
-    def InsideXY(*args, **kwargs):
+    def ContainsXY(*args, **kwargs):
+        """
+        ContainsXY(self, int x, int y) -> bool
+
+        Return True if the point is inside the rect.
         """
-        InsideXY(self, int x, int y) -> bool
+        return _core_.Rect_ContainsXY(*args, **kwargs)
 
-        Return True if the point is (not strcitly) inside the rect.
+    def Contains(*args, **kwargs):
         """
-        return _core_.Rect_InsideXY(*args, **kwargs)
+        Contains(self, Point pt) -> bool
 
-    def Inside(*args, **kwargs):
+        Return True if the point is inside the rect.
         """
-        Inside(self, Point pt) -> bool
+        return _core_.Rect_Contains(*args, **kwargs)
 
-        Return True if the point is (not strcitly) inside the rect.
+    def ContainsRect(*args, **kwargs):
         """
-        return _core_.Rect_Inside(*args, **kwargs)
+        ContainsRect(self, Rect rect) -> bool
+
+        Returns ``True`` if the given rectangle is completely inside this
+        rectangle or touches its boundary.
+        """
+        return _core_.Rect_ContainsRect(*args, **kwargs)
+
+    #Inside = wx._deprecated(Contains, "Use `Contains` instead.")
+    #InsideXY = wx._deprecated(ContainsXY, "Use `ContainsXY` instead.")
+    #InsideRect = wx._deprecated(ContainsRect, "Use `ContainsRect` instead.")
+    Inside = Contains
+    InsideXY = ContainsXY
+    InsideRect = ContainsRect
 
     def Intersects(*args, **kwargs):
         """
@@ -1399,6 +1432,21 @@ class Rect(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Rect, self.Get())
 
+    Bottom = property(GetBottom,SetBottom,doc="See `GetBottom` and `SetBottom`") 
+    BottomRight = property(GetBottomRight,SetBottomRight,doc="See `GetBottomRight` and `SetBottomRight`") 
+    BottomLeft = property(GetBottomLeft,SetBottomLeft,doc="See `GetBottomLeft` and `SetBottomLeft`") 
+    Height = property(GetHeight,SetHeight,doc="See `GetHeight` and `SetHeight`") 
+    Left = property(GetLeft,SetLeft,doc="See `GetLeft` and `SetLeft`") 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
+    Right = property(GetRight,SetRight,doc="See `GetRight` and `SetRight`") 
+    Size = property(GetSize,SetSize,doc="See `GetSize` and `SetSize`") 
+    Top = property(GetTop,SetTop,doc="See `GetTop` and `SetTop`") 
+    TopLeft = property(GetTopLeft,SetTopLeft,doc="See `GetTopLeft` and `SetTopLeft`") 
+    TopRight = property(GetTopRight,SetTopRight,doc="See `GetTopRight` and `SetTopRight`") 
+    Width = property(GetWidth,SetWidth,doc="See `GetWidth` and `SetWidth`") 
+    X = property(GetX,SetX,doc="See `GetX` and `SetX`") 
+    Y = property(GetY,SetY,doc="See `GetY` and `SetY`") 
+    Empty = property(IsEmpty,doc="See `IsEmpty`") 
 _core_.Rect_swigregister(Rect)
 
 def RectPP(*args, **kwargs):
@@ -1452,6 +1500,8 @@ class Point2D(object):
         Create a w.Point2D object.
         """
         _core_.Point2D_swiginit(self,_core_.new_Point2D(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Point2D
+    __del__ = lambda self : None;
     def GetFloor(*args, **kwargs):
         """
         GetFloor() -> (x,y)
@@ -1573,6 +1623,10 @@ class Point2D(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Point2D, self.Get())
 
+    Floor = property(GetFloor,doc="See `GetFloor`") 
+    Rounded = property(GetRounded,doc="See `GetRounded`") 
+    VectorAngle = property(GetVectorAngle,SetVectorAngle,doc="See `GetVectorAngle` and `SetVectorAngle`") 
+    VectorLength = property(GetVectorLength,SetVectorLength,doc="See `GetVectorLength` and `SetVectorLength`") 
 _core_.Point2D_swigregister(Point2D)
 
 def Point2DCopy(*args, **kwargs):
@@ -1708,6 +1762,10 @@ class FSFile(Object):
         """GetStream(self) -> InputStream"""
         return _core_.FSFile_GetStream(*args, **kwargs)
 
+    def DetachStream(*args, **kwargs):
+        """DetachStream(self)"""
+        return _core_.FSFile_DetachStream(*args, **kwargs)
+
     def GetMimeType(*args, **kwargs):
         """GetMimeType(self) -> String"""
         return _core_.FSFile_GetMimeType(*args, **kwargs)
@@ -1724,6 +1782,11 @@ class FSFile(Object):
         """GetModificationTime(self) -> DateTime"""
         return _core_.FSFile_GetModificationTime(*args, **kwargs)
 
+    Anchor = property(GetAnchor,doc="See `GetAnchor`") 
+    Location = property(GetLocation,doc="See `GetLocation`") 
+    MimeType = property(GetMimeType,doc="See `GetMimeType`") 
+    ModificationTime = property(GetModificationTime,doc="See `GetModificationTime`") 
+    Stream = property(GetStream,doc="See `GetStream`") 
 _core_.FSFile_swigregister(FSFile)
 
 class CPPFileSystemHandler(object):
@@ -1784,6 +1847,11 @@ class FileSystemHandler(CPPFileSystemHandler):
         """GetMimeTypeFromExt(self, String location) -> String"""
         return _core_.FileSystemHandler_GetMimeTypeFromExt(*args, **kwargs)
 
+    Anchor = property(GetAnchor,doc="See `GetAnchor`") 
+    LeftLocation = property(GetLeftLocation,doc="See `GetLeftLocation`") 
+    MimeTypeFromExt = property(GetMimeTypeFromExt,doc="See `GetMimeTypeFromExt`") 
+    Protocol = property(GetProtocol,doc="See `GetProtocol`") 
+    RightLocation = property(GetRightLocation,doc="See `GetRightLocation`") 
 _core_.FileSystemHandler_swigregister(FileSystemHandler)
 
 class FileSystem(Object):
@@ -1820,6 +1888,11 @@ class FileSystem(Object):
         return _core_.FileSystem_AddHandler(*args, **kwargs)
 
     AddHandler = staticmethod(AddHandler)
+    def RemoveHandler(*args, **kwargs):
+        """RemoveHandler(CPPFileSystemHandler handler) -> CPPFileSystemHandler"""
+        return _core_.FileSystem_RemoveHandler(*args, **kwargs)
+
+    RemoveHandler = staticmethod(RemoveHandler)
     def CleanUpHandlers(*args, **kwargs):
         """CleanUpHandlers()"""
         return _core_.FileSystem_CleanUpHandlers(*args, **kwargs)
@@ -1835,12 +1908,17 @@ class FileSystem(Object):
         return _core_.FileSystem_URLToFileName(*args, **kwargs)
 
     URLToFileName = staticmethod(URLToFileName)
+    Path = property(GetPath,doc="See `GetPath`") 
 _core_.FileSystem_swigregister(FileSystem)
 
 def FileSystem_AddHandler(*args, **kwargs):
   """FileSystem_AddHandler(CPPFileSystemHandler handler)"""
   return _core_.FileSystem_AddHandler(*args, **kwargs)
 
+def FileSystem_RemoveHandler(*args, **kwargs):
+  """FileSystem_RemoveHandler(CPPFileSystemHandler handler) -> CPPFileSystemHandler"""
+  return _core_.FileSystem_RemoveHandler(*args, **kwargs)
+
 def FileSystem_CleanUpHandlers(*args):
   """FileSystem_CleanUpHandlers()"""
   return _core_.FileSystem_CleanUpHandlers(*args)
@@ -1962,6 +2040,8 @@ def MemoryFSHandler_RemoveFile(*args, **kwargs):
 IMAGE_ALPHA_TRANSPARENT = _core_.IMAGE_ALPHA_TRANSPARENT
 IMAGE_ALPHA_THRESHOLD = _core_.IMAGE_ALPHA_THRESHOLD
 IMAGE_ALPHA_OPAQUE = _core_.IMAGE_ALPHA_OPAQUE
+IMAGE_QUALITY_NORMAL = _core_.IMAGE_QUALITY_NORMAL
+IMAGE_QUALITY_HIGH = _core_.IMAGE_QUALITY_HIGH
 #---------------------------------------------------------------------------
 
 class ImageHandler(Object):
@@ -2013,6 +2093,10 @@ class ImageHandler(Object):
         """SetMimeType(self, String mimetype)"""
         return _core_.ImageHandler_SetMimeType(*args, **kwargs)
 
+    Extension = property(GetExtension,SetExtension,doc="See `GetExtension` and `SetExtension`") 
+    MimeType = property(GetMimeType,SetMimeType,doc="See `GetMimeType` and `SetMimeType`") 
+    Name = property(GetName,SetName,doc="See `GetName` and `SetName`") 
+    Type = property(GetType,SetType,doc="See `GetType` and `SetType`") 
 _core_.ImageHandler_swigregister(ImageHandler)
 
 class PyImageHandler(ImageHandler):
@@ -2236,20 +2320,61 @@ class Image(Object):
 
         Destroys the image data.
         """
-        val = _core_.Image_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _core_.Image_Destroy(*args, **kwargs)
 
     def Scale(*args, **kwargs):
         """
-        Scale(self, int width, int height) -> Image
+        Scale(self, int width, int height, int quality=IMAGE_QUALITY_NORMAL) -> Image
 
         Returns a scaled version of the image. This is also useful for scaling
         bitmaps in general as the only other way to scale bitmaps is to blit a
-        `wx.MemoryDC` into another `wx.MemoryDC`.
+        `wx.MemoryDC` into another `wx.MemoryDC`.  The ``quality`` parameter
+        specifies what method to use for resampling the image.  It can be
+        either wx.IMAGE_QUALITY_NORMAL, which uses the normal default scaling
+        method of pixel replication, or wx.IMAGE_QUALITY_HIGH which uses
+        bicubic and box averaging resampling methods for upsampling and
+        downsampling respectively.
         """
         return _core_.Image_Scale(*args, **kwargs)
 
+    def ResampleBox(*args, **kwargs):
+        """ResampleBox(self, int width, int height) -> Image"""
+        return _core_.Image_ResampleBox(*args, **kwargs)
+
+    def ResampleBicubic(*args, **kwargs):
+        """ResampleBicubic(self, int width, int height) -> Image"""
+        return _core_.Image_ResampleBicubic(*args, **kwargs)
+
+    def Blur(*args, **kwargs):
+        """
+        Blur(self, int radius) -> Image
+
+        Blurs the image in both horizontal and vertical directions by the
+        specified pixel ``radius``. This should not be used when using a
+        single mask colour for transparency.
+        """
+        return _core_.Image_Blur(*args, **kwargs)
+
+    def BlurHorizontal(*args, **kwargs):
+        """
+        BlurHorizontal(self, int radius) -> Image
+
+        Blurs the image in the horizontal direction only. This should not be
+        used when using a single mask colour for transparency.
+
+        """
+        return _core_.Image_BlurHorizontal(*args, **kwargs)
+
+    def BlurVertical(*args, **kwargs):
+        """
+        BlurVertical(self, int radius) -> Image
+
+        Blurs the image in the vertical direction only. This should not be
+        used when using a single mask colour for transparency.
+        """
+        return _core_.Image_BlurVertical(*args, **kwargs)
+
     def ShrinkBy(*args, **kwargs):
         """
         ShrinkBy(self, int xFactor, int yFactor) -> Image
@@ -2260,7 +2385,7 @@ class Image(Object):
 
     def Rescale(*args, **kwargs):
         """
-        Rescale(self, int width, int height) -> Image
+        Rescale(self, int width, int height, int quality=IMAGE_QUALITY_NORMAL) -> Image
 
         Changes the size of the image in-place by scaling it: after a call to
         this function, the image will have the given width and height.
@@ -2524,14 +2649,15 @@ class Image(Object):
         """
         return _core_.Image_LoadMimeStream(*args, **kwargs)
 
-    def Ok(*args, **kwargs):
+    def IsOk(*args, **kwargs):
         """
-        Ok(self) -> bool
+        IsOk(self) -> bool
 
         Returns true if image data is present.
         """
-        return _core_.Image_Ok(*args, **kwargs)
+        return _core_.Image_IsOk(*args, **kwargs)
 
+    Ok = IsOk 
     def GetWidth(*args, **kwargs):
         """
         GetWidth(self) -> int
@@ -2653,11 +2779,23 @@ class Image(Object):
         return _core_.Image_SetAlphaData(*args, **kwargs)
 
     def GetAlphaBuffer(*args, **kwargs):
-        """GetAlphaBuffer(self) -> PyObject"""
+        """
+        GetAlphaBuffer(self) -> PyObject
+
+        Returns a writable Python buffer object that is pointing at the Alpha
+        data buffer inside the wx.Image. You need to ensure that you do not
+        use this buffer object after the image has been destroyed.
+        """
         return _core_.Image_GetAlphaBuffer(*args, **kwargs)
 
     def SetAlphaBuffer(*args, **kwargs):
-        """SetAlphaBuffer(self, buffer alpha)"""
+        """
+        SetAlphaBuffer(self, buffer alpha)
+
+        Sets the internal image alpha pointer to point at a Python buffer
+        object.  This can save making an extra copy of the data but you must
+        ensure that the buffer object lives as long as the wx.Image does.
+        """
         return _core_.Image_SetAlphaBuffer(*args, **kwargs)
 
     def SetMaskColour(*args, **kwargs):
@@ -2897,7 +3035,16 @@ class Image(Object):
         return _core_.Image_HSVtoRGB(*args, **kwargs)
 
     HSVtoRGB = staticmethod(HSVtoRGB)
-    def __nonzero__(self): return self.Ok() 
+    def __nonzero__(self): return self.IsOk() 
+    AlphaBuffer = property(GetAlphaBuffer,SetAlphaBuffer,doc="See `GetAlphaBuffer` and `SetAlphaBuffer`") 
+    AlphaData = property(GetAlphaData,SetAlphaData,doc="See `GetAlphaData` and `SetAlphaData`") 
+    Data = property(GetData,SetData,doc="See `GetData` and `SetData`") 
+    DataBuffer = property(GetDataBuffer,SetDataBuffer,doc="See `GetDataBuffer` and `SetDataBuffer`") 
+    Height = property(GetHeight,doc="See `GetHeight`") 
+    MaskBlue = property(GetMaskBlue,doc="See `GetMaskBlue`") 
+    MaskGreen = property(GetMaskGreen,doc="See `GetMaskGreen`") 
+    MaskRed = property(GetMaskRed,doc="See `GetMaskRed`") 
+    Width = property(GetWidth,doc="See `GetWidth`") 
 _core_.Image_swigregister(Image)
 
 def ImageFromMime(*args, **kwargs):
@@ -3042,6 +3189,40 @@ def Image_HSVtoRGB(*args, **kwargs):
     """
   return _core_.Image_HSVtoRGB(*args, **kwargs)
 
+
+def _ImageFromBuffer(*args, **kwargs):
+  """_ImageFromBuffer(int width, int height, buffer data, buffer alpha=None) -> Image"""
+  return _core_._ImageFromBuffer(*args, **kwargs)
+def ImageFromBuffer(width, height, dataBuffer, alphaBuffer=None):
+    """
+    Creates a `wx.Image` from the data in dataBuffer.  The dataBuffer
+    parameter must be a Python object that implements the buffer interface,
+    such as a string, array, etc.  The dataBuffer object is expected to
+    contain a series of RGB bytes and be width*height*3 bytes long.  A buffer
+    object can optionally be supplied for the image's alpha channel data, and
+    it is expected to be width*height bytes long.
+
+    The wx.Image will be created with its data and alpha pointers initialized
+    to the memory address pointed to by the buffer objects, thus saving the
+    time needed to copy the image data from the buffer object to the wx.Image.
+    While this has advantages, it also has the shoot-yourself-in-the-foot
+    risks associated with sharing a C pointer between two objects.
+
+    To help alleviate the risk a reference to the data and alpha buffer
+    objects are kept with the wx.Image, so that they won't get deleted until
+    after the wx.Image is deleted.  However please be aware that it is not
+    guaranteed that an object won't move its memory buffer to a new location
+    when it needs to resize its contents.  If that happens then the wx.Image
+    will end up referring to an invalid memory location and could cause the
+    application to crash.  Therefore care should be taken to not manipulate
+    the objects used for the data and alpha buffers in a way that would cause
+    them to change size.
+    """
+    image = _core_._ImageFromBuffer(width, height, dataBuffer, alphaBuffer)
+    image._buffer = dataBuffer
+    image._alpha = alphaBuffer
+    return image
+
 def InitAllImageHandlers():
     """
     The former functionality of InitAllImageHanders is now done internal to
@@ -3261,6 +3442,8 @@ class EvtHandler(Object):
     def __init__(self, *args, **kwargs): 
         """__init__(self) -> EvtHandler"""
         _core_.EvtHandler_swiginit(self,_core_.new_EvtHandler(*args, **kwargs))
+        self._setOORInfo(self)
+
     def GetNextHandler(*args, **kwargs):
         """GetNextHandler(self) -> EvtHandler"""
         return _core_.EvtHandler_GetNextHandler(*args, **kwargs)
@@ -3297,6 +3480,18 @@ class EvtHandler(Object):
         """ProcessPendingEvents(self)"""
         return _core_.EvtHandler_ProcessPendingEvents(*args, **kwargs)
 
+    def AllowReentrance(*args, **kwargs):
+        """AllowReentrance(self, bool allow=True)"""
+        return _core_.EvtHandler_AllowReentrance(*args, **kwargs)
+
+    def IsReentranceAllowed(*args, **kwargs):
+        """IsReentranceAllowed(self) -> bool"""
+        return _core_.EvtHandler_IsReentranceAllowed(*args, **kwargs)
+
+    def IsEventHandlingInProgress(*args, **kwargs):
+        """IsEventHandlingInProgress(self) -> bool"""
+        return _core_.EvtHandler_IsEventHandlingInProgress(*args, **kwargs)
+
     def Connect(*args, **kwargs):
         """Connect(self, int id, int lastId, int eventType, PyObject func)"""
         return _core_.EvtHandler_Connect(*args, **kwargs)
@@ -3350,6 +3545,9 @@ class EvtHandler(Object):
             id  = source.GetId()
         return event.Unbind(self, id, id2)              
 
+    EvtHandlerEnabled = property(GetEvtHandlerEnabled,SetEvtHandlerEnabled,doc="See `GetEvtHandlerEnabled` and `SetEvtHandlerEnabled`") 
+    NextHandler = property(GetNextHandler,SetNextHandler,doc="See `GetNextHandler` and `SetNextHandler`") 
+    PreviousHandler = property(GetPreviousHandler,SetPreviousHandler,doc="See `GetPreviousHandler` and `SetPreviousHandler`") 
 _core_.EvtHandler_swigregister(EvtHandler)
 
 #---------------------------------------------------------------------------
@@ -3871,6 +4069,11 @@ class Event(Object):
         """Clone(self) -> Event"""
         return _core_.Event_Clone(*args, **kwargs)
 
+    EventObject = property(GetEventObject,SetEventObject,doc="See `GetEventObject` and `SetEventObject`") 
+    EventType = property(GetEventType,SetEventType,doc="See `GetEventType` and `SetEventType`") 
+    Id = property(GetId,SetId,doc="See `GetId` and `SetId`") 
+    Skipped = property(GetSkipped,doc="See `GetSkipped`") 
+    Timestamp = property(GetTimestamp,SetTimestamp,doc="See `GetTimestamp` and `SetTimestamp`") 
 _core_.Event_swigregister(Event)
 
 #---------------------------------------------------------------------------
@@ -4034,6 +4237,12 @@ class CommandEvent(Event):
         """Clone(self) -> Event"""
         return _core_.CommandEvent_Clone(*args, **kwargs)
 
+    ClientData = property(GetClientData,SetClientData,doc="See `GetClientData` and `SetClientData`") 
+    ClientObject = property(GetClientObject,SetClientObject,doc="See `GetClientObject` and `SetClientObject`") 
+    ExtraLong = property(GetExtraLong,SetExtraLong,doc="See `GetExtraLong` and `SetExtraLong`") 
+    Int = property(GetInt,SetInt,doc="See `GetInt` and `SetInt`") 
+    Selection = property(GetSelection,doc="See `GetSelection`") 
+    String = property(GetString,SetString,doc="See `GetString` and `SetString`") 
 _core_.CommandEvent_swigregister(CommandEvent)
 
 #---------------------------------------------------------------------------
@@ -4133,6 +4342,8 @@ class ScrollEvent(CommandEvent):
         """SetPosition(self, int pos)"""
         return _core_.ScrollEvent_SetPosition(*args, **kwargs)
 
+    Orientation = property(GetOrientation,SetOrientation,doc="See `GetOrientation` and `SetOrientation`") 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
 _core_.ScrollEvent_swigregister(ScrollEvent)
 
 #---------------------------------------------------------------------------
@@ -4179,6 +4390,8 @@ class ScrollWinEvent(Event):
         """SetPosition(self, int pos)"""
         return _core_.ScrollWinEvent_SetPosition(*args, **kwargs)
 
+    Orientation = property(GetOrientation,SetOrientation,doc="See `GetOrientation` and `SetOrientation`") 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
 _core_.ScrollWinEvent_swigregister(ScrollWinEvent)
 
 #---------------------------------------------------------------------------
@@ -4594,6 +4807,14 @@ class MouseEvent(Event):
     m_wheelRotation = property(_core_.MouseEvent_m_wheelRotation_get, _core_.MouseEvent_m_wheelRotation_set)
     m_wheelDelta = property(_core_.MouseEvent_m_wheelDelta_get, _core_.MouseEvent_m_wheelDelta_set)
     m_linesPerAction = property(_core_.MouseEvent_m_linesPerAction_get, _core_.MouseEvent_m_linesPerAction_set)
+    Button = property(GetButton,doc="See `GetButton`") 
+    LinesPerAction = property(GetLinesPerAction,doc="See `GetLinesPerAction`") 
+    LogicalPosition = property(GetLogicalPosition,doc="See `GetLogicalPosition`") 
+    Position = property(GetPosition,doc="See `GetPosition`") 
+    WheelDelta = property(GetWheelDelta,doc="See `GetWheelDelta`") 
+    WheelRotation = property(GetWheelRotation,doc="See `GetWheelRotation`") 
+    X = property(GetX,doc="See `GetX`") 
+    Y = property(GetY,doc="See `GetY`") 
 _core_.MouseEvent_swigregister(MouseEvent)
 
 #---------------------------------------------------------------------------
@@ -4655,6 +4876,9 @@ class SetCursorEvent(Event):
         """
         return _core_.SetCursorEvent_HasCursor(*args, **kwargs)
 
+    Cursor = property(GetCursor,SetCursor,doc="See `GetCursor` and `SetCursor`") 
+    X = property(GetX,doc="See `GetX`") 
+    Y = property(GetY,doc="See `GetY`") 
 _core_.SetCursorEvent_swigregister(SetCursorEvent)
 
 #---------------------------------------------------------------------------
@@ -4822,7 +5046,6 @@ class KeyEvent(Event):
         """
         return _core_.KeyEvent_GetKeyCode(*args, **kwargs)
 
-    KeyCode = GetKeyCode 
     def GetUnicodeKey(*args, **kwargs):
         """
         GetUnicodeKey(self) -> int
@@ -4907,6 +5130,14 @@ class KeyEvent(Event):
     m_scanCode = property(_core_.KeyEvent_m_scanCode_get, _core_.KeyEvent_m_scanCode_set)
     m_rawCode = property(_core_.KeyEvent_m_rawCode_get, _core_.KeyEvent_m_rawCode_set)
     m_rawFlags = property(_core_.KeyEvent_m_rawFlags_get, _core_.KeyEvent_m_rawFlags_set)
+    KeyCode = property(GetKeyCode,doc="See `GetKeyCode`") 
+    Modifiers = property(GetModifiers,doc="See `GetModifiers`") 
+    Position = property(GetPosition,doc="See `GetPosition`") 
+    RawKeyCode = property(GetRawKeyCode,doc="See `GetRawKeyCode`") 
+    RawKeyFlags = property(GetRawKeyFlags,doc="See `GetRawKeyFlags`") 
+    UnicodeKey = property(GetUnicodeKey,SetUnicodeKey,doc="See `GetUnicodeKey` and `SetUnicodeKey`") 
+    X = property(GetX,doc="See `GetX`") 
+    Y = property(GetY,doc="See `GetY`") 
 _core_.KeyEvent_swigregister(KeyEvent)
 
 #---------------------------------------------------------------------------
@@ -4961,6 +5192,8 @@ class SizeEvent(Event):
 
     m_size = property(_core_.SizeEvent_m_size_get, _core_.SizeEvent_m_size_set)
     m_rect = property(_core_.SizeEvent_m_rect_get, _core_.SizeEvent_m_rect_set)
+    Rect = property(GetRect,SetRect,doc="See `GetRect` and `SetRect`") 
+    Size = property(GetSize,SetSize,doc="See `GetSize` and `SetSize`") 
 _core_.SizeEvent_swigregister(SizeEvent)
 
 #---------------------------------------------------------------------------
@@ -5002,6 +5235,8 @@ class MoveEvent(Event):
     m_pos =  property(GetPosition, SetPosition)
     m_rect = property(GetRect, SetRect)
 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
+    Rect = property(GetRect,SetRect,doc="See `GetRect` and `SetRect`") 
 _core_.MoveEvent_swigregister(MoveEvent)
 
 #---------------------------------------------------------------------------
@@ -5071,6 +5306,7 @@ class EraseEvent(Event):
         """
         return _core_.EraseEvent_GetDC(*args, **kwargs)
 
+    DC = property(GetDC,doc="See `GetDC`") 
 _core_.EraseEvent_swigregister(EraseEvent)
 
 #---------------------------------------------------------------------------
@@ -5111,15 +5347,21 @@ class FocusEvent(Event):
         """SetWindow(self, Window win)"""
         return _core_.FocusEvent_SetWindow(*args, **kwargs)
 
+    Window = property(GetWindow,SetWindow,doc="See `GetWindow` and `SetWindow`") 
 _core_.FocusEvent_swigregister(FocusEvent)
 
 #---------------------------------------------------------------------------
 
 class ChildFocusEvent(CommandEvent):
     """
-    wx.ChildFocusEvent notifies the parent that a child has received the
-    focus.  Unlike `wx.FocusEvent` it is propagated up the window
-    heirarchy.
+    A child focus event is sent to a (parent-)window when one of its child
+    windows gains focus, so that the window could restore the focus back
+    to its corresponding child if it loses it now and regains later.
+
+    Notice that child window is the direct child of the window receiving
+    the event, and so may not be the actual widget recieving focus if it
+    is further down the containment heirarchy.  Use `wx.Window.FindFocus`
+    to get the widget that is actually receiving focus.
     """
     thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
     __repr__ = _swig_repr
@@ -5134,10 +5376,12 @@ class ChildFocusEvent(CommandEvent):
         """
         GetWindow(self) -> Window
 
-        The window which has just received the focus.
+        The window, or (grand)parent of the window which has just received the
+        focus.
         """
         return _core_.ChildFocusEvent_GetWindow(*args, **kwargs)
 
+    Window = property(GetWindow,doc="See `GetWindow`") 
 _core_.ChildFocusEvent_swigregister(ChildFocusEvent)
 
 #---------------------------------------------------------------------------
@@ -5177,6 +5421,7 @@ class ActivateEvent(Event):
         """
         return _core_.ActivateEvent_GetActive(*args, **kwargs)
 
+    Active = property(GetActive,doc="See `GetActive`") 
 _core_.ActivateEvent_swigregister(ActivateEvent)
 
 #---------------------------------------------------------------------------
@@ -5248,6 +5493,8 @@ class MenuEvent(Event):
         """
         return _core_.MenuEvent_GetMenu(*args, **kwargs)
 
+    Menu = property(GetMenu,doc="See `GetMenu`") 
+    MenuId = property(GetMenuId,doc="See `GetMenuId`") 
 _core_.MenuEvent_swigregister(MenuEvent)
 
 #---------------------------------------------------------------------------
@@ -5337,6 +5584,7 @@ class CloseEvent(Event):
         """
         return _core_.CloseEvent_CanVeto(*args, **kwargs)
 
+    LoggingOff = property(GetLoggingOff,SetLoggingOff,doc="See `GetLoggingOff` and `SetLoggingOff`") 
 _core_.CloseEvent_swigregister(CloseEvent)
 
 #---------------------------------------------------------------------------
@@ -5360,6 +5608,7 @@ class ShowEvent(Event):
         """GetShow(self) -> bool"""
         return _core_.ShowEvent_GetShow(*args, **kwargs)
 
+    Show = property(GetShow,SetShow,doc="See `GetShow` and `SetShow`") 
 _core_.ShowEvent_swigregister(ShowEvent)
 
 #---------------------------------------------------------------------------
@@ -5450,6 +5699,9 @@ class DropFilesEvent(Event):
         """
         return _core_.DropFilesEvent_GetFiles(*args, **kwargs)
 
+    Files = property(GetFiles,doc="See `GetFiles`") 
+    NumberOfFiles = property(GetNumberOfFiles,doc="See `GetNumberOfFiles`") 
+    Position = property(GetPosition,doc="See `GetPosition`") 
 _core_.DropFilesEvent_swigregister(DropFilesEvent)
 
 #---------------------------------------------------------------------------
@@ -5709,6 +5961,10 @@ class UpdateUIEvent(CommandEvent):
         return _core_.UpdateUIEvent_GetMode(*args, **kwargs)
 
     GetMode = staticmethod(GetMode)
+    Checked = property(GetChecked,Check,doc="See `GetChecked`") 
+    Enabled = property(GetEnabled,Enable,doc="See `GetEnabled`") 
+    Shown = property(GetShown,Show,doc="See `GetShown`") 
+    Text = property(GetText,SetText,doc="See `GetText` and `SetText`") 
 _core_.UpdateUIEvent_swigregister(UpdateUIEvent)
 
 def UpdateUIEvent_SetUpdateInterval(*args, **kwargs):
@@ -5852,6 +6108,7 @@ class MouseCaptureChangedEvent(Event):
         """
         return _core_.MouseCaptureChangedEvent_GetCapturedWindow(*args, **kwargs)
 
+    CapturedWindow = property(GetCapturedWindow,doc="See `GetCapturedWindow`") 
 _core_.MouseCaptureChangedEvent_swigregister(MouseCaptureChangedEvent)
 
 #---------------------------------------------------------------------------
@@ -5942,6 +6199,7 @@ class PaletteChangedEvent(Event):
         """GetChangedWindow(self) -> Window"""
         return _core_.PaletteChangedEvent_GetChangedWindow(*args, **kwargs)
 
+    ChangedWindow = property(GetChangedWindow,SetChangedWindow,doc="See `GetChangedWindow` and `SetChangedWindow`") 
 _core_.PaletteChangedEvent_swigregister(PaletteChangedEvent)
 
 #---------------------------------------------------------------------------
@@ -5974,6 +6232,7 @@ class QueryNewPaletteEvent(Event):
         """GetPaletteRealized(self) -> bool"""
         return _core_.QueryNewPaletteEvent_GetPaletteRealized(*args, **kwargs)
 
+    PaletteRealized = property(GetPaletteRealized,SetPaletteRealized,doc="See `GetPaletteRealized` and `SetPaletteRealized`") 
 _core_.QueryNewPaletteEvent_swigregister(QueryNewPaletteEvent)
 
 #---------------------------------------------------------------------------
@@ -6081,6 +6340,8 @@ class NavigationKeyEvent(Event):
     IsForward = _core_.NavigationKeyEvent_IsForward
     WinChange = _core_.NavigationKeyEvent_WinChange
     FromTab = _core_.NavigationKeyEvent_FromTab
+    CurrentFocus = property(GetCurrentFocus,SetCurrentFocus,doc="See `GetCurrentFocus` and `SetCurrentFocus`") 
+    Direction = property(GetDirection,SetDirection,doc="See `GetDirection` and `SetDirection`") 
 _core_.NavigationKeyEvent_swigregister(NavigationKeyEvent)
 
 #---------------------------------------------------------------------------
@@ -6108,6 +6369,7 @@ class WindowCreateEvent(CommandEvent):
         """
         return _core_.WindowCreateEvent_GetWindow(*args, **kwargs)
 
+    Window = property(GetWindow,doc="See `GetWindow`") 
 _core_.WindowCreateEvent_swigregister(WindowCreateEvent)
 
 class WindowDestroyEvent(CommandEvent):
@@ -6147,6 +6409,7 @@ class WindowDestroyEvent(CommandEvent):
         """
         return _core_.WindowDestroyEvent_GetWindow(*args, **kwargs)
 
+    Window = property(GetWindow,doc="See `GetWindow`") 
 _core_.WindowDestroyEvent_swigregister(WindowDestroyEvent)
 
 #---------------------------------------------------------------------------
@@ -6182,6 +6445,7 @@ class ContextMenuEvent(CommandEvent):
         """
         return _core_.ContextMenuEvent_SetPosition(*args, **kwargs)
 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
 _core_.ContextMenuEvent_swigregister(ContextMenuEvent)
 
 #---------------------------------------------------------------------------
@@ -6450,6 +6714,7 @@ class DateEvent(CommandEvent):
         """
         return _core_.DateEvent_SetDate(*args, **kwargs)
 
+    Date = property(GetDate,SetDate,doc="See `GetDate` and `SetDate`") 
 _core_.DateEvent_swigregister(DateEvent)
 
 wxEVT_DATE_CHANGED = _core_.wxEVT_DATE_CHANGED
@@ -6617,6 +6882,14 @@ class PyApp(EvtHandler):
         """
         return _core_.PyApp_Exit(*args, **kwargs)
 
+    def GetLayoutDirection(*args, **kwargs):
+        """
+        GetLayoutDirection(self) -> int
+
+        Return the layout direction for the current locale.
+        """
+        return _core_.PyApp_GetLayoutDirection(*args, **kwargs)
+
     def ExitMainLoop(*args, **kwargs):
         """
         ExitMainLoop(self)
@@ -6817,6 +7090,39 @@ class PyApp(EvtHandler):
         return _core_.PyApp_GetComCtl32Version(*args, **kwargs)
 
     GetComCtl32Version = staticmethod(GetComCtl32Version)
+    def IsDisplayAvailable(*args, **kwargs):
+        """
+        IsDisplayAvailable() -> bool
+
+        Tests if it is possible to create a GUI in the current environment.
+        This will mean different things on the different platforms.
+
+           * On X Windows systems this function will return ``False`` if it is
+             not able to open a connection to the X display, which can happen
+             if $DISPLAY is not set, or is not set correctly.
+
+           * On Mac OS X a ``False`` return value will mean that wx is not
+             able to access the window manager, which can happen if logged in
+             remotely or if running from the normal version of python instead
+             of the framework version, (i.e., pythonw.)
+
+           * On MS Windows...
+
+        """
+        return _core_.PyApp_IsDisplayAvailable(*args, **kwargs)
+
+    IsDisplayAvailable = staticmethod(IsDisplayAvailable)
+    AppName = property(GetAppName,SetAppName,doc="See `GetAppName` and `SetAppName`") 
+    AssertMode = property(GetAssertMode,SetAssertMode,doc="See `GetAssertMode` and `SetAssertMode`") 
+    ClassName = property(GetClassName,SetClassName,doc="See `GetClassName` and `SetClassName`") 
+    ExitOnFrameDelete = property(GetExitOnFrameDelete,SetExitOnFrameDelete,doc="See `GetExitOnFrameDelete` and `SetExitOnFrameDelete`") 
+    LayoutDirection = property(GetLayoutDirection,doc="See `GetLayoutDirection`") 
+    PrintMode = property(GetPrintMode,SetPrintMode,doc="See `GetPrintMode` and `SetPrintMode`") 
+    TopWindow = property(GetTopWindow,SetTopWindow,doc="See `GetTopWindow` and `SetTopWindow`") 
+    Traits = property(GetTraits,doc="See `GetTraits`") 
+    UseBestVisual = property(GetUseBestVisual,SetUseBestVisual,doc="See `GetUseBestVisual` and `SetUseBestVisual`") 
+    VendorName = property(GetVendorName,SetVendorName,doc="See `GetVendorName` and `SetVendorName`") 
+    Active = property(IsActive) 
 _core_.PyApp_swigregister(PyApp)
 
 def PyApp_IsMainLoopRunning(*args):
@@ -6877,6 +7183,27 @@ def PyApp_GetComCtl32Version(*args):
     """
   return _core_.PyApp_GetComCtl32Version(*args)
 
+def PyApp_IsDisplayAvailable(*args):
+  """
+    PyApp_IsDisplayAvailable() -> bool
+
+    Tests if it is possible to create a GUI in the current environment.
+    This will mean different things on the different platforms.
+
+       * On X Windows systems this function will return ``False`` if it is
+         not able to open a connection to the X display, which can happen
+         if $DISPLAY is not set, or is not set correctly.
+
+       * On Mac OS X a ``False`` return value will mean that wx is not
+         able to access the window manager, which can happen if logged in
+         remotely or if running from the normal version of python instead
+         of the framework version, (i.e., pythonw.)
+
+       * On MS Windows...
+
+    """
+  return _core_.PyApp_IsDisplayAvailable(*args)
+
 #---------------------------------------------------------------------------
 
 
@@ -7046,7 +7373,7 @@ class PyOnDemandOutputWindow:
 #----------------------------------------------------------------------
 
 _defRedirect = (wx.Platform == '__WXMSW__' or wx.Platform == '__WXMAC__')
-
+        
 class App(wx.PyApp):
     """
     The ``wx.App`` class represents the application and is used to:
@@ -7104,22 +7431,26 @@ class App(wx.PyApp):
             initialization to ensure that the system, toolkit and
             wxWidgets are fully initialized.
         """
+        
         wx.PyApp.__init__(self)
 
-        if wx.Platform == "__WXMAC__":
-            try:
-                import MacOS
-                if not MacOS.WMAvailable():
-                    print """\
-This program needs access to the screen. Please run with 'pythonw',
-not 'python', and only when you are logged in on the main display of
-your Mac."""
-                    _sys.exit(1)
-            except SystemExit:
-                raise
-            except:
-                pass
+        # make sure we can create a GUI
+        if not self.IsDisplayAvailable():
+            
+            if wx.Platform == "__WXMAC__":
+                msg = """This program needs access to the screen.
+Please run with 'pythonw', not 'python', and only when you are logged
+in on the main display of your Mac."""
+                
+            elif wx.Platform == "__WXGTK__":
+                msg ="Unable to access the X Display, is $DISPLAY set properly?"
+
+            else:
+                msg = "Unable to create GUI"
+                # TODO: more description is needed for wxMSW...
 
+            raise SystemExit(msg)
+        
         # This has to be done before OnInit
         self.SetUseBestVisual(useBestVisual)
 
@@ -7164,8 +7495,8 @@ your Mac."""
         destroy(self)
 
     def Destroy(self):
+        self.this.own(False)
         wx.PyApp.Destroy(self)
-        self.thisown = 0
 
     def SetTopWindow(self, frame):
         """Set the \"main\" top level window"""
@@ -7354,6 +7685,11 @@ _core_.EventLoopActivator_swigregister(EventLoopActivator)
 
 #---------------------------------------------------------------------------
 
+ACCEL_ALT = _core_.ACCEL_ALT
+ACCEL_CTRL = _core_.ACCEL_CTRL
+ACCEL_SHIFT = _core_.ACCEL_SHIFT
+ACCEL_NORMAL = _core_.ACCEL_NORMAL
+ACCEL_CMD = _core_.ACCEL_CMD
 class AcceleratorEntry(object):
     """
     A class used to define items in an `wx.AcceleratorTable`.  wxPython
@@ -7383,6 +7719,16 @@ class AcceleratorEntry(object):
         """
         return _core_.AcceleratorEntry_Set(*args, **kwargs)
 
+    def Create(*args, **kwargs):
+        """
+        Create(String str) -> AcceleratorEntry
+
+        Create accelerator corresponding to the specified string, or None if
+        it coulnd't be parsed.
+        """
+        return _core_.AcceleratorEntry_Create(*args, **kwargs)
+
+    Create = staticmethod(Create)
     def GetFlags(*args, **kwargs):
         """
         GetFlags(self) -> int
@@ -7407,8 +7753,43 @@ class AcceleratorEntry(object):
         """
         return _core_.AcceleratorEntry_GetCommand(*args, **kwargs)
 
+    def IsOk(*args, **kwargs):
+        """IsOk(self) -> bool"""
+        return _core_.AcceleratorEntry_IsOk(*args, **kwargs)
+
+    def ToString(*args, **kwargs):
+        """
+        ToString(self) -> String
+
+        Returns a string representation for the this accelerator.  The string
+        is formatted using the <flags>-<keycode> format where <flags> maybe a
+        hyphen-separed list of "shift|alt|ctrl"
+
+        """
+        return _core_.AcceleratorEntry_ToString(*args, **kwargs)
+
+    def FromString(*args, **kwargs):
+        """
+        FromString(self, String str) -> bool
+
+        Returns true if the given string correctly initialized this object.
+        """
+        return _core_.AcceleratorEntry_FromString(*args, **kwargs)
+
+    Command = property(GetCommand,doc="See `GetCommand`") 
+    Flags = property(GetFlags,doc="See `GetFlags`") 
+    KeyCode = property(GetKeyCode,doc="See `GetKeyCode`") 
 _core_.AcceleratorEntry_swigregister(AcceleratorEntry)
 
+def AcceleratorEntry_Create(*args, **kwargs):
+  """
+    AcceleratorEntry_Create(String str) -> AcceleratorEntry
+
+    Create accelerator corresponding to the specified string, or None if
+    it coulnd't be parsed.
+    """
+  return _core_.AcceleratorEntry_Create(*args, **kwargs)
+
 class AcceleratorTable(Object):
     """
     An accelerator table allows the application to specify a table of
@@ -7430,10 +7811,11 @@ class AcceleratorTable(Object):
         _core_.AcceleratorTable_swiginit(self,_core_.new_AcceleratorTable(*args, **kwargs))
     __swig_destroy__ = _core_.delete_AcceleratorTable
     __del__ = lambda self : None;
-    def Ok(*args, **kwargs):
-        """Ok(self) -> bool"""
-        return _core_.AcceleratorTable_Ok(*args, **kwargs)
+    def IsOk(*args, **kwargs):
+        """IsOk(self) -> bool"""
+        return _core_.AcceleratorTable_IsOk(*args, **kwargs)
 
+    Ok = IsOk 
 _core_.AcceleratorTable_swigregister(AcceleratorTable)
 
 
@@ -7520,9 +7902,8 @@ class Window(EvtHandler):
         Returns True if the window has either been successfully deleted, or it
         has been added to the list of windows pending real deletion.
         """
-        val = _core_.Window_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _core_.Window_Destroy(*args, **kwargs)
 
     def DestroyChildren(*args, **kwargs):
         """
@@ -7645,6 +8026,32 @@ class Window(EvtHandler):
         return _core_.Window_PrevControlId(*args, **kwargs)
 
     PrevControlId = staticmethod(PrevControlId)
+    def GetLayoutDirection(*args, **kwargs):
+        """
+        GetLayoutDirection(self) -> int
+
+        Get the layout direction (LTR or RTL) for this window.  Returns
+        ``wx.Layout_Default`` if layout direction is not supported.
+        """
+        return _core_.Window_GetLayoutDirection(*args, **kwargs)
+
+    def SetLayoutDirection(*args, **kwargs):
+        """
+        SetLayoutDirection(self, int dir)
+
+        Set the layout direction (LTR or RTL) for this window.
+        """
+        return _core_.Window_SetLayoutDirection(*args, **kwargs)
+
+    def AdjustForLayoutDirection(*args, **kwargs):
+        """
+        AdjustForLayoutDirection(self, int x, int width, int widthTotal) -> int
+
+        Mirror coordinates for RTL layout if this window uses it and if the
+        mirroring is not done automatically like Win32.
+        """
+        return _core_.Window_AdjustForLayoutDirection(*args, **kwargs)
+
     def SetSize(*args, **kwargs):
         """
         SetSize(self, Size size)
@@ -8196,6 +8603,16 @@ class Window(EvtHandler):
         """
         return _core_.Window_IsEnabled(*args, **kwargs)
 
+    def IsShownOnScreen(*args, **kwargs):
+        """
+        IsShownOnScreen(self) -> bool
+
+        Returns ``True`` if the window is physically visible on the screen,
+        i.e. it is shown and all its parents up to the toplevel window are
+        shown as well.
+        """
+        return _core_.Window_IsShownOnScreen(*args, **kwargs)
+
     def SetWindowStyleFlag(*args, **kwargs):
         """
         SetWindowStyleFlag(self, long style)
@@ -8471,14 +8888,16 @@ class Window(EvtHandler):
         SetEventHandler(self, EvtHandler handler)
 
         Sets the event handler for this window.  An event handler is an object
-        that is capable of processing the events sent to a window. By default,
-        the window is its own event handler, but an application may wish to
-        substitute another, for example to allow central implementation of
-        event-handling for a variety of different window classes.
+        that is capable of processing the events sent to a window.  (In other
+        words, is able to dispatch the events to handler function.)  By
+        default, the window is its own event handler, but an application may
+        wish to substitute another, for example to allow central
+        implementation of event-handling for a variety of different window
+        classes.
 
         It is usually better to use `wx.Window.PushEventHandler` since this sets
         up a chain of event handlers, where an event not handled by one event
-        handler is handed to the next one in the chain.
+        handler is handed off to the next one in the chain.
         """
         return _core_.Window_SetEventHandler(*args, **kwargs)
 
@@ -8488,15 +8907,19 @@ class Window(EvtHandler):
 
         Pushes this event handler onto the event handler stack for the window.
         An event handler is an object that is capable of processing the events
-        sent to a window. By default, the window is its own event handler, but
-        an application may wish to substitute another, for example to allow
-        central implementation of event-handling for a variety of different
-        window classes.
+        sent to a window.  (In other words, is able to dispatch the events to
+        handler function.)  By default, the window is its own event handler,
+        but an application may wish to substitute another, for example to
+        allow central implementation of event-handling for a variety of
+        different window classes.
 
         wx.Window.PushEventHandler allows an application to set up a chain of
         event handlers, where an event not handled by one event handler is
-        handed to the next one in the chain. Use `wx.Window.PopEventHandler` to
-        remove the event handler.
+        handed to the next one in the chain.  Use `wx.Window.PopEventHandler`
+        to remove the event handler.  Ownership of the handler is *not* given
+        to the window, so you should be sure to pop the handler before the
+        window is destroyed and either let PopEventHandler destroy it, or call
+        its Destroy method yourself.
         """
         return _core_.Window_PushEventHandler(*args, **kwargs)
 
@@ -8506,7 +8929,7 @@ class Window(EvtHandler):
 
         Removes and returns the top-most event handler on the event handler
         stack.  If deleteHandler is True then the wx.EvtHandler object will be
-        destroyed after it is popped.
+        destroyed after it is popped, and ``None`` will be returned instead.
         """
         return _core_.Window_PopEventHandler(*args, **kwargs)
 
@@ -8515,7 +8938,7 @@ class Window(EvtHandler):
         RemoveEventHandler(self, EvtHandler handler) -> bool
 
         Find the given handler in the event handler chain and remove (but not
-        delete) it from the event handler chain, return True if it was found
+        delete) it from the event handler chain, returns True if it was found
         and False otherwise (this also results in an assert failure so this
         function should only be called when the handler is supposed to be
         there.)
@@ -8765,7 +9188,7 @@ class Window(EvtHandler):
         window instead of waiting for the EVT_PAINT event to happen, (normally
         this would usually only happen when the flow of control returns to the
         event loop.)  Notice that this function doesn't refresh the window and
-        does nothing if the window has been already repainted.  Use Refresh
+        does nothing if the window has been already repainted.  Use `Refresh`
         first if you want to immediately redraw the window (or some portion of
         it) unconditionally.
         """
@@ -8798,6 +9221,16 @@ class Window(EvtHandler):
         """
         return _core_.Window_Freeze(*args, **kwargs)
 
+    def IsFrozen(*args, **kwargs):
+        """
+        IsFrozen(self) -> bool
+
+        Returns ``True`` if the window has been frozen and not thawed yet.
+
+        :see: `Freeze` and `Thaw`
+        """
+        return _core_.Window_IsFrozen(*args, **kwargs)
+
     def Thaw(*args, **kwargs):
         """
         Thaw(self)
@@ -8818,6 +9251,17 @@ class Window(EvtHandler):
         """
         return _core_.Window_PrepareDC(*args, **kwargs)
 
+    def IsDoubleBuffered(*args, **kwargs):
+        """
+        IsDoubleBuffered(self) -> bool
+
+        Returns ``True`` if the window contents is double-buffered by the
+        system, i.e. if any drawing done on the window is really done on a
+        temporary backing surface and transferred to the screen all at once
+        later.
+        """
+        return _core_.Window_IsDoubleBuffered(*args, **kwargs)
+
     def GetUpdateRegion(*args, **kwargs):
         """
         GetUpdateRegion(self) -> Region
@@ -9588,6 +10032,32 @@ class Window(EvtHandler):
         """
         return _core_.Window_ShouldInheritColours(*args, **kwargs)
 
+    def CanSetTransparent(*args, **kwargs):
+        """
+        CanSetTransparent(self) -> bool
+
+        Returns ``True`` if the platform supports setting the transparency for
+        this window.  Note that this method will err on the side of caution,
+        so it is possible that this will return ``False`` when it is in fact
+        possible to set the transparency.
+
+        NOTE: On X-windows systems the X server must have the composite
+        extension loaded, and there must be a composite manager program (such
+        as xcompmgr) running.
+        """
+        return _core_.Window_CanSetTransparent(*args, **kwargs)
+
+    def SetTransparent(*args, **kwargs):
+        """
+        SetTransparent(self, byte alpha) -> bool
+
+        Attempt to set the transparency of this window to the ``alpha`` value,
+        returns True on success.  The ``alpha`` value is an integer in the
+        range of 0 to 255, where 0 is fully transparent and 255 is fully
+        opaque.
+        """
+        return _core_.Window_SetTransparent(*args, **kwargs)
+
     def PostCreate(self, pre):
         """
         Phase 3 of the 2-phase create <wink!>
@@ -9604,6 +10074,63 @@ class Window(EvtHandler):
     def SendSizeEvent(self):
         self.GetEventHandler().ProcessEvent(wx.SizeEvent((-1,-1)))
 
+    AcceleratorTable = property(GetAcceleratorTable,SetAcceleratorTable,doc="See `GetAcceleratorTable` and `SetAcceleratorTable`") 
+    AdjustedBestSize = property(GetAdjustedBestSize,doc="See `GetAdjustedBestSize`") 
+    AutoLayout = property(GetAutoLayout,SetAutoLayout,doc="See `GetAutoLayout` and `SetAutoLayout`") 
+    BackgroundColour = property(GetBackgroundColour,SetBackgroundColour,doc="See `GetBackgroundColour` and `SetBackgroundColour`") 
+    BackgroundStyle = property(GetBackgroundStyle,SetBackgroundStyle,doc="See `GetBackgroundStyle` and `SetBackgroundStyle`") 
+    BestFittingSize = property(GetBestFittingSize,SetBestFittingSize,doc="See `GetBestFittingSize` and `SetBestFittingSize`") 
+    BestSize = property(GetBestSize,doc="See `GetBestSize`") 
+    BestVirtualSize = property(GetBestVirtualSize,doc="See `GetBestVirtualSize`") 
+    Border = property(GetBorder,doc="See `GetBorder`") 
+    Caret = property(GetCaret,SetCaret,doc="See `GetCaret` and `SetCaret`") 
+    CharHeight = property(GetCharHeight,doc="See `GetCharHeight`") 
+    CharWidth = property(GetCharWidth,doc="See `GetCharWidth`") 
+    Children = property(GetChildren,doc="See `GetChildren`") 
+    ClientAreaOrigin = property(GetClientAreaOrigin,doc="See `GetClientAreaOrigin`") 
+    ClientRect = property(GetClientRect,SetClientRect,doc="See `GetClientRect` and `SetClientRect`") 
+    ClientSize = property(GetClientSize,SetClientSize,doc="See `GetClientSize` and `SetClientSize`") 
+    Constraints = property(GetConstraints,SetConstraints,doc="See `GetConstraints` and `SetConstraints`") 
+    ContainingSizer = property(GetContainingSizer,SetContainingSizer,doc="See `GetContainingSizer` and `SetContainingSizer`") 
+    Cursor = property(GetCursor,SetCursor,doc="See `GetCursor` and `SetCursor`") 
+    DefaultAttributes = property(GetDefaultAttributes,doc="See `GetDefaultAttributes`") 
+    DropTarget = property(GetDropTarget,SetDropTarget,doc="See `GetDropTarget` and `SetDropTarget`") 
+    EventHandler = property(GetEventHandler,SetEventHandler,doc="See `GetEventHandler` and `SetEventHandler`") 
+    ExtraStyle = property(GetExtraStyle,SetExtraStyle,doc="See `GetExtraStyle` and `SetExtraStyle`") 
+    Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
+    ForegroundColour = property(GetForegroundColour,SetForegroundColour,doc="See `GetForegroundColour` and `SetForegroundColour`") 
+    GrandParent = property(GetGrandParent,doc="See `GetGrandParent`") 
+    Handle = property(GetHandle,doc="See `GetHandle`") 
+    HelpText = property(GetHelpText,SetHelpText,doc="See `GetHelpText` and `SetHelpText`") 
+    Id = property(GetId,SetId,doc="See `GetId` and `SetId`") 
+    Label = property(GetLabel,SetLabel,doc="See `GetLabel` and `SetLabel`") 
+    LayoutDirection = property(GetLayoutDirection,SetLayoutDirection,doc="See `GetLayoutDirection` and `SetLayoutDirection`") 
+    MaxHeight = property(GetMaxHeight,doc="See `GetMaxHeight`") 
+    MaxSize = property(GetMaxSize,SetMaxSize,doc="See `GetMaxSize` and `SetMaxSize`") 
+    MaxWidth = property(GetMaxWidth,doc="See `GetMaxWidth`") 
+    MinHeight = property(GetMinHeight,doc="See `GetMinHeight`") 
+    MinSize = property(GetMinSize,SetMinSize,doc="See `GetMinSize` and `SetMinSize`") 
+    MinWidth = property(GetMinWidth,doc="See `GetMinWidth`") 
+    Name = property(GetName,SetName,doc="See `GetName` and `SetName`") 
+    Parent = property(GetParent,doc="See `GetParent`") 
+    Position = property(GetPosition,SetPosition,doc="See `GetPosition` and `SetPosition`") 
+    Rect = property(GetRect,SetRect,doc="See `GetRect` and `SetRect`") 
+    ScreenPosition = property(GetScreenPosition,doc="See `GetScreenPosition`") 
+    ScreenRect = property(GetScreenRect,doc="See `GetScreenRect`") 
+    Size = property(GetSize,SetSize,doc="See `GetSize` and `SetSize`") 
+    Sizer = property(GetSizer,SetSizer,doc="See `GetSizer` and `SetSizer`") 
+    ThemeEnabled = property(GetThemeEnabled,SetThemeEnabled,doc="See `GetThemeEnabled` and `SetThemeEnabled`") 
+    ToolTip = property(GetToolTip,SetToolTip,doc="See `GetToolTip` and `SetToolTip`") 
+    UpdateClientRect = property(GetUpdateClientRect,doc="See `GetUpdateClientRect`") 
+    UpdateRegion = property(GetUpdateRegion,doc="See `GetUpdateRegion`") 
+    Validator = property(GetValidator,SetValidator,doc="See `GetValidator` and `SetValidator`") 
+    VirtualSize = property(GetVirtualSize,SetVirtualSize,doc="See `GetVirtualSize` and `SetVirtualSize`") 
+    WindowStyle = property(GetWindowStyle,SetWindowStyle,doc="See `GetWindowStyle` and `SetWindowStyle`") 
+    WindowStyleFlag = property(GetWindowStyleFlag,SetWindowStyleFlag,doc="See `GetWindowStyleFlag` and `SetWindowStyleFlag`") 
+    WindowVariant = property(GetWindowVariant,SetWindowVariant,doc="See `GetWindowVariant` and `SetWindowVariant`") 
+    Shown = property(IsShown,Show,doc="See `IsShown` and `Show`") 
+    Enabled = property(IsEnabled,Enable,doc="See `IsEnabled` and `Enable`") 
+    TopLevel = property(IsTopLevel,doc="See `IsTopLevel`") 
 _core_.Window_swigregister(Window)
 
 def PreWindow(*args, **kwargs):
@@ -9793,6 +10320,7 @@ class Validator(EvtHandler):
         return _core_.Validator_SetBellOnError(*args, **kwargs)
 
     SetBellOnError = staticmethod(SetBellOnError)
+    Window = property(GetWindow,SetWindow,doc="See `GetWindow` and `SetWindow`") 
 _core_.Validator_swigregister(Validator)
 
 def Validator_IsSilent(*args):
@@ -9832,7 +10360,10 @@ class Menu(EvtHandler):
         self._setOORInfo(self)
 
     def Append(*args, **kwargs):
-        """Append(self, int id, String text, String help=EmptyString, int kind=ITEM_NORMAL) -> MenuItem"""
+        """
+        Append(self, int id, String text=EmptyString, String help=EmptyString, 
+            int kind=ITEM_NORMAL) -> MenuItem
+        """
         return _core_.Menu_Append(*args, **kwargs)
 
     def AppendSeparator(*args, **kwargs):
@@ -9873,7 +10404,7 @@ class Menu(EvtHandler):
 
     def Insert(*args, **kwargs):
         """
-        Insert(self, size_t pos, int id, String text, String help=EmptyString, 
+        Insert(self, size_t pos, int id, String text=EmptyString, String help=EmptyString, 
             int kind=ITEM_NORMAL) -> MenuItem
         """
         return _core_.Menu_Insert(*args, **kwargs)
@@ -9895,7 +10426,10 @@ class Menu(EvtHandler):
         return _core_.Menu_InsertMenu(*args, **kwargs)
 
     def Prepend(*args, **kwargs):
-        """Prepend(self, int id, String text, String help=EmptyString, int kind=ITEM_NORMAL) -> MenuItem"""
+        """
+        Prepend(self, int id, String text=EmptyString, String help=EmptyString, 
+            int kind=ITEM_NORMAL) -> MenuItem
+        """
         return _core_.Menu_Prepend(*args, **kwargs)
 
     def PrependSeparator(*args, **kwargs):
@@ -9936,29 +10470,16 @@ class Menu(EvtHandler):
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        val = _core_.Menu_Destroy(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        args[0].this.own(False)
+        return _core_.Menu_Destroy(*args, **kwargs)
 
     def DestroyId(*args, **kwargs):
-        """
-        DestroyId(self, int id) -> bool
-
-        Deletes the C++ object this Python object is a proxy for.
-        """
-        val = _core_.Menu_DestroyId(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        """DestroyId(self, int id) -> bool"""
+        return _core_.Menu_DestroyId(*args, **kwargs)
 
     def DestroyItem(*args, **kwargs):
-        """
-        DestroyItem(self, MenuItem item) -> bool
-
-        Deletes the C++ object this Python object is a proxy for.
-        """
-        val = _core_.Menu_DestroyItem(*args, **kwargs)
-        args[0].thisown = 0
-        return val
+        """DestroyItem(self, MenuItem item) -> bool"""
+        return _core_.Menu_DestroyItem(*args, **kwargs)
 
     def GetMenuItemCount(*args, **kwargs):
         """GetMenuItemCount(self) -> size_t"""
@@ -10068,6 +10589,15 @@ class Menu(EvtHandler):
         """GetParent(self) -> Menu"""
         return _core_.Menu_GetParent(*args, **kwargs)
 
+    EventHandler = property(GetEventHandler,SetEventHandler,doc="See `GetEventHandler` and `SetEventHandler`") 
+    HelpString = property(GetHelpString,SetHelpString,doc="See `GetHelpString` and `SetHelpString`") 
+    InvokingWindow = property(GetInvokingWindow,SetInvokingWindow,doc="See `GetInvokingWindow` and `SetInvokingWindow`") 
+    MenuBar = property(GetMenuBar,doc="See `GetMenuBar`") 
+    MenuItemCount = property(GetMenuItemCount,doc="See `GetMenuItemCount`") 
+    MenuItems = property(GetMenuItems,doc="See `GetMenuItems`") 
+    Parent = property(GetParent,SetParent,doc="See `GetParent` and `SetParent`") 
+    Style = property(GetStyle,doc="See `GetStyle`") 
+    Title = property(GetTitle,SetTitle,doc="See `GetTitle` and `SetTitle`") 
 _core_.Menu_swigregister(Menu)
 DefaultValidator = cvar.DefaultValidator
 
@@ -10182,6 +10712,10 @@ class MenuBar(Window):
         """Detach(self)"""
         return _core_.MenuBar_Detach(*args, **kwargs)
 
+    def UpdateMenus(*args, **kwargs):
+        """UpdateMenus(self)"""
+        return _core_.MenuBar_UpdateMenus(*args, **kwargs)
+
     def SetAutoWindowMenu(*args, **kwargs):
         """SetAutoWindowMenu(bool enable)"""
         return _core_.MenuBar_SetAutoWindowMenu(*args, **kwargs)
@@ -10192,6 +10726,22 @@ class MenuBar(Window):
         return _core_.MenuBar_GetAutoWindowMenu(*args, **kwargs)
 
     GetAutoWindowMenu = staticmethod(GetAutoWindowMenu)
+    def GetMenus(self):
+        """Return a list of (menu, label) items for the menus in the MenuBar. """
+        return [(self.GetMenu(i), self.GetLabelTop(i)) 
+                for i in range(self.GetMenuCount())]
+        
+    def SetMenus(self, items):
+        """Clear and add new menus to the MenuBar from a list of (menu, label) items. """
+        for i in range(self.GetMenuCount()-1, -1, -1):
+            self.Remove(i)
+        for m, l in items:
+            self.Append(m, l)
+
+    Frame = property(GetFrame,doc="See `GetFrame`") 
+    Menu = property(GetMenu,doc="See `GetMenu`") 
+    MenuCount = property(GetMenuCount,doc="See `GetMenuCount`") 
+    Menus = property(GetMenus,SetMenus,doc="See `GetMenus` and `SetMenus`") 
 _core_.MenuBar_swigregister(MenuBar)
 
 def MenuBar_SetAutoWindowMenu(*args, **kwargs):
@@ -10387,6 +10937,20 @@ class MenuItem(Object):
         """ResetOwnerDrawn(self)"""
         return _core_.MenuItem_ResetOwnerDrawn(*args, **kwargs)
 
+    Accel = property(GetAccel,SetAccel,doc="See `GetAccel` and `SetAccel`") 
+    BackgroundColour = property(GetBackgroundColour,SetBackgroundColour,doc="See `GetBackgroundColour` and `SetBackgroundColour`") 
+    Bitmap = property(GetBitmap,SetBitmap,doc="See `GetBitmap` and `SetBitmap`") 
+    DisabledBitmap = property(GetDisabledBitmap,SetDisabledBitmap,doc="See `GetDisabledBitmap` and `SetDisabledBitmap`") 
+    Font = property(GetFont,SetFont,doc="See `GetFont` and `SetFont`") 
+    Help = property(GetHelp,SetHelp,doc="See `GetHelp` and `SetHelp`") 
+    Id = property(GetId,SetId,doc="See `GetId` and `SetId`") 
+    Kind = property(GetKind,SetKind,doc="See `GetKind` and `SetKind`") 
+    Label = property(GetLabel,doc="See `GetLabel`") 
+    MarginWidth = property(GetMarginWidth,SetMarginWidth,doc="See `GetMarginWidth` and `SetMarginWidth`") 
+    Menu = property(GetMenu,SetMenu,doc="See `GetMenu` and `SetMenu`") 
+    SubMenu = property(GetSubMenu,SetSubMenu,doc="See `GetSubMenu` and `SetSubMenu`") 
+    Text = property(GetText,SetText,doc="See `GetText` and `SetText`") 
+    TextColour = property(GetTextColour,SetTextColour,doc="See `GetTextColour` and `SetTextColour`") 
 _core_.MenuItem_swigregister(MenuItem)
 
 def MenuItem_GetLabelFromText(*args, **kwargs):
@@ -10457,14 +11021,6 @@ class Control(Window):
         """
         return _core_.Control_Command(*args, **kwargs)
 
-    def GetLabel(*args, **kwargs):
-        """
-        GetLabel(self) -> String
-
-        Return a control's text.
-        """
-        return _core_.Control_GetLabel(*args, **kwargs)
-
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -10483,6 +11039,8 @@ class Control(Window):
         return _core_.Control_GetClassDefaultAttributes(*args, **kwargs)
 
     GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
+    Alignment = property(GetAlignment,doc="See `GetAlignment`") 
+    LabelText = property(GetLabelText,doc="See `GetLabelText`") 
 _core_.Control_swigregister(Control)
 ControlNameStr = cvar.ControlNameStr
 
@@ -10683,6 +11241,21 @@ class ItemContainer(object):
         """
         return _core_.ItemContainer_Select(*args, **kwargs)
 
+    def GetItems(self):
+        """Return a list of the strings in the control"""
+        return [self.GetString(i) for i in xrange(self.GetCount())]
+        
+    def SetItems(self, items):
+        """Clear and set the strings in the control from a list"""
+        self.Clear()
+        for i in items:
+            self.Append(i)        
+
+    Count = property(GetCount,doc="See `GetCount`") 
+    Items = property(GetItems,SetItems,doc="See `GetItems` and `SetItems`") 
+    Selection = property(GetSelection,SetSelection,doc="See `GetSelection` and `SetSelection`") 
+    StringSelection = property(GetStringSelection,SetStringSelection,doc="See `GetStringSelection` and `SetStringSelection`") 
+    Strings = property(GetStrings,doc="See `GetStrings`") 
 _core_.ItemContainer_swigregister(ItemContainer)
 
 #---------------------------------------------------------------------------
@@ -11002,6 +11575,19 @@ class SizerItem(Object):
         """
         return _core_.SizerItem_SetUserData(*args, **kwargs)
 
+    Border = property(GetBorder,SetBorder,doc="See `GetBorder` and `SetBorder`") 
+    Flag = property(GetFlag,SetFlag,doc="See `GetFlag` and `SetFlag`") 
+    MinSize = property(GetMinSize,doc="See `GetMinSize`") 
+    MinSizeWithBorder = property(GetMinSizeWithBorder,doc="See `GetMinSizeWithBorder`") 
+    Position = property(GetPosition,doc="See `GetPosition`") 
+    Proportion = property(GetProportion,SetProportion,doc="See `GetProportion` and `SetProportion`") 
+    Ratio = property(GetRatio,SetRatio,doc="See `GetRatio` and `SetRatio`") 
+    Rect = property(GetRect,doc="See `GetRect`") 
+    Size = property(GetSize,doc="See `GetSize`") 
+    Sizer = property(GetSizer,SetSizer,doc="See `GetSizer` and `SetSizer`") 
+    Spacer = property(GetSpacer,SetSpacer,doc="See `GetSpacer` and `SetSpacer`") 
+    UserData = property(GetUserData,SetUserData,doc="See `GetUserData` and `SetUserData`") 
+    Window = property(GetWindow,SetWindow,doc="See `GetWindow` and `SetWindow`") 
 _core_.SizerItem_swigregister(SizerItem)
 
 def SizerItemWindow(*args, **kwargs):
@@ -11141,6 +11727,57 @@ class Sizer(Object):
         """_SetItemMinSize(self, PyObject item, Size size)"""
         return _core_.Sizer__SetItemMinSize(*args, **kwargs)
 
+    def _ReplaceWin(*args, **kwargs):
+        """_ReplaceWin(self, Window oldwin, Window newwin, bool recursive=False) -> bool"""
+        return _core_.Sizer__ReplaceWin(*args, **kwargs)
+
+    def _ReplaceSizer(*args, **kwargs):
+        """_ReplaceSizer(self, Sizer oldsz, Sizer newsz, bool recursive=False) -> bool"""
+        return _core_.Sizer__ReplaceSizer(*args, **kwargs)
+
+    def _ReplaceItem(*args, **kwargs):
+        """_ReplaceItem(self, size_t index, SizerItem newitem) -> bool"""
+        return _core_.Sizer__ReplaceItem(*args, **kwargs)
+
+    def Replace(self, olditem, item, recursive=False):
+        """
+        Detaches the given ``olditem`` from the sizer and replaces it with
+        ``item`` which can be a window, sizer, or `wx.SizerItem`.  The
+        detached child is destroyed only if it is not a window, (because
+        windows are owned by their parent, not the sizer.)  The
+        ``recursive`` parameter can be used to search for the given
+        element recursivly in subsizers.
+
+        This method does not cause any layout or resizing to take place,
+        call `Layout` to do so.
+
+        Returns ``True`` if the child item was found and removed.
+        """
+        if isinstance(olditem, wx.Window):
+            return self._ReplaceWin(olditem, item, recursive)
+        elif isinstnace(olditem, wx.Sizer):
+            return self._ReplaceSizer(olditem, item, recursive)
+        elif isinstnace(olditem, int):
+            return self._ReplaceItem(olditem, item)
+        else:
+            raise TypeError("Expected Window, Sizer, or integer for first parameter.")
+
+    def SetContainingWindow(*args, **kwargs):
+        """
+        SetContainingWindow(self, Window window)
+
+        Set (or unset) the window this sizer is used in.
+        """
+        return _core_.Sizer_SetContainingWindow(*args, **kwargs)
+
+    def GetContainingWindow(*args, **kwargs):
+        """
+        GetContainingWindow(self) -> Window
+
+        Get the window this sizer is used in.
+        """
+        return _core_.Sizer_GetContainingWindow(*args, **kwargs)
+
     def SetItemMinSize(self, item, *args):
         """
         SetItemMinSize(self, item, Size size)
@@ -11192,6 +11829,50 @@ class Sizer(Object):
                 item = (item, )
             self.Add(*item)
 
+    def AddSpacer(self, *args, **kw):
+        """AddSpacer(int size) --> SizerItem
+
+        Add a spacer that is (size,size) pixels.
+        """
+        if args and type(args[0]) == int:
+            return self.Add( (args[0],args[0] ), 0)
+        else: # otherwise stay compatible with old AddSpacer
+            return self.Add(*args, **kw)
+    def PrependSpacer(self, *args, **kw):
+        """PrependSpacer(int size) --> SizerItem
+
+        Prepend a spacer that is (size, size) pixels."""
+        if args and type(args[0]) == int:
+            return self.Prepend( (args[0],args[0] ), 0)
+        else: # otherwise stay compatible with old PrependSpacer
+            return self.Prepend(*args, **kw)
+    def InsertSpacer(self, index, *args, **kw):
+        """InsertSpacer(int index, int size) --> SizerItem
+
+        Insert a spacer at position index that is (size, size) pixels."""
+        if args and type(args[0]) == int:
+            return self.Insert( index, (args[0],args[0] ), 0)
+        else: # otherwise stay compatible with old InsertSpacer
+            return self.Insert(index, *args, **kw)
+
+                   
+    def AddStretchSpacer(self, prop=1):
+        """AddStretchSpacer(int prop=1) --> SizerItem
+
+        Add a stretchable spacer."""
+        return self.Add((0,0), prop)
+    def PrependStretchSpacer(self, prop=1):
+        """PrependStretchSpacer(int prop=1) --> SizerItem
+
+        Prepend a stretchable spacer."""
+        return self.Prepend((0,0), prop)
+    def InsertStretchSpacer(self, index, prop=1):
+        """InsertStretchSpacer(int index, int prop=1) --> SizerItem
+
+        Insert a stretchable spacer."""
+        return self.Insert(index, (0,0), prop)
+
+            
     # for backwards compatibility only, please do not use in new code
     def AddWindow(self, *args, **kw):
         """Compatibility alias for `Add`."""
@@ -11199,9 +11880,6 @@ class Sizer(Object):
     def AddSizer(self, *args, **kw):
         """Compatibility alias for `Add`."""
         return self.Add(*args, **kw)
-    def AddSpacer(self, *args, **kw):
-        """Compatibility alias for `Add`."""
-        return self.Add(*args, **kw)
 
     def PrependWindow(self, *args, **kw):
         """Compatibility alias for `Prepend`."""
@@ -11209,9 +11887,6 @@ class Sizer(Object):
     def PrependSizer(self, *args, **kw):
         """Compatibility alias for `Prepend`."""
         return self.Prepend(*args, **kw)
-    def PrependSpacer(self, *args, **kw):
-        """Compatibility alias for `Prepend`."""
-        return self.Prepend(*args, **kw)
 
     def InsertWindow(self, *args, **kw):
         """Compatibility alias for `Insert`."""
@@ -11219,9 +11894,6 @@ class Sizer(Object):
     def InsertSizer(self, *args, **kw):
         """Compatibility alias for `Insert`."""
         return self.Insert(*args, **kw)
-    def InsertSpacer(self, *args, **kw):
-        """Compatibility alias for `Insert`."""
-        return self.Insert(*args, **kw)
 
     def RemoveWindow(self, *args, **kw):
         """Compatibility alias for `Remove`."""
@@ -11438,6 +12110,11 @@ class Sizer(Object):
         """
         return _core_.Sizer_ShowItems(*args, **kwargs)
 
+    Children = property(GetChildren,doc="See `GetChildren`") 
+    ContainingWindow = property(GetContainingWindow,SetContainingWindow,doc="See `GetContainingWindow` and `SetContainingWindow`") 
+    MinSize = property(GetMinSize,SetMinSize,doc="See `GetMinSize` and `SetMinSize`") 
+    Position = property(GetPosition,doc="See `GetPosition`") 
+    Size = property(GetSize,doc="See `GetSize`") 
 _core_.Sizer_swigregister(Sizer)
 
 class PySizer(Sizer):
@@ -11539,6 +12216,7 @@ class BoxSizer(Sizer):
         """
         return _core_.BoxSizer_SetOrientation(*args, **kwargs)
 
+    Orientation = property(GetOrientation,SetOrientation,doc="See `GetOrientation` and `SetOrientation`") 
 _core_.BoxSizer_swigregister(BoxSizer)
 
 #---------------------------------------------------------------------------
@@ -11571,6 +12249,7 @@ class StaticBoxSizer(BoxSizer):
         """
         return _core_.StaticBoxSizer_GetStaticBox(*args, **kwargs)
 
+    StaticBox = property(GetStaticBox,doc="See `GetStaticBox`") 
 _core_.StaticBoxSizer_swigregister(StaticBoxSizer)
 
 #---------------------------------------------------------------------------
@@ -11689,6 +12368,10 @@ class GridSizer(Sizer):
             cols = (nitems + rows - 1) / rows
         return (rows, cols)
 
+    Cols = property(GetCols,SetCols,doc="See `GetCols` and `SetCols`") 
+    HGap = property(GetHGap,SetHGap,doc="See `GetHGap` and `SetHGap`") 
+    Rows = property(GetRows,SetRows,doc="See `GetRows` and `SetRows`") 
+    VGap = property(GetVGap,SetVGap,doc="See `GetVGap` and `SetVGap`") 
 _core_.GridSizer_swigregister(GridSizer)
 
 #---------------------------------------------------------------------------
@@ -11821,8 +12504,6 @@ class FlexGridSizer(GridSizer):
             ==========================  =================================================
 
         Note that this method does not trigger relayout.
-
-
         """
         return _core_.FlexGridSizer_SetNonFlexibleGrowMode(*args, **kwargs)
 
@@ -11855,6 +12536,10 @@ class FlexGridSizer(GridSizer):
         """
         return _core_.FlexGridSizer_GetColWidths(*args, **kwargs)
 
+    ColWidths = property(GetColWidths,doc="See `GetColWidths`") 
+    FlexibleDirection = property(GetFlexibleDirection,SetFlexibleDirection,doc="See `GetFlexibleDirection` and `SetFlexibleDirection`") 
+    NonFlexibleGrowMode = property(GetNonFlexibleGrowMode,SetNonFlexibleGrowMode,doc="See `GetNonFlexibleGrowMode` and `SetNonFlexibleGrowMode`") 
+    RowHeights = property(GetRowHeights,doc="See `GetRowHeights`") 
 _core_.FlexGridSizer_swigregister(FlexGridSizer)
 
 class StdDialogButtonSizer(BoxSizer):
@@ -11922,6 +12607,11 @@ class StdDialogButtonSizer(BoxSizer):
         """GetHelpButton(self) -> wxButton"""
         return _core_.StdDialogButtonSizer_GetHelpButton(*args, **kwargs)
 
+    AffirmativeButton = property(GetAffirmativeButton,SetAffirmativeButton,doc="See `GetAffirmativeButton` and `SetAffirmativeButton`") 
+    ApplyButton = property(GetApplyButton,doc="See `GetApplyButton`") 
+    CancelButton = property(GetCancelButton,SetCancelButton,doc="See `GetCancelButton` and `SetCancelButton`") 
+    HelpButton = property(GetHelpButton,doc="See `GetHelpButton`") 
+    NegativeButton = property(GetNegativeButton,SetNegativeButton,doc="See `GetNegativeButton` and `SetNegativeButton`") 
 _core_.StdDialogButtonSizer_swigregister(StdDialogButtonSizer)
 
 #---------------------------------------------------------------------------
@@ -12191,6 +12881,10 @@ class GBSizerItem(SizerItem):
         """
         return _core_.GBSizerItem_SetGBSizer(*args, **kwargs)
 
+    EndPos = property(GetEndPos,doc="See `GetEndPos`") 
+    GBSizer = property(GetGBSizer,SetGBSizer,doc="See `GetGBSizer` and `SetGBSizer`") 
+    Pos = property(GetPos,SetPos,doc="See `GetPos` and `SetPos`") 
+    Span = property(GetSpan,SetSpan,doc="See `GetSpan` and `SetSpan`") 
 _core_.GBSizerItem_swigregister(GBSizerItem)
 DefaultSpan = cvar.DefaultSpan
 
@@ -12602,6 +13296,14 @@ class IndividualLayoutConstraint(Object):
         """
         return _core_.IndividualLayoutConstraint_GetEdge(*args, **kwargs)
 
+    Done = property(GetDone,SetDone,doc="See `GetDone` and `SetDone`") 
+    Margin = property(GetMargin,SetMargin,doc="See `GetMargin` and `SetMargin`") 
+    MyEdge = property(GetMyEdge,doc="See `GetMyEdge`") 
+    OtherEdge = property(GetOtherEdge,doc="See `GetOtherEdge`") 
+    OtherWindow = property(GetOtherWindow,doc="See `GetOtherWindow`") 
+    Percent = property(GetPercent,doc="See `GetPercent`") 
+    Relationship = property(GetRelationship,SetRelationship,doc="See `GetRelationship` and `SetRelationship`") 
+    Value = property(GetValue,SetValue,doc="See `GetValue` and `SetValue`") 
 _core_.IndividualLayoutConstraint_swigregister(IndividualLayoutConstraint)
 
 class LayoutConstraints(Object):
@@ -12790,7 +13492,7 @@ def CallAfter(callable, *args, **kw):
     method calls from non-GUI threads.  Any extra positional or
     keyword args are passed on to the callable when it is called.
 
-    :see: `wx.FutureCall`
+    :see: `wx.CallLater`
     """
     app = wx.GetApp()
     assert app is not None, 'No wx.App created yet'
@@ -12809,7 +13511,7 @@ def CallAfter(callable, *args, **kw):
 #----------------------------------------------------------------------------
 
 
-class FutureCall:
+class CallLater:
     """
     A convenience class for `wx.Timer`, that calls the given callable
     object once after the given amount of milliseconds, passing any
@@ -12820,7 +13522,7 @@ class FutureCall:
     then there is no need to hold a reference to this object.  It will
     hold a reference to itself while the timer is running (the timer
     has a reference to self.Notify) but the cycle will be broken when
-    the timer completes, automatically cleaning up the wx.FutureCall
+    the timer completes, automatically cleaning up the wx.CallLater
     object.
 
     :see: `wx.CallAfter`
@@ -12906,7 +13608,12 @@ class FutureCall:
             # if it wasn't restarted, then cleanup
             wx.CallAfter(self.Stop)
 
+    Interval = property(GetInterval)
+    Result = property(GetResult)
+
 
+class FutureCall(CallLater):
+    """A compatibility alias for `CallLater`."""
 
 #----------------------------------------------------------------------------
 # Control which items in this module should be documented by epydoc.