Main Page | Modules | Class Hierarchy | Class List | File List | Class Members | Related Pages

MeasureGr Class Reference
[Layout]

#include <MeasureGr.h>

Inheritance diagram for MeasureGr:

Graphical List of all members.

Public Member Functions

MeasureMusicgetMeasureMC ()
void firstPass ()
void secondPass ()
 MeasureGr (Constraint *, Container *container, MeasureMusic *, AssoMCMS *, int measureSectionIndex, int partIndex, int lineIndex, int pgnb)
double getHeight ()
void computeCollision ()
void alterationCollisionDetection (MusicSymbol *)
void collisionFix ()
void closeMeasure ()
void paint ()

Detailed Description

This class handle the representation of the symbols associated with a MeasureMC. That is to say in the Partwise representation all the notes of a part It has been in troduced lately so it is under documented this will be done with time. The fatory object is duplicated. This may be a good idea if this object were placed in the main container and shared by all the sub widget.


Constructor & Destructor Documentation

MeasureGr::MeasureGr Constraint cst,
Container cont,
MeasureMusic m,
AssoMCMS mcms,
int  msindex,
int  parti,
int  linei,
int  pgnb
 

Constructor of measure Grapher The fatory bject is duplicated. This may be a good idea if this object were placed in the main container and shared by all the sub widget.

Parameters:
cont the container
pgnb the page number


Member Function Documentation

void MeasureGr::alterationCollisionDetection MusicSymbol msalter  ) 
 

This method is used to compute the collision detection If the need came this method could be use as the first pass collision detection

Parameters:
msalter 

We have to attach the Symbol of collision because it is possible that the collision detection is performed at the first pass like in the case of alterations.

void MeasureGr::closeMeasure  ) 
 

This method close the measure section it is called for the last measure in the line

void MeasureGr::collisionFix  ) 
 

Call the collision solver. Note : If a collision is a dont know fix or if the collision resolution provoque another collision then nothing is done. But a warning is printed We might see this in the future.

void MeasureGr::computeCollision  ) 
 

See if there are some collisions then add it to the collision stack. Note : You can debug this method to see where collisons had been detected by defining the DEBUGCOLLISION in the config.h file To complete the collision fix you have to call after the method fix collision Take care whith the DEBUGCOLLISION both of the collision met in the first pass and the second pass are represented.

  • First pass collision are in green.
  • Second pass collision are in red.

We have to attach the Symbol of collision because it is possible that the collision detection is performed at the first pass like in the case of alterations.

void MeasureGr::firstPass  ) 
 

It is called in the first pass for a measure. This perfroms two operations the first is to build the notes the second is to build the alterations.

See also:
the Line construction spec for details There is an incoherent use of build Attributes and build timed Attributes. Make the behavior be the same (Timed attributes behaviour is to be kept )

double MeasureGr::getHeight  ) 
 

Returns:
the height of the measure

MeasureMusic * MeasureGr::getMeasureMC  ) 
 

Returns:
the measureMC associated to this

void MeasureGr::paint  )  [virtual]
 

Sends a paint event to the aggregated staves Layout

Implements Graphical.

void MeasureGr::secondPass  ) 
 

It is called in the second pass for a measure it performs an adjustment of the Y of the music symbol for instance if the line stats with two staves and ends with three

See also:
the Line construction spec for details


The documentation for this class was generated from the following files:
Generated on Tue Jun 1 21:13:33 2004 for Alternate Take by doxygen 1.3.6