Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
6c49e12f41d5a3dc491d7e05615940ed81202711
[graphlib.git] / DrawingWindow.cpp
1 #include "DrawingWindow.h"
2 #include <QPainter>
3
4 #include <iostream>
5
6 DrawingWindow::DrawingWindow(const DrawingArea &a)
7     : QWidget()
8     , drawingArea(a)
9 {
10     initialize();
11 }
12
13 DrawingWindow::DrawingWindow(QWidget *parent, const DrawingArea &a)
14     : QWidget(parent)
15     , drawingArea(a)
16 {
17     initialize();
18 }
19
20 DrawingWindow::DrawingWindow(QWidget *parent, Qt::WindowFlags flags,
21                              const DrawingArea &a)
22     : QWidget(parent, flags)
23     , drawingArea(a)
24 {
25     initialize();
26 }
27
28 void DrawingWindow::paintEvent(QPaintEvent *)
29 {
30     std::cerr << "paint!\n";
31     QPainter painter(this);
32     painter.drawImage(0, 0, drawingArea.getImage());
33 }
34
35 void DrawingWindow::initialize()
36 {
37     setFocusPolicy(Qt::StrongFocus);
38     setFixedSize(drawingArea.getImage().size());
39     setAttribute(Qt::WA_OpaquePaintEvent);
40     connect(&drawingArea, SIGNAL(update()), this, SLOT(update()));
41
42 }