Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Slots | Public Member Functions | Public Attributes | Static Public Attributes | Private Slots | Private Member Functions | Private Attributes
CAMainWin Class Reference

Canorus main window Class CAMainWin represents Canorus main window. The core layout is generated using the Qt designer's ui/mainwin.ui file. Other widgets (specific toolbars, viewports, plugin menus) are generated manually in-code. More...

#include <plugins_swig.h>

Inheritance diagram for CAMainWin:
Inheritance graph
[legend]

List of all members.

Public Types

enum  CAMode {
  NoDocumentMode, InsertMode, SelectMode, EditMode,
  ReadOnlyMode
}

Public Slots

void on_uiUsersGuide_triggered ()

Public Member Functions

 CAMainWin ()
CASheetcurrentSheet ()
 CAMainWin (QMainWindow *oParent=0)
 ~CAMainWin ()
void clearUI ()
void rebuildUI (CASheet *sheet, bool repaint=true)
void rebuildUI (bool repaint=true)
bool rebuildUILock ()
void updateWindowTitle ()
void newDocument ()
void addSheet (CASheet *s)
void removeSheet (CASheet *s)
void insertMusElementAt (const QPoint coords, CAScoreViewPort *v)
void restartTimeEditedTime ()
void deleteSelection (CAScoreViewPort *v, bool deleteSyllable, bool deleteNotes, bool undo)
void copySelection (CAScoreViewPort *v)
void pasteAt (const QPoint coords, CAScoreViewPort *v)
CADocumentopenDocument (const QString &fileName)
CADocumentopenDocument (CADocument *doc)
bool saveDocument (QString fileName)
CAMode mode ()
QFileDialog * exportDialog ()
QFileDialog * importDialog ()
CAResourceViewresourceView ()
QActionresourceViewAction ()
CAMidiRecorderViewmidiRecorderView ()
void setMidiRecorderView (CAMidiRecorderView *v)
CAViewPortcurrentViewPort ()
void removeViewPort (CAViewPort *v)
QList< CAViewPort * > viewPortList ()
CAScoreViewPortcurrentScoreViewPort ()
CASheetcurrentSheet ()
CAStaffcurrentStaff ()
CAContextcurrentContext ()
CAVoicecurrentVoice ()
CAViewPortContainercurrentViewPortContainer ()
CADocumentdocument ()
void setDocument (CADocument *document)
QDockWidgethelpDock ()
CAHelpBrowserhelpWidget ()
CAMusElementFactorymusElementFactory ()

Public Attributes

CAPyConsoleInterfacepyConsoleIface
CAPyConsolepyConsole
CAMenuToolButtonuiTupletType
QSpinBox * uiTupletNumber
QSpinBox * uiTupletActualNumber

Static Public Attributes

static QFileDialog * uiSaveDialog = 0
static QFileDialog * uiOpenDialog = 0
static QFileDialog * uiExportDialog = 0
static QFileDialog * uiImportDialog = 0

Private Slots

void closeEvent (QCloseEvent *event)
void on_uiNewDocument_triggered ()
void on_uiOpenDocument_triggered ()
bool on_uiSaveDocument_triggered ()
bool on_uiSaveDocumentAs_triggered ()
void on_uiCloseDocument_triggered ()
void on_uiExportDocument_triggered ()
void on_uiImportDocument_triggered ()
void on_uiExportToPdf_triggered ()
void on_uiOpenRecent_aboutToShow ()
void onUiOpenRecentDocumentTriggered ()
void on_uiUndo_toggled (bool, int)
void on_uiRedo_toggled (bool, int)
void on_uiCopy_triggered ()
void on_uiCut_triggered ()
void on_uiPaste_triggered ()
void on_uiSelectAll_triggered ()
void on_uiInvertSelection_triggered ()
void on_uiDocumentProperties_triggered ()
void on_uiSelectMode_toggled (bool)
void on_uiEditMode_toggled (bool)
void on_uiNewSheet_triggered ()
void on_uiNewVoice_triggered ()
void on_uiContextType_toggled (bool, int)
void on_uiClefType_toggled (bool, int)
void on_uiInsertKeySig_toggled (bool)
void on_uiTimeSigType_toggled (bool, int)
void on_uiBarlineType_toggled (bool, int)
void on_uiInsertPlayable_toggled (bool)
void on_uiSlurType_toggled (bool, int)
void on_uiMarkType_toggled (bool, int)
void on_uiArticulationType_toggled (bool, int)
void on_uiInsertSyllable_toggled (bool)
void on_uiInsertFM_toggled (bool)
void on_uiFullscreen_toggled (bool)
void on_uiAnimatedScroll_toggled (bool)
void on_uiLockScrollPlayback_toggled (bool)
void on_uiZoomToSelection_triggered ()
void on_uiZoomToFit_triggered ()
void on_uiZoomToWidth_triggered ()
void on_uiZoomToHeight_triggered ()
void on_uiScoreView_triggered ()
void on_uiLilyPondSource_triggered ()
void on_uiCanorusMLSource_triggered ()
void on_uiResourceView_toggled (bool)
void on_uiRemoveSheet_triggered ()
void on_uiSheetName_returnPressed ()
void on_uiSheetProperties_triggered ()
void on_uiContextName_returnPressed ()
void on_uiRemoveContext_triggered ()
void on_uiStanzaNumber_valueChanged (int)
void on_uiAssociatedVoice_activated (int)
void on_uiContextProperties_triggered ()
void on_uiPlayFromSelection_toggled (bool)
void on_uiPlayableLength_toggled (bool, int)
void on_uiTupletType_toggled (bool, int)
void on_uiTupletNumber_valueChanged (int)
void on_uiTupletActualNumber_valueChanged (int)
void on_uiNoteStemDirection_toggled (bool, int)
void on_uiHiddenRest_toggled (bool checked)
void onMidiInEvent (QVector< unsigned char > message)
void on_uiKeySig_activated (int)
void on_uiTimeSigBeats_valueChanged (int)
void on_uiTimeSigBeat_valueChanged (int)
void on_uiClefOffset_valueChanged (int)
void onTextEditKeyPressEvent (QKeyEvent *)
void on_uiFMFunction_toggled (bool, int)
void on_uiFMChordArea_toggled (bool, int)
void on_uiFMTonicDegree_toggled (bool, int)
void on_uiFMEllipse_toggled (bool)
void on_uiDynamicText_toggled (bool, int)
void on_uiDynamicVolume_valueChanged (int)
void on_uiDynamicCustomText_returnPressed ()
void on_uiInstrumentChange_activated (int)
void on_uiFermataType_toggled (bool, int)
void on_uiRepeatMarkType_toggled (bool, int)
void on_uiFinger_toggled (bool checked, int t)
void on_uiFingeringOriginal_toggled (bool checked)
void on_uiTempoBeat_toggled (bool, int)
void on_uiTempoBpm_returnPressed ()
void on_uiSettings_triggered ()
void on_uiTranspose_triggered ()
void on_uiMidiRecorder_triggered ()
void on_uiVoiceNum_valChanged (int)
void on_uiVoiceName_returnPressed ()
void on_uiVoiceInstrument_activated (int)
void on_uiRemoveVoice_triggered ()
void on_uiVoiceStemDirection_toggled (bool, int)
void on_uiVoiceProperties_triggered ()
void on_uiSplitHorizontally_triggered ()
void on_uiSplitVertically_triggered ()
void on_uiUnsplitAll_triggered ()
void on_uiCloseCurrentView_triggered ()
void on_uiNewViewport_triggered ()
void on_uiNewWindow_triggered ()
void on_uiAboutCanorus_triggered ()
void on_uiAboutQt_triggered ()
void keyPressEvent (QKeyEvent *)
void on_uiTabWidget_currentChanged (int)
void viewPortClicked ()
void scoreViewPortMousePress (QMouseEvent *e, const QPoint coords)
void scoreViewPortMouseMove (QMouseEvent *e, const QPoint coords)
void scoreViewPortMouseRelease (QMouseEvent *e, const QPoint coords)
void scoreViewPortDoubleClick (QMouseEvent *e, const QPoint coords)
void scoreViewPortTripleClick (QMouseEvent *e, const QPoint coords)
void scoreViewPortWheel (QWheelEvent *e, const QPoint coords)
void scoreViewPortKeyPress (QKeyEvent *e)
void sourceViewPortCommit (QString inputString)
void floatViewPortClosed (CAViewPort *)
void onTimeEditedTimerTimeout ()
void playbackFinished ()
void onScoreViewPortSelectionChanged ()
void onRepaintTimerTimeout ()

Private Member Functions

void playImmediately (QList< CAMusElement * > elements)
void setMode (CAMode mode)
void setCurrentViewPort (CAViewPort *viewPort)
void setCurrentViewPortContainer (CAViewPortContainer *vpc)
void setRebuildUILock (bool l)
bool stopPlayback ()
bool handleUnsavedChanges ()
void createCustomActions ()
void setupCustomUi ()
void initViewPort (CAViewPort *)
void updateUndoRedoButtons ()
void updateToolBars ()
void updateSheetToolBar ()
void updateContextToolBar ()
void updateVoiceToolBar ()
void updateInsertToolBar ()
void updatePlayableToolBar ()
void updateKeySigToolBar ()
void updateTimeSigToolBar ()
void updateClefToolBar ()
void updateFMToolBar ()
void updateDynamicToolBar ()
void updateInstrumentToolBar ()
void updateTempoToolBar ()
void updateFermataToolBar ()
void updateRepeatMarkToolBar ()
void updateFingeringToolBar ()

Private Attributes

CADocument_document
CAMode _mode
CAPreviewCtl_poPrintPreviewCtl
CAPrintCtl_poPrintCtl
CAExport_poExp
CAResourceView_resourceView
CATransposeView_transposeView
CAMidiRecorderView_midiRecorderView
CAViewPortContainer_currentViewPortContainer
QList< CAViewPortContainer * > _viewPortContainerList
QList< CAViewPort * > _viewPortList
QHash< CAViewPortContainer
*, CASheet * > 
_sheetMap
CAViewPort_currentViewPort
bool _animatedScroll
bool _lockScrollPlayback
CAViewPort_playbackViewPort
QList< CADrawableMusElement * > _prePlaybackSelection
QTimer * _repaintTimer
bool _rebuildUILock
CAPlayback_playback
QTimer _timeEditedTimer
unsigned int _timeEditedTime
CAMusElementFactory_musElementFactory
CAKeybdInput_keybdInput
CAUndoToolButtonuiUndo
CAUndoToolButtonuiRedo
QToolBar * uiInsertToolBar
QActionGroup * uiInsertGroup
CAMenuToolButtonuiContextType
CAMenuToolButtonuiClefType
CAMenuToolButtonuiTimeSigType
CAMenuToolButtonuiBarlineType
CAMenuToolButtonuiMarkType
CAMenuToolButtonuiArticulationType
QToolBar * uiSheetToolBar
QLineEdituiSheetName
QToolBar * uiContextToolBar
QLineEdituiContextName
QSpinBox * uiStanzaNumber
QActionuiStanzaNumberAction
QComboBox * uiAssociatedVoice
QActionuiAssociatedVoiceAction
QToolBar * uiVoiceToolBar
CALCDNumberuiVoiceNum
QLineEdituiVoiceName
QComboBox * uiVoiceInstrument
CAMenuToolButtonuiVoiceStemDirection
QToolBar * uiPlayableToolBar
CAMenuToolButtonuiPlayableLength
CAMenuToolButtonuiNoteAccs
CAMenuToolButtonuiSlurType
QActionuiTupletNumberAction
QLabel * uiTupletInsteadOf
QActionuiTupletInsteadOfAction
QActionuiTupletActualNumberAction
CAMenuToolButtonuiNoteStemDirection
QToolBar * uiKeySigToolBar
QComboBox * uiKeySig
QToolBar * uiClefToolBar
QSpinBox * uiClefOffset
int oldUiClefOffsetValue
QToolBar * uiTimeSigToolBar
QSpinBox * uiTimeSigBeats
QLabel * uiTimeSigSlash
QSpinBox * uiTimeSigBeat
QToolBar * uiFMToolBar
CAMenuToolButtonuiFMFunction
CAMenuToolButtonuiFMChordArea
CAMenuToolButtonuiFMTonicDegree
QComboBox * uiFMKeySig
QToolBar * uiDynamicToolBar
CAMenuToolButtonuiDynamicText
QSpinBox * uiDynamicVolume
QLineEdituiDynamicCustomText
QToolBar * uiInstrumentToolBar
QComboBox * uiInstrumentChange
QToolBar * uiTempoToolBar
CAMenuToolButtonuiTempoBeat
QLabel * uiTempoEquals
QLineEdituiTempoBpm
QToolBar * uiFermataToolBar
CAMenuToolButtonuiFermataType
QToolBar * uiRepeatMarkToolBar
CAMenuToolButtonuiRepeatMarkType
QToolBar * uiFingeringToolBar
CAMenuToolButtonuiFinger
QCheckBox * uiFingeringOriginal
QDockWidgetuiPyConsoleDock
QDockWidgetuiHelpDock
CAHelpBrowseruiHelpWidget

Detailed Description

Canorus main window Class CAMainWin represents Canorus main window. The core layout is generated using the Qt designer's ui/mainwin.ui file. Other widgets (specific toolbars, viewports, plugin menus) are generated manually in-code.

Copyright (c) 2006-2008, Reinhard Katzmann, Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors.

Licensed under the GNU GENERAL PUBLIC LICENSE. See COPYING for details.

    Canorus supports multiple main windows pointing to the same document or separated document.

    Canorus uses multiple inheritance approach. See
    http://doc.trolltech.com/4.2/designer-using-a-component.html#the-multiple-inheritance-approach
    Class members having _ prefix are general private properties.
    Private attributes with ui prefix are GUI-only widgets objects created in Qt designer or manually.

    \sa CAViewPort, CACanorus

Member Enumeration Documentation

Enumerator:
NoDocumentMode 
InsertMode 
SelectMode 
EditMode 
ReadOnlyMode 

Constructor & Destructor Documentation

CAMainWin::CAMainWin ( ) [inline]

References pyConsoleIface.

Referenced by on_uiNewWindow_triggered().

Here is the caller graph for this function:

CAMainWin::CAMainWin ( QMainWindow oParent = 0)

Member Function Documentation

This adds a tab to tabWidget and creates a single score viewport of the sheet. It does not add the sheet to the document.

References _sheetMap, _viewPortContainerList, CAViewPortContainer::addViewPort(), initViewPort(), CASheet::name(), setCurrentViewPortContainer(), Ui_uiMainWindow::uiTabWidget, and updateToolBars().

Referenced by rebuildUI().

Here is the call graph for this function:

Here is the caller graph for this function:

Deletes all viewports (and their drawable content), disconnects all signals and resets all buttons and modes.

This function deletes the current main window's GUI only (drawable elements). All the data classes (staffs, notes, rests) should stay intact. Use delete document() to free the data part of Canorus as well.

First call clearUI() and then delete model when clearing the document, because cleraUI() still needs the model alive.

References _midiRecorderView, _sheetMap, _viewPortList, setCurrentViewPort(), Ui_uiMainWindow::uiSelectMode, and Ui_uiMainWindow::uiTabWidget.

Referenced by closeEvent(), newDocument(), openDocument(), rebuildUI(), and sourceViewPortCommit().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::closeEvent ( QCloseEvent *  event) [private, slot]

References clearUI(), and handleUnsavedChanges().

Here is the call graph for this function:

void CAMainWin::createCustomActions ( ) [private]

References CAArticulation::Accent, CAMenuToolButton::addButton(), CAClef::Alto, CAClef::Baritone, CAClef::Bass, CAMark::BookMark, CAPlayableLength::Breve, CARepeatMark::Coda, CAMark::Crescendo, CADynamic::Custom, CAFunctionMark::D, CARepeatMark::DalCoda, CARepeatMark::DalSegno, CARepeatMark::DalVarCoda, document(), CABarline::Dotted, CABarline::Double, CAArticulation::DownBow, CAArticulation::DownMordent, CAArticulation::DownPrall, CAMark::Dynamic, CAPlayableLength::Eighth, CABarline::End, CAArticulation::Espressivo, CADynamic::f, CAFunctionMark::F, CAMark::Fermata, CADynamic::ff, CADynamic::fff, CADynamic::ffff, CADynamic::fffff, CAFingering::Fifth, CAMark::Fingering, CAFingering::First, CAArticulation::Flageolet, CAFingering::Fourth, CADynamic::fp, CAClef::French, CAContext::FunctionMarkContext, CAPlayableLength::Half, CAPlayableLength::HundredTwentyEighth, CAFunctionMark::II, CAFunctionMark::III, CAMark::InstrumentChange, CAFunctionMark::IV, CAFunctionMark::K, CAFunctionMark::L, CAFingering::LHeel, CAArticulation::LinePrall, CAFermata::LongFermata, CAFingering::LToe, CAContext::LyricsContext, CAArticulation::Marcato, CAClef::Mezzosoprano, CADynamic::mf, CACanorus::midiDevice(), CAArticulation::Mordent, CADynamic::mp, CAFunctionMark::N, CAFermata::NormalFermata, oldUiClefOffsetValue, CAArticulation::Open, CADynamic::p, CAMark::Pedal, CASlur::PhrasingSlurType, CADrawableKeySignature::populateComboBox(), CAArticulation::Portato, CADynamic::pp, CADynamic::ppp, CADynamic::pppp, CADynamic::ppppp, CAArticulation::Prall, CAArticulation::PrallDown, CAArticulation::PrallMordent, CAArticulation::PrallPrall, CAArticulation::PrallUp, pyConsole, pyConsoleIface, CAPlayableLength::Quarter, CAUndoToolButton::Redo, CAMark::RehersalMark, CABarline::RepeatClose, CABarline::RepeatCloseOpen, CAMark::RepeatMark, CABarline::RepeatOpen, CAArticulation::ReverseTurn, CADynamic::rfz, CAFingering::RHeel, CAMark::Ritardando, CAFingering::RToe, CAFunctionMark::S, CAFingering::Second, CARepeatMark::Segno, CADynamic::sf, CADynamic::sff, CADynamic::sfz, CAFermata::ShortFermata, CABarline::Single, CAPlayableLength::Sixteenth, CAPlayableLength::SixtyFourth, CASlur::SlurType, CAClef::Soprano, CADynamic::sp, CADynamic::spp, CAArticulation::Staccatissimo, CAArticulation::Staccato, CAContext::Staff, CANote::StemDown, CANote::StemNeutral, CANote::StemPreferred, CANote::StemUp, CAArticulation::Stopped, CAClef::Subbass, CAFunctionMark::T, CAMark::Tempo, CAClef::Tenor, CAArticulation::Tenuto, CAMark::Text, CAFingering::Third, CAPlayableLength::ThirtySecond, CAFingering::Thumb, CASlur::TieType, CAClef::Treble, CAArticulation::Trill, CAArticulation::Turn, uiArticulationType, uiAssociatedVoice, uiBarlineType, uiClefOffset, uiClefToolBar, uiClefType, uiContextName, uiContextToolBar, uiContextType, uiDynamicCustomText, uiDynamicText, uiDynamicToolBar, uiDynamicVolume, uiFermataToolBar, uiFermataType, uiFinger, uiFingeringOriginal, uiFingeringToolBar, uiFMChordArea, uiFMFunction, uiFMKeySig, uiFMTonicDegree, uiFMToolBar, uiHelpDock, uiHelpWidget, uiInsertToolBar, uiInstrumentChange, uiInstrumentToolBar, uiKeySig, uiKeySigToolBar, uiMarkType, uiNoteStemDirection, uiPlayableLength, uiPlayableToolBar, uiPyConsoleDock, uiRedo, uiRepeatMarkToolBar, uiRepeatMarkType, uiSheetName, uiSheetToolBar, uiSlurType, uiStanzaNumber, uiTempoBeat, uiTempoBpm, uiTempoEquals, uiTempoToolBar, uiTimeSigBeat, uiTimeSigBeats, uiTimeSigSlash, uiTimeSigToolBar, uiTimeSigType, uiTupletActualNumber, uiTupletInsteadOf, uiTupletNumber, uiTupletType, uiUndo, uiVoiceInstrument, uiVoiceName, uiVoiceNum, uiVoiceStemDirection, uiVoiceToolBar, CAFunctionMark::Undefined, CAUndoToolButton::Undo, CAArticulation::UpBow, CAArticulation::UpMordent, CAArticulation::UpPrall, CAFunctionMark::V, CAClef::Varbaritone, CARepeatMark::VarCoda, CAFermata::VeryLongFermata, CAFunctionMark::VI, CAFunctionMark::VII, and CAPlayableLength::Whole.

Referenced by CAMainWin().

Here is the call graph for this function:

Here is the caller graph for this function:

Returns the currently selected context in the current view port or 0 if no contexts are selected.

References currentViewPort(), and CAViewPort::ScoreViewPort.

Referenced by currentStaff(), on_uiAssociatedVoice_activated(), on_uiContextName_returnPressed(), on_uiContextProperties_triggered(), on_uiLilyPondSource_triggered(), on_uiRemoveContext_triggered(), on_uiStanzaNumber_valueChanged(), on_uiVoiceNum_valChanged(), pasteAt(), updateContextToolBar(), updateInsertToolBar(), and updateVoiceToolBar().

Here is the call graph for this function:

Here is the caller graph for this function:

References currentViewPort().

Referenced by CAPlugin::callAction(), currentSheet(), insertMusElementAt(), CAKeybdInput::midiInEventToScore(), newDocument(), on_uiClefOffset_valueChanged(), on_uiCopy_triggered(), on_uiCut_triggered(), on_uiDynamicCustomText_returnPressed(), on_uiDynamicText_toggled(), on_uiDynamicVolume_valueChanged(), on_uiFermataType_toggled(), on_uiFinger_toggled(), on_uiFingeringOriginal_toggled(), on_uiFMChordArea_toggled(), on_uiFMEllipse_toggled(), on_uiFMFunction_toggled(), on_uiFMTonicDegree_toggled(), on_uiHiddenRest_toggled(), on_uiImportDocument_triggered(), on_uiInstrumentChange_activated(), on_uiKeySig_activated(), on_uiNoteStemDirection_toggled(), on_uiPaste_triggered(), on_uiPlayableLength_toggled(), on_uiPlayFromSelection_toggled(), on_uiRemoveVoice_triggered(), on_uiRepeatMarkType_toggled(), on_uiSlurType_toggled(), on_uiTempoBeat_toggled(), on_uiTempoBpm_returnPressed(), on_uiTimeSigBeat_valueChanged(), on_uiTimeSigBeats_valueChanged(), on_uiTupletType_toggled(), on_uiVoiceNum_valChanged(), CAKeybdInput::onMidiInEvent(), onTextEditKeyPressEvent(), openDocument(), pasteAt(), scoreViewPortKeyPress(), scoreViewPortMousePress(), setMode(), updateClefToolBar(), updateDynamicToolBar(), updateFermataToolBar(), updateFingeringToolBar(), updateFMToolBar(), updateInstrumentToolBar(), updateKeySigToolBar(), updatePlayableToolBar(), updateRepeatMarkToolBar(), updateSheetToolBar(), updateTempoToolBar(), and updateTimeSigToolBar().

Here is the call graph for this function:

References currentScoreViewPort(), and CAScoreViewPort::sheet().

Here is the call graph for this function:

References CAContext::contextType(), currentContext(), and CAContext::Staff.

Referenced by currentVoice(), on_uiLilyPondSource_triggered(), and on_uiNewVoice_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

Returns the pointer to the currently active voice or 0, if All voices are selected or the current context is not a staff at all.

References currentStaff(), CALCDNumber::getRealValue(), uiVoiceNum, CAStaff::voiceAt(), and CAStaff::voiceCount().

Referenced by insertMusElementAt(), CAKeybdInput::midiInEventToScore(), on_uiRemoveVoice_triggered(), on_uiVoiceInstrument_activated(), on_uiVoiceName_returnPressed(), on_uiVoiceProperties_triggered(), on_uiVoiceStemDirection_toggled(), scoreViewPortKeyPress(), and updateVoiceToolBar().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::deleteSelection ( CAScoreViewPort v,
bool  deleteSyllables,
bool  deleteNotes,
bool  doUndo 
)

References _document.

Referenced by createCustomActions(), deleteSelection(), CACanorus::findMainWin(), handleUnsavedChanges(), insertMusElementAt(), CAKeybdInput::midiInEventToScore(), newDocument(), on_uiAssociatedVoice_activated(), on_uiCanorusMLSource_triggered(), on_uiClefOffset_valueChanged(), on_uiCloseDocument_triggered(), on_uiContextName_returnPressed(), on_uiCut_triggered(), on_uiDocumentProperties_triggered(), on_uiDynamicCustomText_returnPressed(), on_uiDynamicText_toggled(), on_uiDynamicVolume_valueChanged(), on_uiExportDocument_triggered(), on_uiFermataType_toggled(), on_uiFinger_toggled(), on_uiFingeringOriginal_toggled(), on_uiFMChordArea_toggled(), on_uiFMEllipse_toggled(), on_uiFMFunction_toggled(), on_uiFMTonicDegree_toggled(), on_uiHiddenRest_toggled(), on_uiImportDocument_triggered(), on_uiInstrumentChange_activated(), on_uiKeySig_activated(), on_uiMidiRecorder_triggered(), on_uiNewSheet_triggered(), on_uiNewVoice_triggered(), on_uiNewWindow_triggered(), on_uiNoteStemDirection_toggled(), on_uiPlayableLength_toggled(), CAPreviewCtl::on_uiPrintPreview_triggered(), on_uiRedo_toggled(), on_uiRemoveContext_triggered(), on_uiRemoveSheet_triggered(), on_uiRemoveVoice_triggered(), on_uiRepeatMarkType_toggled(), on_uiSaveDocument_triggered(), on_uiSaveDocumentAs_triggered(), on_uiSheetName_returnPressed(), on_uiStanzaNumber_valueChanged(), on_uiTempoBeat_toggled(), on_uiTempoBpm_returnPressed(), on_uiTimeSigBeat_valueChanged(), on_uiTimeSigBeats_valueChanged(), on_uiTranspose_triggered(), on_uiTupletType_toggled(), on_uiUndo_toggled(), on_uiVoiceInstrument_activated(), on_uiVoiceName_returnPressed(), on_uiVoiceStemDirection_toggled(), onScoreViewPortSelectionChanged(), onTextEditKeyPressEvent(), openDocument(), pasteAt(), CAPrintCtl::printDocument(), CACanorus::rebuildUI(), rebuildUI(), CACanorus::restartTimeEditedTimes(), saveDocument(), CAAutoRecovery::saveRecovery(), scoreViewPortKeyPress(), scoreViewPortMousePress(), scoreViewPortMouseRelease(), setDocument(), sourceViewPortCommit(), updateToolBars(), updateUndoRedoButtons(), updateWindowTitle(), and ~CAMainWin().

QFileDialog* CAMainWin::exportDialog ( ) [inline]

References uiExportDialog.

Referenced by CAPluginManager::endElement().

Here is the caller graph for this function:

void CAMainWin::floatViewPortClosed ( CAViewPort v) [private, slot]

Called when a floating view port is closed

References currentViewPort(), currentViewPortContainer(), and setCurrentViewPort().

Referenced by on_uiNewViewport_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

bool CAMainWin::handleUnsavedChanges ( ) [private]

Checks for any unsaved modifications and returns True, to continue with closing the current document. Returns False only, if user clicks Cancel button.

This method looks at CADocument::_modified property. The property is changed in undo/redo code.

References document(), and on_uiSaveDocument_triggered().

Referenced by closeEvent(), newDocument(), on_uiCloseDocument_triggered(), on_uiImportDocument_triggered(), and on_uiOpenDocument_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

References uiHelpDock.

References uiHelpWidget.

QFileDialog* CAMainWin::importDialog ( ) [inline]

References uiImportDialog.

Referenced by CAPluginManager::endElement().

Here is the caller graph for this function:

void CAMainWin::initViewPort ( CAViewPort v) [private]

Links the newly created viewport with the main window:

  • Adds the viewport to the viewport list
  • Connects its signals to main windows' slots.
  • Sets the icon, focus policy and sets the focus.
  • Sets the currentViewPort but not currentViewPortContainer

References _viewPortList, mode(), onScoreViewPortSelectionChanged(), onTextEditKeyPressEvent(), CAViewPort::ScoreViewPort, scoreViewPortDoubleClick(), scoreViewPortKeyPress(), scoreViewPortMouseMove(), scoreViewPortMousePress(), scoreViewPortMouseRelease(), scoreViewPortTripleClick(), scoreViewPortWheel(), setCurrentViewPort(), setMode(), CAViewPort::SourceViewPort, sourceViewPortCommit(), and viewPortClicked().

Referenced by addSheet(), on_uiCanorusMLSource_triggered(), on_uiLilyPondSource_triggered(), on_uiNewViewport_triggered(), on_uiScoreView_triggered(), on_uiSplitHorizontally_triggered(), and on_uiSplitVertically_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::insertMusElementAt ( const QPoint  coords,
CAScoreViewPort v 
)

This method places the currently prepared music element in CAMusElementFactory to the staff or voice, dependent on the music element type and the viewport coordinates.

References CATuplet::actualNumber(), CASettings::autoBar(), CAMusElement::Barline, CADrawableStaff::calculatePitch(), CAMusElement::Clef, CARest::composeRests(), CAMusElementFactory::configureBarline(), CAMusElementFactory::configureClef(), CAMusElementFactory::configureFunctionMark(), CAMusElementFactory::configureKeySignature(), CAMusElementFactory::configureMark(), CAMusElementFactory::configureNote(), CAMusElementFactory::configureRest(), CAMusElementFactory::configureSlur(), CAMusElementFactory::configureTimeSignature(), CAVoice::containsPitch(), CADrawableContext::context(), CAContext::contextType(), CAUndo::createUndoCommand(), CAScoreViewPort::currentContext(), currentScoreViewPort(), currentSheet(), currentVoice(), CANote::diatonicPitch(), document(), CAMusElementFactory::emptyMusElem(), CAMusElement::FunctionMark, CAContext::FunctionMarkContext, CASheet::getChord(), CANote::getChord(), CAVoice::getNoteList(), CAVoice::insert(), CANote::isPartOfChord(), CAMusElement::isPlayable(), CAMusElement::KeySignature, CAVoice::lastTimeEnd(), CAMusElement::Mark, CADrawableMusElement::musElement(), CAMusElementFactory::musElement(), musElementFactory(), CAScoreViewPort::musElementsAt(), CAMusElement::musElementType(), CAScoreViewPort::nearestLeftElement(), CAScoreViewPort::nearestRightElement(), CAVoice::next(), CARest::Normal, CAMusElement::Note, CATuplet::noteList(), CATuplet::number(), CANote::phrasingSlurEnd(), CANote::phrasingSlurStart(), CASlur::PhrasingSlurType, CAMusElementFactory::placeAutoBar(), CAPlayableLength::playableLengthToTimeLength(), playImmediately(), CASettings::playInsertedNotes(), CAUndo::pushUndoCommand(), rebuildUI(), CAVoice::remove(), CAMusElement::Rest, CAScoreViewPort::selection(), CAScoreViewPort::selectMElement(), CAScoreViewPort::setDrawShadowNoteAccs(), CAMusElementFactory::setMusElement(), CAMusElementFactory::setNoteExtraAccs(), CAScoreViewPort::setShadowNoteLength(), CACanorus::settings(), CAScoreViewPort::sheet(), CAMusElement::Slur, CANote::slurEnd(), CANote::slurStart(), CASlur::SlurType, CAMusElementFactory::slurType(), CAStaff::synchronizeVoices(), CANote::tieStart(), CASlur::TieType, CAMusElement::timeEnd(), CAMusElement::timeLength(), CAMusElement::TimeSignature, CAMusElement::timeStart(), uiTupletActualNumber, uiTupletNumber, uiTupletType, CACanorus::undo(), CAScoreViewPort::updateHelpers(), CAPlayable::voice(), CADrawable::width(), and CADrawable::xPos().

Referenced by on_uiSlurType_toggled(), and scoreViewPortMousePress().

Here is the caller graph for this function:

void CAMainWin::keyPressEvent ( QKeyEvent *  e) [private, slot]

Main window's key press event.

See also:
viewPortKeyPressEvent()

References _midiRecorderView.

CAMode CAMainWin::mode ( ) [inline]
void CAMainWin::on_uiAboutCanorus_triggered ( ) [private, slot]
void CAMainWin::on_uiAboutQt_triggered ( ) [private, slot]
void CAMainWin::on_uiAnimatedScroll_toggled ( bool  val) [private, slot]

References _animatedScroll.

void CAMainWin::on_uiArticulationType_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiAssociatedVoice_activated ( int  idx) [private, slot]

Sets the associated voice of the current lyrics context.

References CAUndo::createUndoCommand(), currentContext(), currentSheet(), document(), CAContext::LyricsContext, CAUndo::pushUndoCommand(), rebuildUI(), CACanorus::undo(), and CASheet::voiceList().

Here is the call graph for this function:

void CAMainWin::on_uiBarlineType_toggled ( bool  checked,
int  buttonId 
) [private, slot]

Shows the current score in CanorusML syntax in a new or the current viewport.

References CAViewPortContainer::addViewPort(), currentViewPortContainer(), document(), initViewPort(), Ui_uiMainWindow::uiCloseCurrentView, and Ui_uiMainWindow::uiUnsplitAll.

Here is the call graph for this function:

void CAMainWin::on_uiClefOffset_valueChanged ( int  newOffset) [private, slot]
void CAMainWin::on_uiClefType_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiCloseDocument_triggered ( ) [private, slot]

Sets the current context name.

References CAUndo::createUndoCommand(), currentContext(), currentSheet(), document(), CAUndo::pushUndoCommand(), rebuildUI(), CAContext::setName(), uiContextName, and CACanorus::undo().

Here is the call graph for this function:

Brings up the properties dialog.

References CAPropertiesDialog::contextProperties(), and currentContext().

Here is the call graph for this function:

void CAMainWin::on_uiContextType_toggled ( bool  checked,
int  buttonId 
) [private, slot]

References InsertMode, and setMode().

Here is the call graph for this function:

void CAMainWin::on_uiCopy_triggered ( ) [private, slot]

Action on Edit->Copy.

References copySelection(), and currentScoreViewPort().

Here is the call graph for this function:

void CAMainWin::on_uiCut_triggered ( ) [private, slot]

Brings up the properties dialog.

References document(), and CAPropertiesDialog::documentProperties().

Here is the call graph for this function:

void CAMainWin::on_uiDynamicText_toggled ( bool  checked,
int  t 
) [private, slot]
void CAMainWin::on_uiDynamicVolume_valueChanged ( int  vol) [private, slot]
void CAMainWin::on_uiEditMode_toggled ( bool  checked) [private, slot]

References EditMode, and setMode().

Here is the call graph for this function:

void CAMainWin::on_uiExportDocument_triggered ( ) [private, slot]
void CAMainWin::on_uiExportToPdf_triggered ( ) [private, slot]

Called when Export directly to PDF action is clicked.

References on_uiExportDocument_triggered(), CAFileFormats::PDF_FILTER, and uiExportDialog.

Here is the call graph for this function:

void CAMainWin::on_uiFermataType_toggled ( bool  checked,
int  t 
) [private, slot]
void CAMainWin::on_uiFinger_toggled ( bool  checked,
int  t 
) [private, slot]
void CAMainWin::on_uiFingeringOriginal_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiFMChordArea_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiFMEllipse_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiFMFunction_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiFMTonicDegree_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiFullscreen_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiHiddenRest_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiImportDocument_triggered ( ) [private, slot]
void CAMainWin::on_uiInsertFM_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiInsertKeySig_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiInsertPlayable_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiInsertSyllable_toggled ( bool  checked) [private, slot]

References InsertMode, and setMode().

Here is the call graph for this function:

void CAMainWin::on_uiInstrumentChange_activated ( int  index) [private, slot]

References currentViewPort(), and CAViewPort::ScoreViewPort.

Here is the call graph for this function:

void CAMainWin::on_uiKeySig_activated ( int  row) [private, slot]
void CAMainWin::on_uiLilyPondSource_triggered ( ) [private, slot]
void CAMainWin::on_uiLockScrollPlayback_toggled ( bool  val) [private, slot]

References _lockScrollPlayback.

void CAMainWin::on_uiMarkType_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiMidiRecorder_triggered ( ) [private, slot]
void CAMainWin::on_uiNewDocument_triggered ( ) [private, slot]

References newDocument().

Here is the call graph for this function:

void CAMainWin::on_uiNewSheet_triggered ( ) [private, slot]
void CAMainWin::on_uiNewViewport_triggered ( ) [private, slot]
void CAMainWin::on_uiNewVoice_triggered ( ) [private, slot]
void CAMainWin::on_uiNewWindow_triggered ( ) [private, slot]

Creates a new main window sharing the current document.

References CAMainWin(), document(), rebuildUI(), and setDocument().

Here is the call graph for this function:

void CAMainWin::on_uiNoteStemDirection_toggled ( bool  checked,
int  id 
) [private, slot]

Sets the currently selected note stem direction if in insert/edit mode or the music elements factory note stem direction if in insert mode.

References CAUndo::createUndoCommand(), currentScoreViewPort(), currentSheet(), document(), EditMode, InsertMode, mode(), musElementFactory(), CAUndo::pushUndoCommand(), rebuildUI(), CAScoreViewPort::selection(), SelectMode, CAMusElementFactory::setNoteStemDirection(), CANote::setStemDirection(), and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiOpenDocument_triggered ( ) [private, slot]

References handleUnsavedChanges(), openDocument(), and uiOpenDialog.

Here is the call graph for this function:

void CAMainWin::on_uiOpenRecent_aboutToShow ( ) [private, slot]

References onUiOpenRecentDocumentTriggered(), CACanorus::recentDocumentList(), and Ui_uiMainWindow::uiOpenRecent.

Here is the call graph for this function:

void CAMainWin::on_uiPaste_triggered ( ) [private, slot]

Action on Edit->Paste.

References currentScoreViewPort(), and pasteAt().

Here is the call graph for this function:

void CAMainWin::on_uiPlayableLength_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiPlayFromSelection_toggled ( bool  checked) [private, slot]
void CAMainWin::on_uiRedo_toggled ( bool  checked,
int  row 
) [private, slot]
void CAMainWin::on_uiRemoveContext_triggered ( ) [private, slot]

Removes the current context from the sheet and all its contents.

References CAUndo::createUndoCommand(), currentContext(), currentSheet(), document(), CAContext::name(), CAUndo::pushUndoCommand(), rebuildUI(), CASheet::removeContext(), CAContext::sheet(), stopPlayback(), and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiRemoveSheet_triggered ( ) [private, slot]

Removes the sheet, all its contents and rebuilds the GUI.

References CAUndo::createUndoCommand(), currentSheet(), document(), CAUndo::pushUndoCommand(), CADocument::removeSheet(), removeSheet(), stopPlayback(), and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiRemoveVoice_triggered ( ) [private, slot]
void CAMainWin::on_uiRepeatMarkType_toggled ( bool  checked,
int  t 
) [private, slot]
void CAMainWin::on_uiResourceView_toggled ( bool  checked) [private, slot]

Toggles the visibility of the resource view window.

References _resourceView.

bool CAMainWin::on_uiSaveDocument_triggered ( ) [private, slot]

References document(), on_uiSaveDocumentAs_triggered(), and saveDocument().

Referenced by handleUnsavedChanges().

Here is the call graph for this function:

Here is the caller graph for this function:

bool CAMainWin::on_uiSaveDocumentAs_triggered ( ) [private, slot]

References document(), saveDocument(), and uiSaveDialog.

Referenced by on_uiSaveDocument_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::on_uiScoreView_triggered ( ) [private, slot]

Adds a new score viewport to default viewport container.

References _sheetMap, CAViewPortContainer::addViewPort(), currentViewPortContainer(), initViewPort(), CAScoreViewPort::rebuild(), Ui_uiMainWindow::uiCloseCurrentView, and Ui_uiMainWindow::uiUnsplitAll.

Here is the call graph for this function:

void CAMainWin::on_uiSelectAll_triggered ( ) [private, slot]

References currentViewPort(), CAViewPort::ScoreViewPort, CAViewPort::SourceViewPort, and CAViewPort::viewPortType().

Here is the call graph for this function:

void CAMainWin::on_uiSelectMode_toggled ( bool  checked) [private, slot]

References SelectMode, and setMode().

Here is the call graph for this function:

void CAMainWin::on_uiSettings_triggered ( ) [private, slot]

References CASettingsDialog::EditorSettings, and rebuildUI().

Here is the call graph for this function:

void CAMainWin::on_uiSheetName_returnPressed ( ) [private, slot]

Brings up properties dialog.

References currentSheet(), and CAPropertiesDialog::sheetProperties().

Here is the call graph for this function:

void CAMainWin::on_uiSlurType_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiStanzaNumber_valueChanged ( int  stanzaNumber) [private, slot]

Sets the stanza number of the current lyrics context.

References CAUndo::createUndoCommand(), currentContext(), document(), CAContext::LyricsContext, CAUndo::pushUndoCommand(), and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiTabWidget_currentChanged ( int  idx) [private, slot]

Called when the current sheet is switched in the tab widget.

Warning:
This method is only called when the index of the selected tab changes. If you remove the current tab and the next selected tab gets the same index, this slot isn't called!

References currentViewPort(), currentViewPortContainer(), setCurrentViewPort(), setCurrentViewPortContainer(), Ui_uiMainWindow::uiTabWidget, and updateToolBars().

Here is the call graph for this function:

void CAMainWin::on_uiTempoBeat_toggled ( bool  checked,
int  t 
) [private, slot]
void CAMainWin::on_uiTempoBpm_returnPressed ( ) [private, slot]
void CAMainWin::on_uiTimeSigBeat_valueChanged ( int  beat) [private, slot]
void CAMainWin::on_uiTimeSigBeats_valueChanged ( int  beats) [private, slot]
void CAMainWin::on_uiTimeSigType_toggled ( bool  checked,
int  buttonId 
) [private, slot]
void CAMainWin::on_uiTranspose_triggered ( ) [private, slot]

References _transposeView, document(), and CATransposeView::show().

Here is the call graph for this function:

void CAMainWin::on_uiTupletActualNumber_valueChanged ( int  value) [private, slot]

References musElementFactory(), and CAMusElementFactory::setTupletActualNumber().

Here is the call graph for this function:

void CAMainWin::on_uiTupletNumber_valueChanged ( int  value) [private, slot]

References musElementFactory(), and CAMusElementFactory::setTupletNumber().

Here is the call graph for this function:

void CAMainWin::on_uiTupletType_toggled ( bool  checked,
int  type 
) [private, slot]
void CAMainWin::on_uiUndo_toggled ( bool  checked,
int  row 
) [private, slot]
void CAMainWin::on_uiUnsplitAll_triggered ( ) [private, slot]

References CACanorus::help(), and CAHelpCtl::showUsersGuide().

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::on_uiVoiceInstrument_activated ( int  index) [private, slot]

Changes voice instrument.

References CAUndo::createUndoCommand(), currentSheet(), currentVoice(), document(), CAUndo::pushUndoCommand(), rebuildUI(), CAVoice::setMidiProgram(), and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiVoiceName_returnPressed ( ) [private, slot]

Gets the current voice and sets its name.

References CAUndo::createUndoCommand(), currentSheet(), currentVoice(), document(), CAUndo::pushUndoCommand(), rebuildUI(), CAVoice::setName(), uiVoiceName, and CACanorus::undo().

Here is the call graph for this function:

void CAMainWin::on_uiVoiceNum_valChanged ( int  voiceNr) [private, slot]

Called when a user changes the current voice number.

References currentContext(), currentScoreViewPort(), CAScoreViewPort::setSelectedVoice(), CAContext::Staff, and updateVoiceToolBar().

Referenced by on_uiRedo_toggled(), and on_uiUndo_toggled().

Here is the call graph for this function:

Here is the caller graph for this function:

Brings up the properties dialog.

References currentVoice(), and CAPropertiesDialog::voiceProperties().

Here is the call graph for this function:

void CAMainWin::on_uiVoiceStemDirection_toggled ( bool  checked,
int  direction 
) [private, slot]
void CAMainWin::on_uiZoomToFit_triggered ( ) [private, slot]

References _currentViewPort, CAViewPort::ScoreViewPort, and CAViewPort::viewPortType().

Here is the call graph for this function:

void CAMainWin::on_uiZoomToHeight_triggered ( ) [private, slot]

References _currentViewPort, CAViewPort::ScoreViewPort, and CAViewPort::viewPortType().

Here is the call graph for this function:

References _animatedScroll, _currentViewPort, CAViewPort::ScoreViewPort, and CAViewPort::viewPortType().

Here is the call graph for this function:

void CAMainWin::on_uiZoomToWidth_triggered ( ) [private, slot]

References _currentViewPort, CAViewPort::ScoreViewPort, and CAViewPort::viewPortType().

Here is the call graph for this function:

void CAMainWin::onMidiInEvent ( QVector< unsigned char >  message) [private, slot]

References _keybdInput, and CAKeybdInput::onMidiInEvent().

Referenced by CAMainWin().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::onRepaintTimerTimeout ( ) [private, slot]

Called every few miliseconds during playback to repaint score viewport as the GUI can only be repainted from the main thread.

References _playback, _playbackViewPort, CAScoreViewPort::addToSelection(), CAScoreViewPort::clearSelection(), CAPlayback::curPlaying(), and CAMusElement::Note.

Referenced by on_uiPlayFromSelection_toggled().

Here is the call graph for this function:

Here is the caller graph for this function:

Called when selection in score viewports is changed.

References CAPluginManager::action(), document(), Ui_uiMainWindow::uiCopy, and Ui_uiMainWindow::uiCut.

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::onTextEditKeyPressEvent ( QKeyEvent *  e) [private, slot]

Function called when user types the text of the syllable or hits control keys.

The following behaviour is implemented:

  • alphanumeric keys are pressed - writes text
  • spacebar is pressed - creates the current syllable and jumps to the next syllable
  • return is pressed - creates the current syllable and hides the syllable edit widget
  • left key is pressed - if cursorPosition()==0, jumps to the previous syllable
  • right key is pressed - if cursorPosition()==length(), same as spacebar
  • escape key is pressed - hides the syllable edit and cancels any changes to syllable
Todo:
GUI for syllable specific associated voice - current is the default lyrics context's one

References CASyllable::associatedVoice(), CALyricsContext::associatedVoice(), CAMark::BookMark, CADrawableContext::context(), CAScoreViewPort::createTextEdit(), CAUndo::createUndoCommand(), CAScoreViewPort::currentContext(), currentScoreViewPort(), currentSheet(), document(), CASettings::finaleLyricsBehaviour(), CASyllable::lyricsContext(), CAMusElement::Mark, CAMark::markType(), CAMusElement::musElementType(), CALyricsContext::next(), CALyricsContext::previous(), CAUndo::pushUndoCommand(), rebuildUI(), CAScoreViewPort::removeTextEdit(), CAScoreViewPort::selection(), CAScoreViewPort::selectMElement(), CASyllable::setHyphenStart(), CASyllable::setMelismaStart(), CASyllable::setText(), CACanorus::settings(), CAMusElement::Syllable, CAMark::Text, CAScoreViewPort::textEdit(), and CACanorus::undo().

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::onTimeEditedTimerTimeout ( ) [private, slot]

Called every second when timeEditedTimer has timeout. Increases the locally stored time the document is being edited.

References _timeEditedTime.

Referenced by CAMainWin().

Here is the caller graph for this function:

References openDocument(), CACanorus::recentDocumentList(), CACanorus::removeRecentDocument(), and Ui_uiMainWindow::uiOpenRecent.

Referenced by on_uiOpenRecent_aboutToShow().

Here is the call graph for this function:

Here is the caller graph for this function:

CADocument * CAMainWin::openDocument ( const QString &  fileName)

Opens a document with the given absolute file name. The previous document will be lost.

Returns a pointer to the opened document or null if opening the document has failed.

References CAFileFormats::CAN_FILTER, CAFileFormats::CANORUSML_FILTER, CAImport::importDocument(), CAImport::importedDocument(), CAImport::readableStatus(), CADocument::setFileName(), CAFile::setStreamFromFile(), CAFile::status(), stopPlayback(), and uiSaveDialog.

Referenced by on_uiImportDocument_triggered(), on_uiOpenDocument_triggered(), onUiOpenRecentDocumentTriggered(), CAAutoRecovery::openRecovery(), and CACanorus::parseOpenFileArguments().

Here is the call graph for this function:

Here is the caller graph for this function:

Opens the given document. The previous document will be lost.

Returns a pointer to the opened document or null if opening the document has failed.

References clearUI(), CAUndo::createUndoStack(), currentScoreViewPort(), CAUndo::deleteUndoStack(), document(), CADocument::fileName(), CACanorus::insertRecentDocument(), CACanorus::mainWinCount(), rebuildUI(), CAScoreViewPort::selectContext(), setDocument(), CADocument::sheetCount(), stopPlayback(), Ui_uiMainWindow::uiCloseDocument, Ui_uiMainWindow::uiTabWidget, CACanorus::undo(), and updateToolBars().

Here is the call graph for this function:

void CAMainWin::pasteAt ( const QPoint  coords,
CAScoreViewPort v 
)

Backend for Edit->Paste.

References CASheet::addContext(), CALyricsContext::addEmptySyllable(), CALyricsContext::addSyllable(), CAScoreViewPort::addToSelection(), CAStaff::addVoice(), CAScoreViewPort::clearSelection(), CATuplet::clone(), CASyllable::clone(), CAMusElement::clone(), CASlur::clone(), CAVoice::contains(), CADrawableContext::context(), CAMusElement::context(), CASheet::contextAt(), CASheet::contextCount(), CASheet::contextIndex(), CASheet::contextList(), CAContext::contextType(), CAUndo::createUndoCommand(), CAScoreViewPort::currentContext(), currentContext(), currentScoreViewPort(), currentSheet(), document(), CAContext::FunctionMarkContext, CALCDNumber::getRealValue(), CAVoice::insert(), CASheet::insertContextAfter(), CAMusElement::isPlayable(), CAVoice::lastNote(), CAContext::LyricsContext, CAVoice::lyricsContextList(), CADrawableMusElement::musElement(), CAMusElement::musElementType(), CAScoreViewPort::nearestRightElement(), CAMusElement::Note, CASlur::noteEnd(), CATuplet::noteList(), CANote::phrasingSlurEnd(), CANote::phrasingSlurStart(), CASlur::PhrasingSlurType, CAVoice::previous(), CAUndo::pushUndoCommand(), rebuildUI(), CALyricsContext::repositSyllables(), CAScoreViewPort::setLastMousePressCoordsAfter(), CANote::setPhrasingSlurStart(), CANote::setSlurStart(), CANote::setTieStart(), CAMusElement::setTimeStart(), CAContext::sheet(), CAScoreViewPort::sheet(), CANote::slurEnd(), CANote::slurStart(), CASlur::SlurType, CASlur::slurType(), CAContext::Staff, CASheet::staffCount(), CALyricsContext::syllableAt(), CALyricsContext::syllableList(), CAStaff::synchronizeVoices(), CANote::tieEnd(), CANote::tieStart(), CASlur::TieType, CAMusElement::timeStart(), CAPlayable::tuplet(), uiVoiceNum, CACanorus::undo(), CAStaff::voiceAt(), and CAStaff::voiceCount().

Referenced by on_uiPaste_triggered().

Here is the caller graph for this function:

void CAMainWin::playbackFinished ( ) [private, slot]

Called when playback is finished or interrupted by the user. It stops the playback, closes ports etc.

References _playback, _playbackViewPort, _prePlaybackSelection, _repaintTimer, CAMidiDevice::closeOutputPort(), CACanorus::midiDevice(), mode(), setMode(), and Ui_uiMainWindow::uiPlayFromSelection.

Referenced by on_uiPlayFromSelection_toggled(), and playImmediately().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::playImmediately ( QList< CAMusElement * >  elements) [private]

Immediately plays the notes. This is usually called when inserting new notes or changing the pitch of existing notes.

See also:
CASettings::_playInsertedNotes

References _playback, CACanorus::midiDevice(), playbackFinished(), CAPlayback::playImmediately(), and CACanorus::settings().

Referenced by insertMusElementAt(), and scoreViewPortKeyPress().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::rebuildUI ( CASheet sheet,
bool  repaint = true 
)

Rebuilds the GUI from data.

This method is called eg. when multiple viewports share the same data and a change has been made (eg. a note pitch has changed or a new element added). ViewPorts content is repositioned and redrawn (CAEngraver creates CADrawable elements for every score viewport, sources are updated in source viewports etc.).

sheet argument is a pointer to the data sheet where the change occured. This way only viewports showing the given sheet are updated which speeds up the process. If sheet argument is null, all viewports are rebuilt, but the viewports contents, number and locations remain the same.

If repaint is True (default) the rebuilt viewports are also repainted. If False, viewports content is only created but not yet drawn. This is useful when multiple operations which could potentially change the content are to happen and we want to actually draw it only at the end.

References _resourceView, _viewPortList, clearUI(), document(), CAResourceView::rebuildUi(), rebuildUILock(), CAViewPort::ScoreViewPort, setRebuildUILock(), updateToolBars(), and updateWindowTitle().

Referenced by deleteSelection(), insertMusElementAt(), newDocument(), on_uiAssociatedVoice_activated(), on_uiClefOffset_valueChanged(), on_uiCloseDocument_triggered(), on_uiContextName_returnPressed(), on_uiDynamicCustomText_returnPressed(), on_uiDynamicText_toggled(), on_uiDynamicVolume_valueChanged(), on_uiFermataType_toggled(), on_uiFinger_toggled(), on_uiFingeringOriginal_toggled(), on_uiFMChordArea_toggled(), on_uiFMEllipse_toggled(), on_uiFMFunction_toggled(), on_uiFMTonicDegree_toggled(), on_uiHiddenRest_toggled(), on_uiImportDocument_triggered(), on_uiInstrumentChange_activated(), on_uiKeySig_activated(), on_uiMidiRecorder_triggered(), on_uiNewSheet_triggered(), on_uiNewVoice_triggered(), on_uiNewWindow_triggered(), on_uiNoteStemDirection_toggled(), on_uiPlayableLength_toggled(), on_uiRedo_toggled(), on_uiRemoveContext_triggered(), on_uiRemoveVoice_triggered(), on_uiRepeatMarkType_toggled(), on_uiSettings_triggered(), on_uiSheetName_returnPressed(), on_uiTempoBeat_toggled(), on_uiTempoBpm_returnPressed(), on_uiTimeSigBeat_valueChanged(), on_uiTimeSigBeats_valueChanged(), on_uiTupletType_toggled(), on_uiUndo_toggled(), on_uiVoiceInstrument_activated(), on_uiVoiceName_returnPressed(), on_uiVoiceStemDirection_toggled(), onTextEditKeyPressEvent(), openDocument(), pasteAt(), CACanorus::rebuildUI(), scoreViewPortKeyPress(), scoreViewPortMousePress(), scoreViewPortMouseRelease(), and sourceViewPortCommit().

Here is the call graph for this function:

void CAMainWin::rebuildUI ( bool  repaint = true)

Rebuilds the GUI from data.

This method is called eg. when multiple viewports share the same data and a change has been made (eg. a note pitch has changed or a new element added). ViewPorts content is repositioned and redrawn (CAEngraver creates CADrawable elements for every score viewport, sources are updated in source viewports etc.).

This method in comparison to CAMainWin::rebuildUI(CASheet *s, bool repaint) rebuilds the whole GUI from scratch and creates new viewports for the sheets. This method is called for example when a new document is created or opened.

If repaint is True (default) the rebuilt viewports are also repainted. If False, viewports content is only created but not yet drawn. This is useful when multiple operations which could potentially change the content are to happen and we want to actually draw it only at the end.

References _resourceView, _viewPortList, addSheet(), clearUI(), document(), CAResourceView::rebuildUi(), rebuildUILock(), CAViewPort::ScoreViewPort, setRebuildUILock(), CADocument::sheetCount(), Ui_uiMainWindow::uiTabWidget, updateToolBars(), and updateWindowTitle().

Here is the call graph for this function:

bool CAMainWin::rebuildUILock ( ) [inline]

References _rebuildUILock.

Referenced by rebuildUI().

Here is the caller graph for this function:

void CAMainWin::removeSheet ( CASheet sheet)

Removes the sheet from the GUI and deletes the viewports and viewport containers and tabs pointing to the given sheet.

References _sheetMap, currentViewPort(), CASourceViewPort::lyricsContext(), CAViewPort::ScoreViewPort, setCurrentViewPort(), setCurrentViewPortContainer(), CAContext::sheet(), CAViewPort::SourceViewPort, CAVoice::staff(), Ui_uiMainWindow::uiTabWidget, viewPortList(), and CASourceViewPort::voice().

Referenced by on_uiRemoveSheet_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::removeViewPort ( CAViewPort v) [inline]

References _viewPortList.

References _resourceView.

References _timeEditedTime.

Referenced by CAMainWin(), newDocument(), and CACanorus::restartTimeEditedTimes().

Here is the caller graph for this function:

bool CAMainWin::saveDocument ( QString  fileName)

Saves the current document to a given absolute fileName. This function is usually called when the filename was entered and save document dialog successfully closed. If recovery is False (default), it changes the timeEdit, fileName and some other document properties before saving it.

Returns True, if the save was complete; False otherwise.

References _timeEditedTime, CAFileFormats::CAN_FILTER, CAFileFormats::CANORUSML_FILTER, document(), CAExport::exportDocument(), CAExport::exportedDocument(), CACanorus::insertRecentDocument(), CACanorus::restartTimeEditedTimes(), CADocument::setDateLastModified(), CADocument::setFileName(), CADocument::setModified(), CAExport::setStreamToFile(), CADocument::setTimeEdited(), uiSaveDialog, updateWindowTitle(), and CAExport::wait().

Referenced by on_uiSaveDocument_triggered(), and on_uiSaveDocumentAs_triggered().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::scoreViewPortDoubleClick ( QMouseEvent *  e,
const QPoint  coords 
) [private, slot]

Processes the mouse double click event. Currently this selects the current bar.

See also:
CAScoreViewPort::selectAllCurBar()

References mode(), and SelectMode.

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::scoreViewPortKeyPress ( QKeyEvent *  e) [private, slot]

Processes the key press event e. Any action happened in any of the viewports are always linked to its main window slots.

See also:
CAScoreViewPort::keyPressEvent(), scoreViewPortMousePress(), scoreViewPortMouseMove(), scoreViewPortWheel()

References CAMusElementFactory::addNoteAccs(), CAMusElementFactory::addNoteExtraAccs(), CAMusElementFactory::addPlayableDotted(), CAPlayableLength::Breve, CAPlayable::calculateTimeLength(), CAScoreViewPort::clearSelection(), CARest::composeRests(), CADrawableContext::context(), CAContext::contextType(), CAUndo::createUndoCommand(), CAScoreViewPort::currentContext(), currentScoreViewPort(), currentSheet(), currentVoice(), deleteSelection(), CAKeySignature::diatonicKey(), CANote::diatonicPitch(), document(), CAPlayableLength::dotted(), CADrawableMusElement::drawableMusElementType(), CADrawableMusElement::DrawableNote, EditMode, CAPlayableLength::Eighth, CAVoice::getKeySig(), CAPlayableLength::Half, CAPlayableLength::HundredTwentyEighth, CAVoice::insert(), InsertMode, CAMusElement::isPlayable(), CAVoice::lyricsContextList(), mode(), CADrawableMusElement::musElement(), musElementFactory(), CAMusElement::musElementType(), CAStaff::next(), CAVoice::next(), CARest::Normal, CAMusElement::Note, CADiatonicKey::noteAccs(), CADiatonicPitch::noteName(), CAPlayable::playableLength(), CAMusElementFactory::playableLength(), playImmediately(), CAUndo::pushUndoCommand(), CAPlayableLength::Quarter, rebuildUI(), CAVoice::remove(), CAMusElement::Rest, CAScoreViewPort::selection(), CAScoreViewPort::selectMElement(), SelectMode, CAScoreViewPort::selectNextMusElement(), CAScoreViewPort::selectPrevMusElement(), CAScoreViewPort::selectUpMusElement(), CAScoreViewPort::setCurrentContext(), CAMenuToolButton::setCurrentId(), setCurrentViewPort(), CANote::setDiatonicPitch(), CAPlayableLength::setDotted(), CAScoreViewPort::setDrawShadowNoteAccs(), CALCDNumber::setRealValue(), CAScoreViewPort::setShadowNoteAccs(), CAScoreViewPort::setShadowNoteLength(), CACanorus::settings(), CAContext::sheet(), CAScoreViewPort::sheet(), CABarline::Single, CAPlayableLength::Sixteenth, CAPlayableLength::SixtyFourth, CAContext::Staff, CAPlayable::staff(), CAMusElementFactory::subNoteAccs(), CAMusElementFactory::subNoteExtraAccs(), CAStaff::synchronizeVoices(), CAPlayableLength::ThirtySecond, CAMusElement::timeLength(), CAMusElement::timeStart(), Ui_uiMainWindow::uiEditMode, Ui_uiMainWindow::uiInsertPlayable, uiPlayableLength, Ui_uiMainWindow::uiPlayFromSelection, Ui_uiMainWindow::uiSelectMode, uiVoiceNum, CACanorus::undo(), CAScoreViewPort::updateHelpers(), updateToolBars(), CAPlayable::voice(), CAStaff::voiceAt(), and CAPlayableLength::Whole.

Referenced by initViewPort().

Here is the caller graph for this function:

void CAMainWin::scoreViewPortMouseMove ( QMouseEvent *  e,
const QPoint  coords 
) [private, slot]
void CAMainWin::scoreViewPortMousePress ( QMouseEvent *  e,
const QPoint  coords 
) [private, slot]

Processes the mouse press event e with world coordinates coords. Any action happened in any of the viewports are always linked to these main window slots.

See also:
CAScoreViewPort::mousePressEvent(), scoreViewPortMouseMove(), scoreViewPortWheel(), scoreViewPortKeyPress()

References CAPluginManager::action(), CAScoreViewPort::addToSelection(), CAMark::BookMark, CAScoreViewPort::clearSelection(), CAScoreViewPort::clearSelectionRegionList(), CADrawableContext::context(), CAMusElement::context(), CASheet::contextCount(), CAContext::contextType(), CAScoreViewPort::createTextEdit(), CAUndo::createUndoCommand(), CAScoreViewPort::currentContext(), CAToolButton::currentId(), currentScoreViewPort(), document(), CADrawableMusElement::drawableContext(), EditMode, CAContext::FunctionMarkContext, CADrawable::height(), CASheet::insertContextAfter(), InsertMode, insertMusElementAt(), CAMusElement::isPlayable(), CAContext::LyricsContext, CAMusElement::Mark, CAMusElementFactory::markType(), mode(), CADrawableMusElement::musElement(), musElementFactory(), CAScoreViewPort::musElementsAt(), CAMusElement::musElementType(), CAMusElementFactory::musElementType(), CAScoreViewPort::nearestUpContext(), CAMusElement::Note, CAUndo::pushUndoCommand(), rebuildUI(), CAScoreViewPort::removeFromSelection(), CAScoreViewPort::removeTextEdit(), CAScoreViewPort::resizeDirection(), CAMusElement::Rest, CAScoreViewPort::selectCElement(), CAScoreViewPort::selectContext(), CAScoreViewPort::selection(), SelectMode, CAScoreViewPort::setCurrentContext(), CALCDNumber::setMax(), CAMusElementFactory::setMusElementType(), CALCDNumber::setRealValue(), CAScoreViewPort::setShadowNoteLength(), CAScoreViewPort::sheet(), CAMusElement::Slur, CAContext::Staff, CASheet::staffCount(), CAMusElement::Syllable, CAMark::Text, CAMusElement::timeEnd(), CAMusElement::timeStart(), uiContextType, Ui_uiMainWindow::uiInsertPlayable, Ui_uiMainWindow::uiInsertSyllable, uiMarkType, Ui_uiMainWindow::uiSelectMode, uiVoiceNum, CADrawable::Undefined, CACanorus::undo(), CAScoreViewPort::updateHelpers(), updateToolBars(), CASheet::voiceList(), CADrawable::width(), CADrawable::xPos(), and CADrawable::yPos().

Referenced by initViewPort().

Here is the caller graph for this function:

void CAMainWin::scoreViewPortMouseRelease ( QMouseEvent *  e,
const QPoint  coords 
) [private, slot]
void CAMainWin::scoreViewPortTripleClick ( QMouseEvent *  e,
const QPoint  coords 
) [private, slot]

Processes the mouse triple click event. Currently this selects the current line.

See also:
CAScoreViewPort::selectAllCurContext()

References mode(), and SelectMode.

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::scoreViewPortWheel ( QWheelEvent *  e,
const QPoint  coords 
) [private, slot]

Processes the mouse wheel event e with coordinates coords. Any action happened in any of the viewports are always linked to its main window slots.

See also:
CAScoreViewPort::wheelEvent(), scoreViewPortMousePress(), scoreViewPortMouseMove(), scoreViewPortKeyPress()

References _animatedScroll, setCurrentViewPort(), CAScoreViewPort::setWorldX(), CAScoreViewPort::setWorldY(), CAScoreViewPort::setZoom(), CAScoreViewPort::worldX(), CAScoreViewPort::worldY(), and CAScoreViewPort::zoom().

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::setCurrentViewPort ( CAViewPort viewPort) [inline, private]

References _currentViewPortContainer.

Referenced by addSheet(), on_uiTabWidget_currentChanged(), and removeSheet().

Here is the caller graph for this function:

void CAMainWin::setDocument ( CADocument document) [inline]

References _document, _resourceView, document(), and CAResourceView::setDocument().

Referenced by CAMainWin(), newDocument(), on_uiCloseDocument_triggered(), on_uiImportDocument_triggered(), on_uiNewWindow_triggered(), openDocument(), and sourceViewPortCommit().

Here is the call graph for this function:

Here is the caller graph for this function:

References _midiRecorderView.

void CAMainWin::setMode ( CAMode  mode) [private]
void CAMainWin::setRebuildUILock ( bool  l) [inline, private]

References _rebuildUILock.

Referenced by CAMainWin(), and rebuildUI().

Here is the caller graph for this function:

void CAMainWin::setupCustomUi ( ) [private]

Creates more complex widgets and layouts that cannot be created using Qt Designer (like adding custom toolbars to main window, button boxes etc.).

Todo:
When Qt Designer have support for setting the visibility property, do this in Qt Designer already! -Matevz

References _musElementFactory, _poPrintCtl, _poPrintPreviewCtl, CAArticulation::Accent, CAMark::Dynamic, CABarline::End, CADynamic::mf, on_uiKeySig_activated(), CAPlayableLength::Quarter, CAMenuToolButton::setCurrentId(), CAToolButton::setDefaultAction(), CAUndoToolButton::setDefaultAction(), CAContext::Staff, CANote::StemPreferred, CAFunctionMark::T, CASlur::TieType, CAClef::Treble, Ui_uiMainWindow::uiAccsVisible, uiArticulationType, uiAssociatedVoice, uiAssociatedVoiceAction, uiBarlineType, uiClefOffset, uiClefToolBar, uiClefType, uiContextName, Ui_uiMainWindow::uiContextProperties, uiContextToolBar, uiContextType, Ui_uiMainWindow::uiCut, uiDynamicCustomText, uiDynamicText, uiDynamicToolBar, uiDynamicVolume, Ui_uiMainWindow::uiEditMode, uiFermataToolBar, uiFermataType, Ui_uiMainWindow::uiFileToolBar, uiFinger, uiFingeringOriginal, uiFingeringToolBar, uiFMChordArea, Ui_uiMainWindow::uiFMEllipse, uiFMFunction, uiFMKeySig, uiFMTonicDegree, uiFMToolBar, uiHelpDock, Ui_uiMainWindow::uiHiddenRest, Ui_uiMainWindow::uiInsertArticulation, Ui_uiMainWindow::uiInsertBarline, Ui_uiMainWindow::uiInsertClef, Ui_uiMainWindow::uiInsertFM, uiInsertGroup, Ui_uiMainWindow::uiInsertKeySig, Ui_uiMainWindow::uiInsertMark, Ui_uiMainWindow::uiInsertPlayable, Ui_uiMainWindow::uiInsertSyllable, Ui_uiMainWindow::uiInsertTimeSig, uiInsertToolBar, uiInstrumentChange, uiInstrumentToolBar, uiKeySig, uiKeySigToolBar, uiMarkType, Ui_uiMainWindow::uiMenuEdit, Ui_uiMainWindow::uiNewContext, Ui_uiMainWindow::uiNewSheet, Ui_uiMainWindow::uiNewVoice, uiNoteStemDirection, uiPlayableLength, uiPlayableToolBar, Ui_uiMainWindow::uiPrintToolBar, uiPyConsoleDock, uiRedo, Ui_uiMainWindow::uiRemoveContext, Ui_uiMainWindow::uiRemoveSheet, Ui_uiMainWindow::uiRemoveVoice, uiRepeatMarkToolBar, uiRepeatMarkType, Ui_uiMainWindow::uiSelectMode, uiSheetName, Ui_uiMainWindow::uiSheetProperties, uiSheetToolBar, uiSlurType, Ui_uiMainWindow::uiStandardToolBar, uiStanzaNumber, uiStanzaNumberAction, uiTempoBeat, uiTempoBpm, uiTempoEquals, uiTempoToolBar, uiTimeSigBeat, uiTimeSigBeats, uiTimeSigSlash, uiTimeSigToolBar, uiTimeSigType, uiTupletActualNumber, uiTupletActualNumberAction, uiTupletInsteadOf, uiTupletInsteadOfAction, uiTupletNumber, uiTupletNumberAction, uiTupletType, uiUndo, uiVoiceInstrument, uiVoiceName, uiVoiceNum, Ui_uiMainWindow::uiVoiceProperties, uiVoiceStemDirection, and uiVoiceToolBar.

Referenced by CAMainWin().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::sourceViewPortCommit ( QString  inputString) [private, slot]
bool CAMainWin::stopPlayback ( ) [inline, private]
void CAMainWin::updateClefToolBar ( ) [private]

Shows/Hides the clef properties tool bar according to the current state.

References currentScoreViewPort(), EditMode, InsertMode, mode(), musElementFactory(), CAClef::offset(), CAClef::offsetToReadable(), CAScoreViewPort::selection(), uiClefOffset, uiClefToolBar, and uiClefType.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateContextToolBar ( ) [private]

Shows/Hides context tool bar according to the selected context (if any) and hides/shows specific actions in the toolbar for the current context.

References CALyricsContext::associatedVoice(), CAContext::contextType(), currentContext(), currentSheet(), CAContext::FunctionMarkContext, CAContext::LyricsContext, mode(), CAContext::name(), SelectMode, CAContext::Staff, CALyricsContext::stanzaNumber(), uiAssociatedVoice, uiAssociatedVoiceAction, uiContextName, uiContextToolBar, Ui_uiMainWindow::uiInsertPlayable, uiStanzaNumber, uiStanzaNumberAction, and CASheet::voiceList().

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateDynamicToolBar ( ) [private]

Shows/Hides the dynamic marks properties tool bar according to the current state.

References CAToolButton::currentId(), currentScoreViewPort(), CAMark::Dynamic, CADynamic::dynamicTextFromString(), EditMode, InsertMode, mode(), musElementFactory(), CAScoreViewPort::selection(), CAMenuToolButton::setCurrentId(), CADynamic::text(), uiDynamicCustomText, uiDynamicText, uiDynamicToolBar, uiDynamicVolume, uiMarkType, and CADynamic::volume().

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateFermataToolBar ( ) [private]

Shows/Hides the fermata properties tool bar according to the current state.

References CAToolButton::currentId(), currentScoreViewPort(), EditMode, CAMark::Fermata, CAFermata::fermataType(), InsertMode, mode(), musElementFactory(), CAScoreViewPort::selection(), CAMenuToolButton::setCurrentId(), uiFermataToolBar, uiFermataType, and uiMarkType.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

Shows/Hides the fingering properties tool bar according to the current state.

References CAToolButton::currentId(), currentScoreViewPort(), EditMode, CAFingering::finger(), CAMark::Fingering, InsertMode, CAFingering::isOriginal(), mode(), musElementFactory(), CAScoreViewPort::selection(), CAMenuToolButton::setCurrentId(), uiFinger, uiFingeringOriginal, uiFingeringToolBar, and uiMarkType.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateFMToolBar ( ) [private]
void CAMainWin::updateInsertToolBar ( ) [private]

Shows/Hides the instrument marks properties tool bar according to the current state.

References CAToolButton::currentId(), currentScoreViewPort(), EditMode, InsertMode, CAInstrumentChange::instrument(), CAMark::InstrumentChange, mode(), musElementFactory(), CAScoreViewPort::selection(), uiInstrumentChange, uiInstrumentToolBar, and uiMarkType.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateKeySigToolBar ( ) [private]

Shows/Hides the key signature properties tool bar according to the current state.

References currentScoreViewPort(), CAKeySignature::diatonicKey(), CADrawableKeySignature::diatonicKeyToRow(), EditMode, InsertMode, CADiatonicKey::Minor, mode(), musElementFactory(), CAScoreViewPort::selection(), Ui_uiMainWindow::uiInsertKeySig, uiKeySig, and uiKeySigToolBar.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

Shows/Hides the repeat mark properties tool bar according to the current state.

References CAToolButton::currentId(), currentScoreViewPort(), EditMode, InsertMode, mode(), musElementFactory(), CAMark::RepeatMark, CARepeatMark::repeatMarkType(), CAMusElementFactory::repeatMarkType(), CAScoreViewPort::selection(), CAMenuToolButton::setCurrentId(), uiMarkType, uiRepeatMarkToolBar, uiRepeatMarkType, CARepeatMark::Volta, and CARepeatMark::voltaNumber().

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateSheetToolBar ( ) [private]

Shows sheet tool bar if nothing selected. Otherwise hides it.

References CAScoreViewPort::currentContext(), currentScoreViewPort(), CASheet::name(), CAScoreViewPort::selection(), CAScoreViewPort::sheet(), uiSheetName, and uiSheetToolBar.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateTempoToolBar ( ) [private]

Shows/Hides the tempo marks properties tool bar according to the current state.

References CATempo::beat(), CATempo::bpm(), CAToolButton::currentId(), currentScoreViewPort(), CAPlayableLength::dotted(), EditMode, InsertMode, mode(), musElementFactory(), CAPlayableLength::musicLength(), CAScoreViewPort::selection(), CAMenuToolButton::setCurrentId(), CAMark::Tempo, uiMarkType, uiTempoBeat, uiTempoBpm, and uiTempoToolBar.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateTimeSigToolBar ( ) [private]

Shows/Hides the time signature properties tool bar according to the current state.

References CATimeSignature::beat(), CATimeSignature::beats(), currentScoreViewPort(), EditMode, InsertMode, mode(), musElementFactory(), CAScoreViewPort::selection(), uiTimeSigBeat, uiTimeSigBeats, uiTimeSigToolBar, and uiTimeSigType.

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateToolBars ( ) [private]

Enables or Disabled undo/redo buttons if there are undo/redo commands on the undo stack.

See also:
CACanorus::undoStack()

References document(), uiRedo, uiUndo, and CACanorus::undo().

Referenced by updateToolBars().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::updateVoiceToolBar ( ) [private]

References document().

Referenced by rebuildUI(), and saveDocument().

Here is the call graph for this function:

Here is the caller graph for this function:

void CAMainWin::viewPortClicked ( ) [private, slot]

General viewport mouse press event. Sets it as the current view port.

See also:
scoreViewPortMousePress()

References currentViewPort(), currentViewPortContainer(), CAViewPortContainer::setCurrentViewPort(), and setCurrentViewPort().

Referenced by initViewPort().

Here is the call graph for this function:

Here is the caller graph for this function:

QList<CAViewPort*> CAMainWin::viewPortList ( ) [inline]

References _viewPortList.

Referenced by on_uiCloseCurrentView_triggered(), and removeSheet().

Here is the caller graph for this function:


Member Data Documentation

Pointer to the main window's document it represents. Null if no document opened.

See also:
document()

Referenced by document(), and setDocument().

Referenced by CAMainWin(), and onMidiInEvent().

Main window's current mode (Select mode, Edit mode, Playback mode, Insert mode etc.).

See also:
CAMode, mode(), setMode()

Referenced by CAMainWin(), mode(), and setMode().

Viewport needed to be updated when playback is active.

Referenced by CAMainWin(), on_uiPlayFromSelection_toggled(), onRepaintTimerTimeout(), and playbackFinished().

Referenced by setupCustomUi(), and ~CAMainWin().

Referenced by setupCustomUi(), and ~CAMainWin().

bool CAMainWin::_rebuildUILock [private]

Lock to avoid recursive rebuilds of the GUI viewports.

Referenced by rebuildUILock(), and setRebuildUILock().

QTimer* CAMainWin::_repaintTimer [private]
unsigned int CAMainWin::_timeEditedTime [private]
QTimer CAMainWin::_timeEditedTimer [private]

Referenced by CAMainWin().

Referenced by addSheet().

QList< CAViewPort * > CAMainWin::_viewPortList [private]

List of all available viewports for any sheet in this main window.

Referenced by clearUI(), initViewPort(), on_uiCloseCurrentView_triggered(), on_uiUnsplitAll_triggered(), rebuildUI(), removeViewPort(), setMode(), sourceViewPortCommit(), and viewPortList().

Referenced by createCustomActions().

QComboBox* CAMainWin::uiAssociatedVoice [private]
QSpinBox* CAMainWin::uiClefOffset [private]
QToolBar* CAMainWin::uiClefToolBar [private]
QToolBar* CAMainWin::uiContextToolBar [private]
QToolBar* CAMainWin::uiDynamicToolBar [private]
QSpinBox* CAMainWin::uiDynamicVolume [private]
QFileDialog * CAMainWin::uiExportDialog = 0 [static]
QToolBar* CAMainWin::uiFermataToolBar [private]
QCheckBox* CAMainWin::uiFingeringOriginal [private]
QToolBar* CAMainWin::uiFingeringToolBar [private]
QComboBox* CAMainWin::uiFMKeySig [private]
QToolBar* CAMainWin::uiFMToolBar [private]

Referenced by createCustomActions(), and helpWidget().

QFileDialog * CAMainWin::uiImportDialog = 0 [static]
QActionGroup* CAMainWin::uiInsertGroup [private]

Referenced by setupCustomUi(), and ~CAMainWin().

QToolBar* CAMainWin::uiInsertToolBar [private]
QComboBox* CAMainWin::uiInstrumentChange [private]
QToolBar* CAMainWin::uiInstrumentToolBar [private]
QComboBox* CAMainWin::uiKeySig [private]
QToolBar* CAMainWin::uiKeySigToolBar [private]
QFileDialog * CAMainWin::uiOpenDialog = 0 [static]
QToolBar* CAMainWin::uiPlayableToolBar [private]
QToolBar* CAMainWin::uiRepeatMarkToolBar [private]
QFileDialog * CAMainWin::uiSaveDialog = 0 [static]
QToolBar* CAMainWin::uiSheetToolBar [private]
QSpinBox* CAMainWin::uiStanzaNumber [private]
QLabel* CAMainWin::uiTempoEquals [private]
QToolBar* CAMainWin::uiTempoToolBar [private]
QSpinBox* CAMainWin::uiTimeSigBeat [private]
QSpinBox* CAMainWin::uiTimeSigBeats [private]
QLabel* CAMainWin::uiTimeSigSlash [private]
QToolBar* CAMainWin::uiTimeSigToolBar [private]
QLabel* CAMainWin::uiTupletInsteadOf [private]
QComboBox* CAMainWin::uiVoiceInstrument [private]
QToolBar* CAMainWin::uiVoiceToolBar [private]

The documentation for this class was generated from the following files: