summaryrefslogtreecommitdiff
path: root/noncore/multimedia/tonleiter/menuwidget.cpp
Unidiff
Diffstat (limited to 'noncore/multimedia/tonleiter/menuwidget.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/tonleiter/menuwidget.cpp72
1 files changed, 72 insertions, 0 deletions
diff --git a/noncore/multimedia/tonleiter/menuwidget.cpp b/noncore/multimedia/tonleiter/menuwidget.cpp
new file mode 100644
index 0000000..9cc2c6b
--- a/dev/null
+++ b/noncore/multimedia/tonleiter/menuwidget.cpp
@@ -0,0 +1,72 @@
1#include "menuwidget.h"
2
3#include <qlabel.h>
4#include <qlayout.h>
5
6MenuWidget::MenuWidget(TonleiterData* data,QWidget* parent,const char* name,WFlags f)
7:QWidget(parent,name,f),data(data)
8{
9 QGridLayout* layout=new QGridLayout(this,3,3,10,-1,"menulayout");
10
11 QLabel* instLabel=new QLabel(tr("Instrument"),this,"instLabel");
12 layout->addWidget(instLabel,0,0);
13 boxInst=new QComboBox(this,"boxInst");
14 connect(boxInst,SIGNAL(activated(int)),data,SLOT(setCurrentInstrumetID(int)));
15 layout->addWidget(boxInst,0,1);
16 editInst=new QPushButton(tr("Edit"),this,"editInst");
17 layout->addWidget(editInst,0,2);
18
19 QLabel* noteLabel=new QLabel(tr("Note"),this,"noteLabel");
20 layout->addWidget(noteLabel,1,0);
21 boxNote=new QComboBox(this,"boxNote");
22 connect(boxNote,SIGNAL(activated(int)),data,SLOT(setCurrentNote(int)));
23 layout->addWidget(boxNote,1,1);
24 for(int a=0;a<12;a++)
25 boxNote->insertItem(Note::notenames[a],a);
26 boxNote->setCurrentItem(data->getCurrentBaseNote());
27 noteCheck=new QCheckBox(tr("show notes"),this,"noteCheck");
28 noteCheck->setChecked(data->isDrawNames());
29 connect(noteCheck,SIGNAL(toggled(bool)),data,SLOT(setDrawNames(bool)));
30 layout->addWidget(noteCheck,1,2);
31
32 QLabel* scaleLabel=new QLabel(tr("Scale"),this,"scaleLabel");
33 layout->addWidget(scaleLabel,2,0);
34 boxScale=new QComboBox(this,"boxScale");
35 connect(boxScale,SIGNAL(activated(int)),data,SLOT(setCurrentScaleID(int)));
36 layout->addWidget(boxScale,2,1);
37 editScale=new QPushButton(tr("Edit"),this,"editScale");
38 layout->addWidget(editScale,2,2);
39
40 updateBoxes();
41
42}
43//****************************************************************************
44MenuWidget::~MenuWidget()
45{
46}
47//****************************************************************************
48void MenuWidget::updateBoxes()
49{
50 boxInst->clear();
51
52 for(int i=0;i<data->noOfInstruments();i++)
53 {
54 Instrument inst=data->getInstrument(i);
55 QString name=inst.instName();
56 if(name.isNull()) continue;
57 boxInst->insertItem(name,i);
58 }
59 boxInst->setCurrentItem(data->getCurrentInstrumentID());
60
61 boxScale->clear();
62 for(int s=0;s<data->noOfScales();s++)
63 {
64 Scale scale=data->getScale(s);
65 QString name=scale.scaleName();
66 if(name.isNull()) continue;
67 boxScale->insertItem(name,s);
68 }
69 boxScale->setCurrentItem(data->getCurrentScaleID());
70}
71//****************************************************************************
72//****************************************************************************