~s-cecilio/lenmus/v5.1.x

« back to all changes in this revision

Viewing changes to src/graphic/ShapeNote.h

  • Committer: cecilios
  • Date: 2008-09-13 17:53:40 UTC
  • Revision ID: svn-v4:2587a929-2f0e-0410-ae78-fe6f687d5efe:trunk:387

Show diffs side-by-side

added added

removed removed

Lines of Context:
56
56
 
57
57
        //overrides of virtual methods in base class
58
58
        void Shift(lmLUnits xIncr, lmLUnits yIncr);
 
59
        virtual void Render(lmPaper* pPaper, wxColour color);
59
60
 
60
61
        //specific methods
61
62
        void AddStem(lmShapeStem* pShape);
63
64
        void AddFlag(lmShape* pShape);
64
65
        void AddAccidental(lmShape* pShape);
65
66
        void AddNoteInBlock(lmShape* pShape);
 
67
        void AddLegerLinesInfo(int nPosOnStaff, lmLUnits uyStaffTopLine);
 
68
 
66
69
 
67
70
        //info about related shapes
68
71
        inline void SetBeamShape(lmShapeBeam* pBeamShape) { m_pBeamShape = pBeamShape; }
78
81
        lmLUnits GetStemThickness();
79
82
        bool StemGoesDown();
80
83
 
81
 
        //re-layout
 
84
        //layout related
82
85
        void SetStemLength(lmLUnits uLength);
 
86
        void DrawLegerLines(int nPosOnStaff, lmLUnits uxLine, lmPaper* pPaper, wxColour color);
83
87
 
84
88
        //dragging
85
89
    wxBitmap* OnBeginDrag(double rScale, wxDC* pDC);
90
94
 
91
95
protected:
92
96
        //index to some important constituent shapes
93
 
        int             m_nNoteHead;
 
97
        int                             m_nNoteHead;
94
98
 
95
99
    //position
96
 
    lmLUnits    m_uxLeft;
97
 
    lmLUnits    m_uyTop;
 
100
    lmLUnits            m_uxLeft;
 
101
    lmLUnits            m_uyTop;
98
102
 
99
 
        lmLUnits        m_uWidth;
 
103
        lmLUnits                m_uWidth;
100
104
 
101
105
        //related shapes
102
106
        lmShapeBeam*    m_pBeamShape;
103
107
        lmShapeStem*    m_pStemShape;
104
108
 
 
109
        //info to render leger lines
 
110
        int                             m_nPosOnStaff;          //line/space on staff on which this note is placed
 
111
        lmLUnits                m_uyStaffTopLine;       //y pos. of top staff line (5th line)
105
112
 
106
113
};
107
114