MythTV  master
screenwizard.h
Go to the documentation of this file.
1 #ifndef SCREENWIZARD_H
2 #define SCREENWIZARD_H
3 
4 // Qt
5 #include <QString>
6 #include <QStringList>
7 
8 // MythTV
11 #include "libmythui/mythuibutton.h"
12 #include "libmythui/mythuiimage.h"
13 #include "libmythui/mythuishape.h"
14 #include "libmythui/mythuitext.h"
15 #include "libmythui/mythuitype.h"
16 
17 class XMLParse;
19 {
20  Q_OBJECT
21 
22  public:
23 
24  ScreenWizard(MythScreenStack *parent, const char *name);
25  ~ScreenWizard() override = default;
26 
27  void SetInitialSettings(int _x, int _y, int _w, int _h);
28  bool Create(void) override; // MythScreenType
29  bool keyPressEvent(QKeyEvent *event) override; // MythScreenType
30  void customEvent(QEvent *event) override; // MythUIType
31 
32  protected:
33  void doMenu();
34  void doExit();
35  private:
36  bool m_whichCorner { true };
37  bool m_coarseFine { false }; // fine adjustments by default
38  bool m_changed { false };
39  int m_fine { 1 }; // fine moves corners by one pixel
40  int m_coarse { 10 }; // coarse moves corners by ten pixels
41  int m_change { m_fine };
42  int m_topLeftX { 0 };
43  int m_topLeftY { 0 };
44  int m_bottomRightX { 0 };
45  int m_bottomRightY { 0 };
46  int m_screenWidth { 0 };
47  int m_screenHeight { 0 };
48  int m_xSize { 0 };
49  int m_ySize { 0 };
50  int m_xOffset { 0 };
51  int m_yOffset { 0 };
52 
53  QRect m_menuRect;
54  QRect m_arrowsRect;
55 
56  MythUIShape *m_blackout { nullptr };
57  MythUIImage *m_preview { nullptr };
58  MythUIText *m_size { nullptr };
59  MythUIText *m_offsets { nullptr };
60  MythUIText *m_changeAmount { nullptr };
61  MythDialogBox *m_menuPopup { nullptr };
62 
63  bool moveTLUp(void);
64  bool moveTLDown(void);
65  bool moveTLLeft(void);
66  bool moveTLRight(void);
67 
68  bool moveBRUp(void);
69  bool moveBRDown(void);
70  bool moveBRLeft(void);
71  bool moveBRRight(void);
72 
73  void wireUpTheme();
74  void updateScreen();
75  bool anythingChanged() const;
76 
77  void slotSaveSettings() const;
78  void slotChangeCoarseFine();
79  static void slotResetSettings();
80 };
81 
82 #endif
ScreenWizard::moveTLLeft
bool moveTLLeft(void)
Definition: screenwizard.cpp:159
ScreenWizard::m_coarseFine
bool m_coarseFine
Definition: screenwizard.h:37
ScreenWizard::doExit
void doExit()
Definition: screenwizard.cpp:261
ScreenWizard::m_menuPopup
MythDialogBox * m_menuPopup
Definition: screenwizard.h:61
ScreenWizard::m_preview
MythUIImage * m_preview
Definition: screenwizard.h:57
mythuitext.h
ScreenWizard::moveBRLeft
bool moveBRLeft(void)
Definition: screenwizard.cpp:197
MythUIImage
Image widget, displays a single image or multiple images in sequence.
Definition: mythuiimage.h:97
ScreenWizard::keyPressEvent
bool keyPressEvent(QKeyEvent *event) override
Key event handler.
Definition: screenwizard.cpp:71
ScreenWizard::m_xSize
int m_xSize
Definition: screenwizard.h:48
ScreenWizard::anythingChanged
bool anythingChanged() const
Definition: screenwizard.cpp:323
ScreenWizard::m_offsets
MythUIText * m_offsets
Definition: screenwizard.h:59
ScreenWizard::m_yOffset
int m_yOffset
Definition: screenwizard.h:51
ScreenWizard::m_ySize
int m_ySize
Definition: screenwizard.h:49
mythdialogbox.h
MythScreenStack
Definition: mythscreenstack.h:16
ScreenWizard::moveTLUp
bool moveTLUp(void)
Definition: screenwizard.cpp:140
MythScreenType
Screen in which all other widgets are contained and rendered.
Definition: mythscreentype.h:45
ScreenWizard::wireUpTheme
void wireUpTheme()
ScreenWizard::m_coarse
int m_coarse
Definition: screenwizard.h:40
ScreenWizard::m_size
MythUIText * m_size
Definition: screenwizard.h:58
mythuiimage.h
ScreenWizard::m_bottomRightX
int m_bottomRightX
Definition: screenwizard.h:44
ScreenWizard::ScreenWizard
ScreenWizard(MythScreenStack *parent, const char *name)
Definition: screenwizard.cpp:22
ScreenWizard::m_bottomRightY
int m_bottomRightY
Definition: screenwizard.h:45
ScreenWizard::m_screenWidth
int m_screenWidth
Definition: screenwizard.h:46
ScreenWizard::updateScreen
void updateScreen()
Definition: screenwizard.cpp:216
ScreenWizard::slotResetSettings
static void slotResetSettings()
Definition: screenwizard.cpp:314
ScreenWizard::m_change
int m_change
Definition: screenwizard.h:41
ScreenWizard::m_whichCorner
bool m_whichCorner
Definition: screenwizard.h:36
ScreenWizard::m_screenHeight
int m_screenHeight
Definition: screenwizard.h:47
MythDialogBox
Basic menu dialog, message and a list of options.
Definition: mythdialogbox.h:166
ScreenWizard::doMenu
void doMenu()
Definition: screenwizard.cpp:228
ScreenWizard::m_blackout
MythUIShape * m_blackout
Definition: screenwizard.h:56
ScreenWizard::m_topLeftX
int m_topLeftX
Definition: screenwizard.h:42
ScreenWizard::Create
bool Create(void) override
Definition: screenwizard.cpp:38
ScreenWizard::moveTLDown
bool moveTLDown(void)
Definition: screenwizard.cpp:149
ScreenWizard::m_topLeftY
int m_topLeftY
Definition: screenwizard.h:43
ScreenWizard::SetInitialSettings
void SetInitialSettings(int _x, int _y, int _w, int _h)
Definition: screenwizard.cpp:29
MythUIShape
A widget for rendering primitive shapes and lines.
Definition: mythuishape.h:21
ScreenWizard::m_menuRect
QRect m_menuRect
Definition: screenwizard.h:53
ScreenWizard::slotChangeCoarseFine
void slotChangeCoarseFine()
Definition: screenwizard.cpp:288
MythUIText
All purpose text widget, displays a text string.
Definition: mythuitext.h:28
ScreenWizard
Definition: screenwizard.h:18
ScreenWizard::moveBRDown
bool moveBRDown(void)
Definition: screenwizard.cpp:188
ScreenWizard::m_xOffset
int m_xOffset
Definition: screenwizard.h:50
ScreenWizard::m_arrowsRect
QRect m_arrowsRect
Definition: screenwizard.h:54
ScreenWizard::moveBRUp
bool moveBRUp(void)
Definition: screenwizard.cpp:178
ScreenWizard::moveTLRight
bool moveTLRight(void)
Definition: screenwizard.cpp:168
ScreenWizard::m_fine
int m_fine
Definition: screenwizard.h:39
mythuibutton.h
ScreenWizard::customEvent
void customEvent(QEvent *event) override
Definition: screenwizard.cpp:336
ScreenWizard::slotSaveSettings
void slotSaveSettings() const
Definition: screenwizard.cpp:304
ScreenWizard::~ScreenWizard
~ScreenWizard() override=default
ScreenWizard::m_changed
bool m_changed
Definition: screenwizard.h:38
mythuishape.h
ScreenWizard::m_changeAmount
MythUIText * m_changeAmount
Definition: screenwizard.h:60
mythscreentype.h
mythuitype.h
ScreenWizard::moveBRRight
bool moveBRRight(void)
Definition: screenwizard.cpp:207