Canorus 0.0
propertiesdialog.h
Go to the documentation of this file.
1
8#ifndef PROPERTIESDIALOG_H_
9#define PROPERTIESDIALOG_H_
10
11#include "ui_propertiesdialog.h"
12#include "ui_documentproperties.h"
13#include "ui_sheetproperties.h"
14#include "ui_staffproperties.h"
15#include "ui_voiceproperties.h"
16#include "ui_lyricscontextproperties.h"
17#include "ui_functionmarkcontextproperties.h"
18
19class QTreeWidgetItem;
20
21class CADocument;
22class CASheet;
23class CAStaff;
24class CAContext;
25class CAVoice;
26class CALyricsContext;
28
29class CADocumentProperties : public QWidget, public Ui::uiDocumentProperties {
30 Q_OBJECT
31public:
32 CADocumentProperties( CADocument *doc, QWidget *parent=0 ) : QWidget( parent ) { _document = doc; setupUi(this); }
33public slots:
35private:
37};
38
39class CASheetProperties : public QWidget, public Ui::uiSheetProperties {
40public:
41 CASheetProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
42};
43
44class CAStaffProperties : public QWidget, public Ui::uiStaffProperties {
45public:
46 CAStaffProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
47};
48
49class CAVoiceProperties : public QWidget, public Ui::uiVoiceProperties {
50public:
51 CAVoiceProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
52};
53
54class CALyricsContextProperties : public QWidget, public Ui::uiLyricsContextProperties {
55public:
56 CALyricsContextProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
57};
58
59class CAFunctionMarkContextProperties : public QWidget, public Ui::uiFunctionMarkContextProperties {
60public:
61 CAFunctionMarkContextProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
62};
63
64class CAPropertiesDialog : public QDialog, private Ui::uiPropertiesDialog
65{
66 Q_OBJECT
67public:
68 CAPropertiesDialog( CADocument *doc, QWidget *parent=0 );
69 virtual ~CAPropertiesDialog();
70 static void documentProperties( CADocument *doc, QWidget *parent );
71 static void sheetProperties( CASheet *sheet, QWidget *parent );
72 static void contextProperties( CAContext *context, QWidget *parent );
73 static void voiceProperties( CAVoice *voice, QWidget *parent );
74
75 inline CADocument *document() { return _document; }
76 inline QTreeWidgetItem *documentItem() { return _documentItem; }
77 inline QHash< QTreeWidgetItem*, CASheet* >& sheetItem() { return _sheetItem; }
78 inline QHash< QTreeWidgetItem*, CAContext* >& contextItem() { return _contextItem; }
79 inline QHash< QTreeWidgetItem*, CAVoice* >& voiceItem() { return _voiceItem; }
80
81public slots:
82 void on_uiDocumentTree_currentItemChanged( QTreeWidgetItem *cur, QTreeWidgetItem *prev );
83 void on_uiButtonBox_clicked( QAbstractButton* );
84 void on_uiUp_clicked( bool );
85 void on_uiDown_clicked( bool );
86
87private:
88 void buildTree();
89
90 void applyProperties();
98
100 QTreeWidgetItem *_documentItem; // Document => Document properties widget
101 QWidget *_documentPropertiesWidget; // Document item in tree widget => Document
102 QHash< CASheet*, QWidget* > _sheetPropertiesWidget; // Sheet => Sheet properties widget
103 QHash< QTreeWidgetItem*, CASheet* > _sheetItem; // Sheet item in tree widget => Sheet
104 QHash< CAContext*, QWidget* > _contextPropertiesWidget; // Context => Context properties widget
105 QHash< QTreeWidgetItem*, CAContext* > _contextItem; // Context item in tree widget => Context
106 QHash< CAVoice*, QWidget* > _voicePropertiesWidget; // Voice => Voice properties widget
107 QHash< QTreeWidgetItem*, CAVoice* > _voiceItem; // Voice item in tree widget => Voice
108};
109
110#endif /* PROPERTIESDIALOG_H_ */
Line of music elements in the sheet.
Definition: context.h:16
Definition: propertiesdialog.h:29
CADocument * _document
Definition: propertiesdialog.h:36
void on_uiComposer_editingFinished()
Definition: propertiesdialog.cpp:206
CADocumentProperties(CADocument *doc, QWidget *parent=0)
Definition: propertiesdialog.h:32
Class which represents the current document.
Definition: document.h:19
Definition: propertiesdialog.h:59
CAFunctionMarkContextProperties(QWidget *parent=0)
Definition: propertiesdialog.h:61
Context for function marks.
Definition: functionmarkcontext.h:19
Definition: propertiesdialog.h:54
CALyricsContextProperties(QWidget *parent=0)
Definition: propertiesdialog.h:56
One stanza line of lyrics.
Definition: lyricscontext.h:19
Advanced Document, Sheet, Staff etc. properties.
Definition: propertiesdialog.h:65
void on_uiUp_clicked(bool)
Definition: propertiesdialog.cpp:405
void updateDocumentProperties(CADocument *)
Definition: propertiesdialog.cpp:433
void on_uiDown_clicked(bool)
Definition: propertiesdialog.cpp:419
void updateVoiceProperties(CAVoice *)
Definition: propertiesdialog.cpp:461
static void sheetProperties(CASheet *sheet, QWidget *parent)
Definition: propertiesdialog.cpp:181
void updateFunctionMarkContextProperties(CAFunctionMarkContext *)
Definition: propertiesdialog.cpp:472
void on_uiButtonBox_clicked(QAbstractButton *)
Definition: propertiesdialog.cpp:291
QHash< QTreeWidgetItem *, CASheet * > & sheetItem()
Definition: propertiesdialog.h:77
void buildTree()
Definition: propertiesdialog.cpp:60
void updateStaffProperties(CAStaff *)
Definition: propertiesdialog.cpp:454
void updateLyricsContextProperties(CALyricsContext *)
Definition: propertiesdialog.cpp:468
QHash< QTreeWidgetItem *, CAVoice * > & voiceItem()
Definition: propertiesdialog.h:79
CADocument * document()
Definition: propertiesdialog.h:75
QTreeWidgetItem * _documentItem
Definition: propertiesdialog.h:100
QHash< CAVoice *, QWidget * > _voicePropertiesWidget
Definition: propertiesdialog.h:106
QHash< QTreeWidgetItem *, CAVoice * > _voiceItem
Definition: propertiesdialog.h:107
static void documentProperties(CADocument *doc, QWidget *parent)
Definition: propertiesdialog.cpp:173
static void contextProperties(CAContext *context, QWidget *parent)
Definition: propertiesdialog.cpp:189
void applyProperties()
Definition: propertiesdialog.cpp:307
CADocument * _document
Definition: propertiesdialog.h:99
QHash< QTreeWidgetItem *, CAContext * > & contextItem()
Definition: propertiesdialog.h:78
void updateSheetProperties(CASheet *)
Definition: propertiesdialog.cpp:450
void on_uiDocumentTree_currentItemChanged(QTreeWidgetItem *cur, QTreeWidgetItem *prev)
Definition: propertiesdialog.cpp:227
static void voiceProperties(CAVoice *voice, QWidget *parent)
Definition: propertiesdialog.cpp:197
QTreeWidgetItem * documentItem()
Definition: propertiesdialog.h:76
QHash< CAContext *, QWidget * > _contextPropertiesWidget
Definition: propertiesdialog.h:104
void createDocumentFromTree()
Definition: propertiesdialog.cpp:372
virtual ~CAPropertiesDialog()
Definition: propertiesdialog.cpp:53
QHash< CASheet *, QWidget * > _sheetPropertiesWidget
Definition: propertiesdialog.h:102
QHash< QTreeWidgetItem *, CASheet * > _sheetItem
Definition: propertiesdialog.h:103
QWidget * _documentPropertiesWidget
Definition: propertiesdialog.h:101
QHash< QTreeWidgetItem *, CAContext * > _contextItem
Definition: propertiesdialog.h:105
CAPropertiesDialog(CADocument *doc, QWidget *parent=0)
Definition: propertiesdialog.cpp:42
Definition: propertiesdialog.h:39
CASheetProperties(QWidget *parent=0)
Definition: propertiesdialog.h:41
Represents a single sheet of paper in the document.
Definition: sheet.h:22
Definition: propertiesdialog.h:44
CAStaffProperties(QWidget *parent=0)
Definition: propertiesdialog.h:46
Represents a staff in the sheet.
Definition: staff.h:25
Definition: propertiesdialog.h:49
CAVoiceProperties(QWidget *parent=0)
Definition: propertiesdialog.h:51
Class which represents a voice in the staff.
Definition: voice.h:23