diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.py | 16 | ||||
| -rw-r--r-- | src/mapdata.py | 8 | ||||
| -rw-r--r-- | src/ui.py | 6 | 
3 files changed, 27 insertions, 3 deletions
| diff --git a/src/main.py b/src/main.py index 1d53521..1ef7039 100644 --- a/src/main.py +++ b/src/main.py @@ -18,4 +18,20 @@ class KP:  		KP.mainWindow.show()  		KP.app.exec_() +	 + +	@classmethod +	def icon(cls, name): +		try: +			cache = cls.iconCache +		except AttributeError: +			cache = {} +			cls.iconCache = cache + +		try: +			return cache[name] +		except KeyError: +			icon = QtGui.QIcon('Resources/%s.png' % name) +			cache[name] = icon +			return icon diff --git a/src/mapdata.py b/src/mapdata.py index 013e308..131c669 100644 --- a/src/mapdata.py +++ b/src/mapdata.py @@ -65,6 +65,8 @@ class KPTileLayer(KPLayer):  		self.objects = []  		self.cache = ['DUMMY_FLAG']  		self.updateCache() + +		self.icon = KP.icon('LayerTile')  	def _visibilityChanged(self, value):  		for obj in self.objects: @@ -145,6 +147,8 @@ class KPDoodadLayer(KPLayer):  	def __init__(self):  		KPLayer.__init__(self)  		self.objects = [] + +		self.icon = KP.icon('LayerObjects')  	def _visibilityChanged(self, value):  		for obj in self.objects: @@ -208,6 +212,8 @@ class KPPathLayer(KPLayer):  		KPLayer.__init__(self)  		self.nodes = []  		self.paths = [] + +		self.icon = KP.icon('LayerPath')  	def _visibilityChanged(self, value):  		for objList in (self.nodes, self.paths): @@ -267,6 +273,8 @@ class KPMap(object):  					if (role == Qt.DisplayRole or role == Qt.EditRole):  						return layer.name +					elif role == Qt.DecorationRole: +						return layer.icon  					elif role == Qt.CheckStateRole:  						return (Qt.Checked if layer.visible else Qt.Unchecked) @@ -30,9 +30,9 @@ class KPLayerList(QtGui.QWidget):  	def setupToolbar(self, tb): -		self.actAddTile = tb.addAction(QtGui.QIcon(), 'T+', self.addTileLayer) -		self.actAddDoodad = tb.addAction(QtGui.QIcon(), 'D+', self.addDoodadLayer) -		self.actRemove = tb.addAction(QtGui.QIcon(), 'Remove', self.removeLayer) +		self.actAddTile = tb.addAction(KP.icon('LayerNewTile'), 'Add Tile Layer', self.addTileLayer) +		self.actAddDoodad = tb.addAction(KP.icon('LayerNewObjects'), 'Add Doodad Layer', self.addDoodadLayer) +		self.actRemove = tb.addAction(KP.icon('LayerRemove'), 'Remove', self.removeLayer)  		self.actMoveUp = tb.addAction(QtGui.QIcon(), 'Move Up', self.moveUp)  		self.actMoveDown = tb.addAction(QtGui.QIcon(), 'Move Down', self.moveDown) | 
