VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
entityHeadingDial.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 #pragma once
7 
9 
10 #include <qwt_compass.h>
11 
12 #include <boost/signals2.hpp>
13 
14 class QTimer;
15 class QLineEdit;
16 class QPushButton;
17 
18 namespace makVrf
19 {
25 
26  class DtEntityAttributeSpinBox;
28  {
29  Q_OBJECT
30 
31  public:
32  explicit DtEntityHeadingDial(QWidget *parent = NULL);
33 
34  virtual ~DtEntityHeadingDial();
35 
36  virtual double actualValue();
37  virtual void setActualValue(double actualValue);
38 
39  virtual void setIcon(const QPixmap& icon);
40  const QPixmap& icon() const;
41 
42  virtual void setRequestedValue(double value, bool singleClick = true);
43 
44  virtual void setDisplayActualData(bool display);
45 
46  virtual int isMagneticNorth() const;
47  virtual void setMagneticNorth(bool unit);
48 
49  boost::signals2::signal<void(double value, bool singleClick)> signal_requestedValueChanged;
50 
52  boost::signals2::signal<void(int turnDirection)> signal_turnDirectionChanged;
53 
55  boost::signals2::signal<void(bool isMagnetic)> signal_northTypeChanged;
56 
57  protected slots:
58  void mouseClickTimeout();
59  void onEditorFocussed(bool focus);
60  void onEditorReturnPressed();
61  void turnLeftClicked();
62  void turnDirectClicked();
63  void turnRightClicked();
64  void northTypeClicked();
65 
66  protected:
67 
68  void paintEvent(QPaintEvent *ev);
69 
70  virtual void mousePressEvent(QMouseEvent *event);
71  virtual void mouseReleaseEvent(QMouseEvent *event);
72  virtual void mouseDoubleClickEvent(QMouseEvent *event);
73  virtual void wheelEvent(QWheelEvent* event);
74 
75  virtual void resizeEvent(QResizeEvent *event);
76 
77  virtual void updateChildWidgetsPosition();
78 
80  virtual void wrapTo360(double& value);
81 
82  protected:
83  double myActualValue;
84 
89 
90  QPixmap myIcon;
93 
98 
101  };
102 }
QPushButton * myNorthTypeButton
Definition: entityHeadingDial.h:99
A customized spin box that supports signals for return key pressed event and focus in/out events...
Definition: entityAttributeSpinBox.h:19
bool mySecondClick
Definition: entityHeadingDial.h:86
DtEntityAttributeSpinBox * myEditor
Definition: entityHeadingDial.h:91
QPushButton * myTurnLeftButton
Definition: entityHeadingDial.h:95
Definition: entityHeadingDial.h:27
boost::signals2::signal< void(bool isMagnetic)> signal_northTypeChanged
true -&gt; Magnetic North, false -&gt; True North
Definition: entityHeadingDial.h:55
QPushButton * myTurnDirectButton
Definition: entityHeadingDial.h:96
QPushButton * myTurnRightButton
Definition: entityHeadingDial.h:97
bool myIsMagneticNorth
Definition: entityHeadingDial.h:100
QWidget * myTurnDirectionButtonsWidget
Definition: entityHeadingDial.h:94
double myActualValue
Definition: entityHeadingDial.h:83
bool m_bEditingMode
Definition: entityHeadingDial.h:92
QPixmap myIcon
Definition: entityHeadingDial.h:90
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:22
QTimer * myMouseClickTimer
Definition: entityHeadingDial.h:85
bool myDisplayActualData
Definition: entityHeadingDial.h:88
boost::signals2::signal< void(double value, bool singleClick)> signal_requestedValueChanged
Definition: entityHeadingDial.h:49
boost::signals2::signal< void(int turnDirection)> signal_turnDirectionChanged
-1: left turn, 1: right turn, 0: direct turn
Definition: entityHeadingDial.h:52
bool myTimerStopped
Definition: entityHeadingDial.h:87

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)