[Pymoul-svn] SF.net SVN: pymoul: [174] pymoul/trunk/src/moul/qt
Status: Alpha
Brought to you by:
tiran
|
From: <ti...@us...> - 2007-02-16 13:09:45
|
Revision: 174
http://pymoul.svn.sourceforge.net/pymoul/?rev=174&view=rev
Author: tiran
Date: 2007-02-16 05:09:45 -0800 (Fri, 16 Feb 2007)
Log Message:
-----------
Added hacky code to move the number in the right position
Modified Paths:
--------------
pymoul/trunk/src/moul/qt/dninumbers.py
pymoul/trunk/src/moul/qt/mainwindow.py
Property Changed:
----------------
pymoul/trunk/src/moul/qt/dninumbers.py
Modified: pymoul/trunk/src/moul/qt/dninumbers.py
===================================================================
--- pymoul/trunk/src/moul/qt/dninumbers.py 2007-02-15 18:18:46 UTC (rev 173)
+++ pymoul/trunk/src/moul/qt/dninumbers.py 2007-02-16 13:09:45 UTC (rev 174)
@@ -19,8 +19,8 @@
"""Moul QT D'ni Number renderer
"""
__author__ = "Christian Heimes"
-__version__ = "$Id: wdysini.py 144 2007-02-06 03:51:21Z tiran $"
-__revision__ = "$Revision: 144 $"
+__version__ = "$Id$"
+__revision__ = "$Revision$"
import sys
from PyQt4 import QtCore
@@ -127,6 +127,7 @@
self.dni = None
self.height = None
self.numbers = ()
+ self._layout = None
def setDniNumbers(self, dninumbers):
"""Set D'ni number instance
@@ -163,6 +164,20 @@
self.setMaximumSize(self.width, self.height)
self.resize(self.width, self.height)
+ def setPosition(self, layout, row, col, position):
+ """Set position (hack)
+ """
+ self._layout = None
+ if position == QtCore.Qt.AlignLeft:
+ return
+ elif position == QtCore.Qt.AlignCenter:
+ pass
+ elif position == QtCore.Qt.AlignRight:
+ pass
+ else:
+ raise ValueError(position)
+ self._layout = layout, row, col, position
+
def paintEvent(self, event):
"""Render and paint numbers
"""
@@ -178,3 +193,14 @@
painter.drawPixmap(0, 0, self._pmleft)
painter.drawPixmap(self.width-self._pmright.width(), 0, self._pmright)
painter.end()
+
+ # remove the hack!
+ if self._layout is not None:
+ layout, row, col, position = self._layout
+ x, y, w, h = layout.cellRect(row, col).getRect()
+ geometry = self.geometry()
+ movex = self.width - w
+ if position == QtCore.Qt.AlignCenter:
+ movex = movex // 2
+ self.move(geometry.x()+movex, geometry.y())
+ self._layout = None
Property changes on: pymoul/trunk/src/moul/qt/dninumbers.py
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ native
Modified: pymoul/trunk/src/moul/qt/mainwindow.py
===================================================================
--- pymoul/trunk/src/moul/qt/mainwindow.py 2007-02-15 18:18:46 UTC (rev 173)
+++ pymoul/trunk/src/moul/qt/mainwindow.py 2007-02-16 13:09:45 UTC (rev 174)
@@ -554,9 +554,10 @@
dnipix = QDniNumberWidget(widget)
dnipix.setDniNumbers(self._dninumbers)
dnipix.setHeight(25)
- dnipix.setNumbers(5, 24)
- dnipix.setObjectName("dnw_dninumber_test")
- grid.addWidget(dnipix, 5, 8, 1, 2)
+ dnipix.setNumbers(1, 0)
+ dnipix.setObjectName("dnw_dninumber_250")
+ dnipix.setPosition(grid, 5, 0, QtCore.Qt.AlignRight)
+ grid.addWidget(dnipix, 5, 0, 1, 2)
class PingServerThread(QtCore.QThread):
def __init__(self, parent=None):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|