wxWidgets/wxPython/samples/ide/activegrid/tool/TabbedView.py
2005-04-08 22:54:02 +00:00

49 lines
1.3 KiB
Python

#----------------------------------------------------------------------------
# Name: TabbedView.py
# Purpose:
#
# Author: Peter Yared
#
# Created: 8/17/04
# CVS-ID: $Id$
# Copyright: (c) 2004-2005 ActiveGrid, Inc.
# License: wxWindows License
#----------------------------------------------------------------------------
import wx
import wx.lib.docview
class TabbedView(dict, wx.lib.docview.View):
#----------------------------------------------------------------------------
# Overridden methods
#----------------------------------------------------------------------------
def __init__(self):
wx.lib.docview.View.__init__(self)
self._views = {}
self._currentView = None
def OnCreate(self, doc, flags):
frame = wx.GetApp().CreateDocumentFrame(self, doc, flags)
sizer = wx.BoxSizer()
self._notebook = wx.Notebook(frame, -1, style = wx.NB_BOTTOM)
self.Activate()
return True
def AddView(self, viewName, view):
self._notebook.AddPage(wx.Panel(self._notebook, -1), viewName)
self._currentView = view
self._views[viewName] = view
def __getattr__(self, attrname):
return getattr(self._currentView, attrname)
def SetView(self, viewName):
self._currentview = self._views[viewName]