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 
19 class QTreeWidgetItem;
20 
21 class CADocument;
22 class CASheet;
23 class CAStaff;
24 class CAContext;
25 class CAVoice;
26 class CALyricsContext;
28 
29 class CADocumentProperties : public QWidget, public Ui::uiDocumentProperties {
30  Q_OBJECT
31 public:
32  CADocumentProperties( CADocument *doc, QWidget *parent=0 ) : QWidget( parent ) { _document = doc; setupUi(this); }
33 public slots:
35 private:
37 };
38 
39 class CASheetProperties : public QWidget, public Ui::uiSheetProperties {
40 public:
41  CASheetProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
42 };
43 
44 class CAStaffProperties : public QWidget, public Ui::uiStaffProperties {
45 public:
46  CAStaffProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
47 };
48 
49 class CAVoiceProperties : public QWidget, public Ui::uiVoiceProperties {
50 public:
51  CAVoiceProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
52 };
53 
54 class CALyricsContextProperties : public QWidget, public Ui::uiLyricsContextProperties {
55 public:
56  CALyricsContextProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
57 };
58 
59 class CAFunctionMarkContextProperties : public QWidget, public Ui::uiFunctionMarkContextProperties {
60 public:
61  CAFunctionMarkContextProperties( QWidget *parent=0 ) : QWidget( parent ) { setupUi(this); }
62 };
63 
64 class CAPropertiesDialog : public QDialog, private Ui::uiPropertiesDialog
65 {
66  Q_OBJECT
67 public:
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 
81 public 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 
87 private:
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_ */
CAPropertiesDialog::documentProperties
static void documentProperties(CADocument *doc, QWidget *parent)
Definition: propertiesdialog.cpp:173
CAVoiceProperties
Definition: propertiesdialog.h:49
CADocument::setPoet
void setPoet(const QString poet)
Definition: document.h:54
CADocument::composer
const QString composer()
Definition: document.h:39
CAPropertiesDialog::_sheetItem
QHash< QTreeWidgetItem *, CASheet * > _sheetItem
Definition: propertiesdialog.h:103
CAStaff::voiceList
const QList< CAVoice * > & voiceList()
Definition: staff.h:35
CADocument::setTitle
void setTitle(const QString title)
Definition: document.h:50
CAPropertiesDialog::_sheetPropertiesWidget
QHash< CASheet *, QWidget * > _sheetPropertiesWidget
Definition: propertiesdialog.h:102
CAContext::Staff
@ Staff
Definition: context.h:23
CADocument::comments
const QString comments()
Definition: document.h:48
CAPropertiesDialog::_contextPropertiesWidget
QHash< CAContext *, QWidget * > _contextPropertiesWidget
Definition: propertiesdialog.h:104
CAPropertiesDialog::createDocumentFromTree
void createDocumentFromTree()
Definition: propertiesdialog.cpp:372
CAPropertiesDialog::buildTree
void buildTree()
Definition: propertiesdialog.cpp:60
CAPropertiesDialog::_contextItem
QHash< QTreeWidgetItem *, CAContext * > _contextItem
Definition: propertiesdialog.h:105
CADocumentProperties
Definition: propertiesdialog.h:29
CAPropertiesDialog::on_uiButtonBox_clicked
void on_uiButtonBox_clicked(QAbstractButton *)
Definition: propertiesdialog.cpp:291
CADocument
Class which represents the current document.
Definition: document.h:19
CASheet::addContext
void addContext(CAContext *c)
Definition: sheet.h:33
CASheetProperties::CASheetProperties
CASheetProperties(QWidget *parent=0)
Definition: propertiesdialog.h:41
CAPropertiesDialog::updateDocumentProperties
void updateDocumentProperties(CADocument *)
Definition: propertiesdialog.cpp:433
CAVoice
Class which represents a voice in the staff.
Definition: voice.h:23
CADocument::setComments
void setComments(const QString comments)
Definition: document.h:61
CADocument::dateCreated
const QDateTime dateCreated()
Definition: document.h:45
document.h
CADocument::dedication
const QString dedication()
Definition: document.h:43
QDialog
CAVoice::setMidiChannel
void setMidiChannel(const unsigned char ch)
Definition: voice.h:105
functionmarkcontext.h
CAUndo::pushUndoCommand
void pushUndoCommand()
Definition: undo.cpp:105
CAPropertiesDialog::_voicePropertiesWidget
QHash< CAVoice *, QWidget * > _voicePropertiesWidget
Definition: propertiesdialog.h:106
CAPropertiesDialog::voiceProperties
static void voiceProperties(CAVoice *voice, QWidget *parent)
Definition: propertiesdialog.cpp:197
CAFunctionMarkContextProperties::CAFunctionMarkContextProperties
CAFunctionMarkContextProperties(QWidget *parent=0)
Definition: propertiesdialog.h:61
CADocument::setDedication
void setDedication(const QString dedication)
Definition: document.h:56
CADocument::textTranslator
const QString textTranslator()
Definition: document.h:42
CAPropertiesDialog::updateSheetProperties
void updateSheetProperties(CASheet *)
Definition: propertiesdialog.cpp:450
CADocument::setComposer
void setComposer(const QString composer)
Definition: document.h:52
CAStaffProperties
Definition: propertiesdialog.h:44
CADocumentProperties::on_uiComposer_editingFinished
void on_uiComposer_editingFinished()
Definition: propertiesdialog.cpp:206
CAVoice::setMidiPitchOffset
void setMidiPitchOffset(const char midiPitchOffset)
Definition: voice.h:111
CAPropertiesDialog::applyProperties
void applyProperties()
Definition: propertiesdialog.cpp:307
CAUndo::createUndoCommand
void createUndoCommand(CADocument *d, QString text)
Definition: undo.cpp:183
CADocument::poet
const QString poet()
Definition: document.h:41
CAFunctionMarkContext
Context for function marks.
Definition: functionmarkcontext.h:19
undo.h
CADocument::copyright
const QString copyright()
Definition: document.h:44
CAPropertiesDialog::_document
CADocument * _document
Definition: propertiesdialog.h:99
CAStaff::removeVoice
void removeVoice(CAVoice *voice)
Definition: staff.h:39
CAVoice::midiChannel
unsigned char midiChannel()
Definition: voice.h:104
CAPropertiesDialog::voiceItem
QHash< QTreeWidgetItem *, CAVoice * > & voiceItem()
Definition: propertiesdialog.h:79
CAPropertiesDialog::documentItem
QTreeWidgetItem * documentItem()
Definition: propertiesdialog.h:76
CAPropertiesDialog::on_uiDown_clicked
void on_uiDown_clicked(bool)
Definition: propertiesdialog.cpp:419
CAStaff::setNumberOfLines
void setNumberOfLines(int val)
Definition: staff.h:31
CADocument::sheetList
const QList< CASheet * > & sheetList()
Definition: document.h:26
CAContext::FunctionMarkContext
@ FunctionMarkContext
Definition: context.h:25
CALyricsContextProperties
Definition: propertiesdialog.h:54
CAStaff
Represents a staff in the sheet.
Definition: staff.h:25
CAVoiceProperties::CAVoiceProperties
CAVoiceProperties(QWidget *parent=0)
Definition: propertiesdialog.h:51
CAPropertiesDialog::_documentItem
QTreeWidgetItem * _documentItem
Definition: propertiesdialog.h:100
CAContext::contextType
CAContextType contextType()
Definition: context.h:32
CADocument::title
const QString title()
Definition: document.h:37
CAPropertiesDialog::updateStaffProperties
void updateStaffProperties(CAStaff *)
Definition: propertiesdialog.cpp:454
CAStaffProperties::CAStaffProperties
CAStaffProperties(QWidget *parent=0)
Definition: propertiesdialog.h:46
CASheet::removeContext
void removeContext(CAContext *c)
Definition: sheet.h:34
CADocument::setCopyright
void setCopyright(const QString copyright)
Definition: document.h:57
CADocument::setTextTranslator
void setTextTranslator(const QString textTranslator)
Definition: document.h:55
CACanorus::undo
static CAUndo * undo()
Definition: canorus.h:58
CAPropertiesDialog::updateFunctionMarkContextProperties
void updateFunctionMarkContextProperties(CAFunctionMarkContext *)
Definition: propertiesdialog.cpp:472
CASheet::contextList
const QList< CAContext * > & contextList()
Definition: sheet.h:29
CAPropertiesDialog::sheetItem
QHash< QTreeWidgetItem *, CASheet * > & sheetItem()
Definition: propertiesdialog.h:77
CAPropertiesDialog
Advanced Document, Sheet, Staff etc. properties.
Definition: propertiesdialog.h:65
CAPropertiesDialog::updateVoiceProperties
void updateVoiceProperties(CAVoice *)
Definition: propertiesdialog.cpp:461
CACanorus::rebuildUI
static void rebuildUI(CADocument *document, CASheet *sheet)
Definition: canorus.cpp:326
sheet.h
CADocument::subtitle
const QString subtitle()
Definition: document.h:38
CASheetProperties
Definition: propertiesdialog.h:39
CADocumentProperties::CADocumentProperties
CADocumentProperties(CADocument *doc, QWidget *parent=0)
Definition: propertiesdialog.h:32
CALyricsContext
One stanza line of lyrics.
Definition: lyricscontext.h:19
CAPropertiesDialog::_voiceItem
QHash< QTreeWidgetItem *, CAVoice * > _voiceItem
Definition: propertiesdialog.h:107
CAPropertiesDialog::_documentPropertiesWidget
QWidget * _documentPropertiesWidget
Definition: propertiesdialog.h:101
CAVoice::staff
CAStaff * staff()
Definition: voice.h:29
canorus.h
CAContext
Line of music elements in the sheet.
Definition: context.h:16
CADocument::arranger
const QString arranger()
Definition: document.h:40
CAStaff::addVoice
void addVoice(CAVoice *voice)
Definition: staff.h:36
CAPropertiesDialog::contextProperties
static void contextProperties(CAContext *context, QWidget *parent)
Definition: propertiesdialog.cpp:189
CAContext::FiguredBassContext
@ FiguredBassContext
Definition: context.h:26
CADocument::removeSheet
void removeSheet(CASheet *sheet)
Definition: document.h:30
CAPropertiesDialog::contextItem
QHash< QTreeWidgetItem *, CAContext * > & contextItem()
Definition: propertiesdialog.h:78
CAContext::LyricsContext
@ LyricsContext
Definition: context.h:24
CAPropertiesDialog::updateLyricsContextProperties
void updateLyricsContextProperties(CALyricsContext *)
Definition: propertiesdialog.cpp:468
CAPropertiesDialog::document
CADocument * document()
Definition: propertiesdialog.h:75
voice.h
CADocument::addSheet
void addSheet(CASheet *sheet)
Definition: document.h:28
CAPropertiesDialog::on_uiUp_clicked
void on_uiUp_clicked(bool)
Definition: propertiesdialog.cpp:405
propertiesdialog.h
CAFunctionMarkContextProperties
Definition: propertiesdialog.h:59
CASheet
Represents a single sheet of paper in the document.
Definition: sheet.h:22
CAPropertiesDialog::CAPropertiesDialog
CAPropertiesDialog(CADocument *doc, QWidget *parent=0)
Definition: propertiesdialog.cpp:42
CADocument::setArranger
void setArranger(const QString arranger)
Definition: document.h:53
CAPropertiesDialog::~CAPropertiesDialog
virtual ~CAPropertiesDialog()
Definition: propertiesdialog.cpp:53
CAStaff::numberOfLines
int numberOfLines()
Definition: staff.h:30
CADocumentProperties::_document
CADocument * _document
Definition: propertiesdialog.h:36
CADocument::setSubtitle
void setSubtitle(const QString subtitle)
Definition: document.h:51
CAPropertiesDialog::on_uiDocumentTree_currentItemChanged
void on_uiDocumentTree_currentItemChanged(QTreeWidgetItem *cur, QTreeWidgetItem *prev)
Definition: propertiesdialog.cpp:227
CASheet::document
CADocument * document()
Definition: sheet.h:43
CAPropertiesDialog::sheetProperties
static void sheetProperties(CASheet *sheet, QWidget *parent)
Definition: propertiesdialog.cpp:181
staff.h
lyricscontext.h
CAContext::sheet
CASheet * sheet()
Definition: context.h:34
CAVoice::midiPitchOffset
char midiPitchOffset()
Definition: voice.h:110
CALyricsContextProperties::CALyricsContextProperties
CALyricsContextProperties(QWidget *parent=0)
Definition: propertiesdialog.h:56