Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
/home/iurt/rpm/BUILD/canorus-0.7.R1002/src/drawable/drawablekeysignature.h
Go to the documentation of this file.
00001 
00008 #ifndef DRAWABLEKEYSIGNATURE_H_
00009 #define DRAWABLEKEYSIGNATURE_H_
00010 
00011 #include "drawable/drawablemuselement.h"
00012 #include "core/diatonickey.h"
00013 
00014 class CADrawableStaff;
00015 class CAKeySignature;
00016 class CADrawableAccidental;
00017 
00018 class QComboBox;
00019 
00020 class CADrawableKeySignature : public CADrawableMusElement {
00021         public:
00022                 CADrawableKeySignature(CAKeySignature *keySig, CADrawableStaff *staff, double x, double y);
00023                 ~CADrawableKeySignature();
00024 
00025                 void draw(QPainter *p, CADrawSettings s);
00026                 CADrawableKeySignature *clone(CADrawableContext* newContext = 0);
00027                 inline CAKeySignature *keySignature() { return (CAKeySignature*)_musElement; }
00028 
00029                 static void populateComboBox( QComboBox *c );
00030                 static CADiatonicKey comboBoxRowToDiatonicKey( int row );
00031                 static int diatonicKeyToRow( CADiatonicKey k );
00032                 static void populateComboBoxDirection( QComboBox *c );
00033 
00034         private:
00035                 QList<CADrawableAccidental*> _drawableAccidentalList;   
00036 };
00037 
00038 #endif /*DRAWABLEKEYSIGNATURE_H_*/