Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

fretboard.h

Go to the documentation of this file.
00001 #ifndef TONLEITER_FRET_BOARD_H
00002 #define TONLEITER_FRET_BOARD_H
00003 
00004 #include <qbrush.h>
00005 #include <qpen.h>
00006 #include <qvaluelist.h>
00007 #include <qwidget.h>
00008 
00009 
00010 #include "tonleiterdata.h"
00011 
00012 using namespace Data;
00013 
00014 namespace Graph
00015 {
00016     class FretBoard : public QWidget
00017     {
00018         Q_OBJECT
00019     private:
00020         TonleiterData* data;
00021 
00022         QPen fretpen;
00023         QBrush markerbrush;
00024         QPen stringpen;
00025 
00026         Instrument inst;
00027 
00028         int xmargin;
00029         int xmin;
00030         int xmax;
00031         int xwidth;
00032 
00033         int ymargin;
00034         int ymin;
00035         int ymax;
00036         int yheight;
00037 
00038         double fretdist;
00039         double stringdist;
00040 
00041     public:
00042         FretBoard(TonleiterData* data,QWidget* parent,const char* name="FretBoard",WFlags f=0);
00043         virtual ~FretBoard();
00044     signals:
00045         void pressed();
00046     private slots:
00047         void dataChange();
00048     private:
00049         void paintEvent(QPaintEvent* pe);
00050         void resizeEvent(QResizeEvent* re);
00051         void mouseReleaseEvent(QMouseEvent* me);
00052         void paintBoard(QPainter* p);
00053         void paintFrets(QPainter* p);
00054         void paintStrings(QPainter* p);
00055         void paintScale(QPainter* p);
00056     };
00057 };
00058 
00059 #endif //TONLEITER_FRET_BOARD_H

Generated on Sat Nov 5 16:17:35 2005 for OPIE by  doxygen 1.4.2