summaryrefslogtreecommitdiffstats
path: root/tdemid/channel.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-26 13:17:43 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-26 13:17:43 -0600
commitcb68a7857c80661d242ee5527ec6f99dc3f79fa7 (patch)
treea3b54203ca6bce0e8e1dc5107dc9653db246a281 /tdemid/channel.h
parent7534907d3759a8c520eeb9a701b316d891c63bdf (diff)
downloadtdemultimedia-cb68a7857c80661d242ee5527ec6f99dc3f79fa7.tar.gz
tdemultimedia-cb68a7857c80661d242ee5527ec6f99dc3f79fa7.zip
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'tdemid/channel.h')
-rw-r--r--tdemid/channel.h105
1 files changed, 105 insertions, 0 deletions
diff --git a/tdemid/channel.h b/tdemid/channel.h
new file mode 100644
index 00000000..4f88ae36
--- /dev/null
+++ b/tdemid/channel.h
@@ -0,0 +1,105 @@
+/**************************************************************************
+
+ channel.h - The KMidChannel widget (with pure virtual members)
+ Copyright (C) 1998 Antonio Larrosa Jimenez
+
+ 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+ Send comments and bug fixes to larrosa@kde.org
+ or to Antonio Larrosa, Rio Arnoya, 10 5B, 29006 Malaga, Spain
+
+***************************************************************************/
+
+#ifndef KMIDCHANNEL_H
+#define KMIDCHANNEL_H
+#include <tqwidget.h>
+#include <tqpixmap.h>
+
+#define CHANNELHEIGHT 71
+#define KEYBOARDY CHANNELHEIGHT-46
+
+#define CHN_CHANGE_PGM 1
+#define CHN_CHANGE_FORCED_STATE 2
+
+class TQFont;
+class TQComboBox;
+class KMidButton;
+class KMidChannel : public TQWidget
+{
+ Q_OBJECT
+
+
+private:
+ bool pressed[128]; // The 128 keys
+ int channel;
+ bool replay; // Indicates if music should restart playing after
+ // changing the force state
+
+protected:
+ TQPixmap keyboard;
+ TQPixmap button1;
+ TQPixmap button2;
+
+ TQComboBox *instrumentCombo;
+
+ KMidButton *forcepgm;
+ TQFont *qcvfont;
+
+ TQPen *penB; // Black
+ TQPen *penW; // White
+ TQPen *penT; // "Transparent" for Background
+
+ void paintEvent( TQPaintEvent * );
+public:
+ KMidChannel(int i,TQWidget *Parent);
+ virtual ~KMidChannel();
+
+ void drawKeyboard(TQPainter *qpaint);
+ void drawPressedKeys(TQPainter *qpaint);
+ void drawKey(TQPainter *qpaint,int key);
+
+ virtual void drawDo (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawDo__ (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawRe (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawRe__ (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawMi (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawFa (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawFa__ (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawSol (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawSol__(TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawLa (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawLa__ (TQPainter *qpaint,int x,int p) = 0;
+ virtual void drawSi (TQPainter *qpaint,int x,int p) = 0;
+
+ void noteOn(int key);
+ void noteOff(int key);
+ void changeInstrument(int pgm);
+ void changeForceState(bool i);
+
+ void reset(int level=1); // 0 only release notes, 1 also set instr to 0 ...
+
+ void saveState(bool *p,int *pgm);
+ void loadState(bool *p,int *pgm);
+
+public slots:
+ void pgmChanged(int i);
+ void changeForcedState(bool);
+
+signals:
+ void signalToKMidClient(int *data);
+
+};
+
+#endif