Ich habe mal das Handling der Tasten für die 5 Tastenversion verändert.
Die Funktion der Tasten ist jetzt wie folgt.
3 Tasten Version -> unverändert
5 Tastenversion:
Play-Pause -> unverändert
Wenn Wiedergabe läuft:
Vol Tasten -> shortpress - schrittweises Ändern der Lautstärke
Vol Tasten -> longpress - Ansteigendes bzw abfallendes Ändern der Lautstärke
Vor/Zurücktasten -> shortpress 1 Titel vor bzw zurück.
Vor/Zurücktasten ->longtpress mehrere Titel vor bzw zurück, abhängig von Länge des Tastendrucks.
Wenn Wiedergabe nicht läuft, werden die shortcuts wie gewohnt aufgerufen.
Wenn die Tasten über das adminmenü getauscht wurden , werden auch die Tastenfunktionen entsprechend vertauscht.
Hier der code
// *************** Vol + Taste *************************************************
#ifdef LED_SR_Switch
if (upButton.pressedFor(LONG_PRESS) && lsrSwitch == false)
#endif
#ifndef LED_SR_Switch
if (upButton.pressedFor(LONG_PRESS)) // Wenn Taste lange gedrückt
#endif
{
if (isPlaying()) // wenn Wiedergabe läuft
{
if (!mySettings.invertVolumeButtons) // wenn Funktion der Vol-Tasten nicht getauscht
{
longPressVol = true; // VolÄnderung durch longPress 3 und 5 Tastenmodus
volumeUpButton(); // Lauter Taste
}
else // wenn Funktion der Vol-Tasten getauscht
{
nextButton(); // weiter Taste longpress im 3 Tastenmodus
}
}
else // wenn keine Wiedergabe läuft
{
playShortCut(1); // Spiele Shortcut 1
}
ignoreUpButton = true; // LauterTaste übergehen
//#endif // DreiTasten
} // Ende longPress
else if (upButton.wasReleased()) // wenn Taste nur kurz gedrückt wurde (shortpress)
{
if (!ignoreUpButton) // Wenn Taste gelesen werden soll
{
if (!mySettings.invertVolumeButtons) // wenn Funktion der Vol Tasten nicht getauscht
{
#ifndef FIVEBUTTONS
nextButton(); // weiter Taste im 3 Tastenmodus durch kurzen Tastendruck
#endif
#ifdef FIVEBUTTONS
volumeUpButton(); // Lauter Taste
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
#endif
}
else // wenn Funktion der Vol Tasten getauscht
{
#ifndef FIVEBUTTONS
volumeUpButton(); // Lauter Taste im 3 Tasenmodus
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
#endif
#ifdef FIVEBUTTONS
nextButton(); // weiter Taste im 5 Tastenmodus durch kurzen Tastendruck
#endif
}
}
ignoreUpButton = false; // Taste wieder auswerten
} // ende shortpress
// *********** Ende Vol + Taste ********************************************
// *************** Vol - Taste *********************************************
#ifdef LED_SR_Switch
if (downButton.pressedFor(LONG_PRESS) && lsrSwitch == false)
#endif
#ifndef LED_SR_Switch
if (downButton.pressedFor(LONG_PRESS))
#endif
{
if (isPlaying()) // Bei laufender Wiedergabe
{
if (!mySettings.invertVolumeButtons) // wenn Funktion der Vol-Tasten nicht getauscht
{
longPressVol = true; // VolÄnderung durch longPress 3 und 5 Tastenmodus
volumeDownButton(); // Leisertaste
}
else // wenn Funktion der Vol-Tasten getauscht
{
//#ifndef FIVEBUTTONS
previousButton(); // Taste Track zurück 3 Tastenmodus durch longpress
// #endif
}
}
else // wenn keine Wiedergabe läuft
{
playShortCut(2); // Shortcut spielen Next-Taste
}
ignoreDownButton = true; // LeiserTaste übergehen
//#endif // ende Dreitasten
} // ende longpress
else if (downButton.wasReleased()) // Wenn Taste betätigt wurde (shortpress)
{
if (!ignoreDownButton) // Wenn Taste ausgewertet werden soll
{
if (!mySettings.invertVolumeButtons) // Wenn Funktion der Vol Tasten nicht getauscht
{
#ifndef FIVEBUTTONS
previousButton(); // Zurück Taste kurzer Tastendruck 3 Tastenmodus
#endif
#ifdef FIVEBUTTONS
volumeDownButton(); // Leiser Taste 5 Tastenmodus
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
#endif
}
else // wenn Funktion der Vol Tasten getauscht
{
#ifndef FIVEBUTTONS
volumeDownButton(); // Leiser Taste 3 Tastenmodus
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
#endif
#ifdef FIVEBUTTONS
previousButton(); // Zurück Taste kurzer Tastendruck 5 Tastenmodus
#endif
}
}
ignoreDownButton = false; // Taste wieder auswerten
} // ende shortpress
// *********** Ende Vol - Taste ********************************************
// ********** 5 Tasten-Modus ***********************************************
#ifdef FIVEBUTTONS // 5 Tasten-Modus
// ************ Taste 4 **************************************
if (buttonFour.pressedFor(LONG_PRESS))
{
if (isPlaying()) // wenn Wiedergabe läuft
{
if (mySettings.invertVolumeButtons) // wenn Funktion der Vol-Tasten getauscht
{
longPressVol = true; // VolÄnderung durch longPress
volumeUpButton(); // Lauter Taste
}
else // wenn Funktion der Vol-Tasten nicht getauscht
{
nextButton(); // weiter Taste
}
}
else // wenn keine Wiedergabe
{
playShortCut(1); // Spiele Shortcut 1
}
ignoreButtonFour = true; // LauterTaste übergehen
} // Ende longPress
else if (buttonFour.wasReleased()) // wenn Taste betätigt wurde (shortpress)
{
if (isPlaying()) // wenn Wiedergabe läuft
{
if (mySettings.invertVolumeButtons) // wenn Funktion der Vol Tasten getauscht
{
volumeUpButton(); // Lauter-Taste
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
}
else // wenn Funktion der Vol Tasten nicht getauscht
{
nextButton(); // Next - Taste
}
}
else // wenn Wiedergabe nicht läuft
{
playShortCut(1); // shortcut Next-Taste spielen
}
ignoreButtonFour = false; // Taste wieder auswerten
} // ende shortpress
// ************ Taste 5 ************************************
if (buttonFive.pressedFor(LONG_PRESS))
{
if (isPlaying()) // wenn Wiedergabe läuft
{
if (mySettings.invertVolumeButtons) // wenn Funktion der Vol-Tasten getauscht
{
longPressVol = true; // VolÄnderung durch longPress
volumeDownButton(); // Leiser Taste
}
else // wenn Funktion der Vol-Tasten nicht getauscht
{
previousButton(); // zurück Taste
}
}
else // wenn keine Wiedergabe
{
playShortCut(2); // Spiele Shortcut 2
}
ignoreButtonFive = true; // Leiser Taste übergehen
} // Ende longPress
else if (buttonFive.wasReleased()) // Taste wurde betätigt (shortpress)
{
if (isPlaying()) // wenn Wiedergabe läuft
{
if (mySettings.invertVolumeButtons) // wenn Funktion der Vol Tasten getauscht
{
volumeDownButton(); // Leiser-Taste
longPressVol = false; // schrittweise VolÄnderung durch kurzen Tastendruck
}
else // wenn Funktion der Vol Tasten nicht getauscht
{
previousButton(); // Zurück - Taste
}
}
else // wenn Wiedergabe nicht läuft
{
playShortCut(2); // shortcut Zurück-Taste spielen
}
ignoreButtonFive = false; // Taste wieder auswerten
} // ende shortpress
#endif
}
// ****************** Ende der Buttons ***********************************`