#ifndef _QTTRACK_H_
#define _QTTRACK_H_
#include "qtMain.h"
#include "ifTrack.h"
class QtTrack;
class MyLabel : public QLabel
{
Q_OBJECT
private:
QPopupMenu * rbmenu;
QtTrack * qttrack;
QLineEdit * le;
public:
MyLabel( QWidget * parent = 0, const char * name = 0 );
public slots:
void mousePressEvent ( QMouseEvent * );
void changeName();
void delTrack();
void setName();
};
class KbTrack;
class TogBut;
/**
* This is the qt implementation of a track
* @author Jan Wuerthner
* @versoin 0.95
*/
class QtTrack : public QWidget, public IfTrack
{
Q_OBJECT
private:
KbTrack * track;
TogBut * mute;
TogBut * type;
TogBut * lock;
MyLabel * trname;
QSpinBox * chanbox;
QComboBox * instbox;
QComboBox * output;
QSpinBox * vol;
QSpinBox * del;
public:
/// Constructor
QtTrack(KbTrack*);
/// Destructor
~QtTrack();
void erase();
/// updates the presentation on the screen
void update();
/// returns the QtMain Window
QtMain * gQtMain();
/// returns the track
KbTrack * gTrack();
/// returns the height of a track (calculates it from main)
int height();
/// returns the width of a track
int width();
/// (only internal use:) corrects the height
void adjustHeight();
/// returns current instrument
int gProgram();
/// sets an instrument
void sProgram(int n);
public slots:
void updateChan(int);
void updateInst(int);
void updateOut(int);
void updateVol(int);
void updateDel(int);
};
/**
* This class defines a toggel button, as it is used three times in each track
* @author Jan Wuerthner
* @version 0.95
*/
class TogBut : public QLabel
{
Q_OBJECT
public:
TogBut( int n, KbTrack * kbtrack, QPixmap * pic, QPixmap * pic2, QWidget * parent=0, const char * name=0);
void update();
public slots:
void mousePressEvent ( QMouseEvent * );
private:
int num;
KbTrack * track;
QtTrack * qttrack;
QPixmap * icon;
QPixmap * icon2;
};
#endif
Documentation generated by wuerthne@clouseau on Sat Feb 20 16:41:13 MST 1999