All pastes #111784 Raw Edit

Someone

public text v1 · immutable
·published 2006-08-02 13:10 UTC
rendered paste body
import sys
from qt import *

class ScribbleWindow(QWidget):
	def __init__(self):
		self.setBackgroundMode(QWidget.NoBackground)
	
	def mousePressEvent(QMouseEvent):
		_last=event.pos()
	
	def mouseMoveEvent(QMouseEvent):
		windowpainter=QPainter()
		bufferpainter=QPainter()
		
		windowpainter.begin(self)
		bufferpainter.begin(_buffer)
		
		windowpainter.drawLine(_last, event.pos())
		bufferpainter.drawLine(_last, event.pos())
		
		_last=event.pos()
	
	def paintEvent(QPaintEvent):
		bitBlt(self, 0, 0, _buffer)
	
	def resizeEvent(QResizeEvent):
		save=QPixmap(_buffer)
		_buffer.resize(event.size())
		_buffer.fill(white)
		bbitBlt(_buffer,0,0,save)
	
	_last=QPoint()
	_buffer=QPixmap()

def main(args):
	app=QApplication(args)
	
	mywidget=ScribbleWindow()
	mywidget.setGeometry(400, 300, 120, 90)
	mywidget.setCaption("Hello pyqt")

	app.setMainWidget(mywidget)
	mywidget.show()
	app.exec_loop()

if __name__=="__main__":
	main(sys.argv)