1 |
// qsamplerChannel.h |
// qsamplerChannel.h |
2 |
// |
// |
3 |
/**************************************************************************** |
/**************************************************************************** |
4 |
Copyright (C) 2003-2005, rncbc aka Rui Nuno Capela. All rights reserved. |
Copyright (C) 2004-2006, rncbc aka Rui Nuno Capela. All rights reserved. |
5 |
|
|
6 |
This program is free software; you can redistribute it and/or |
This program is free software; you can redistribute it and/or |
7 |
modify it under the terms of the GNU General Public License |
modify it under the terms of the GNU General Public License |
13 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 |
GNU General Public License for more details. |
GNU General Public License for more details. |
15 |
|
|
16 |
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License along |
17 |
along with this program; if not, write to the Free Software |
with this program; if not, write to the Free Software Foundation, Inc., |
18 |
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
19 |
|
|
20 |
*****************************************************************************/ |
*****************************************************************************/ |
21 |
|
|
30 |
#include "qsamplerOptions.h" |
#include "qsamplerOptions.h" |
31 |
|
|
32 |
class qsamplerDevice; |
class qsamplerDevice; |
|
class qsamplerMainForm; |
|
33 |
|
|
34 |
|
|
35 |
// Typedef'd QMap. |
// Typedef'd QMap. |
45 |
public: |
public: |
46 |
|
|
47 |
// Constructor. |
// Constructor. |
48 |
qsamplerChannel(qsamplerMainForm *pMainForm, int iChannelID = -1); |
qsamplerChannel(int iChannelID = -1); |
49 |
// Default destructor. |
// Default destructor. |
50 |
~qsamplerChannel(); |
~qsamplerChannel(); |
51 |
|
|
|
// Main application form accessor. |
|
|
qsamplerMainForm *mainForm() const; |
|
|
|
|
|
// Main application options accessor. |
|
|
qsamplerOptions *options() const; |
|
|
|
|
|
// LSCP client descriptor accessor. |
|
|
lscp_client_t * client() const; |
|
|
|
|
52 |
// Add/remove sampler channel methods. |
// Add/remove sampler channel methods. |
53 |
bool addChannel(); |
bool addChannel(); |
54 |
bool removeChannel(); |
bool removeChannel(); |
155 |
|
|
156 |
private: |
private: |
157 |
|
|
|
// Main application form reference. |
|
|
qsamplerMainForm *m_pMainForm; |
|
|
|
|
158 |
// Unique channel identifier. |
// Unique channel identifier. |
159 |
int m_iChannelID; |
int m_iChannelID; |
160 |
|
|
197 |
// Common parameter table renderer. |
// Common parameter table renderer. |
198 |
void refresh(qsamplerDevice *pDevice, |
void refresh(qsamplerDevice *pDevice, |
199 |
const qsamplerChannelRoutingMap& routing); |
const qsamplerChannelRoutingMap& routing); |
200 |
|
|
201 |
|
// Commit any pending editing. |
202 |
|
void flush(); |
203 |
|
}; |
204 |
|
|
205 |
|
|
206 |
|
//------------------------------------------------------------------------- |
207 |
|
// qsamplerChannelRoutingComboBox - Custom combo box for routing table. |
208 |
|
// |
209 |
|
|
210 |
|
class qsamplerChannelRoutingComboBox : public QTableItem |
211 |
|
{ |
212 |
|
public: |
213 |
|
|
214 |
|
// Constructor. |
215 |
|
qsamplerChannelRoutingComboBox(QTable *pTable, |
216 |
|
const QStringList& list, const QPixmap& pixmap); |
217 |
|
|
218 |
|
// Public accessors. |
219 |
|
void setCurrentItem(int iCurrentItem); |
220 |
|
int currentItem() const; |
221 |
|
|
222 |
|
protected: |
223 |
|
|
224 |
|
// Virtual implemetations. |
225 |
|
QWidget *createEditor() const; |
226 |
|
void setContentFromEditor(QWidget *pWidget); |
227 |
|
|
228 |
|
private: |
229 |
|
|
230 |
|
// Initial value holders |
231 |
|
QStringList m_list; |
232 |
|
int m_iCurrentItem; |
233 |
}; |
}; |
234 |
|
|
235 |
|
|