#include <MusicSymbol.h>
Inheritance diagram for MusicSymbol:

Public Member Functions | |
| MusicSymbol * | getAttachedSymbol () |
| void | attachMusicSymbol (MusicSymbol *) |
| MusicSymbol (QString name, float x, float y) | |
| virtual void | draw (Painter *)=0 |
| virtual QString | name () |
| virtual QPoint | getHotSpot () |
| void | setMark (QString) |
| virtual double | getX () |
| double | getY () |
| virtual void | setX (double) |
| void | setY (double) |
| void | setIndexNoteMusic (void *) |
| void * | getIndexNoteMusic () |
| int | getLineIndex () |
| void | setLineIndex (int) |
| int | getPageIndex () |
| void | setPageIndex (int) |
| bool | collide (MusicSymbol *) |
| virtual Collider * | getCollider ()=0 |
| QString | getMark () |
| double | length () |
| virtual QString | toString () |
| double | xCollision () |
| double | yCollision () |
| void | drawTrajectory (Painter *) |
Static Public Attributes | |
| long | nbcollisiondetectioncount = 0 |
Protected Attributes | |
| MusicSymbol * | attachedSymbol |
| float | x |
| float | y |
| QString | mark |
| double | naturalLength |
| double | graphicLength |
| double | beginModifier |
| void * | indexNoteMusic |
| int | lineIndex |
| int | pageIndex |
|
||||||||||||||||
|
|
|
|
This function attach a music symbol to the note head (Flat,Sharp, Neutral etc.) Maybe there could be several attached notes and this function will require other developpements
|
|
|
We test the collision of two symbol. like stems could not be transformed
|
|
|
This method draw is defined but useless if we define it as pure virtual (As it should be) Implemented in BeamMS, SlurMS, SmallClefSol, SmallClefFa, TimeSymbol, FifthsMS, CrossMS, BraceMS, LyricMS, MeasureSymbol, VerticalLineSymbol, SimpleMusicSymbol, VoidSymbol, Half, NoteHMS, SimpleStemMS, GraceSimpleStemMS, GroupedStemsMS, and TextSymbol. |
|
|
This draw the trajectory point this function is avalaible only if compiled with the DRAWTRAJECTORY, it shows the trajectory of the symbol before it is placed. A point is appended at the construction. Each time the setX or setY function is called, a point is appended to the vectors. The number of items in the xtrajectory vector and in the ytrajectory vector should be the same, but this is only warranted with the construction process. option set |
|
|
|
|
|
Implemented in BeamMS, SlurMS, TimeSymbol, FifthsMS, CrossMS, BraceMS, LyricMS, MeasureSymbol, VerticalLineSymbol, SimpleMusicSymbol, VoidSymbol, NoteHMS, SimpleStemMS, GraceSimpleStemMS, GroupedStemsMS, and TextSymbol. |
|
|
Reimplemented in MeasureSymbol, and SimpleMusicSymbol. |
|
|
Get the index of the noteMusic this is not typed to keep the separation clear between class sets
|
|
|
get the line index the line index |
|
|
This function is useful for debug. A mark allow a music symbol to be localized on the page |
|
|
get the line index the line index |
|
|
Reimplemented in NoteHMS. |
|
|
|
|
|
|
|
|
cette méthode est définie mais elle ne sert pas et il faudra la supprimer |
|
|
Set the index of the noteMusic this is not typed to keep the separation clear between class sets
|
|
|
Set the line index (For slur representation) |
|
|
This function is useful for debug. A mark allow a music symbol to be localized on the page
|
|
|
Set the line index (For slur representation) |
|
|
Sets the x position : Usefull for the expansion of the MS along the time line. If there is a symbol attached to the music symbol we keep the same distance from it Reimplemented in NoteHMS. |
|
|
Sets the y position : Usefull for the resolution of the collision. |
|
|
For many symbols this function should be overrided.
Reimplemented in SlurMS, LyricMS, NoteHMS, and GroupedStemsMS. |
|
|
|
|
|
|
|
|
This make sense only to the subclass of music symbol that can be altered (Note and rests) |
|
|
The lenght that a symbol drawn berfore the skip of this length leads to a superposition of the symbol |
|
|
The natural length is used for the subclass of music symbol to which it make sense otherwhise it is set to 0 |
1.3.6