Exemplo n.º 1
0
    def __init__(self,
                 parent,
                 id=-1,
                 pos=wx.DefaultPosition,
                 size=wx.DefaultSize,
                 style=wx.TAB_TRAVERSAL | wx.NO_BORDER,
                 name=wx.PanelNameStr):
        """Initialize the HTML viewer"""
        NbookPanel.__init__(self, parent, id, pos, size, style, name)
        self.Tag = "ImgView"
        self.Title = _("Image Library")
        self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_IMAGES),
                                             wx.ART_MENU, wx.Size(16, 16))

        bSizer = wx.BoxSizer(wx.VERTICAL)

        self.mtb = aui.AuiToolBar(self, -1, agwStyle=aui.AUI_TB_HORZ_LAYOUT)
        self.mtb.SetToolBitmapSize(wx.Size(16, 16))
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_ADD), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_ADD, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Add image"), _("Import image into the library"),
                         None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REMOVE), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_REMOVE, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Remove image"),
                         _("Remove imeage from the library"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REFRESH), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_REFRESH, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Refresh"), _("Reload library contents"), None)
        self.mtb.Realize()

        bSizer.Add(self.mtb, proportion=0, flag=wx.EXPAND, border=5)
        self.view = wx.ListCtrl(self,
                                wx.ID_ANY,
                                style=wx.LC_ICON | wx.LC_AUTOARRANGE)
        #self.view = libul.UltimateListCtrl( self, agwStyle=wx.LC_ICON|wx.LC_AUTOARRANGE| libul.ULC_AUTOARRANGE)
        #self.view.InsertColumn(0, heading="", width= 220)
        #self.view.InsertColumn(1, heading="", width= 220)

        bSizer.Add(self.view, proportion=1, flag=wx.EXPAND, border=0)

        self.SetSizer(bSizer)
        self.Layout()

        self.items = []

        self.Bind(wx.EVT_MENU, self.OnAddImage, id=wx.ID_ADD)
        self.Bind(wx.EVT_MENU, self.OnDelete, id=wx.ID_REMOVE)
        self.Bind(wx.EVT_MENU, self.UpdateView, id=wx.ID_REFRESH)
        self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected, self.view)

        wx.CallAfter(self.UpdateView)
Exemplo n.º 2
0
    def __init__(self,
                 parent,
                 id=-1,
                 pos=wx.DefaultPosition,
                 size=wx.DefaultSize,
                 style=wx.TAB_TRAVERSAL | wx.NO_BORDER,
                 name=wx.PanelNameStr):
        """Initialize the HTML viewer"""
        NbookPanel.__init__(self, parent, id, pos, size, style, name)
        self.Tag = "HtmlView"
        self.Title = _("Help viewer")
        self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_WEB), wx.ART_MENU,
                                             wx.Size(16, 16))

        bSizer = wx.BoxSizer(wx.VERTICAL)

        self.mtb = aui.AuiToolBar(self, -1, agwStyle=aui.AUI_TB_HORZ_LAYOUT)
        self.mtb.SetToolBitmapSize(wx.Size(16, 16))
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_BACKWARD), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_BACKWARD, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Back"), _("Return to previous page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_FORWARD), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_FORWARD, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Forward"), _("Go to the next page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REFRESH), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_REFRESH, '', tbmp, tbmp, wx.ITEM_NORMAL,
                         _("Refresh"), _("Reload current page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_HOMEPAGE), wx.ART_MENU,
                                        wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_HOME, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Home"),
                         _("Go to the start page"), None)
        self.mtb.AddSpacer(1)
        self.Location = self.mtb.AddLabel(self.ID_Location, "about:blank")
        self.mtb.Realize()

        bSizer.Add(self.mtb, proportion=0, flag=wx.EXPAND, border=5)
        self.html = wx.Panel(self)

        bSizer.Add(self.html, proportion=1, flag=wx.EXPAND, border=0)

        self.SetSizer(bSizer)
        self.Layout()

        self.Bind(wx.EVT_MENU, self.OnBack, id=wx.ID_BACKWARD)
        self.Bind(wx.EVT_MENU, self.OnForward, id=wx.ID_FORWARD)
        self.Bind(wx.EVT_MENU, self.OnRefresh, id=wx.ID_REFRESH)
        self.Bind(wx.EVT_MENU, self.OnHome, id=wx.ID_HOME)
        self.Bind(wx.EVT_SHOW, self.OnShow)
Exemplo n.º 3
0
    def __init__(
        self,
        parent,
        id=-1,
        pos=wx.DefaultPosition,
        size=wx.DefaultSize,
        style=wx.TAB_TRAVERSAL | wx.NO_BORDER,
        name=wx.PanelNameStr,
    ):
        """Initialize the HTML viewer"""
        NbookPanel.__init__(self, parent, id, pos, size, style, name)
        self.Tag = "HtmlView"
        self.Title = _("Help viewer")
        self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_WEB), wx.ART_MENU, wx.Size(16, 16))

        bSizer = wx.BoxSizer(wx.VERTICAL)

        self.mtb = aui.AuiToolBar(self, -1, agwStyle=aui.AUI_TB_HORZ_LAYOUT)
        self.mtb.SetToolBitmapSize(wx.Size(16, 16))
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_BACKWARD), wx.ART_MENU, wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_BACKWARD, "", tbmp, tbmp, wx.ITEM_NORMAL, _("Back"), _("Return to previous page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_FORWARD), wx.ART_MENU, wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_FORWARD, "", tbmp, tbmp, wx.ITEM_NORMAL, _("Forward"), _("Go to the next page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REFRESH), wx.ART_MENU, wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_REFRESH, "", tbmp, tbmp, wx.ITEM_NORMAL, _("Refresh"), _("Reload current page"), None)
        tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_HOMEPAGE), wx.ART_MENU, wx.Size(16, 16))
        self.mtb.AddTool(wx.ID_HOME, "", tbmp, tbmp, wx.ITEM_NORMAL, _("Home"), _("Go to the start page"), None)
        self.mtb.AddSpacer(1)
        self.Location = self.mtb.AddLabel(self.ID_Location, "about:blank")
        self.mtb.Realize()

        bSizer.Add(self.mtb, proportion=0, flag=wx.EXPAND, border=5)
        self.html = wx.Panel(self)

        bSizer.Add(self.html, proportion=1, flag=wx.EXPAND, border=0)

        self.SetSizer(bSizer)
        self.Layout()

        self.Bind(wx.EVT_MENU, self.OnBack, id=wx.ID_BACKWARD)
        self.Bind(wx.EVT_MENU, self.OnForward, id=wx.ID_FORWARD)
        self.Bind(wx.EVT_MENU, self.OnRefresh, id=wx.ID_REFRESH)
        self.Bind(wx.EVT_MENU, self.OnHome, id=wx.ID_HOME)
        self.Bind(wx.EVT_SHOW, self.OnShow)
Exemplo n.º 4
0
	def __init__(self, parent, id = -1, pos = wx.DefaultPosition,
				 size = wx.DefaultSize, style = wx.TAB_TRAVERSAL|wx.NO_BORDER, name = wx.PanelNameStr):
		"""Initialize the HTML viewer"""
		NbookPanel.__init__ ( self, parent, id, pos, size, style, name )
		self.Tag = "ImgView"
		self.Title = _("Image Library")
		self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_IMAGES), wx.ART_MENU, wx.Size(16, 16))

		bSizer = wx.BoxSizer( wx.VERTICAL )

		self.mtb = aui.AuiToolBar(self, -1, agwStyle=aui.AUI_TB_HORZ_LAYOUT)
		self.mtb.SetToolBitmapSize(wx.Size(16,16))
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_ADD), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_ADD, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add image"), _("Import image into the library"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REMOVE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_REMOVE, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Remove image"), _("Remove imeage from the library"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REFRESH), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_REFRESH, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Refresh"), _("Reload library contents"), None)
		self.mtb.Realize()

		bSizer.Add( self.mtb, proportion=0, flag=wx.EXPAND, border=5 )
		self.view = wx.ListCtrl( self, wx.ID_ANY, style=wx.LC_ICON|wx.LC_AUTOARRANGE )
		#self.view = libul.UltimateListCtrl( self, agwStyle=wx.LC_ICON|wx.LC_AUTOARRANGE| libul.ULC_AUTOARRANGE)
		#self.view.InsertColumn(0, heading="", width= 220)
		#self.view.InsertColumn(1, heading="", width= 220)

		bSizer.Add( self.view, proportion=1, flag=wx.EXPAND, border=0 )

		self.SetSizer( bSizer )
		self.Layout()

		self.items = []

		self.Bind(wx.EVT_MENU, self.OnAddImage, id=wx.ID_ADD)
		self.Bind(wx.EVT_MENU, self.OnDelete, id=wx.ID_REMOVE)
		self.Bind(wx.EVT_MENU, self.UpdateView, id=wx.ID_REFRESH)
		self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected, self.view)

		wx.CallAfter(self.UpdateView)
Exemplo n.º 5
0
	def __init__(self, title, parent, id = -1, pos = wx.DefaultPosition,
				 size = wx.DefaultSize, style = wx.TAB_TRAVERSAL|wx.NO_BORDER, name = wx.PanelNameStr):
		"""Initialize the graph view"""
		NbookPanel.__init__ ( self, parent, id, pos, size, style, name )
		self.Tag = "Graph"
		self.Title = title
		self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_LAYER), wx.ART_MENU, wx.Size(16, 16))
		self.log = wx.GetApp().GetLog()
		self.object_filter = None
		self.link_filter = None
		self._CompileFilters()

		bSizer = wx.BoxSizer( wx.VERTICAL )

		#self.mtb = wx.ToolBar( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TB_HORIZONTAL )
		self.mtb = aui.AuiToolBar(self, -1)
		self.mtb.SetToolBitmapSize(wx.Size(16,16))
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_LAYOUT), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_SETUP, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Layout"), _("Change graph layout"), None)
		self.mtb.SetToolDropDown(wx.ID_SETUP, True)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_FILTER), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_FILE1, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Filter"), _("Set filter to view"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_PREF), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_PREFERENCES, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Properties"), _("Layer view properties"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_ATTR_TYPE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_ADD, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add object"), _("Create object on this layer"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_FORWARD), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_INDENT, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add link"), _("Create links between selected objects"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_PLUGMGR), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_MORE, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add graphics"), _("Create graphical shape just for illustration"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_STOP), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_CLEAR, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Clear layer"), _("Remove all objects and links from layer"), None)
		self.mtb.Realize()

		bSizer.Add( self.mtb, proportion=0, flag=wx.EXPAND, border=5 )

		self.graph = LayerView(self, self.Title, parent)
		bSizer.Add( self.graph, proportion=1, flag=wx.EXPAND |wx.ALL, border=0 )

		self.SetSizer( bSizer )
		self.Layout()

		self.grapvizMap = {}
		self.forceRedraw = False

		self.Bind(wx.EVT_MENU, self.OnProperties, id=wx.ID_PREFERENCES)
		self.Bind(wx.EVT_MENU, self.UpdateView, id=wx.ID_REFRESH)
		self.Bind(wx.EVT_MENU, self.OnSelectLayout, id=wx.ID_SETUP)
		self.Bind(aui.EVT_AUITOOLBAR_TOOL_DROPDOWN, self.OnSelectLayout, id=wx.ID_SETUP)
		self.Bind(wx.EVT_MENU, self.OnLayout, id=wx.ID_FILE2, id2=wx.ID_FILE7)
		self.Bind(wx.EVT_MENU, self.OnLayout, id=wx.ID_HIGHEST, id2=wx.ID_HIGHEST+10)
		self.Bind(wx.EVT_MENU, self.OnFilter, id=wx.ID_FILE1)
		self.Bind(wx.EVT_MENU, self.OnNewObject, id=wx.ID_ADD)
		self.Bind(wx.EVT_MENU, self.OnNewLink, id=wx.ID_INDENT)
		self.Bind(wx.EVT_MENU, self.OnClear, id=wx.ID_CLEAR)
Exemplo n.º 6
0
	def __init__(self, parent, id = -1, pos = wx.DefaultPosition,
				 size = wx.DefaultSize, style = wx.TAB_TRAVERSAL|wx.NO_BORDER, name = wx.PanelNameStr):
		"""Initialize the repository view"""
		NbookPanel.__init__ ( self, parent, id, pos, size, style, name )
		self.Tag = "Repo"
		self.Title = _("Object repository")
		self.icon = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DECA_OBJECT), wx.ART_MENU, wx.Size(16, 16))
		self.frame = wx.GetApp().TopWindow

		bSizer = wx.BoxSizer( wx.VERTICAL )

		self.mtb = aui.AuiToolBar(self, -1)
		self.mtb.SetAuiManager(self.frame._mgr)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REFRESH), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(self.ID_RefreshPage, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Refresh view"), _("Refresh reposytory view"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_CLASS_TYPE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(self.ID_AddTemplate, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add template"), _("Create new object template"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_ATTR_TYPE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(self.ID_AddObject, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add object"), _("Create new object"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_PLUGMGR), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(self.ID_AddShape, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Add shape"), _("Create new shape for object's representation"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DELETE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_DELETE, '', tbmp, tbmp, wx.ITEM_NORMAL,
						_("Delete"), _("Delete selected from repository"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_DOCPROP), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(self.ID_SaveSchema, '', tbmp, tbmp, wx.ITEM_NORMAL,
			_("Save schema"), _("Save schema into the XML file"), None)
		self.mtb.SetToolDropDown(self.ID_SaveSchema, True)
		self.mtb.Realize()

		self._schema_menu = wx.Menu()
		self._schema_menu.Append(self.ID_SaveSchema, text = _("Save schema"),
						help = _("Save schema as XML in the world"))
		self._schema_menu.Append(self.ID_LoadSchema, text = _("Load schema"),
			help = _("Load schema from the XML"))
		self._schema_menu.Append(self.ID_ExportSchema, text = _("Export schema"),
			help = _("Export schema into the XML file"))
		self._schema_menu.Append(self.ID_ImportSchema, text = _("Import schema"),
			help = _("Import schema into the XML file"))

		bSizer.Add( self.mtb, proportion=0, flag=wx.EXPAND, border=0 )

		self.mRepoList = wx.ListCtrl( self, style=wx.LC_REPORT )
		bSizer.Add( self.mRepoList, proportion=1, flag=wx.ALL|wx.EXPAND, border=2 )

		imglist = wx.ImageList(16, 16, True, 2)
		imglist.Add(wx.ArtProvider.GetBitmap(str(ed_glob.ID_CLASS_TYPE), wx.ART_MENU, wx.Size(16,16)))
		imglist.Add(wx.ArtProvider.GetBitmap(str(ed_glob.ID_ATTR_TYPE), wx.ART_MENU, wx.Size(16,16)))
		imglist.Add(wx.ArtProvider.GetBitmap(str(ed_glob.ID_PLUGMGR), wx.ART_MENU, wx.Size(16,16)))
		self.mRepoList.AssignImageList(imglist, which=wx.IMAGE_LIST_SMALL)
		self.mRepoList.InsertColumn(0, heading='', width=20)
		self.mRepoList.InsertColumn(1, heading=_('Name'), width=125)
		self.mRepoList.InsertColumn(2, heading=_('Graphics'), width=125)
		self.mRepoList.InsertColumn(3, heading=_('Information'), width=250)
		#self.mRepoList.InsertColumn(2, 'Location', width=125)
		self.UpdateView(None)

		self.SetSizer( bSizer )
		self.Layout()

		# Connect Events
		self.mRepoList.Bind( wx.EVT_LIST_COL_BEGIN_DRAG, self.OnSizeColumn )
		self.Bind(wx.EVT_MENU, self.UpdateView, id=self.ID_RefreshPage)
		self.Bind(wx.EVT_MENU, self.AddTemplate, id=self.ID_AddTemplate)
		self.Bind(wx.EVT_MENU, self.AddObject, id=self.ID_AddObject)
		self.Bind(wx.EVT_MENU, self.AddShape, id=self.ID_AddShape)
		self.Bind(wx.EVT_MENU, self.OnDelete, id=wx.ID_DELETE)
		self.Bind(wx.EVT_MENU, self.OnListDouble, id=wx.ID_EDIT)
		self.Bind(aui.EVT_AUITOOLBAR_TOOL_DROPDOWN, self.OnSchemaButton, id=self.ID_SaveSchema)
		self.Bind(wx.EVT_MENU, self.SaveSchema, id=self.ID_SaveSchema)
		self.Bind(wx.EVT_MENU, self.LoadSchema, id=self.ID_LoadSchema)
		self.Bind(wx.EVT_MENU, self.ExportSchema, id=self.ID_ExportSchema)
		self.Bind(wx.EVT_MENU, self.ImportSchema, id=self.ID_ImportSchema)
		self.mRepoList.Bind(wx.EVT_LEFT_DCLICK, self.OnListDouble)
		self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self.OnListMenu)
Exemplo n.º 7
0
	def __init__(self, edType, parent, id = -1, pos = wx.DefaultPosition,
				 size = wx.DefaultSize, style = wx.TAB_TRAVERSAL|wx.NO_BORDER, name = wx.PanelNameStr):
		"""Initialize the editor view"""
		NbookPanel.__init__ ( self, parent, id, pos, size, style, name )
		self.Tag = "Text"
		self.LastCbWidth = -200

		bSizer = wx.BoxSizer( wx.VERTICAL )

		self.mtb = aui.AuiToolBar( self )
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_NEXT_MARK), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_FORWARD, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Run"), _("Execute engine as module"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_SAVE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_SAVE, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Save"), _("Save engine text"), None)
		#tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_NEW), wx.ART_MENU, wx.Size(16, 16))
		#self.mtb.AddTool(wx.ID_SAVEAS, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Save as..."), _("Save engine text as new engine"), None)
		self.mtb.AddSeparator()
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_UNDO), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_UNDO, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Undo"), _("Undo previous operation"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_REDO), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_REDO, '', tbmp, tbmp, wx.ITEM_NORMAL, _("Redo"), _("Redo reverted operation"), None)
		tbmp = wx.ArtProvider_GetBitmap(str(ed_glob.ID_METHOD_TYPE), wx.ART_MENU, wx.Size(16, 16))
		self.mtb.AddTool(wx.ID_PREVIEW, '', tbmp, tbmp, wx.ITEM_NORMAL, _("CodeBrowser"), _("Toggle CodeBrowser window"), None)
		#self.mtb.AddLabelTool( wx.ID_ANY, _("tool"), wx.NullBitmap, wx.NullBitmap, wx.ITEM_NORMAL, wx.EmptyString, wx.EmptyString )
		self.mtb.Realize()

		bSizer.Add( self.mtb, proportion=0, flag=wx.EXPAND, border=5 )

		self.split = wx.SplitterWindow( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.SP_3D )

		self.panLeft = EdtHolder( self.split, wx.ID_ANY )
		bSzLeft = wx.BoxSizer( wx.VERTICAL )

		self.tx = ed_editv.EdEditorView(self.panLeft)
		if edType == self.ED_TypeScript:
			self.tx.ConfigureLexer('py')
		elif edType == self.ED_TypeReport:
			self.tx.ConfigureLexer('xml')
		self.tx.ConfigureAutoComp()
		bSzLeft.Add( self.tx, proportion=1, flag=wx.EXPAND |wx.ALL, border=0 )

		self.commandBar = wx.Panel(self.panLeft) #SearchBar( self.panLeft )
		self.commandBar.Hide()
		bSzLeft.Add( self.commandBar, proportion=0, flag=wx.EXPAND |wx.ALL, border=0 )

		self.panLeft.SetSizer( bSzLeft )
		self.panLeft.Layout()
		bSzLeft.Fit( self.panLeft )

		self.panRight = wx.Panel( self.split, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
		bSzRight = wx.BoxSizer( wx.VERTICAL )

		self.cbrowser = CodeBrowserTree(self.panRight)
		self.cbrowser.SetCtrl(self.tx)
		bSzRight.Add( self.cbrowser, proportion=1, flag=wx.EXPAND |wx.ALL, border=0 )

		self.panRight.SetSizer( bSzRight )
		self.panRight.Hide()
		self.panRight.Layout()
		bSzRight.Fit( self.panRight )

		self.split.Initialize(self.panLeft) #SplitVertically( window1=self.panLeft, window2=self.panRight, sashPosition=400 )
		self.split.SetSashGravity(1)
		bSizer.Add( self.split, proportion=1, flag=wx.EXPAND |wx.ALL, border=0 )

		self.SetSizer( bSizer )
		self.Layout()

		self._searchctrl = ed_search.SearchController(self, self.GetStc)

		self.Bind(wx.EVT_MENU, self.DispatchToControl)
		self.Bind(wx.stc.EVT_STC_CHANGE, self.OnChanged)