NCL Composer  0.1.5
 All Classes Functions Variables Pages
view.cpp
1 #include "view.h"
2 
3 View::View(QWidget* parent)
4  : QGraphicsView(parent)
5 {
6  createObjects();
7  createConnections();
8 
9  selected = NULL;
10 }
11 
12 View::~View()
13 {
14 
15 }
16 
17 void View::createObjects()
18 {
19  scene = new Scene();
20  scene->setParent(this);
21  scene->setSceneRect(0, 0, 2000, 2000);
22 
23  setScene(scene);
24 }
25 
26 void View::createConnections()
27 {
28  connect(scene, SIGNAL(entityChanged(QncgGraphicsEntity*)), SLOT(alertEntityChange(QncgGraphicsEntity*)));
29  connect(scene, SIGNAL(entitySelected(QncgGraphicsEntity*)), SLOT(alertEntitySelection(QncgGraphicsEntity*)));
30 }
31 
32 void View::alertEntityChange(QncgGraphicsEntity* entity)
33 {
34  qDebug() << "[QNCG]" << ":" << "Entity changed.";
35 }
36 
37 void View::alertEntitySelection(QncgGraphicsEntity* entity)
38 {
39  qDebug() << "[QNCG]" << ":" << "Entity selected.";
40 
41  if (selected != NULL){
42  selected->setSelected(false);
43  }
44 
45  selected = entity;
46  selected->setSelected(true);
47 }
48 
49 void View::mousePressEvent(QMouseEvent* event)
50 {
51  QGraphicsView::mousePressEvent(event);
52 
53  if (event->button() == Qt::LeftButton){
54  if (!event->isAccepted()){
55  if (selected != NULL){
56  selected->setSelected(false);
57  }
58 
59  selected = NULL;
60  }
61  }
62 }