//=========================================================================== // // DeicsOnze an emulator of the YAMAHA DX11 synthesizer // // Version 0.2.2 // // deicsonzegui.h // // // Copyright (c) 2004 Nil Geisweiller // // // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version 2 // of the License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA // 02111-1307, USA or point your web browser to http://www.gnu.org. //=========================================================================== #ifndef __DEICSONZEGUI_H #define __DEICSONZEGUI_H #include #include #include "deicsonzeguibase.h" #include "libsynti/gui.h" class DeicsOnze; class categorySet; class subcategorySet; class presetSet; class Preset; class QListViewItemCategory; class QListViewItemSubcategory; class QListViewItemPreset; //--------------------------------------------------------- // DeicsOnzeGui //--------------------------------------------------------- class DeicsOnzeGui : public DeicsOnzeGuiBase, public MessGui { DeicsOnze* _deicsOnze; QListViewItemCategory* _currentQLVICategory; QListViewItemSubcategory* _currentQLVISubcategory; QListViewItemPreset* _currentQLVIPreset; Q_OBJECT QString lastDir; private slots: void newPresetDialogue(); void deletePresetDialogue(); void loadPresetsDialogue(); void savePresetsDialogue(); //Preset and bank void setName(const QString&); void setSubcategory(const QString&); void setCategory(const QString&); void setBank(int); void setProg(int); //Global void setMasterVol(int); void setFeedback(int); void setLfoWave(const QString&); void setLfoSpeed(int); void setLfoDelay(int); void setLfoPModDepth(int); void setLfoPitchSens(int); void setLfoAModDepth(int); void setLfoAmpSens(int); void setTranspose(int); void setGlobalDetune(int); void setAlgorithm(const QString&); void setPitchBendRange(int); //envelope void setAR1(int val); void setD1R1(int val); void setD1L1(int val); void setD2R1(int val); void setRR1(int val); void setAR2(int val); void setD1R2(int val); void setD1L2(int val); void setD2R2(int val); void setRR2(int val); void setAR3(int val); void setD1R3(int val); void setD1L3(int val); void setD2R3(int val); void setRR3(int val); void setAR4(int val); void setD1R4(int val); void setD1L4(int val); void setD2R4(int val); void setRR4(int val); //scaling void setLS1(int val); void setRS1(int val); void setLS2(int val); void setRS2(int val); void setLS3(int val); void setRS3(int val); void setLS4(int val); void setRS4(int val); //vol void setVol1(int val); void setVol2(int val); void setVol3(int val); void setVol4(int val); //Ratio and Frequency void setCoarseRatio1(int val); void setFineRatio1(int val); void setFreq1(int val); void setFix1(bool f); void setCoarseRatio2(int val); void setFineRatio2(int val); void setFreq2(int val); void setFix2(bool f); void setCoarseRatio3(int val); void setFineRatio3(int val); void setFreq3(int val); void setFix3(bool f); void setCoarseRatio4(int val); void setFineRatio4(int val); void setFreq4(int val); void setFix4(bool f); //Sensitivity void setAME1(bool val); void setEBS1(int val); void setKVS1(int val); void setAME2(bool val); void setEBS2(int val); void setKVS2(int val); void setAME3(bool val); void setEBS3(int val); void setKVS3(int val); void setAME4(bool val); void setEBS4(int val); void setKVS4(int val); //detune void setDET1(int val); void setDET2(int val); void setDET3(int val); void setDET4(int val); //WaveForm void setWaveForm1(const QString&); void setWaveForm2(const QString&); void setWaveForm3(const QString&); void setWaveForm4(const QString&); //category subcategory preset void setSubcategorySet(Q3ListViewItem*); void setPresetSet(Q3ListViewItem*); void setPreset(Q3ListViewItem*); public: void updatePreset(void); //update gui following the current preset DeicsOnzeGui(DeicsOnze*); }; class QListViewItemCategory:public Q3ListViewItem { public: subcategorySet* _c; QListViewItemCategory(Q3ListView* p, QString l, subcategorySet* c) :Q3ListViewItem(p, l) {_c=c;}; }; class QListViewItemSubcategory:public Q3ListViewItem { public: presetSet* _s; QListViewItemSubcategory(Q3ListView* p, QString l, presetSet* s) :Q3ListViewItem(p, l) {_s=s;}; }; class QListViewItemPreset:public Q3ListViewItem { public: std::vector::iterator i_p;//presetClass* _p; QListViewItemPreset(Q3ListView* pa, QString l, std::vector::iterator ip) :Q3ListViewItem(pa, l) {i_p=ip;}; }; #endif /* __DEICSONZEGUI_H */