summaryrefslogtreecommitdiff
path: root/muse_qt4_evolution/midiplugins/filter/filtergui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'muse_qt4_evolution/midiplugins/filter/filtergui.cpp')
-rw-r--r--muse_qt4_evolution/midiplugins/filter/filtergui.cpp187
1 files changed, 187 insertions, 0 deletions
diff --git a/muse_qt4_evolution/midiplugins/filter/filtergui.cpp b/muse_qt4_evolution/midiplugins/filter/filtergui.cpp
new file mode 100644
index 00000000..306ae392
--- /dev/null
+++ b/muse_qt4_evolution/midiplugins/filter/filtergui.cpp
@@ -0,0 +1,187 @@
+//=========================================================
+// MusE
+// Linux Music Editor
+// $Id: filtergui.cpp,v 1.4 2005/11/06 17:49:34 wschweer Exp $
+//
+// (C) Copyright 2005 Werner Schweer (ws@seh.de)
+//=========================================================
+
+#include "filtergui.h"
+#include "filter.h"
+#include "ctrlcombo.h"
+
+//---------------------------------------------------------
+// MidiFilterConfig
+//---------------------------------------------------------
+
+FilterGui::FilterGui(Filter* f, QWidget* parent)
+ : QDialog(parent)
+ {
+ setupUi(this);
+ filter = f;
+ connect(rf1, SIGNAL(toggled(bool)), SLOT(rf1Toggled(bool)));
+ connect(rf2, SIGNAL(toggled(bool)), SLOT(rf2Toggled(bool)));
+ connect(rf3, SIGNAL(toggled(bool)), SLOT(rf3Toggled(bool)));
+ connect(rf4, SIGNAL(toggled(bool)), SLOT(rf4Toggled(bool)));
+ connect(rf5, SIGNAL(toggled(bool)), SLOT(rf5Toggled(bool)));
+ connect(rf6, SIGNAL(toggled(bool)), SLOT(rf6Toggled(bool)));
+ connect(rf7, SIGNAL(toggled(bool)), SLOT(rf7Toggled(bool)));
+ connect(cb1, SIGNAL(activated(int)), SLOT(cb1Activated(int)));
+ connect(cb2, SIGNAL(activated(int)), SLOT(cb2Activated(int)));
+ connect(cb3, SIGNAL(activated(int)), SLOT(cb3Activated(int)));
+ connect(cb4, SIGNAL(activated(int)), SLOT(cb4Activated(int)));
+ }
+
+//---------------------------------------------------------
+// init
+//---------------------------------------------------------
+
+void FilterGui::init()
+ {
+ int midiType = filter->midiType();
+ rf1->setChecked(midiType & MIDI_FILTER_NOTEON);
+ rf2->setChecked(midiType & MIDI_FILTER_POLYP);
+ rf3->setChecked(midiType & MIDI_FILTER_CTRL);
+ rf4->setChecked(midiType & MIDI_FILTER_PROGRAM);
+ rf5->setChecked(midiType & MIDI_FILTER_AT);
+ rf6->setChecked(midiType & MIDI_FILTER_PITCH);
+ rf7->setChecked(midiType & MIDI_FILTER_SYSEX);
+ cb1->setCurrentIndex(filter->midiCtrl(0) + 1);
+ cb2->setCurrentIndex(filter->midiCtrl(1) + 1);
+ cb3->setCurrentIndex(filter->midiCtrl(2) + 1);
+ cb4->setCurrentIndex(filter->midiCtrl(3) + 1);
+ }
+
+//---------------------------------------------------------
+// cb1Activated
+//---------------------------------------------------------
+
+void FilterGui::cb1Activated(int idx)
+ {
+ filter->setMidiCtrl(0, idx - 1);
+ }
+
+//---------------------------------------------------------
+// cb2Activated
+//---------------------------------------------------------
+
+void FilterGui::cb2Activated(int idx)
+ {
+ filter->setMidiCtrl(1, idx - 1);
+ }
+
+//---------------------------------------------------------
+// cb3Activated
+//---------------------------------------------------------
+
+void FilterGui::cb3Activated(int idx)
+ {
+ filter->setMidiCtrl(2, idx - 1);
+ }
+
+//---------------------------------------------------------
+// cb4Activated
+//---------------------------------------------------------
+
+void FilterGui::cb4Activated(int idx)
+ {
+ filter->setMidiCtrl(3, idx - 1);
+ }
+
+//---------------------------------------------------------
+// rf1Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf1Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf1->isChecked())
+ midiType |= MIDI_FILTER_NOTEON;
+ else
+ midiType &= ~MIDI_FILTER_NOTEON;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf2Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf2Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf2->isChecked())
+ midiType |= MIDI_FILTER_POLYP;
+ else
+ midiType &= ~MIDI_FILTER_POLYP;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf3Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf3Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf3->isChecked())
+ midiType |= MIDI_FILTER_CTRL;
+ else
+ midiType &= ~MIDI_FILTER_CTRL;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf4Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf4Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf4->isChecked())
+ midiType |= MIDI_FILTER_PROGRAM;
+ else
+ midiType &= ~MIDI_FILTER_PROGRAM;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf5Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf5Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf5->isChecked())
+ midiType |= MIDI_FILTER_AT;
+ else
+ midiType &= ~MIDI_FILTER_AT;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf6Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf6Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf1->isChecked())
+ midiType |= MIDI_FILTER_PITCH;
+ else
+ midiType &= ~MIDI_FILTER_PITCH;
+ filter->setMidiType(midiType);
+ }
+
+//---------------------------------------------------------
+// rf7Toggled
+//---------------------------------------------------------
+
+void FilterGui::rf7Toggled(bool)
+ {
+ int midiType = filter->midiType();
+ if (rf7->isChecked())
+ midiType |= MIDI_FILTER_SYSEX;
+ else
+ midiType &= ~MIDI_FILTER_SYSEX;
+ filter->setMidiType(midiType);
+ }