maj bluetooth compatible webapp
This commit is contained in:
1 parent
3757975e51
commit
e94499ba1e
22 files changed
+68217
-67436
No files matched your search
@@ -16,6 +16,8 @@
|
||||
#include <touchgfx/widgets/TextAreaWithWildcard.hpp>
|
||||
#include <touchgfx/widgets/ToggleButton.hpp>
|
||||
#include <texts/TextKeysAndLanguages.hpp>
|
||||
#include <audio_effects.h>
|
||||
#include <string.h>
|
||||
|
||||
namespace ui
|
||||
{
|
||||
@@ -144,6 +146,44 @@ inline void layoutParamRow(touchgfx::TextArea& label, touchgfx::Slider& slider,
|
||||
slider.setXY(184, y); /* curseur 456x52 */
|
||||
value.init(touchgfx::TypedText(T_VALUE_M_LEFT), accentColor, 656, y + 10, 136, 34);
|
||||
}
|
||||
|
||||
/* Detecte qu'un autre acteur que l'ecran (controle a distance BLE) a modifie les parametres
|
||||
* d'effets. snapshot() memorise l'etat affiche ; changed() compare tous les PERIOD ticks IHM
|
||||
* (~100 ms a 60 Hz) et renvoie true une fois par changement : l'ecran relit alors les parametres. */
|
||||
class ParamsWatcher
|
||||
{
|
||||
public:
|
||||
ParamsWatcher() : ticks(0)
|
||||
{
|
||||
memset(&last, 0, sizeof(last));
|
||||
}
|
||||
|
||||
void snapshot()
|
||||
{
|
||||
last = *AudioEffects_GetParams();
|
||||
ticks = 0;
|
||||
}
|
||||
|
||||
bool changed()
|
||||
{
|
||||
if (++ticks < PERIOD)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
ticks = 0;
|
||||
if (memcmp(&last, AudioEffects_GetParams(), sizeof(last)) == 0)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
snapshot();
|
||||
return true;
|
||||
}
|
||||
|
||||
private:
|
||||
static const uint8_t PERIOD = 6;
|
||||
AudioEffectsParams last;
|
||||
uint8_t ticks;
|
||||
};
|
||||
} // namespace ui
|
||||
|
||||
#endif // UITHEME_HPP
|
||||
@@ -12,12 +12,16 @@ public:
|
||||
virtual ~EchoView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void sliderDelaiChanged(int value);
|
||||
virtual void sliderFeedbackChanged(int value);
|
||||
virtual void sliderMixChanged(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[3];
|
||||
};
|
||||
|
||||
@@ -12,6 +12,7 @@ public:
|
||||
virtual ~EqualizerView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void sliderBand1Changed(int value);
|
||||
@@ -25,6 +26,9 @@ public:
|
||||
virtual void sliderBand9Changed(int value);
|
||||
virtual void sliderBand10Changed(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[10];
|
||||
touchgfx::Box zeroDbLine;
|
||||
|
||||
@@ -12,6 +12,7 @@ public:
|
||||
virtual ~OctaverView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void slider1Clicked(int value);
|
||||
@@ -20,6 +21,9 @@ public:
|
||||
virtual void slider4Clicked(int value);
|
||||
virtual void slider5Clicked(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[5];
|
||||
|
||||
|
||||
@@ -12,12 +12,16 @@ public:
|
||||
virtual ~OverdriveView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void sliderDriveChanged(int value);
|
||||
virtual void sliderToneChanged(int value);
|
||||
virtual void sliderLevelChanged(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[3];
|
||||
};
|
||||
|
||||
@@ -33,6 +33,9 @@ protected:
|
||||
};
|
||||
|
||||
void onCardOpen(const EffectCard& card);
|
||||
/* Relit marche/arret, volume et etat des cartes (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
void setLooperState(LooperState state);
|
||||
|
||||
/* Buffer du CanvasWidgetRenderer (voyant du looper), propre a cet ecran comme
|
||||
|
||||
@@ -12,12 +12,16 @@ public:
|
||||
virtual ~ReverbView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void sliderTailleChanged(int value);
|
||||
virtual void sliderAmortiChanged(int value);
|
||||
virtual void sliderMixChanged(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[3];
|
||||
};
|
||||
|
||||
@@ -12,11 +12,15 @@ public:
|
||||
virtual ~SaturationView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
virtual void handleTickEvent();
|
||||
|
||||
virtual void toggleClicked();
|
||||
virtual void sliderDriveClicked(int value);
|
||||
virtual void sliderLevelClicked(int value);
|
||||
protected:
|
||||
/* Relit les parametres d'effets dans les widgets (setupScreen + changements distants) */
|
||||
void syncFromParams();
|
||||
ui::ParamsWatcher watcher;
|
||||
ui::Header header;
|
||||
ui::ValueText values[2];
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user