Canorus  0.0
mainwin.h
Go to the documentation of this file.
1 
8 #ifndef MAINWIN_H_
9 #define MAINWIN_H_
10 
11 #include <QObject>
12 #include <QFileDialog>
13 #include <QTime>
14 #include <QTimer>
15 #include <QHash>
16 
17 #include "ui_mainwin.h"
18 
20 
21 #include "core/notechecker.h"
22 
23 #include "score/document.h"
24 #include "score/muselement.h"
25 #include "score/note.h"
26 #include "score/clef.h"
27 
28 #include "interface/playback.h"
30 
31 #include "widgets/viewcontainer.h"
32 #include "widgets/scoreview.h"
33 #include "widgets/resourceview.h"
34 
35 class QKeyEvent;
36 class QSlider;
37 class QSpinBox;
38 class QToolBar;
39 class QLabel;
40 class QLineEdit;
41 class QComboBox;
42 class QCheckBox;
43 class QAction;
44 
45 class CAKeySignatureUI;
46 
48 
49 #ifdef QT_WEBENGINEWIDGETS_LIB
50 class CAHelpBrowser;
51 #endif
52 
53 class CAMenuToolButton;
54 class CAUndoToolButton;
55 class CALCDNumber;
56 class CASheet;
57 class CAScoreView;
58 class CASourceView;
60 class CAPrintPreviewCtl;
61 class CAPrintCtl;
62 class CAPreviewCtl;
63 class CAPyConsole;
64 class CATransposeView;
65 class CAJumpToView;
66 class CAMidiRecorderView;
67 class CAKeybdInput;
68 class CAExport;
69 class CAActionStorage;
70 
71 class CAMainWin : public QMainWindow, private Ui::uiMainWindow
72 {
73  Q_OBJECT
74 
75  friend class CAMainWinProgressCtl;
76  friend class CAActionDelegate;
77  friend class CAActionStorage;
78 
79 public:
80  enum CAMode {
86  };
87 
88  CAMainWin(QMainWindow *oParent = 0);
89  ~CAMainWin();
90 
91  void clearUI();
92  void rebuildUI(CASheet *sheet, bool repaint=true);
93  void rebuildUI(bool repaint=true);
94  inline bool rebuildUILock() { return _rebuildUILock; }
95  void updateWindowTitle();
96 
97  void newDocument();
98  void addSheet(CASheet *s);
99  void removeSheet(CASheet *s);
100  bool insertMusElementAt( const QPoint coords, CAScoreView *v );
102  void deleteSelection( CAScoreView *v, bool deleteSyllable, bool deleteNotes, bool undo );
103  void copySelection( CAScoreView *v );
104  void pasteAt( const QPoint coords, CAScoreView *v );
105 
106  CADocument *openDocument( const QString& fileName );
108  bool saveDocument( QString fileName );
109 
110  void setMode(CAMode mode, const QString &oModeHash);
111  inline CAMode mode() { return _mode; }
112  inline QFileDialog *exportDialog() { return uiExportDialog; }
113  inline QFileDialog *importDialog() { return uiImportDialog; }
115  inline QAction *resourceViewAction() { return uiResourceView; }
118  inline CAView *currentView() { return _currentView; }
119  inline void removeView(CAView* v) { _viewList.removeAll(v); }
120  inline const QList<CAView*>& viewList() const { return _viewList; }
121 
123  if (currentView()) return dynamic_cast<CAScoreView*>(currentView());
124  else return 0;
125  }
126 
128 
129  inline CAStaff *currentStaff() {
130  CAContext *context = currentContext();
131  if (context && context->contextType()==CAContext::Staff) return static_cast<CAStaff*>(context);
132  else return 0;
133  }
134 
136  void setCurrentVoice( CAVoice* );
139  inline CADocument *document() { return _document; }
140 
142  inline bool isInsertKeySigChecked() { return uiInsertKeySig->isChecked(); }
143 
144  // Dialogs, Windows
145  static QFileDialog *uiSaveDialog;
146  static QFileDialog *uiOpenDialog;
147  static QFileDialog *uiExportDialog;
148  static QFileDialog *uiImportDialog;
149 
150  // Python Console
153 
155 #ifdef QT_WEBENGINEWIDGETS_LIB
156  CAHelpBrowser *helpWidget() { return uiHelpWidget; }
157 #endif
158 private slots:
160  // ToolBar/Menus actions //
162  void closeEvent(QCloseEvent *event);
163  // File
174 
175  // Edit
176  void on_uiUndo_toggled(bool, int);
177  void on_uiRedo_toggled(bool, int);
178  void on_uiCopy_triggered();
179  void on_uiCut_triggered();
180  void on_uiPaste_triggered();
184 
185  // Insert
186  void on_uiEditMode_toggled(bool);
189  void on_uiContextType_toggled(bool, int);
190  void on_uiClefType_toggled(bool, int);
191  void on_uiTimeSigType_toggled(bool, int);
192  void on_uiBarlineType_toggled(bool, int);
193  void on_uiInsertPlayable_toggled(bool);
194  void on_uiSlurType_toggled(bool, int);
195  void on_uiMarkType_toggled(bool, int);
196  void on_uiArticulationType_toggled(bool, int);
197  void on_uiInsertSyllable_toggled(bool);
198  void on_uiInsertFBM_toggled(bool);
199  void on_uiInsertFM_toggled(bool);
200 
201  // View
202  void on_uiFullscreen_toggled(bool);
211  void on_uiResourceView_toggled(bool);
212  void on_uiShowRuler_toggled(bool);
213 
214  // Sheet
218 
219  // Context
225 
226  // Playback
228 
229  // Playable
230  void on_uiPlayableLength_toggled(bool, int);
231  void on_uiTupletType_toggled(bool, int);
234  void on_uiNoteStemDirection_toggled(bool, int);
235  void on_uiHiddenRest_toggled( bool checked );
236  void onMidiInEvent( QVector<unsigned char> message );
237 
238  // Time Signature
241 
242  // Clef
244 
245  // Lyrics
246  void onTextEditKeyPressEvent(QKeyEvent *);
247  void confirmTextEdit(CAScoreView *v, CATextEdit *textEdit, CAMusElement *elt);
248 
249  // Function marks
250  void on_uiFMFunction_toggled(bool, int);
251  void on_uiFMChordArea_toggled(bool, int);
252  void on_uiFMTonicDegree_toggled(bool, int);
253  void on_uiFMEllipse_toggled(bool);
254 
255  // Figured bass marks
256  void on_uiFBMNumber_toggled(bool, int);
257  void on_uiFBMAccs_toggled(bool, int);
258 
259  // Dynamic marks
260  void on_uiDynamicText_toggled(bool, int);
263 
264  // Instrument change
266 
267  // Fermata
268  void on_uiFermataType_toggled( bool, int );
269 
270  // Repeat Mark
271  void on_uiRepeatMarkType_toggled( bool, int );
272 
273  // Fingering
274  void on_uiFinger_toggled( bool checked, int t );
275  void on_uiFingeringOriginal_toggled( bool checked );
276 
277  // Tempo
278  void on_uiTempoBeat_toggled( bool, int );
280 
281  // Tools
284  void on_uiJumpTo_triggered();
286 
287  // Voice
288  void on_uiVoiceNum_valChanged(int);
292  void on_uiVoiceStemDirection_toggled(bool, int);
294 
295  // Window
300  void on_uiNewView_triggered();
302 
303  // Help
304 public slots:
306 private slots:
308  void on_uiAboutQt_triggered();
309 
311  // Handle other widgets signals //
313  void keyPressEvent(QKeyEvent *);
316  void on_uiTabWidget_CAMoveTab(int from, int to);
317 
318  void viewClicked();
319 
320  void scoreViewMousePress(QMouseEvent *e, const QPoint coords);
321  void scoreViewMouseMove(QMouseEvent *e, const QPoint coords);
322  void scoreViewMouseRelease(QMouseEvent *e, const QPoint coords);
323  void scoreViewDoubleClick(QMouseEvent *e, const QPoint coords);
324  void scoreViewTripleClick(QMouseEvent *e, const QPoint coords);
325  void scoreViewWheel(QWheelEvent *e, const QPoint coords);
326  void scoreViewKeyPress(QKeyEvent *e);
327  void sourceViewCommit(QString inputString);
328  void floatViewClosed(CAView*);
329 
331 
332  void playbackFinished();
334  void onRepaintTimerTimeout();
335 
337  // Handle progress bar events //
339  void onImportDone( int status );
340  void onExportDone( int status );
341 
342 private:
343  void playImmediately( QList<CAMusElement*> elements );
344 
346  // General properties //
350 
353  CAExport *_poExp; // abstract export instance
358 
361 
362  void setMode(CAMode mode);
363  QString createModeHash();
364  inline void setCurrentView( CAView *view ) { _currentView = view; }
366  { _currentViewContainer = vpc; }
367 
369  QList<CAViewContainer *>_viewContainerList;
370 
371  QList<CAView *> _viewList;
372  QHash<CAViewContainer*, CASheet*> _sheetMap;
373  QHash<QString, int> _modeHash;
377  QList<CADrawableMusElement*> _prePlaybackSelection;
378  QTimer *_repaintTimer;
380  inline void setRebuildUILock(bool l) { _rebuildUILock = l; }
381 
384  unsigned int _timeEditedTime;
387 public:
389 private:
390  inline bool stopPlayback() {
391  if(_playback && _playback->isRunning())
392  _playback->stopNow();
393  return true;
394  }
395 
396  bool handleUnsavedChanges();
397 
400  // Pure user interface - widgets that weren't created by Qt Designer yet //
402  void createCustomActions();
403  void setupCustomUi();
404  void initView(CAView*);
405  void updateUndoRedoButtons();
406  void updateToolBars();
407  void updateSheetToolBar();
408  void updateContextToolBar();
409  void updateVoiceToolBar();
410  void updateInsertToolBar();
411  void updatePlayableToolBar();
412  void updateTimeSigToolBar();
413  void updateClefToolBar();
414  void updateFBMToolBar();
415  void updateFMToolBar();
416  void updateDynamicToolBar();
418  void updateTempoToolBar();
419  void updateFermataToolBar();
421  void updateFingeringToolBar();
422 
424  // Toolbar section //
426  // Standard toolbar
427  //QToolBar *uiStandardToolBar;
430 
431  // Insert toolbar
432  QToolBar *uiInsertToolBar;
433  QActionGroup *uiInsertGroup; // Group for mutual exclusive selection of music elements
434  // QAction *uiNewSheet; // made by Qt Designer
436 
437  // QAction *uiInsertPlayable; // made by Qt Designer
439  // QAction *uiInsertKeySig; // made by Qt Designer
440  CAMenuToolButton *uiTimeSigType; // made by Qt Designer
444  // QAction *uiInsertSyllable; // made by Qt Designer
445  // QAction *uiInsertFBM; // made by Qt Designer
446  // QAction *uiInsertFM; // made by Qt Designer
447 
448  QToolBar *uiSheetToolBar;
449  // QAction *uiNewSheet; // made by Qt Designer
451  // QAction *uiRemoveSheet; // made by Qt Designer
452  // QAction *uiSheetProperties; // made by Qt Designer
453 
454  QToolBar *uiContextToolBar;
455  // CAContext
457  //QAction *uiRemoveContext; // made by Qt Designer
458  //QAction *uiContextProperties; // made by Qt Designer
459  // CAStaff
460  // CALyricsContext
461  QSpinBox *uiStanzaNumber;
463  QComboBox *uiAssociatedVoice;
465  // CAFunctionMarkContext
466 
467  QToolBar *uiVoiceToolBar;
468  // QAction *uiNewVoice; // made by Qt Designer
471  QComboBox *uiVoiceInstrument;
472  // QAction *uiRemoveVoice; // made by Qt Designer
474  // QAction *uiVoiceProperties; // made by Qt Designer
475 
476  QToolBar *uiPlayableToolBar; // note and rest properties are merged for the time being
477  // Note properties
481 public: // Because CAKeyboardInput (input with midi keyboard) needs to operate these widgets to
482  // provide gui feedback, these, probably even more, should become public.
483  // Some clean interface would be appropriate.
485  QSpinBox *uiTupletNumber;
487 private:
492  // QAction *uiNoteAccsVisible; // made by Qt Designer
495  // Rest properties
496  // CAMenuToolButton *uiPlayableLength; // same as note properties
497  // QLabel *uiPlayableDotted; // same as note properties
498  // QAction *uiHiddenRest; // made by Qt Designer
499 
500  CAKeySignatureUI *_poKeySignatureUI; // Key signature UI parts
501 
502  QToolBar *uiClefToolBar;
503  QSpinBox *uiClefOffset;
505 
506  QToolBar *uiTimeSigToolBar;
507  QSpinBox *uiTimeSigBeats;
508  QLabel *uiTimeSigSlash;
509  QSpinBox *uiTimeSigBeat;
510  // CAMenuToolButton *uiTimeSigStyle; /// \todo Implement it. -Matevz
511 
512  QToolBar *uiFBMToolBar; // figured bass tool bar
515 
516  QToolBar *uiFMToolBar; // function mark tool bar
520  QComboBox *uiFMKeySig;
521  //QSpinBox *uiKeySigNumberOfAccs; // defined in uiKeySigToolBar
522  //QComboBox *uiKeySigGender; // defined in uiKeySigToolBar
523  //QAction *uiFMEllipse; // made by Qt Designer
524 
525  // Marks tool bars:
526  QToolBar *uiDynamicToolBar;
528  QSpinBox *uiDynamicVolume;
531  QComboBox *uiInstrumentChange;
532  QToolBar *uiTempoToolBar;
534  QLabel *uiTempoEquals;
536  QToolBar *uiFermataToolBar;
543 
544  // Python console
546 
547  // Help widget
549 #ifdef QT_WEBENGINEWIDGETS_LIB
550  CAHelpBrowser *uiHelpWidget;
551 #endif
552 };
553 #endif /* MAINWIN_H_ */
Represents a single sheet of paper in the document.
Definition: sheet.h:22
void on_uiFMTonicDegree_toggled(bool, int)
Definition: mainwin.cpp:3895
Holds together resizable views.
Definition: viewcontainer.h:17
bool handleUnsavedChanges()
Definition: mainwin.cpp:932
QSpinBox * uiStanzaNumber
Definition: mainwin.h:461
void on_uiAboutQt_triggered()
Definition: mainwin.cpp:4279
void setCurrentVoice(CAVoice *)
Definition: mainwin.cpp:1285
void on_uiFMChordArea_toggled(bool, int)
Definition: mainwin.cpp:3872
void on_uiExportDocument_triggered()
Definition: mainwin.cpp:3287
CAPlayback * _playback
Definition: mainwin.h:382
void on_uiVoiceNum_valChanged(int)
Definition: mainwin.cpp:3479
void updateFermataToolBar()
Definition: mainwin.cpp:5016
Definition: mainwinprogressctl.h:18
void setCurrentView(CAView *view)
Definition: mainwin.h:364
void onTextEditKeyPressEvent(QKeyEvent *)
Definition: mainwin.cpp:3669
Definition: midirecorderview.h:23
void on_uiSettings_triggered()
Definition: mainwin.cpp:4297
void on_uiFermataType_toggled(bool, int)
Definition: mainwin.cpp:5844
CAMenuToolButton * uiTupletType
Definition: mainwin.h:484
void on_uiHiddenRest_toggled(bool checked)
Definition: mainwin.cpp:1052
QString createModeHash()
Definition: mainwin.cpp:1567
CAMenuToolButton * uiDynamicText
Definition: mainwin.h:527
void initView(CAView *)
Definition: mainwin.cpp:1188
void on_uiVoiceProperties_triggered()
Definition: mainwin.cpp:3496
CAMode
Definition: mainwin.h:80
Definition: previewctl.h:22
CAMenuToolButton * uiTimeSigType
Definition: mainwin.h:440
void on_uiNewDocument_triggered()
Definition: mainwin.cpp:1308
QToolBar * uiFBMToolBar
Definition: mainwin.h:512
void removeSheet(CASheet *s)
Definition: mainwin.cpp:4401
int oldUiClefOffsetValue
Definition: mainwin.h:504
void on_uiInstrumentChange_activated(int)
Definition: mainwin.cpp:5824
CAPyConsole * pyConsole
Definition: mainwin.h:151
QToolBar * uiSheetToolBar
Definition: mainwin.h:448
void on_uiDocumentProperties_triggered()
Definition: mainwin.cpp:4440
void on_uiRemoveContext_triggered()
Definition: mainwin.cpp:1457
Definition: jumptoview.h:17
QLabel * uiTempoEquals
Definition: mainwin.h:534
QToolBar * uiFermataToolBar
Definition: mainwin.h:536
void on_uiOpenDocument_triggered()
Definition: mainwin.cpp:3087
CAPreviewCtl * _poPrintPreviewCtl
Definition: mainwin.h:351
void on_uiOpenRecent_aboutToShow()
Definition: mainwin.cpp:5990
void updateInsertToolBar()
Definition: mainwin.cpp:4692
CAKeybdInput * _keybdInput
Definition: mainwin.h:398
void on_uiFingeringOriginal_toggled(bool checked)
Definition: mainwin.cpp:5890
void on_uiContextName_returnPressed()
Definition: mainwin.cpp:4464
void on_uiVoiceStemDirection_toggled(bool, int)
Definition: mainwin.cpp:4506
void on_uiSplitHorizontally_triggered()
Definition: mainwin.cpp:1071
QLineEdit * uiTempoBpm
Definition: mainwin.h:535
static QFileDialog * uiImportDialog
Definition: mainwin.h:148
void playImmediately(QList< CAMusElement * > elements)
Definition: mainwin.cpp:6024
unsigned int _timeEditedTime
Definition: mainwin.h:384
void on_uiArticulationType_toggled(bool, int)
Definition: mainwin.cpp:4006
QToolBar * uiFingeringToolBar
Definition: mainwin.h:540
void setMidiRecorderView(CAMidiRecorderView *v)
Definition: mainwin.h:117
void on_uiNewSheet_triggered()
Definition: mainwin.cpp:1383
void rebuildUI(CASheet *sheet, bool repaint=true)
Definition: mainwin.cpp:1590
CAMidiRecorderView * midiRecorderView()
Definition: mainwin.h:116
QLineEdit * uiVoiceName
Definition: mainwin.h:470
void on_uiPlayableLength_toggled(bool, int)
Definition: mainwin.cpp:3589
CAMenuToolButton * uiFMFunction
Definition: mainwin.h:517
void updateSheetToolBar()
Definition: mainwin.cpp:4575
CAPyConsoleInterface * pyConsoleIface
Definition: plugins_swig.h:23
QList< CAView * > _viewList
Definition: mainwin.h:371
bool saveDocument(QString fileName)
Definition: mainwin.cpp:3216
Definition: transposeview.h:16
CAMainWin()
Definition: plugins_swig.h:17
Definition: helpbrowser.h:14
CAStaff * currentStaff()
Definition: mainwin.h:129
void on_uiContextType_toggled(bool, int)
Definition: mainwin.cpp:1478
CAViewContainer * _currentViewContainer
Definition: mainwin.h:368
QList< CADrawableMusElement * > _prePlaybackSelection
Definition: mainwin.h:377
void on_uiSheetName_returnPressed()
Definition: mainwin.cpp:4444
void scoreViewWheel(QWheelEvent *e, const QPoint coords)
Definition: mainwin.cpp:2082
QLineEdit * uiSheetName
Definition: mainwin.h:450
Class which represents a voice in the staff.
Definition: voice.h:23
void on_uiInsertSyllable_toggled(bool)
Definition: mainwin.cpp:3569
void on_uiShowRuler_toggled(bool)
Definition: mainwin.cpp:1154
QToolBar * uiVoiceToolBar
Definition: mainwin.h:467
Definition: mainwin.h:84
Keysignature user interface objects creation.
Definition: keysignatureui.h:23
Base class for various views.
Definition: view.h:15
void on_uiZoomToHeight_triggered()
Definition: mainwin.cpp:3073
void on_uiRepeatMarkType_toggled(bool, int)
Definition: mainwin.cpp:5911
void on_uiMarkType_toggled(bool, int)
Definition: mainwin.cpp:3973
void on_uiSplitVertically_triggered()
Definition: mainwin.cpp:1082
void on_uiUndo_toggled(bool, int)
Definition: mainwin.cpp:1312
void setupCustomUi()
Definition: mainwin.cpp:612
void scoreViewMouseMove(QMouseEvent *e, const QPoint coords)
Definition: mainwin.cpp:1915
void on_uiNewView_triggered()
Definition: mainwin.cpp:1173
CAKeySignatureUI * _poKeySignatureUI
Definition: mainwin.h:500
void on_uiClefType_toggled(bool, int)
Definition: mainwin.cpp:3958
void removeView(CAView *v)
Definition: mainwin.h:119
void on_uiCloseCurrentView_triggered()
Definition: mainwin.cpp:1102
CAMenuToolButton * uiFinger
Definition: mainwin.h:541
void on_uiTempoBeat_toggled(bool, int)
Definition: mainwin.cpp:5944
QAction * uiTupletInsteadOfAction
Definition: mainwin.h:490
void updateUndoRedoButtons()
Definition: mainwin.cpp:1368
CAMusElementFactory * _musElementFactory
Definition: mainwin.h:385
Class which represents the current document.
Definition: document.h:19
void on_uiTabWidget_CAMoveTab(int from, int to)
Definition: mainwin.cpp:1032
void on_uiTimeSigBeats_valueChanged(int)
Definition: mainwin.cpp:4022
QSpinBox * uiDynamicVolume
Definition: mainwin.h:528
QToolBar * uiPlayableToolBar
Definition: mainwin.h:476
void on_uiStanzaNumber_valueChanged(int)
Definition: mainwin.cpp:4484
void scoreViewTripleClick(QMouseEvent *e, const QPoint coords)
Definition: mainwin.cpp:2005
void on_uiZoomToSelection_triggered()
Definition: mainwin.cpp:3058
void on_uiNewWindow_triggered()
Definition: mainwin.cpp:1301
QCheckBox * uiFingeringOriginal
Definition: mainwin.h:542
CAMenuToolButton * uiVoiceStemDirection
Definition: mainwin.h:473
Definition: mainwin.h:85
Definition: undotoolbutton.h:17
CAMenuToolButton * uiArticulationType
Definition: mainwin.h:443
void on_uiResourceView_toggled(bool)
Definition: mainwin.cpp:1143
void updateInstrumentToolBar()
Definition: mainwin.cpp:5118
void on_uiSheetProperties_triggered()
Definition: mainwin.cpp:4457
CALCDNumber * uiVoiceNum
Definition: mainwin.h:469
CAMenuToolButton * uiBarlineType
Definition: mainwin.h:441
CANoteChecker _noteChecker
Definition: mainwin.h:386
QToolBar * uiContextToolBar
Definition: mainwin.h:454
QToolBar * uiClefToolBar
Definition: mainwin.h:502
CASheet * currentSheet()
Definition: plugins_swig.h:18
QComboBox * uiVoiceInstrument
Definition: mainwin.h:471
CADocument * _document
Definition: mainwin.h:348
void updateTimeSigToolBar()
Definition: mainwin.cpp:4865
QComboBox * uiAssociatedVoice
Definition: mainwin.h:463
bool on_uiSaveDocumentAs_triggered()
Definition: mainwin.cpp:3117
int _iNumAllowed
Definition: mainwin.h:374
CAResourceView * _resourceView
Definition: mainwin.h:354
QLabel * uiTimeSigSlash
Definition: mainwin.h:508
CAMenuToolButton * uiFMTonicDegree
Definition: mainwin.h:519
void clearUI()
Definition: mainwin.cpp:983
void sourceViewCommit(QString inputString)
Definition: mainwin.cpp:4185
void on_uiAssociatedVoice_activated(int)
Definition: mainwin.cpp:4496
Base class for export filters.
Definition: export.h:22
A text edit widget based on QLineEdit.
Definition: scoreview.h:41
void on_uiUsersGuide_triggered()
Definition: mainwin.cpp:4271
QToolBar * uiRepeatMarkToolBar
Definition: mainwin.h:538
QToolBar * uiTempoToolBar
Definition: mainwin.h:532
bool rebuildUILock()
Definition: mainwin.h:94
void on_uiVoiceInstrument_activated(int)
Definition: mainwin.cpp:3547
void setDocument(CADocument *document)
Definition: mainwin.h:141
void on_uiFBMNumber_toggled(bool, int)
Definition: mainwin.cpp:3776
const QList< CAView * > & viewList() const
Definition: mainwin.h:120
Tree view of all the resources inside the document.
Definition: resourceview.h:18
static QFileDialog * uiOpenDialog
Definition: mainwin.h:146
QFileDialog * importDialog()
Definition: mainwin.h:113
void on_uiUnsplitAll_triggered()
Definition: mainwin.cpp:1093
void on_uiFinger_toggled(bool checked, int t)
Definition: mainwin.cpp:5867
void on_uiTabWidget_currentChanged(int)
Definition: mainwin.cpp:1010
void on_uiFullscreen_toggled(bool)
Definition: mainwin.cpp:1045
QSpinBox * uiClefOffset
Definition: mainwin.h:503
~CAMainWin()
Definition: mainwin.cpp:208
Definition: mainwin.h:81
QFileDialog * exportDialog()
Definition: mainwin.h:112
void updateRepeatMarkToolBar()
Definition: mainwin.cpp:5039
void scoreViewDoubleClick(QMouseEvent *e, const QPoint coords)
Definition: mainwin.cpp:1992
CAViewContainer * currentViewContainer()
Definition: mainwin.h:138
Tool button with a menu at the side and a button box when clicked on.
Definition: menutoolbutton.h:27
QToolBar * uiFMToolBar
Definition: mainwin.h:516
void on_uiContextProperties_triggered()
Definition: mainwin.cpp:4477
Definition: mainwin.h:82
void updateToolBars()
Definition: mainwin.cpp:4546
CAMenuToolButton * uiTempoBeat
Definition: mainwin.h:533
CAContext * currentContext()
Definition: mainwin.cpp:1261
CAMenuToolButton * uiFMChordArea
Definition: mainwin.h:518
void on_uiTupletNumber_valueChanged(int)
Definition: mainwin.cpp:4166
CAResourceView * resourceView()
Definition: mainwin.h:114
void on_uiTimeSigBeat_valueChanged(int)
Definition: mainwin.cpp:4055
void on_uiCut_triggered()
Definition: mainwin.cpp:5151
QToolBar * uiTimeSigToolBar
Definition: mainwin.h:506
void on_uiFBMAccs_toggled(bool, int)
Definition: mainwin.cpp:3812
void on_uiLockScrollPlayback_toggled(bool)
Definition: mainwin.cpp:3037
static QFileDialog * uiSaveDialog
Definition: mainwin.h:145
void updateFBMToolBar()
Definition: mainwin.cpp:4913
void onMidiInEvent(QVector< unsigned char > message)
Definition: mainwin.cpp:3279
void on_uiInsertFBM_toggled(bool)
Definition: mainwin.cpp:3575
QActionGroup * uiInsertGroup
Definition: mainwin.h:433
void closeEvent(QCloseEvent *event)
Definition: mainwin.cpp:3078
QToolBar * uiInsertToolBar
Definition: mainwin.h:432
CAPrintCtl * _poPrintCtl
Definition: mainwin.h:352
CAScoreView * currentScoreView()
Definition: mainwin.h:122
CATransposeView * _transposeView
Definition: mainwin.h:355
void on_uiPaste_triggered()
Definition: mainwin.cpp:5164
void on_uiTupletType_toggled(bool, int)
Definition: mainwin.cpp:4122
QSpinBox * uiTimeSigBeats
Definition: mainwin.h:507
bool insertMusElementAt(const QPoint coords, CAScoreView *v)
Definition: mainwin.cpp:2540
void createCustomActions()
Definition: mainwin.cpp:252
void on_uiClefOffset_valueChanged(int)
Definition: mainwin.cpp:3503
QSpinBox * uiTupletActualNumber
Definition: mainwin.h:486
QAction * uiTupletNumberAction
Definition: mainwin.h:488
void on_uiCanorusMLSource_triggered()
Definition: mainwin.cpp:1131
void viewClicked()
Definition: mainwin.cpp:1902
void on_uiSlurType_toggled(bool, int)
Definition: mainwin.cpp:3939
void updateVoiceToolBar()
Definition: mainwin.cpp:4606
void setMode(CAMode mode, const QString &oModeHash)
Definition: mainwin.cpp:1493
QTimer _timeEditedTimer
Definition: mainwin.h:383
void on_uiRemoveVoice_triggered()
Definition: mainwin.cpp:1420
Audio playback of the score. This class creates playback events (usually MIDI events) for the music e...
Definition: playback.h:21
void on_uiNewVoice_triggered()
Definition: mainwin.cpp:1395
Music input per midi non realtime This class adds score input capability through a connected midi key...
Definition: keybdinput.h:19
void updateFingeringToolBar()
Definition: mainwin.cpp:5068
CAVoice * currentVoice()
Definition: mainwin.cpp:1274
Definition: pyconsoleinterface.h:15
void newDocument()
Definition: mainwin.cpp:867
void on_uiSelectAll_triggered()
Definition: mainwin.cpp:3041
CAMenuToolButton * uiFBMNumber
Definition: mainwin.h:513
CAView * _playbackView
Definition: mainwin.h:376
CAActionStorage * actionStorage
Definition: mainwin.h:494
void restartTimeEditedTime()
Definition: mainwin.h:101
void on_uiInsertFM_toggled(bool)
Definition: mainwin.cpp:3582
CADocument * openDocument(const QString &fileName)
Definition: mainwin.cpp:3142
void on_uiMidiRecorder_triggered()
Definition: mainwin.cpp:4313
QSpinBox * uiTimeSigBeat
Definition: mainwin.h:509
QAction * uiAssociatedVoiceAction
Definition: mainwin.h:464
An abstract class which represents every music element in the score.
Definition: muselement.h:21
CAMenuToolButton * uiMarkType
Definition: mainwin.h:442
void setDocument(CADocument *doc)
Definition: resourceview.h:27
void on_uiEditMode_toggled(bool)
Definition: mainwin.cpp:1485
void scoreViewMouseRelease(QMouseEvent *e, const QPoint coords)
Definition: mainwin.cpp:2018
void on_uiVoiceName_returnPressed()
Definition: mainwin.cpp:3534
void on_uiScoreView_triggered()
Definition: mainwin.cpp:4367
void onTimeEditedTimerTimeout()
Definition: mainwin.cpp:2945
CAMenuToolButton * uiSlurType
Definition: mainwin.h:480
Class checking the user errors in the score (e.g. too long bars etc.)
Definition: notechecker.h:13
void on_uiZoomToWidth_triggered()
Definition: mainwin.cpp:3068
Definition: printctl.h:23
void updateContextToolBar()
Definition: mainwin.cpp:4646
void setCurrentViewContainer(CAViewContainer *vpc)
Definition: mainwin.h:365
QSpinBox * uiTupletNumber
Definition: mainwin.h:485
void updateWindowTitle()
Definition: mainwin.cpp:3261
void onRepaintTimerTimeout()
Definition: mainwin.cpp:3020
void on_uiTempoBpm_returnPressed()
Definition: mainwin.cpp:5967
void on_uiPlayFromSelection_toggled(bool)
Definition: mainwin.cpp:2983
CAMusElementFactory * musElementFactory()
Definition: mainwin.h:388
void scoreViewMousePress(QMouseEvent *e, const QPoint coords)
Definition: mainwin.cpp:1696
QStatusBar * _permanentStatusBar
Definition: mainwin.h:359
void floatViewClosed(CAView *)
Definition: mainwin.cpp:1166
QDockWidget * uiHelpDock
Definition: mainwin.h:548
Definition: context.h:23
QToolBar * uiInstrumentToolBar
Definition: mainwin.h:530
QTimer * _repaintTimer
Definition: mainwin.h:378
void playbackFinished()
Definition: mainwin.cpp:2953
void on_uiCopy_triggered()
Definition: mainwin.cpp:5142
void onScoreViewSelectionChanged()
Definition: mainwin.cpp:2929
void updateTempoToolBar()
Definition: mainwin.cpp:5093
Represents a staff in the sheet.
Definition: staff.h:25
void on_uiTranspose_triggered()
Definition: mainwin.cpp:4329
void on_uiTimeSigType_toggled(bool, int)
Definition: mainwin.cpp:4084
void updateClefToolBar()
Definition: mainwin.cpp:4890
Widget that shows the current score source in various syntax.
Definition: sourceview.h:22
CAMenuToolButton * uiNoteStemDirection
Definition: mainwin.h:493
void on_uiDynamicVolume_valueChanged(int)
Definition: mainwin.cpp:5790
void on_uiInvertSelection_triggered()
Definition: mainwin.cpp:3051
Definition: lcdnumber.h:34
CAMenuToolButton * uiNoteAccs
Definition: mainwin.h:479
CAView * currentView()
Definition: mainwin.h:118
void on_uiCloseDocument_triggered()
Definition: mainwin.cpp:1113
CAMode _mode
Definition: mainwin.h:349
Definition: pyconsole.h:18
void on_uiZoomToFit_triggered()
Definition: mainwin.cpp:3063
void on_uiFMFunction_toggled(bool, int)
Definition: mainwin.cpp:3849
CAExport * _poExp
Definition: mainwin.h:353
QDockWidget * helpDock()
Definition: mainwin.h:154
void updateFMToolBar()
Definition: mainwin.cpp:4955
void on_uiRemoveSheet_triggered()
Definition: mainwin.cpp:4384
void on_uiInsertPlayable_toggled(bool)
Definition: mainwin.cpp:3557
void deleteSelection(CAScoreView *v, bool deleteSyllable, bool deleteNotes, bool undo)
Definition: mainwin.cpp:5334
bool on_uiSaveDocument_triggered()
Definition: mainwin.cpp:3101
bool _rebuildUILock
Definition: mainwin.h:379
CAJumpToView * _jumpToView
Definition: mainwin.h:356
CAMode mode()
Definition: mainwin.h:111
void on_uiJumpTo_triggered()
Definition: mainwin.cpp:4335
Definition: actiondelegate.h:20
QLineEdit * uiDynamicCustomText
Definition: mainwin.h:529
void on_uiTabWidget_CANewTab()
Definition: mainwin.cpp:1022
void setRebuildUILock(bool l)
Definition: mainwin.h:380
void on_uiImportDocument_triggered()
Definition: mainwin.cpp:3357
QAction * uiTupletActualNumberAction
Definition: mainwin.h:491
QComboBox * uiFMKeySig
Definition: mainwin.h:520
CAMenuToolButton * uiFermataType
Definition: mainwin.h:537
void on_uiAboutCanorus_triggered()
Definition: mainwin.cpp:4283
void on_uiBarlineType_toggled(bool, int)
Definition: mainwin.cpp:4174
void updateDynamicToolBar()
Definition: mainwin.cpp:4989
void on_uiRedo_toggled(bool, int)
Definition: mainwin.cpp:1337
CAUndoToolButton * uiUndo
Definition: mainwin.h:428
void addSheet(CASheet *s)
Definition: mainwin.cpp:956
Definition: mainwin.h:83
void scoreViewKeyPress(QKeyEvent *e)
Definition: mainwin.cpp:2118
QLineEdit * uiContextName
Definition: mainwin.h:456
Definition: actionstorage.h:22
void stopNow()
Definition: playback.cpp:362
CAUndoToolButton * uiRedo
Definition: mainwin.h:429
QComboBox * uiInstrumentChange
Definition: mainwin.h:531
QDockWidget * uiPyConsoleDock
Definition: mainwin.h:545
CAMenuToolButton * uiRepeatMarkType
Definition: mainwin.h:539
QAction * resourceViewAction()
Definition: mainwin.h:115
QToolBar * uiDynamicToolBar
Definition: mainwin.h:526
CAContextType contextType()
Definition: context.h:32
void keyPressEvent(QKeyEvent *)
Definition: mainwin.cpp:2923
CAMenuToolButton * uiClefType
Definition: mainwin.h:438
void on_uiLilyPondSource_triggered()
Definition: mainwin.cpp:4341
CAMenuToolButton * uiFBMAccs
Definition: mainwin.h:514
CAMenuToolButton * uiContextType
Definition: mainwin.h:435
CAMenuToolButton * uiPlayableLength
Definition: mainwin.h:478
QAction * uiStanzaNumberAction
Definition: mainwin.h:462
Definition: scoreview.h:55
void confirmTextEdit(CAScoreView *v, CATextEdit *textEdit, CAMusElement *elt)
Definition: mainwin.cpp:3729
QList< CAViewContainer * > _viewContainerList
Definition: mainwin.h:369
void onExportDone(int status)
Definition: mainwin.cpp:3472
void copySelection(CAScoreView *v)
Definition: mainwin.cpp:5173
QLabel * uiTupletInsteadOf
Definition: mainwin.h:489
void pasteAt(const QPoint coords, CAScoreView *v)
Definition: mainwin.cpp:5569
void updatePlayableToolBar()
Definition: mainwin.cpp:4810
void on_uiDynamicText_toggled(bool, int)
Definition: mainwin.cpp:5770
creation, removal, configuration of music elements
Definition: muselementfactory.h:39
void on_uiDynamicCustomText_returnPressed()
Definition: mainwin.cpp:5805
bool isInsertKeySigChecked()
Definition: mainwin.h:142
void on_uiExportToPdf_triggered()
Definition: mainwin.cpp:3467
Canorus main window Class CAMainWin represents Canorus main window. The core layout is generated usin...
Definition: plugins_swig.h:6
QHash< CAViewContainer *, CASheet * > _sheetMap
Definition: mainwin.h:372
void onImportDone(int status)
Definition: mainwin.cpp:3428
CADocument * document()
Definition: mainwin.h:139
CAMainWinProgressCtl _mainWinProgressCtl
Definition: mainwin.h:360
CAMidiRecorderView * _midiRecorderView
Definition: mainwin.h:357
void onUiOpenRecentDocumentTriggered()
Definition: mainwin.cpp:6001
CAView * _currentView
Definition: mainwin.h:375
Line of music elements in the sheet.
Definition: context.h:16
static QFileDialog * uiExportDialog
Definition: mainwin.h:147
bool stopPlayback()
Definition: mainwin.h:390
void on_uiTupletActualNumber_valueChanged(int)
Definition: mainwin.cpp:4170
void on_uiFMEllipse_toggled(bool)
Definition: mainwin.cpp:3918
QHash< QString, int > _modeHash
Definition: mainwin.h:373
void on_uiNoteStemDirection_toggled(bool, int)
Definition: mainwin.cpp:4521