Exemple #1
0
	def changeColor(self, event=None):
		items = list(map(int,self.curselection()))
		if not items:
			self.winfo_toplevel().event_generate("<<Status>>",data="Nothing is selected")
			return

		# Find initial color
		bid,lid = self._items[items[0]]

		try:
			rgb, color = tkExtra.askcolor(
				title=_("Color"),
				initialcolor=self.gcode[bid].color,
				parent=self)
		except TclError:
			color = None
		if color is None: return

		blocks = []
		undoinfo = []
		for i in reversed(items):
			bid,lid = self._items[i]
			if lid is not None:
				if bid in blocks: continue
			blocks.append(bid)
			oldColor = self.gcode[bid].color
			undoinfo.append(self.gcode.setBlockColorUndo(bid, oldColor))

		if undoinfo:
			self.gcode.addUndo(undoinfo)
			for bid in blocks:
				self.gcode[bid].color = color
			self.winfo_toplevel().event_generate("<<Modified>>")
		self.winfo_toplevel().event_generate("<<Status>>",data="Changed color of block")
Exemple #2
0
	def changeColor(self, event=None):
		items = list(map(int,self.curselection()))
		if not items:
			self.winfo_toplevel().event_generate("<<Status>>",data="Nothing is selected")
			return

		# Find initial color
		bid,lid = self._items[items[0]]

		try:
			rgb, color = tkExtra.askcolor(
				title=_("Color"),
				initialcolor=self.gcode[bid].color,
				parent=self)
		except TclError:
			color = None
		if color is None: return

		blocks = []
		undoinfo = []
		for i in reversed(items):
			bid,lid = self._items[i]
			if lid is not None:
				if bid in blocks: continue
			blocks.append(bid)
			oldColor = self.gcode[bid].color
			undoinfo.append(self.gcode.setBlockColorUndo(bid, oldColor))

		if undoinfo:
			self.gcode.addUndo(undoinfo)
			for bid in blocks:
				self.gcode[bid].color = color
			self.winfo_toplevel().event_generate("<<Modified>>")
		self.winfo_toplevel().event_generate("<<Status>>",data="Changed color of block")