Пример #1
0
    def __init__(self, parent):
        wx.Panel.__init__(self, parent, -1)
        self.list = wx.ListCtrl(
            self,
            -1,
            style=wx.LC_LIST
            #| wx.BORDER_SUNKEN
            #| wx.BORDER_NONE
            #| wx.LC_EDIT_LABELS
            #| wx.LC_SORT_ASCENDING
            #| wx.LC_NO_HEADER
            #| wx.LC_VRULES
            #| wx.LC_HRULES
            | wx.LC_SINGLE_SEL)
        self.imagelist = wx.ImageList(16, 16)
        self.imagelist.Add(IconImages.getPythonBitmap())
        self.imagelist.Add(IconImages.getIfBitmap())
        self.imagelist.Add(IconImages.getLoopBitmap())
        self.imagelist.Add(IconImages.getBlockBitmap())

        self.list.SetImageList(self.imagelist, wx.IMAGE_LIST_SMALL)
        self.list.InsertImageStringItem(0, 'SCRIPT', 0)
        self.list.InsertImageStringItem(1, 'IF', 1)
        self.list.InsertImageStringItem(2, 'LOOP', 2)
        self.list.InsertImageStringItem(3, 'BLOCK', 3)

        # layout
        import Layout
        Layout.SingleLayout(self, self.list)

        # event binding
        self.list.Bind(wx.EVT_LIST_BEGIN_DRAG, self.OnBeginDrag)

        #
        self.BindGetUserData()
Пример #2
0
	def __init__(self, parent):
		wx.Panel.__init__(self, parent, -1)
		self.list = wx.ListCtrl(self, -1,
				style=wx.LC_LIST 
				#| wx.BORDER_SUNKEN
				#| wx.BORDER_NONE
				#| wx.LC_EDIT_LABELS
				#| wx.LC_SORT_ASCENDING
				#| wx.LC_NO_HEADER
				#| wx.LC_VRULES
				#| wx.LC_HRULES
				| wx.LC_SINGLE_SEL
				)
		self.imagelist = wx.ImageList(16, 16)
		self.imagelist.Add(IconImages.getPythonBitmap())
		self.imagelist.Add(IconImages.getIfBitmap())
		self.imagelist.Add(IconImages.getLoopBitmap())
		self.imagelist.Add(IconImages.getBlockBitmap())

		self.list.SetImageList(self.imagelist, wx.IMAGE_LIST_SMALL)
		self.list.InsertImageStringItem(0, 'SCRIPT', 0)
		self.list.InsertImageStringItem(1, 'IF', 1)
		self.list.InsertImageStringItem(2, 'LOOP', 2)
		self.list.InsertImageStringItem(3, 'BLOCK', 3)

		# layout
		import Layout
		Layout.SingleLayout(self, self.list)

		# event binding
		self.list.Bind(wx.EVT_LIST_BEGIN_DRAG, self.OnBeginDrag)

		#
		self.BindGetUserData()
Пример #3
0
	def InitTree(self):
		self.tree = Tree(self, multiple = True)
		self.root = self.tree.root

		# FIXME: duplicated code in RecordPanel.py
		import ContentTypeHandler
		icons = {
				Special       : (IconImages.getSpecialOffBitmap(),
								 IconImages.getSpecialBitmap()),

				Record.Record : IconImages.getRecordBitmap(),
				Record.Page   : IconImages.getPageBitmap(),
				Record.Hit    : IconImages.getHitBitmap(),

				Controller.Script: IconImages.getPythonBitmap(),
				Controller.If    : IconImages.getIfBitmap(),
				Controller.Loop  : IconImages.getLoopBitmap(),
				Controller.Block : IconImages.getBlockBitmap(),

				ContentTypeHandler.DefaultContentType : IconImages.getWebBitmap(),
				ContentTypeHandler.AMFContentType     : IconImages.getFlexBitmap(),
				ContentTypeHandler.HTMLContentType    : IconImages.getWebBitmap(),
				ContentTypeHandler.XMLContentType     : IconImages.getXMLBitmap(),
				ContentTypeHandler.PythonContentType  : IconImages.getPythonBitmap(),
				ContentTypeHandler.BinContentType     : IconImages.getBinaryBitmap(),
				}
		self.tree.SetIcons(icons)

		def GetType(data):
			if isinstance(data, Record.Hit):
				# TODO: this check is for compatibility, remove it in future
				if isinstance(data.req_handler, ContentTypeHandler.ContentType):
					return data.req_handler.__class__
				else:
					# You see, really dirty trick,  so remove it in future...
					if 'AMF' in str(data.req_handler.coder):
						return ContentTypeHandler.AMFContentType
					else:
						return data.__class__
			else:
				return data.__class__

		self.tree.GetType = GetType