[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/games/kmj
From: Wolfgang Rohdewald <wolfgang () rohdewald ! de>
Date: 2009-03-31 13:54:08
Message-ID: 1238507648.117820.2838.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 947433 by wrohdewald:
dragging tiles: put blue border around the board currently accepting the drop
M +16 -1 board.py
--- trunk/playground/games/kmj/board.py #947432:947433
@@ -292,7 +292,7 @@
""" a board with any number of positioned tiles"""
def __init__(self, tileset, tiles=None, rotation = 0):
QGraphicsRectItem.__init__(self)
- self.setPen(QPen(Qt.NoPen))
+ self._noPen()
self.tileDragEnabled = False
self.rotation = rotation
self.rotate(rotation)
@@ -310,6 +310,19 @@
for tile in tiles:
tile.board = self
+ def dragEnterEvent(self, event):
+ """drag enters the HandBoard: highlight it"""
+ self.setPen(QPen(QColor('blue')))
+
+ def dragLeaveEvent(self, event):
+ """drag leaves the HandBoard"""
+ self._noPen()
+
+ def _noPen(self):
+ """remove pen for this board. The pen defines the border"""
+ self.setPen(QPen(Qt.NoPen))
+
+
def tileAt(self, xoffset, yoffset, level=0):
"""if there is a tile at this place, return it"""
for tile in self.childItems():
@@ -527,6 +540,7 @@
oldHand = tile.board if isinstance(tile.board, HandBoard) else None
assert oldHand
oldHand.remove(tile)
+ self._noPen()
event.accept()
def placeAvailable(self, tile):
@@ -657,6 +671,7 @@
self.lowerHalf = self.mapFromScene(QPointF(event.scenePos())).y() >= self.rect().height()/2.0
oldHand = tile.board if isinstance(tile.board, HandBoard) else None
added = self.integrate(tile)
+ self._noPen()
if added:
if oldHand == self:
self.placeTiles()
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic