VR-Forces 4.1.1 Class Documentation
symbolSelector.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2002 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: symbolSelector.h,v $ $Revision: 1.23 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef SYMBOLSELECTOR_H
13 #define SYMBOLSELECTOR_H
14 
15 #include <QtCore/QObject>
16 #include <QtCore/QVector>
17 
19 
20 #include "geometry/point.h"
21 
22 #include <QtCore/QPoint>
23 #include <QtCore/QSize>
24 #include <QtGui/QPaintDevice>
25 #include <QtCore/QObject>
26 #include <QtCore/QList>
27 
29 class DtViewDriver;
30 class DtModelData;
31 
35 
36 #include "tmqt/tmqtDefines.h"
38 {
39 
40  Q_OBJECT
41 
42 public:
43 
45  {
46  DtNone = 0,
52  DtMAXSelectorType
53  };
54 
56  virtual ~DtSymbolSelector();
57 
58 private:
61 
63  DtSymbolSelector& operator=(const DtSymbolSelector& orig);
64 
65 public:
67  virtual void draw(QPainter* dc);
68 
70  virtual void setSelectorType(DtSelectorType type);
71 
73  virtual DtSelectorType selectorType();
74 
76  virtual QPoint firstEdgeWindowPoint();
77 
79  virtual QPoint secondEdgeWindowPoint();
80 
82  virtual DtPoint firstEdgePoint();
83 
85  virtual DtPoint secondEdgePoint();
86 
88  virtual bool selectionInProgress();
89 
91  virtual void setViewportExtents(const DtTMViewportExtents* v);
92 
94  virtual void setViewDriver(DtViewDriver* v);
95 
97  virtual QVector<DtModelKey>& selectedModelKeys();
98 
103  virtual void setSelectionMode(int mode);
104  virtual int selectionMode() const;
105 
107  virtual void clear();
108 
110  virtual void selectSymbols(DtModelDataIter *iter, Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState) = 0;
111 
113  virtual void highlightSymbols(QVector<DtModelKey>* display = NULL) = 0;
114 
115  virtual void highlightNoSymbols();
116 
118  virtual void remove(const DtModelKey& key);
119 
121  virtual void setSelectedKeys(const QVector<DtModelKey>& keys);
122 
123  virtual void setRightClickMaintainsSelection(bool b);
124  virtual bool rightClickMaintainsSelection() const;
125 
126  virtual bool keepUnknownKeys() const;
127 
128 public slots:
129 
131  virtual void startSelection(const QPoint& pnt);
132 
134  virtual void updateLocation(const QPoint& pnt);
135 
137  virtual void endSelection(Qt::KeyboardModifiers keyState, Qt::MouseButtons mouseState);
138 
139 protected:
141  virtual void drawRect(QPainter* paint);
142 
144  virtual void drawCircle(QPainter* paint);
145 
147  virtual void drawCirclePoints(QPainter* paint);
148 
150  virtual QPoint getWindowPoint(const DtPoint& p);
151 
154  virtual void merge(const QVector<DtModelKey>& keys, QVector<DtModelKey>& result);
155 
156 protected:
160 
163 
166 
167  QVector<DtModelKey> mySelectedModelKeys;
168  QVector<DtModelKey> myLastSelectedModelKeys;
169 
171 };
172 
174 {
175  return false;
176 }
177 
178 #endif //SYMBOLSELECTOR_H

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)