QtPdWidgets  2.3.1
Time.h
Go to the documentation of this file.
1 /*****************************************************************************
2  *
3  * Copyright (C) 2009 - 2012 Florian Pose <fp@igh-essen.com>
4  *
5  * This file is part of the QtPdWidgets library.
6  *
7  * The QtPdWidgets library is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public License as
9  * published by the Free Software Foundation, either version 3 of the License,
10  * or (at your option) any later version.
11  *
12  * The QtPdWidgets library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
15  * General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public License
18  * along with the QtPdWidgets Library. If not, see
19  * <http://www.gnu.org/licenses/>.
20  *
21  ****************************************************************************/
22 
23 #ifndef PD_TIME_H
24 #define PD_TIME_H
25 
26 #include <QLabel>
27 
28 #include "Export.h"
29 #include <QtPdCom1/ScalarSubscriber.h>
30 
31 namespace Pd {
32 
33 /****************************************************************************/
34 
38  public QLabel, public QtPdCom::ScalarSubscriber
39 {
40  Q_OBJECT
41 
42  public:
43  Time(QWidget *parent = 0);
44  virtual ~Time();
45 
46  void clearData(); // pure-virtual from ScalarSubscriber
47 
48  double getValue() const;
49  void setValue(double);
50 
51  virtual QSize sizeHint() const;
52 
53  protected:
54  bool event(QEvent *);
55 
56  private:
57  struct PD_PRIVATE Impl;
58  std::unique_ptr<Impl> impl;
59 
60  PD_PRIVATE void newValues(std::chrono::nanoseconds) override;
61 };
62 
63 /****************************************************************************/
64 
65 } // namespace
66 
67 #endif
Definition: Bar.h:36
#define PD_PRIVATE
Definition: Export.h:28
#define PD_PUBLIC
Definition: Export.h:33
Definition: Time.cpp:35
std::unique_ptr< Impl > impl
Definition: Time.h:58
Relative time display.
Definition: Time.h:37