summaryrefslogtreecommitdiff
path: root/noncore/multimedia/tonleiter/tonleiterdata.h
blob: a5e68848fd1b8991bb42aaa03f5f462548433325 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#ifndef TONLEITER_DATA_H
#define TONLEITER_DATA_H

#include <qobject.h>

#include "tonleiterdatahelper.h"

class TonleiterData : public QObject
{
    Q_OBJECT
private:
    QValueList<Instrument> instruments;
    int currentInstrumentID;

    QValueList<Scale> scales;
    int currentScaleID;

    int currentNote;
    bool drawnames;
public:
    TonleiterData(QObject* parent);
    ~TonleiterData();
signals:
    void dataChange();
public slots:
    void setCurrentInstrumetID(int id);
    void setCurrentScaleID(int id);
    void setCurrentNote(int id);
    void setDrawNames(bool dn);
private:
    void loadData();
    void saveData();
public:
    int noOfInstruments();
    Instrument getInstrument(int id);
    int getCurrentInstrumentID();

    int noOfScales();
    Scale getScale(int id);
    int getCurrentScaleID();

    int getCurrentBaseNote();
    bool isDrawNames();
};

#endif //TONLEITER_DATA_H