from gdi import *
 
+from clip_dnd import *
+
 from events import *
 import wx
 class wxControlPtr(wxWindowPtr):
     def __init__(self,this):
         self.this = this
         self.thisown = 0
+    def Command(self, *_args, **_kwargs):
+        val = apply(controlsc.wxControl_Command,(self,) + _args, _kwargs)
+        return val
     def GetLabel(self, *_args, **_kwargs):
         val = apply(controlsc.wxControl_GetLabel,(self,) + _args, _kwargs)
         return val
     def __repr__(self):
         return "<C wxControl instance at %s>" % (self.this,)
 class wxControl(wxControlPtr):
-    def __init__(self,this):
-        self.this = this
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(controlsc.new_wxControl,_args,_kwargs)
+        self.thisown = 1
+        wx._StdWindowCallbacks(self)
 
 
 
     def SetDefault(self, *_args, **_kwargs):
         val = apply(controlsc.wxButton_SetDefault,(self,) + _args, _kwargs)
         return val
+    def SetBackgroundColour(self, *_args, **_kwargs):
+        val = apply(controlsc.wxButton_SetBackgroundColour,(self,) + _args, _kwargs)
+        return val
+    def SetForegroundColour(self, *_args, **_kwargs):
+        val = apply(controlsc.wxButton_SetForegroundColour,(self,) + _args, _kwargs)
+        return val
     def __repr__(self):
         return "<C wxButton instance at %s>" % (self.this,)
 class wxButton(wxButtonPtr):
     def Check(self, *_args, **_kwargs):
         val = apply(controlsc.wxCheckListBox_Check,(self,) + _args, _kwargs)
         return val
+    def InsertItems(self, *_args, **_kwargs):
+        val = apply(controlsc.wxCheckListBox_InsertItems,(self,) + _args, _kwargs)
+        return val
     def GetItemHeight(self, *_args, **_kwargs):
         val = apply(controlsc.wxCheckListBox_GetItemHeight,(self,) + _args, _kwargs)
         return val
     def IsEditable(self, *_args, **_kwargs):
         val = apply(controlsc.wxTextCtrl_IsEditable,(self,) + _args, _kwargs)
         return val
+    def Undo(self, *_args, **_kwargs):
+        val = apply(controlsc.wxTextCtrl_Undo,(self,) + _args, _kwargs)
+        return val
+    def Redo(self, *_args, **_kwargs):
+        val = apply(controlsc.wxTextCtrl_Redo,(self,) + _args, _kwargs)
+        return val
+    def write(self, *_args, **_kwargs):
+        val = apply(controlsc.wxTextCtrl_write,(self,) + _args, _kwargs)
+        return val
     def __repr__(self):
         return "<C wxTextCtrl instance at %s>" % (self.this,)
 class wxTextCtrl(wxTextCtrlPtr):
 
 #-------------- FUNCTION WRAPPERS ------------------
 
+def wxButton_GetDefaultSize(*_args, **_kwargs):
+    val = apply(controlsc.wxButton_GetDefaultSize,_args,_kwargs)
+    if val: val = wxSizePtr(val); val.thisown = 1
+    return val
+
 
 
 #-------------- VARIABLE WRAPPERS ------------------