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

editinst.cpp

Go to the documentation of this file.
00001 #include "editinst.h"
00002 
00003 /* OPIE */
00004 #include <opie2/odebug.h>
00005 #include <qpe/config.h>
00006 #include <qpe/qpeapplication.h>
00007 using namespace Opie::Core;
00008 
00009 /* QT */
00010 #include <qpushbutton.h>
00011 
00012 Menu::InstEditDialog::InstEditDialog(TonleiterData* data,QWidget* parent,const char* name)
00013 :QDialog(parent,name,true,0),data(data)
00014 {
00015     setCaption("Tonleiter::"+tr("Instrument"));
00016     QBoxLayout* masterlayout=new QBoxLayout(this,QBoxLayout::TopToBottom);
00017     instid=data->getCurrentInstrumentID();
00018     stringlist.setAutoDelete(true);
00019 
00020     QBoxLayout* toplayout=new QBoxLayout(masterlayout,QBoxLayout::LeftToRight);
00021 
00022     //Name combo + Add + Delete
00023     boxInst=new QComboBox(this,"boxInst");
00024     boxInst->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding,QSizePolicy::Maximum));
00025     connect(boxInst,SIGNAL(activated(int)),this,SLOT(setCurrentInstrumetID(int)));
00026     for(int i=0;i<data->noOfInstruments();i++)
00027     {
00028         Instrument inst=data->getInstrument(i);
00029         QString name=inst.instName();
00030         if(name.isNull()) continue;
00031         boxInst->insertItem(name,i);
00032     }
00033     boxInst->setCurrentItem(instid);
00034     toplayout->addWidget(boxInst);
00035 
00036     QPushButton* addButton=new QPushButton(tr("Add"),this,"addButton");
00037     connect(addButton,SIGNAL(pressed()),this,SLOT(addInstrument()));
00038     toplayout->addWidget(addButton);
00039 
00040     QPushButton* delButton=new QPushButton(tr("Delete"),this,"delButton");
00041     connect(delButton,SIGNAL(pressed()),this,SLOT(deleteInstrument()));
00042     toplayout->addWidget(delButton);
00043 
00044     QPushButton* addhighButton=new QPushButton(tr("Add High String"),this,"addhighButton");
00045     masterlayout->addWidget(addhighButton);
00046 
00047     scrollview=new QScrollView(this);
00048     scrollview->setVScrollBarMode(QScrollView::AlwaysOn);
00049     scrollview->setHScrollBarMode(QScrollView::AlwaysOff);
00050     stringwidget=new QVBox(scrollview->viewport());
00051     stringwidget->setSizePolicy(QSizePolicy(QSizePolicy::Minimum,QSizePolicy::Minimum));
00052     stringwidget->setSpacing(10);
00053     scrollview->addChild(stringwidget);
00054     scrollview->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding,QSizePolicy::Maximum));
00055     masterlayout->addWidget(scrollview);
00056 
00057     loadInstrument();
00058 
00059     QPushButton* addlowButton=new QPushButton(tr("Add Low String"),this,"addlowButton");
00060     masterlayout->addWidget(addlowButton);
00061 
00062     //make dialog fit the screen
00063     QPEApplication::showDialog( this );
00064 }
00065 //****************************************************************************
00066 Menu::InstEditDialog::~InstEditDialog()
00067 {
00068 }
00069 //****************************************************************************
00070 void Menu::InstEditDialog::setCurrentInstrumetID(int id)
00071 {
00072     saveInstrument();
00073     instid=id;
00074     data->setCurrentInstrumetID(id);
00075     loadInstrument();
00076 }
00077 //****************************************************************************
00078 void Menu::InstEditDialog::addInstrument()
00079 {
00080 }
00081 //****************************************************************************
00082 void Menu::InstEditDialog::deleteInstrument()
00083 {
00084 }
00085 //****************************************************************************
00086 void Menu::InstEditDialog::addLowString()
00087 {
00088 }
00089 //****************************************************************************
00090 void Menu::InstEditDialog::addHighString()
00091 {
00092 }
00093 //****************************************************************************
00094 void Menu::InstEditDialog::deleteString(int id)
00095 {
00096 }
00097 //****************************************************************************
00098 void Menu::InstEditDialog::saveInstrument()
00099 {
00100     //auto delete is set to true so widgets _should_ be deleted
00101     stringlist.clear();
00102 }
00103 //****************************************************************************
00104 void Menu::InstEditDialog::loadInstrument()
00105 {
00106     stringlist.clear();
00107     Instrument inst=data->getInstrument(instid);
00108     odebug << "load Instrument : " << inst.noOfStrings() << " strings" << oendl; 
00109     for(uint s=0;s<inst.noOfStrings();s++)
00110     {
00111         stringlist.append(new EditStringWidget(inst.string(s),stringwidget));
00112     }
00113 }
00114 //****************************************************************************
00115 //****************************************************************************

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