diff --git a/data/presets/X-Pressive/Ambition.xpf b/data/presets/X-Pressive/Ambition.xpf
deleted file mode 100644
index 2d93f7c052f..00000000000
--- a/data/presets/X-Pressive/Ambition.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Baby Violin.xpf b/data/presets/X-Pressive/Baby Violin.xpf
deleted file mode 100644
index 2e887d3d2b5..00000000000
--- a/data/presets/X-Pressive/Baby Violin.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Bad Singer.xpf b/data/presets/X-Pressive/Bad Singer.xpf
deleted file mode 100644
index ca9cfd5a333..00000000000
--- a/data/presets/X-Pressive/Bad Singer.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Cloud Bass.xpf b/data/presets/X-Pressive/Cloud Bass.xpf
deleted file mode 100644
index 4e444f22a90..00000000000
--- a/data/presets/X-Pressive/Cloud Bass.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Creature.xpf b/data/presets/X-Pressive/Creature.xpf
deleted file mode 100644
index b667a9c7f7a..00000000000
--- a/data/presets/X-Pressive/Creature.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Electric Shock.xpf b/data/presets/X-Pressive/Electric Shock.xpf
deleted file mode 100644
index 7dea6fe4ac9..00000000000
--- a/data/presets/X-Pressive/Electric Shock.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Faded Colors.xpf b/data/presets/X-Pressive/Faded Colors.xpf
deleted file mode 100644
index 84a37826a56..00000000000
--- a/data/presets/X-Pressive/Faded Colors.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Fat Flute.xpf b/data/presets/X-Pressive/Fat Flute.xpf
deleted file mode 100644
index 92242114ec5..00000000000
--- a/data/presets/X-Pressive/Fat Flute.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Horn.xpf b/data/presets/X-Pressive/Horn.xpf
deleted file mode 100644
index 09948056960..00000000000
--- a/data/presets/X-Pressive/Horn.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Piano-Gong.xpf b/data/presets/X-Pressive/Piano-Gong.xpf
deleted file mode 100644
index 241f61a550d..00000000000
--- a/data/presets/X-Pressive/Piano-Gong.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Rubber Bass.xpf b/data/presets/X-Pressive/Rubber Bass.xpf
deleted file mode 100644
index 73c3648bafc..00000000000
--- a/data/presets/X-Pressive/Rubber Bass.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Space Echoes.xpf b/data/presets/X-Pressive/Space Echoes.xpf
deleted file mode 100644
index 1d4d2b543b6..00000000000
--- a/data/presets/X-Pressive/Space Echoes.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Speaker Swapper.xpf b/data/presets/X-Pressive/Speaker Swapper.xpf
deleted file mode 100644
index cf80b930468..00000000000
--- a/data/presets/X-Pressive/Speaker Swapper.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Toss.xpf b/data/presets/X-Pressive/Toss.xpf
deleted file mode 100644
index 27a0b3f96b9..00000000000
--- a/data/presets/X-Pressive/Toss.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Untuned Bell.xpf b/data/presets/X-Pressive/Untuned Bell.xpf
deleted file mode 100644
index 74492706359..00000000000
--- a/data/presets/X-Pressive/Untuned Bell.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Vibrato.xpf b/data/presets/X-Pressive/Vibrato.xpf
deleted file mode 100644
index 34795de1194..00000000000
--- a/data/presets/X-Pressive/Vibrato.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/X-Distorted.xpf b/data/presets/X-Pressive/X-Distorted.xpf
deleted file mode 100644
index cbe3742a55f..00000000000
--- a/data/presets/X-Pressive/X-Distorted.xpf
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/data/presets/X-Pressive/Accordion.xpf b/data/presets/Xpressive/Accordion.xpf
similarity index 100%
rename from data/presets/X-Pressive/Accordion.xpf
rename to data/presets/Xpressive/Accordion.xpf
diff --git a/data/presets/Xpressive/Ambition.xpf b/data/presets/Xpressive/Ambition.xpf
new file mode 100644
index 00000000000..dd64489779c
--- /dev/null
+++ b/data/presets/Xpressive/Ambition.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Baby Violin.xpf b/data/presets/Xpressive/Baby Violin.xpf
new file mode 100644
index 00000000000..45e407fc87f
--- /dev/null
+++ b/data/presets/Xpressive/Baby Violin.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Bad Singer.xpf b/data/presets/Xpressive/Bad Singer.xpf
new file mode 100644
index 00000000000..10fe3b30837
--- /dev/null
+++ b/data/presets/Xpressive/Bad Singer.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Cloud Bass.xpf b/data/presets/Xpressive/Cloud Bass.xpf
new file mode 100644
index 00000000000..15bf4188daa
--- /dev/null
+++ b/data/presets/Xpressive/Cloud Bass.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Creature.xpf b/data/presets/Xpressive/Creature.xpf
new file mode 100644
index 00000000000..bee39f224fb
--- /dev/null
+++ b/data/presets/Xpressive/Creature.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/X-Pressive/Dream.xpf b/data/presets/Xpressive/Dream.xpf
similarity index 100%
rename from data/presets/X-Pressive/Dream.xpf
rename to data/presets/Xpressive/Dream.xpf
diff --git a/data/presets/Xpressive/Electric Shock.xpf b/data/presets/Xpressive/Electric Shock.xpf
new file mode 100644
index 00000000000..3f9aef10429
--- /dev/null
+++ b/data/presets/Xpressive/Electric Shock.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Faded Colors - notes test.xpf b/data/presets/Xpressive/Faded Colors - notes test.xpf
new file mode 100644
index 00000000000..de4938f4dc4
--- /dev/null
+++ b/data/presets/Xpressive/Faded Colors - notes test.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Faded Colors.xpf b/data/presets/Xpressive/Faded Colors.xpf
new file mode 100644
index 00000000000..a514ee43837
--- /dev/null
+++ b/data/presets/Xpressive/Faded Colors.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Fat Flute.xpf b/data/presets/Xpressive/Fat Flute.xpf
new file mode 100644
index 00000000000..76d9e2f84d9
--- /dev/null
+++ b/data/presets/Xpressive/Fat Flute.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/X-Pressive/Frog.xpf b/data/presets/Xpressive/Frog.xpf
similarity index 100%
rename from data/presets/X-Pressive/Frog.xpf
rename to data/presets/Xpressive/Frog.xpf
diff --git a/data/presets/Xpressive/Horn.xpf b/data/presets/Xpressive/Horn.xpf
new file mode 100644
index 00000000000..d44b332b2ab
--- /dev/null
+++ b/data/presets/Xpressive/Horn.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/X-Pressive/Low Battery.xpf b/data/presets/Xpressive/Low Battery.xpf
similarity index 64%
rename from data/presets/X-Pressive/Low Battery.xpf
rename to data/presets/Xpressive/Low Battery.xpf
index c0e648ac908..78f1fc78f72 100644
--- a/data/presets/X-Pressive/Low Battery.xpf
+++ b/data/presets/Xpressive/Low Battery.xpf
@@ -1,20 +1,21 @@
-
+
-
-
+
+
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
+
+
diff --git a/data/presets/Xpressive/Piano-Gong.xpf b/data/presets/Xpressive/Piano-Gong.xpf
new file mode 100644
index 00000000000..a8244b7994f
--- /dev/null
+++ b/data/presets/Xpressive/Piano-Gong.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Rubber Bass.xpf b/data/presets/Xpressive/Rubber Bass.xpf
new file mode 100644
index 00000000000..4b1409e224f
--- /dev/null
+++ b/data/presets/Xpressive/Rubber Bass.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Space Echoes.xpf b/data/presets/Xpressive/Space Echoes.xpf
new file mode 100644
index 00000000000..be6de3653b1
--- /dev/null
+++ b/data/presets/Xpressive/Space Echoes.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Speaker Swapper.xpf b/data/presets/Xpressive/Speaker Swapper.xpf
new file mode 100644
index 00000000000..d4da5aa2f87
--- /dev/null
+++ b/data/presets/Xpressive/Speaker Swapper.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Toss.xpf b/data/presets/Xpressive/Toss.xpf
new file mode 100644
index 00000000000..387e78fd92f
--- /dev/null
+++ b/data/presets/Xpressive/Toss.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Untuned Bell.xpf b/data/presets/Xpressive/Untuned Bell.xpf
new file mode 100644
index 00000000000..5dd61ec18d1
--- /dev/null
+++ b/data/presets/Xpressive/Untuned Bell.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/Vibrato.xpf b/data/presets/Xpressive/Vibrato.xpf
new file mode 100644
index 00000000000..a7dda25e9bb
--- /dev/null
+++ b/data/presets/Xpressive/Vibrato.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/presets/Xpressive/X-Distorted.xpf b/data/presets/Xpressive/X-Distorted.xpf
new file mode 100644
index 00000000000..b42495d759d
--- /dev/null
+++ b/data/presets/Xpressive/X-Distorted.xpf
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/plugins/Xpressive/Xpressive.cpp b/plugins/Xpressive/Xpressive.cpp
index 018319c823f..a80a0ae4152 100644
--- a/plugins/Xpressive/Xpressive.cpp
+++ b/plugins/Xpressive/Xpressive.cpp
@@ -53,9 +53,9 @@
extern "C" {
Plugin::Descriptor PLUGIN_EXPORT xpressive_plugin_descriptor = { STRINGIFY(
- PLUGIN_NAME), "X-Pressive", QT_TRANSLATE_NOOP("pluginBrowser",
- "Mathematical expression parser"), "Orr Dvori", 0x0100,
- Plugin::Instrument, new PluginPixmapLoader("logo"), NULL, NULL };
+ PLUGIN_NAME), "Xpressive", QT_TRANSLATE_NOOP("pluginBrowser",
+ "Mathematical expression parser"), "Orr Dvori", 0x0100,
+ Plugin::Instrument, new PluginPixmapLoader("logo"), NULL, NULL };
}
@@ -257,7 +257,6 @@ class XpressiveKnob: public Knob {
setCenterPointY(14.5);
setInnerRadius(4);
setOuterRadius(9);
- setOuterColor(QColor(0x519fff));
setTotalAngle(300.0);
setLineWidth(3);
}
@@ -277,14 +276,18 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
InstrumentViewFixedSize(_instrument, _parent)
{
- const int COL_KNOBS = 194;
- const int ROW_KNOBSA1 = 26;
- const int ROW_KNOBSA2 = 26 + 32;
- const int ROW_KNOBSA3 = 26 + 64;
- const int ROW_KNOBSP1 = 126;
- const int ROW_KNOBSP2 = 126 + 32;
- const int ROW_KNOBREL = 126 + 64;
- const int ROW_WAVEBTN = 234;
+ const int COL_KNOBS = 191;
+ const int BASE_START = 2;
+ const int ROW_KNOBSA1 = BASE_START;
+ const int ROW_KNOBSA2 = BASE_START + 32;
+ const int ROW_KNOBSA3 = BASE_START + 64;
+ const int ROW_KNOBSP1 = BASE_START + 100;
+ const int ROW_KNOBSP2 = BASE_START + 100 + 32;
+ const int ROW_KNOBREL = BASE_START + 100 + 64;
+ const int ROW_BTN = BASE_START + 85;
+ const int ROW_WAVEBTN = BASE_START + 233 - 26;
+ const int EXPR_TEXT_Y = BASE_START + 102;
+ const int EXPR_TEXT_H = 90;
setAutoFillBackground(true);
QPalette pal;
@@ -293,7 +296,7 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
setPalette(pal);
m_graph = new Graph(this, Graph::LinearStyle, 180, 81);
- m_graph->move(9, 27);
+ m_graph->move(3, BASE_START + 1);
m_graph->setAutoFillBackground(true);
m_graph->setGraphColor(QColor(255, 255, 255));
m_graph->setEnabled(false);
@@ -313,37 +316,37 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
PixmapButton * m_helpBtn;
m_w1Btn = new PixmapButton(this, NULL);
- m_w1Btn->move(9, 111);
+ m_w1Btn->move(3, ROW_BTN);
m_w1Btn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("w1_active"));
m_w1Btn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("w1_inactive"));
ToolTip::add(m_w1Btn, tr("Select oscillator W1"));
m_w2Btn = new PixmapButton(this, NULL);
- m_w2Btn->move(32, 111);
+ m_w2Btn->move(26, ROW_BTN);
m_w2Btn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("w2_active"));
m_w2Btn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("w2_inactive"));
ToolTip::add(m_w2Btn, tr("Select oscillator W2"));
m_w3Btn = new PixmapButton(this, NULL);
- m_w3Btn->move(55, 111);
+ m_w3Btn->move(49, ROW_BTN);
m_w3Btn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("w3_active"));
m_w3Btn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("w3_inactive"));
ToolTip::add(m_w3Btn, tr("Select oscillator W3"));
m_o1Btn = new PixmapButton(this, NULL);
- m_o1Btn->move(85, 111);
+ m_o1Btn->move(79, ROW_BTN);
m_o1Btn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("o1_active"));
m_o1Btn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("o1_inactive"));
ToolTip::add(m_o1Btn, tr("Select output O1"));
m_o2Btn = new PixmapButton(this, NULL);
- m_o2Btn->move(107, 111);
+ m_o2Btn->move(101, ROW_BTN);
m_o2Btn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("o2_active"));
m_o2Btn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("o2_inactive"));
ToolTip::add(m_o2Btn, tr("Select output O2"));
m_helpBtn = new PixmapButton(this, NULL);
- m_helpBtn->move(139, 111);
+ m_helpBtn->move(133, ROW_BTN);
m_helpBtn->setActiveGraphic(PLUGIN_NAME::getIconPixmap("help_active"));
m_helpBtn->setInactiveGraphic(PLUGIN_NAME::getIconPixmap("help_inactive"));
ToolTip::add(m_helpBtn, tr("Open help window"));
@@ -359,38 +362,38 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
m_selectedGraphGroup->setModel(&e->selectedGraph());
m_sinWaveBtn = new PixmapButton(this, tr("Sine wave"));
- m_sinWaveBtn->move(10, ROW_WAVEBTN);
+ m_sinWaveBtn->move(4, ROW_WAVEBTN);
m_sinWaveBtn->setActiveGraphic(embed::getIconPixmap("sin_wave_active"));
m_sinWaveBtn->setInactiveGraphic(embed::getIconPixmap("sin_wave_inactive"));
ToolTip::add(m_sinWaveBtn, tr("Sine wave"));
m_moogWaveBtn = new PixmapButton(this, tr("Moog-saw wave"));
- m_moogWaveBtn->move(10, ROW_WAVEBTN-14);
+ m_moogWaveBtn->move(4, ROW_WAVEBTN-14);
m_moogWaveBtn->setActiveGraphic(
embed::getIconPixmap( "moog_saw_wave_active" ) );
m_moogWaveBtn->setInactiveGraphic(embed::getIconPixmap("moog_saw_wave_inactive"));
ToolTip::add(m_moogWaveBtn, tr("Moog-saw wave"));
m_expWaveBtn = new PixmapButton(this, tr("Exponential wave"));
- m_expWaveBtn->move(10 +14, ROW_WAVEBTN-14);
+ m_expWaveBtn->move(4 +14, ROW_WAVEBTN-14);
m_expWaveBtn->setActiveGraphic(embed::getIconPixmap( "exp_wave_active" ) );
m_expWaveBtn->setInactiveGraphic(embed::getIconPixmap( "exp_wave_inactive" ) );
ToolTip::add(m_expWaveBtn, tr("Exponential wave"));
m_sawWaveBtn = new PixmapButton(this, tr("Saw wave"));
- m_sawWaveBtn->move(10 + 14 * 2, ROW_WAVEBTN-14);
+ m_sawWaveBtn->move(4 + 14 * 2, ROW_WAVEBTN-14);
m_sawWaveBtn->setActiveGraphic(embed::getIconPixmap("saw_wave_active"));
m_sawWaveBtn->setInactiveGraphic(embed::getIconPixmap("saw_wave_inactive"));
ToolTip::add(m_sawWaveBtn, tr("Saw wave"));
m_usrWaveBtn = new PixmapButton(this, tr("User-defined wave"));
- m_usrWaveBtn->move(10 + 14 * 3, ROW_WAVEBTN-14);
+ m_usrWaveBtn->move(4 + 14 * 3, ROW_WAVEBTN-14);
m_usrWaveBtn->setActiveGraphic(embed::getIconPixmap("usr_wave_active"));
m_usrWaveBtn->setInactiveGraphic(embed::getIconPixmap("usr_wave_inactive"));
ToolTip::add(m_usrWaveBtn, tr("User-defined wave"));
m_triangleWaveBtn = new PixmapButton(this, tr("Triangle wave"));
- m_triangleWaveBtn->move(10 + 14, ROW_WAVEBTN);
+ m_triangleWaveBtn->move(4 + 14, ROW_WAVEBTN);
m_triangleWaveBtn->setActiveGraphic(
embed::getIconPixmap("triangle_wave_active"));
m_triangleWaveBtn->setInactiveGraphic(
@@ -398,14 +401,14 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
ToolTip::add(m_triangleWaveBtn, tr("Triangle wave"));
m_sqrWaveBtn = new PixmapButton(this, tr("Square wave"));
- m_sqrWaveBtn->move(10 + 14 * 2, ROW_WAVEBTN);
+ m_sqrWaveBtn->move(4 + 14 * 2, ROW_WAVEBTN);
m_sqrWaveBtn->setActiveGraphic(embed::getIconPixmap("square_wave_active"));
m_sqrWaveBtn->setInactiveGraphic(
embed::getIconPixmap("square_wave_inactive"));
ToolTip::add(m_sqrWaveBtn, tr("Square wave"));
m_whiteNoiseWaveBtn = new PixmapButton(this, tr("White noise"));
- m_whiteNoiseWaveBtn->move(10 + 14 * 3, ROW_WAVEBTN);
+ m_whiteNoiseWaveBtn->move(4 + 14 * 3, ROW_WAVEBTN);
m_whiteNoiseWaveBtn->setActiveGraphic(
embed::getIconPixmap("white_noise_wave_active"));
m_whiteNoiseWaveBtn->setInactiveGraphic(
@@ -415,16 +418,16 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
m_waveInterpolate = new LedCheckBox("Interpolate", this, tr("WaveInterpolate"),
LedCheckBox::Green);
- m_waveInterpolate->move(120, 230);
+ m_waveInterpolate->move(2, 230);
m_expressionValidToggle = new LedCheckBox("", this, tr("ExpressionValid"),
LedCheckBox::Red);
- m_expressionValidToggle->move(174, 216);
+ m_expressionValidToggle->move(168, EXPR_TEXT_Y+EXPR_TEXT_H-2);
m_expressionValidToggle->setEnabled( false );
m_expressionEditor = new QPlainTextEdit(this);
- m_expressionEditor->move(9, 128);
- m_expressionEditor->resize(180, 90);
+ m_expressionEditor->move(3, EXPR_TEXT_Y);
+ m_expressionEditor->resize(180, EXPR_TEXT_H);
m_generalPurposeKnob[0] = new XpressiveKnob(this,"A1");
m_generalPurposeKnob[0]->setHintText(tr("General purpose 1:"), "");
@@ -452,9 +455,16 @@ XpressiveView::XpressiveView(Instrument * _instrument, QWidget * _parent) :
- m_smoothKnob=new Knob(this,"Smoothness");
+ m_smoothKnob=new Knob(knobStyled, this, "Smoothness");
+ m_smoothKnob->setFixedSize(25, 25);
+ m_smoothKnob->setCenterPointX(12.5);
+ m_smoothKnob->setCenterPointY(12.5);
+ m_smoothKnob->setInnerRadius(4);
+ m_smoothKnob->setOuterRadius(9);
+ m_smoothKnob->setTotalAngle(280.0);
+ m_smoothKnob->setLineWidth(3);
m_smoothKnob->setHintText(tr("Smoothness"), "");
- m_smoothKnob->move(80, 220);
+ m_smoothKnob->move(66, EXPR_TEXT_Y + EXPR_TEXT_H + 4);
connect(m_generalPurposeKnob[0], SIGNAL(sliderMoved(float)), this,
SLOT(expressionChanged()));
@@ -748,7 +758,7 @@ void XpressiveView::updateLayout() {
void XpressiveView::sinWaveClicked() {
if (m_output_expr)
- m_expressionEditor->appendPlainText("sinew(t*f)");
+ m_expressionEditor->appendPlainText("sinew(integrate(f))");
else
m_expressionEditor->appendPlainText("sinew(t)");
Engine::getSong()->setModified();
@@ -756,7 +766,7 @@ void XpressiveView::sinWaveClicked() {
void XpressiveView::triangleWaveClicked() {
if (m_output_expr)
- m_expressionEditor->appendPlainText("trianglew(t*f)");
+ m_expressionEditor->appendPlainText("trianglew(integrate(f))");
else
m_expressionEditor->appendPlainText("trianglew(t)");
Engine::getSong()->setModified();
@@ -764,7 +774,7 @@ void XpressiveView::triangleWaveClicked() {
void XpressiveView::sawWaveClicked() {
if (m_output_expr)
- m_expressionEditor->appendPlainText("saww(t*f)");
+ m_expressionEditor->appendPlainText("saww(integrate(f))");
else
m_expressionEditor->appendPlainText("saww(t)");
Engine::getSong()->setModified();
@@ -772,7 +782,7 @@ void XpressiveView::sawWaveClicked() {
void XpressiveView::sqrWaveClicked() {
if (m_output_expr)
- m_expressionEditor->appendPlainText("squarew(t*f)");
+ m_expressionEditor->appendPlainText("squarew(integrate(f))");
else
m_expressionEditor->appendPlainText("squarew(t)");
Engine::getSong()->setModified();
@@ -786,7 +796,7 @@ void XpressiveView::noiseWaveClicked() {
void XpressiveView::moogSawWaveClicked()
{
if (m_output_expr)
- m_expressionEditor->appendPlainText("moogsaww(t*f)");
+ m_expressionEditor->appendPlainText("moogsaww(integrate(f))");
else
m_expressionEditor->appendPlainText("moogsaww(t)");
Engine::getSong()->setModified();
@@ -794,7 +804,7 @@ void XpressiveView::moogSawWaveClicked()
void XpressiveView::expWaveClicked()
{
if (m_output_expr)
- m_expressionEditor->appendPlainText("expw(t*f)");
+ m_expressionEditor->appendPlainText("expw(integrate(f))");
else
m_expressionEditor->appendPlainText("expw(t)");
Engine::getSong()->setModified();
@@ -861,7 +871,7 @@ QString XpressiveHelpView::s_helpText=
XpressiveHelpView::XpressiveHelpView():QTextEdit(s_helpText)
{
- setWindowTitle ( "X-Pressive Help" );
+ setWindowTitle ( "Xpressive Help" );
setTextInteractionFlags ( Qt::TextSelectableByKeyboard | Qt::TextSelectableByMouse );
gui->mainWindow()->addWindowedWidget( this );
parentWidget()->setAttribute( Qt::WA_DeleteOnClose, false );
diff --git a/plugins/Xpressive/Xpressive.svg b/plugins/Xpressive/Xpressive.svg
new file mode 100644
index 00000000000..ef3029c0d90
--- /dev/null
+++ b/plugins/Xpressive/Xpressive.svg
@@ -0,0 +1,130 @@
+
+
+
+
diff --git a/plugins/Xpressive/Xpressive_logo.svg b/plugins/Xpressive/Xpressive_logo.svg
new file mode 100644
index 00000000000..fca1f0d981b
--- /dev/null
+++ b/plugins/Xpressive/Xpressive_logo.svg
@@ -0,0 +1,106 @@
+
+
+
+
diff --git a/plugins/Xpressive/artwork.png b/plugins/Xpressive/artwork.png
index d5b39acee2e..1f4e35ad51e 100644
Binary files a/plugins/Xpressive/artwork.png and b/plugins/Xpressive/artwork.png differ
diff --git a/plugins/Xpressive/help_active.png b/plugins/Xpressive/help_active.png
index 4e991ad54af..8d8b49d4327 100644
Binary files a/plugins/Xpressive/help_active.png and b/plugins/Xpressive/help_active.png differ
diff --git a/plugins/Xpressive/help_inactive.png b/plugins/Xpressive/help_inactive.png
index 4b77af24fb3..d08f6d9a7b5 100644
Binary files a/plugins/Xpressive/help_inactive.png and b/plugins/Xpressive/help_inactive.png differ
diff --git a/plugins/Xpressive/logo.png b/plugins/Xpressive/logo.png
index 68b613176d6..555c3f13e68 100644
Binary files a/plugins/Xpressive/logo.png and b/plugins/Xpressive/logo.png differ
diff --git a/plugins/Xpressive/o1_active.png b/plugins/Xpressive/o1_active.png
index 6370769dd27..8e31a8322c0 100644
Binary files a/plugins/Xpressive/o1_active.png and b/plugins/Xpressive/o1_active.png differ
diff --git a/plugins/Xpressive/o1_inactive.png b/plugins/Xpressive/o1_inactive.png
index 0fd4f8b2989..7a6b603e3e7 100644
Binary files a/plugins/Xpressive/o1_inactive.png and b/plugins/Xpressive/o1_inactive.png differ
diff --git a/plugins/Xpressive/o2_active.png b/plugins/Xpressive/o2_active.png
index 51897412d42..4e3b5f214d7 100644
Binary files a/plugins/Xpressive/o2_active.png and b/plugins/Xpressive/o2_active.png differ
diff --git a/plugins/Xpressive/o2_inactive.png b/plugins/Xpressive/o2_inactive.png
index 20158d72575..35851d5533f 100644
Binary files a/plugins/Xpressive/o2_inactive.png and b/plugins/Xpressive/o2_inactive.png differ
diff --git a/plugins/Xpressive/w1_active.png b/plugins/Xpressive/w1_active.png
index 49a3a2b6ec8..68d8e9ae088 100644
Binary files a/plugins/Xpressive/w1_active.png and b/plugins/Xpressive/w1_active.png differ
diff --git a/plugins/Xpressive/w1_inactive.png b/plugins/Xpressive/w1_inactive.png
index 266e4206fa7..7159b49799d 100644
Binary files a/plugins/Xpressive/w1_inactive.png and b/plugins/Xpressive/w1_inactive.png differ
diff --git a/plugins/Xpressive/w2_active.png b/plugins/Xpressive/w2_active.png
index cd4729949e1..17d7b53d935 100644
Binary files a/plugins/Xpressive/w2_active.png and b/plugins/Xpressive/w2_active.png differ
diff --git a/plugins/Xpressive/w2_inactive.png b/plugins/Xpressive/w2_inactive.png
index 8d54929da7b..412482bb0e4 100644
Binary files a/plugins/Xpressive/w2_inactive.png and b/plugins/Xpressive/w2_inactive.png differ
diff --git a/plugins/Xpressive/w3_active.png b/plugins/Xpressive/w3_active.png
index 9e4facb2cfa..579b997dd69 100644
Binary files a/plugins/Xpressive/w3_active.png and b/plugins/Xpressive/w3_active.png differ
diff --git a/plugins/Xpressive/w3_inactive.png b/plugins/Xpressive/w3_inactive.png
index e5b0bc7d9e1..d45d8b497ab 100644
Binary files a/plugins/Xpressive/w3_inactive.png and b/plugins/Xpressive/w3_inactive.png differ
diff --git a/plugins/Xpressive/wavegraph.png b/plugins/Xpressive/wavegraph.png
index 9d58e8fe732..ea7bc3761f1 100644
Binary files a/plugins/Xpressive/wavegraph.png and b/plugins/Xpressive/wavegraph.png differ