MythTV master
zmplayer.h
Go to the documentation of this file.
1/* ============================================================
2 * This program is free software; you can redistribute it
3 * and/or modify it under the terms of the GNU General
4 * Public License as published bythe Free Software Foundation;
5 * either version 2, or (at your option)
6 * any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * ============================================================ */
14
15#ifndef ZMPLAYER_H
16#define ZMPLAYER_H
17
18// C++
19#include <vector>
20
21// qt
22#include <QKeyEvent>
23
24// MythTV
29
30// zm
31#include "zmdefines.h"
32
34{
35 Q_OBJECT
36
37 public:
38 ZMPlayer(MythScreenStack *parent, const char *name,
39 std::vector<Event *> *eventList, size_t *currentEvent);
40 ~ZMPlayer() override;
41
42 bool Create(void) override; // MythScreenType
43 bool keyPressEvent(QKeyEvent *event) override; // MythScreenType
44
45 private slots:
46 void updateFrame(void);
47 void playPressed(void);
48 void deletePressed(void);
49 void prevPressed(void);
50 void nextPressed(void);
51
52 private:
53 void getEventInfo(void);
54 void getFrame(void);
55
56 void stopPlayer(void);
57
61
67
72
73 size_t *m_currentEvent {nullptr};
74 std::vector<Event *> *m_eventList {nullptr};
75
76 std::vector<Frame *> *m_frameList {nullptr};
77 QTimer *m_frameTimer {nullptr};
79
80 bool m_paused {false};
81 bool m_fullScreen {false};
82
83 MythImage *m_image {nullptr};
84};
85
86#endif
87
Screen in which all other widgets are contained and rendered.
A single button widget.
Definition: mythuibutton.h:22
Image widget, displays a single image or multiple images in sequence.
Definition: mythuiimage.h:98
All purpose text widget, displays a text string.
Definition: mythuitext.h:29
MythImage * m_image
Definition: zmplayer.h:83
MythUIText * m_noEventsText
Definition: zmplayer.h:62
void stopPlayer(void)
Definition: zmplayer.cpp:56
std::vector< Frame * > * m_frameList
Definition: zmplayer.h:76
MythUIImage * m_activeFrameImage
Definition: zmplayer.h:58
MythUIText * m_dateText
Definition: zmplayer.h:66
bool Create(void) override
Definition: zmplayer.cpp:61
MythUIButton * m_prevButton
Definition: zmplayer.h:71
bool keyPressEvent(QKeyEvent *event) override
Key event handler.
Definition: zmplayer.cpp:176
void updateFrame(void)
Definition: zmplayer.cpp:346
std::vector< Event * > * m_eventList
Definition: zmplayer.h:74
void nextPressed(void)
Definition: zmplayer.cpp:312
void getEventInfo(void)
Definition: zmplayer.cpp:126
bool m_fullScreen
Definition: zmplayer.h:81
void playPressed(void)
Definition: zmplayer.cpp:265
uint m_curFrame
Definition: zmplayer.h:78
~ZMPlayer() override
Definition: zmplayer.cpp:47
MythUIText * m_frameText
Definition: zmplayer.h:65
MythUIText * m_eventText
Definition: zmplayer.h:63
QTimer * m_frameTimer
Definition: zmplayer.h:77
MythUIImage * m_frameImageFS
Definition: zmplayer.h:59
MythUIButton * m_nextButton
Definition: zmplayer.h:70
MythUIText * m_cameraText
Definition: zmplayer.h:64
void deletePressed(void)
Definition: zmplayer.cpp:286
MythUIButton * m_playButton
Definition: zmplayer.h:68
ZMPlayer(MythScreenStack *parent, const char *name, std::vector< Event * > *eventList, size_t *currentEvent)
Definition: zmplayer.cpp:36
bool m_paused
Definition: zmplayer.h:80
MythUIButton * m_deleteButton
Definition: zmplayer.h:69
MythUIImage * m_frameImage
Definition: zmplayer.h:60
void getFrame(void)
Definition: zmplayer.cpp:366
void prevPressed(void)
Definition: zmplayer.cpp:328
size_t * m_currentEvent
Definition: zmplayer.h:73
unsigned int uint
Definition: freesurround.h:24