+ Added all effect to the GUI list.

This commit is contained in:
Nagy Tam?s (T-bond) 2020-04-04 21:34:17 +02:00 committed by Adam Honse
parent 37241ee6f2
commit 0568fc5ed2
3 changed files with 102 additions and 55 deletions

View file

@ -47,43 +47,43 @@ enum EFFECT
DISABLE,
STATIC,
BREATHING,
Flashing,
DoubleFlashing,
Lighting,
MSIMarquee,
Meteor,
WaterDrop,
MSIRainbow,
FLASHING,
DOUBLE_FLASHING,
LIGHTNING,
MSI_MARQUEE,
METEOR,
WATER_DROP,
MSI_RAINBOW,
POP,
RAP,
JAZZ,
Play,
Movie,
ColorRing,
Planetary,
DoubleMeteor,
Energy,
Blink,
Clock,
ColorPulse,
ColorShift,
ColorWave,
Marquee,
Rainbow,
RainbowWave,
Visor,
JRainbow,
RainbowFlahing,
RainbowDoubleFlashing,
Random,
FANControl,
Disable2,
ColorRingFlashing,
ColorRingDoubleFlashing,
Stack,
CorsairiQUE,
Fire,
Lava
PLAY,
MOVIE,
COLOR_RING,
PLANETARY,
DOUBLE_METEOR,
ENERGY,
BLINK,
CLOCK,
COLOR_PULSE,
COLOR_SHIFT,
COLOR_WAVE,
MARQUEE,
RAINBOW,
RAINBOW_WAVE,
VISOR,
JRAINBOW,
RAINBOW_FLASHING,
RAINBOW_DOUBLE_FLASHING,
RANDOM,
FAN_CONTROL,
DISABLE_2,
COLOR_RING_FLASHING,
COLOR_RING_DOUBLE_FLASHING,
STACK,
CORSAIR_QUE,
FIRE,
LAVA
};
enum SPEED

View file

@ -129,28 +129,49 @@ void RGBController_MSIMysticLight::UpdateMode()
void RGBController_MSIMysticLight::SetupModes()
{
mode Off;
Off.name = "Off";
Off.value = EFFECT::DISABLE;
Off.color_mode = MODE_COLORS_PER_LED; // Only needed to show the Zones and Leds on the GUI
modes.push_back(Off);
constexpr unsigned int RANDOM_ONLY = MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_RANDOM_COLOR;
constexpr unsigned int COMMON = RANDOM_ONLY | MODE_FLAG_HAS_PER_LED_COLOR;
mode Static;
Static.name = "Static";
Static.value = EFFECT::STATIC;
Static.flags = MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_HAS_PER_LED_COLOR;
Static.color_mode = MODE_COLORS_PER_LED;
modes.push_back(Static);
mode Breathing;
Breathing.name = "Breathing";
Breathing.value = EFFECT::BREATHING;
Breathing.flags = MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_RANDOM_COLOR;
Breathing.color_mode = MODE_COLORS_PER_LED;
Breathing.speed = SPEED::MEDIUM;
Breathing.speed_max = SPEED::HIGH;
Breathing.speed_min = SPEED::LOW;
modes.push_back(Breathing);
SetupMode("Off", DISABLE, 0);
SetupMode("Static", STATIC, MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_HAS_PER_LED_COLOR);
SetupMode("Breathing", BREATHING, COMMON);
SetupMode("Flashing", FLASHING, COMMON);
SetupMode("Double flashing", DOUBLE_FLASHING, COMMON);
SetupMode("Lightning", LIGHTNING, COMMON);
SetupMode("MSI Marquee", MSI_MARQUEE, COMMON);
SetupMode("Meteor", METEOR, COMMON);
SetupMode("Water drop", WATER_DROP, COMMON);
SetupMode("MSI Rainbow", MSI_RAINBOW, RANDOM_ONLY);
SetupMode("Pop", POP, COMMON);
SetupMode("Rap", RAP, COMMON);
SetupMode("Jazz", JAZZ, COMMON);
SetupMode("Play", PLAY, COMMON);
SetupMode("Movie", MOVIE, COMMON);
SetupMode("Color ring", COLOR_RING, COMMON);
SetupMode("Planetary", PLANETARY, COMMON);
SetupMode("Double meteor", DOUBLE_METEOR, COMMON);
SetupMode("Energy", ENERGY, COMMON);
SetupMode("Blink", BLINK, COMMON);
SetupMode("Clock", CLOCK, COMMON);
SetupMode("Color pulse", COLOR_PULSE, COMMON);
SetupMode("Color shift", COLOR_SHIFT, COMMON);
SetupMode("Color wave", COLOR_WAVE, COMMON);
SetupMode("Marquee", MARQUEE, COMMON);
SetupMode("Rainbow", RAINBOW, COMMON);
SetupMode("Rainbow wave", RAINBOW_WAVE, COMMON);
SetupMode("Visor", VISOR, COMMON);
SetupMode("JRainbow", JRAINBOW, COMMON);
SetupMode("Rainbow flashing", RAINBOW_FLASHING, COMMON);
SetupMode("Rainbow double flashing", RAINBOW_DOUBLE_FLASHING, COMMON);
SetupMode("Random", RANDOM, COMMON);
SetupMode("Fan control", FAN_CONTROL, COMMON);
SetupMode("Off 2", DISABLE_2, COMMON);
SetupMode("Color ring flashing", COLOR_RING_FLASHING, COMMON);
SetupMode("Color ring double flashing", COLOR_RING_DOUBLE_FLASHING, COMMON);
SetupMode("Stack", STACK, COMMON);
SetupMode("Corsair Que", CORSAIR_QUE, COMMON);
SetupMode("Fire", FIRE, COMMON);
SetupMode("Lava", LAVA, COMMON);
}
void RGBController_MSIMysticLight::UpdateLed(int zone, int led)
@ -170,4 +191,29 @@ void RGBController_MSIMysticLight::UpdateLed(int zone, int led)
ZONE RGBController_MSIMysticLight::ZoneFromPos(int zone)
{
return led_zones[zone].value;
}
void RGBController_MSIMysticLight::SetupMode(const char *name, EFFECT mod, unsigned int flags)
{
mode Mode;
Mode.name = name;
Mode.value = mod;
Mode.flags = flags;
if(flags & MODE_FLAG_HAS_PER_LED_COLOR)
{
Mode.color_mode = MODE_COLORS_PER_LED;
}
else
{
Mode.color_mode = MODE_COLORS_RANDOM;
}
if(flags & MODE_FLAG_HAS_SPEED)
{
Mode.speed = SPEED::MEDIUM;
Mode.speed_max = SPEED::HIGH;
Mode.speed_min = SPEED::LOW;
}
modes.push_back(Mode);
}

View file

@ -41,6 +41,7 @@ private:
void SetupModes();
void UpdateLed(int zone, int led);
ZONE ZoneFromPos(int zone);
void SetupMode(const char *name, EFFECT mode, unsigned int flags);
MSIMysticLightController* controller;
};