# Path: venster/lib/splitter.py
# HORIZONTAL = 1
# VERTICAL = 2
# class Splitter(Window):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def Add(self, index, ctrl):
#     def OnSize(self, event):
#     def Layout(self, cx, cy):
#     def OnLeftButtonDown(self, event):
#     def IsOverSplitter(self, x, y):
#     def OnLeftButtonUp(self, event):
#     def Clamp(self, x, y):
#     def OnMouseMove(self, event):
#     def PatBlt(self, oldPos, newPos, eraseOld):
#     def OnSetCursor(self, event):
#     def OnCaptureChanged(self, event):
# 
# Path: venster/lib/form.py
# EXIT_NONE = 0
# EXIT_ONDESTROY = 1 #exit app on destroy of form
# EXIT_ONLASTDESTROY = 2 #exit app on destroy of last form
# ID_NEW = 5001
# ID_OPEN = 5002
# ID_EXIT = 5003
# ID_SAVE = 5004
# ID_SAVEAS = 5005
# ID_CLOSE = 5006
# ID_UNDO = 5101
# ID_REDO = 5102
# ID_COPY = 5103
# ID_PASTE = 5104
# ID_CUT = 5105
# ID_SELECTALL = 5106
# ID_CLEAR = 5107
# ID_HELP_CONTENTS = 5201
# ID_ABOUT = 5202
# CTRL_VIEW = "form_CtrlView"
# CTRL_STATUSBAR = "form_CtrlStatusBar"
# CTRL_COOLBAR = "form_CtrlCoolbar"
# class Controls(dict):
# class Form(Window):
#     class CmdUIUpdateEvent(object):
# class CMD_UI_UPDATE(object):
#     def Add(self, *args):
#     def dispose(self):
#     def __getattr__(self, key):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def CreateAccels(self):
#     def PreTranslateMessage(self, msg):
#     def OnMenuSelect(self, event):
#         def __init__(self):
#         def Enable(self, fEnable):
#     def OnInitMenuPopup(self, event):
#     def DoLayout(self, cx, cy):
#     def OnDestroy(self, event):
#     def OnSize(self, event):
#     def OnCreate(self, event):
#     def OnExitCmd(self, event):
#     def OnCloseCmd(self, event):
#     def OnClose(self, event):
#     def __init__(self, id, handler):
#     def __install__(self, msgMap):
#     def __call__(self, receiver, event):
# 
# Path: venster/lib/list.py
# class List(ListView):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def InsertColumns(self, colDefs):
#     def SetColumns(self, colDefs):
#     def InsertRow(self, i, row, lParam = 0):
#     def SetRow(self, i, row):
#     def SelectAll(self):
#     def InvertSelection(self):


from venster.windows import *
from venster.wtl import *
from venster.lib import splitter
from venster.lib import form
from venster.lib import list

## The above copyright notice and this permission notice shall be
## included in all copies or substantial portions of the Software.

## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
## EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
## MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
## NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
## LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
## OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
## WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE



def createTestChild(parent):

    lst = list.List(parent = parent, orExStyle = WS_EX_CLIENTEDGE)
    lst.InsertColumns([("blaat", 100), ("col2", 150)])
    for i in range(20):
        lst.InsertRow(i, ["blaat %d" % i, "blaat col2 %d" % i])

    return lst

class MyForm(form.Form):
    _window_title_ = "Splitter Window Test"
    
    def OnCreate(self, event):
        aSplitter1 = splitter.Splitter(parent = self,
                                       splitPos = self.clientRect.width / 2)


# Path: venster/lib/splitter.py
# HORIZONTAL = 1
# VERTICAL = 2
# class Splitter(Window):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def Add(self, index, ctrl):
#     def OnSize(self, event):
#     def Layout(self, cx, cy):
#     def OnLeftButtonDown(self, event):
#     def IsOverSplitter(self, x, y):
#     def OnLeftButtonUp(self, event):
#     def Clamp(self, x, y):
#     def OnMouseMove(self, event):
#     def PatBlt(self, oldPos, newPos, eraseOld):
#     def OnSetCursor(self, event):
#     def OnCaptureChanged(self, event):
# 
# Path: venster/lib/form.py
# EXIT_NONE = 0
# EXIT_ONDESTROY = 1 #exit app on destroy of form
# EXIT_ONLASTDESTROY = 2 #exit app on destroy of last form
# ID_NEW = 5001
# ID_OPEN = 5002
# ID_EXIT = 5003
# ID_SAVE = 5004
# ID_SAVEAS = 5005
# ID_CLOSE = 5006
# ID_UNDO = 5101
# ID_REDO = 5102
# ID_COPY = 5103
# ID_PASTE = 5104
# ID_CUT = 5105
# ID_SELECTALL = 5106
# ID_CLEAR = 5107
# ID_HELP_CONTENTS = 5201
# ID_ABOUT = 5202
# CTRL_VIEW = "form_CtrlView"
# CTRL_STATUSBAR = "form_CtrlStatusBar"
# CTRL_COOLBAR = "form_CtrlCoolbar"
# class Controls(dict):
# class Form(Window):
#     class CmdUIUpdateEvent(object):
# class CMD_UI_UPDATE(object):
#     def Add(self, *args):
#     def dispose(self):
#     def __getattr__(self, key):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def CreateAccels(self):
#     def PreTranslateMessage(self, msg):
#     def OnMenuSelect(self, event):
#         def __init__(self):
#         def Enable(self, fEnable):
#     def OnInitMenuPopup(self, event):
#     def DoLayout(self, cx, cy):
#     def OnDestroy(self, event):
#     def OnSize(self, event):
#     def OnCreate(self, event):
#     def OnExitCmd(self, event):
#     def OnCloseCmd(self, event):
#     def OnClose(self, event):
#     def __init__(self, id, handler):
#     def __install__(self, msgMap):
#     def __call__(self, receiver, event):
# 
# Path: venster/lib/list.py
# class List(ListView):
#     def __init__(self, *args, **kwargs):
#     def dispose(self):
#     def InsertColumns(self, colDefs):
#     def SetColumns(self, colDefs):
#     def InsertRow(self, i, row, lParam = 0):
#     def SetRow(self, i, row):
#     def SelectAll(self):
#     def InvertSelection(self):


# Path: test/test_splitter.py
from venster.windows import *
from venster.wtl import *
from venster.lib import splitter
from venster.lib import form
from venster.lib import list


## The above copyright notice and this permission notice shall be
## included in all copies or substantial portions of the Software.

## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
## EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
## MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
## NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
## LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
## OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
## WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE



def createTestChild(parent):

    lst = list.List(parent = parent, orExStyle = WS_EX_CLIENTEDGE)
    lst.InsertColumns([("blaat", 100), ("col2", 150)])
    for i in range(20):
        lst.InsertRow(i, ["blaat %d" % i, "blaat col2 %d" % i])

    return lst

class MyForm(form.Form):
    _window_title_ = "Splitter Window Test"
    
    def OnCreate(self, event):
        aSplitter1 = splitter.Splitter(parent = self,
                                       splitPos = self.clientRect.width / 2)


        aSplitter2 = splitter.Splitter(parent = aSplitter1,