00001 #ifndef PAGES_H
00002 #define PAGES_H
00003 #include "../kernel/Score.h"
00004 #include "Container.h"
00005 #include "../painter/Painter.h"
00006 #include "Page.h"
00007 #include "Graphical.h"
00008 #include "../MS/MusicSymbol.h"
00009 #include <qlist.h>
00010 #include <qevent.h>
00011 #include "../MS/BeamSlurMS.h"
00023 class PagesGr:public Graphical{
00024
00025 Container * container;
00026 QList<PageGr> pages;
00027 double pageHeight;
00028 double pageWidth;
00029 QPtrList<MusicSymbol> symbols;
00030 MarginPage *margins;
00031
00032 public:
00033 void setScore(ScoreMusic * s);
00034 PagesGr(Container * p);
00035 void init();
00036 void update();
00037 SlurMS * buildOverStemSlur(NoteHMS *,NoteHMS *,NoteMusic *nmstart,NoteMusic * nmstop);
00038 SlurMS * buildNoteHeadSideSlur(NoteHMS * mstart,NoteHMS *msstop,NoteMusic *nmstart,NoteMusic * nmstop);
00039 bool computeSlurCollision(SlurMC * ,SlurMS *,int ,int,int);
00040 void slurPass();
00041 Container * getContainer();
00042 double getWidth();
00043 PageGr * getPage(int i);
00044 void paint();
00045 };
00046 #endif