• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • plugins
  • render
  • navigation
ArrowDiscWidget.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2013 Mohammed Nafees <nafees.technocool@gmail.com>
9 //
10 
11 #ifndef ARROWDISCWIDGET_H
12 #define ARROWDISCWIDGET_H
13 
14 #include <QWidget>
15 #include <QPixmap>
16 #include <QTimer>
17 
18 namespace Marble
19 {
20 
21 class MarbleWidget;
22 
23 class ArrowDiscWidget : public QWidget
24 {
25  Q_OBJECT
26 public:
27  explicit ArrowDiscWidget( QWidget *parent = 0 );
28  ~ArrowDiscWidget();
29 
30  QPixmap pixmap(const QString &id );
31  void setMarbleWidget( MarbleWidget *marbleWidget );
32 
33 Q_SIGNALS:
34  void repaintNeeded();
35 
36 protected:
37  void paintEvent( QPaintEvent * );
38  void mouseMoveEvent( QMouseEvent *mouseEvent );
39  void mousePressEvent( QMouseEvent *mouseEvent );
40  void mouseReleaseEvent( QMouseEvent *mouseEvent );
41  void leaveEvent( QEvent *event );
42  void repaint();
43 
44 private slots:
45  void startPressRepeat();
46  void repeatPress();
47 
48 private:
49  Qt::ArrowType arrowUnderMouse( const QPoint &position ) const;
50  QTimer m_initialPressTimer;
51  QTimer m_repeatPressTimer;
52  Qt::ArrowType m_arrowPressed;
53  int m_repetitions;
54 
55  MarbleWidget *m_marbleWidget;
56  QString m_imagePath;
57 };
58 
59 }
60 
61 #endif
Marble::ArrowDiscWidget::mousePressEvent
void mousePressEvent(QMouseEvent *mouseEvent)
Definition: ArrowDiscWidget.cpp:66
Marble::ArrowDiscWidget::repaint
void repaint()
Definition: ArrowDiscWidget.cpp:184
QWidget
Marble::ArrowDiscWidget::pixmap
QPixmap pixmap(const QString &id)
Definition: ArrowDiscWidget.cpp:56
Marble::ArrowDiscWidget::setMarbleWidget
void setMarbleWidget(MarbleWidget *marbleWidget)
Definition: ArrowDiscWidget.cpp:51
Marble::ArrowDiscWidget::leaveEvent
void leaveEvent(QEvent *event)
Definition: ArrowDiscWidget.cpp:109
Marble::ArrowDiscWidget::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *mouseEvent)
Definition: ArrowDiscWidget.cpp:102
Marble::MarbleWidget
A widget class that displays a view of the earth.
Definition: MarbleWidget.h:102
Marble::ArrowDiscWidget::repaintNeeded
void repaintNeeded()
Marble::ArrowDiscWidget::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *mouseEvent)
Definition: ArrowDiscWidget.cpp:154
Marble::ArrowDiscWidget::ArrowDiscWidget
ArrowDiscWidget(QWidget *parent=0)
Definition: ArrowDiscWidget.cpp:24
Marble::ArrowDiscWidget::~ArrowDiscWidget
~ArrowDiscWidget()
Definition: ArrowDiscWidget.cpp:38
MarbleWidget
Wraps a Marble::MarbleWidget, providing access to important properties and methods.
Definition: MarbleDeclarativeWidget.h:50
Marble::ArrowDiscWidget
Definition: ArrowDiscWidget.h:23
Marble::ArrowDiscWidget::paintEvent
void paintEvent(QPaintEvent *)
Definition: ArrowDiscWidget.cpp:225
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:49 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal