summaryrefslogtreecommitdiffstats
path: root/noatun/modules/kjofol-skin/kjequalizer.h
blob: f3f13bd5955d52fe0d7950c543e968fe71c9b3a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#ifndef KJEQUALIZER_H
#define KJEQUALIZER_H

#include "kjwidget.h"
//#include "kjloader.h"
class KJLoader;
class VInterpolation;

#include <qobject.h>

class KJEqualizer : public QObject, public KJWidget
{
Q_OBJECT
public:
	KJEqualizer(const QStringList &, KJLoader *parent);
	~KJEqualizer(void);

	virtual void mouseMove(const QPoint &pos, bool);
	virtual bool mousePress(const QPoint&);
	virtual void paint(QPainter *p, const QRect &rect);
	int barNum(const QPoint &pos) const;
	int level(const QPoint &pos) const;

public slots:
	void slotUpdateBuffer();

private:
	int mBands;
	int mXSpace;

	int mBandWidth;
	int mBandHalfHeight;
	QPixmap mBars; // holds all slider images
	QPixmap *mBack; // holds background of EQ for easy repaint
	QPixmap *mView; // holds prepared img of all sliders
	VInterpolation *mInterpEq;
};

#endif