Frapper  1.0a
NetworkGraphicsView.h
Go to the documentation of this file.
1 /*
2 -----------------------------------------------------------------------------
3 This source file is part of FRAPPER
4 research.animationsinstitut.de
5 sourceforge.net/projects/frapper
6 
7 Copyright (c) 2008-2009 Filmakademie Baden-Wuerttemberg, Institute of Animation
8 
9 This program is free software; you can redistribute it and/or modify it under
10 the terms of the GNU Lesser General Public License as published by the Free Software
11 Foundation; version 2.1 of the License.
12 
13 This program is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
16 
17 You should have received a copy of the GNU Lesser General Public License along with
18 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19 Place - Suite 330, Boston, MA 02111-1307, USA, or go to
20 http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
21 -----------------------------------------------------------------------------
22 */
23 
33 
34 #ifndef NETWORKGRAPHICSVIEW_H
35 #define NETWORKGRAPHICSVIEW_H
36 
37 #include "FrapperPrerequisites.h"
38 #include "BaseGraphicsView.h"
39 
40 
41 namespace Frapper {
42 
47 class FRAPPER_GUI_EXPORT NetworkGraphicsView : public BaseGraphicsView
48 {
49 
50  Q_OBJECT
51 
52 public: // constructors and destructors
53 
59  NetworkGraphicsView ( QWidget *parent = 0 );
60 
65 
66 public: // functions
67 
73  void setScene ( QGraphicsScene *scene );
74 
75 public slots: //
76 
81  void displayAllPins ();
82 
87  void displayConnectedPins ();
88 
93  void displayPinsCollapsed ();
94 
95 signals: //
96 
103  void contextMenuRequested ( const QPointF &scenePosition );
104 
105 protected: // events
106 
112  virtual void keyPressEvent ( QKeyEvent *event );
113 
119  virtual void mousePressEvent ( QMouseEvent *event );
120 
126  virtual void mouseMoveEvent ( QMouseEvent *event );
127 
133  virtual void contextMenuEvent ( QContextMenuEvent *event );
134 
135 private: // functions
136 
143  void setPinDisplayMode ( NodeGraphicsItem::PinDisplayMode pinDisplayMode );
144 
148  void cancelCreatingConnection ();
149 };
150 
151 } // end namespace Frapper
152 
153 #endif