Moved modes to enum

This commit is contained in:
Oleksiy
2025-03-27 19:55:15 +02:00
parent cd29fedbfb
commit 4767c2942f
3 changed files with 52 additions and 50 deletions

View File

@ -118,9 +118,9 @@ void updateScreen() {
//Channel Tabs
else {
//Menu items
if (channels[displayTab - 1].mode == 3) {
if (channels[displayTab - 1].mode == Swing) {
lastMenuItem = 1;
} else if (channels[displayTab - 1].mode == 4) {
} else if (channels[displayTab - 1].mode == Gate) {
lastMenuItem = 3;
} else {
lastMenuItem = 3;
@ -130,13 +130,13 @@ void updateScreen() {
for (uint8_t i = 1; i <= lastMenuItem; i++) {
if (i == 1) {
valueStr = F("MODE:");
} else if (i == 2 && channels[displayTab - 1].mode == 0) {
} else if (i == 2 && channels[displayTab - 1].mode == Clock) {
valueStr = F("OFFSET:");
} else if (i == 2 && (channels[displayTab - 1].mode == 1 || channels[displayTab - 1].mode == 4)) {
} else if (i == 2 && (channels[displayTab - 1].mode == Random || channels[displayTab - 1].mode == Gate)) {
valueStr = F("SUBDIV:");
} else if (i == 2 && channels[displayTab - 1].mode == 2) {
} else if (i == 2 && channels[displayTab - 1].mode == Sequencer) {
valueStr = F("EDIT PATTERN");
} else if (i == 3 && channels[displayTab - 1].mode == 4) {
} else if (i == 3 && channels[displayTab - 1].mode == Gate) {
valueStr = (String(pulsePeriod) + " " + String(channelPulsesPerCycle[displayTab - 1]));
} else if (i == 3) {
valueStr = F("MOD:");
@ -150,17 +150,17 @@ void updateScreen() {
//Values
for (uint8_t i = 1; i <= lastMenuItem; i++) {
if (i == 1 && channels[displayTab - 1].mode == 0) { //Channel mode
if (i == 1 && channels[displayTab - 1].mode == Clock) { //Channel mode
valueStr = F("CLOCK");
} else if (i == 1 && channels[displayTab - 1].mode == 1) {
} else if (i == 1 && channels[displayTab - 1].mode == Random) {
valueStr = F("RAND");
} else if (i == 1 && channels[displayTab - 1].mode == 2) {
} else if (i == 1 && channels[displayTab - 1].mode == Sequencer) {
valueStr = F("SEQ");
} else if (i == 1 && channels[displayTab - 1].mode == 3) {
} else if (i == 1 && channels[displayTab - 1].mode == Swing) {
valueStr = F("SWING");
} else if (i == 1 && channels[displayTab - 1].mode == 4) {
} else if (i == 1 && channels[displayTab - 1].mode == Gate) {
valueStr = F("GATE");
} else if (i == 2 && channels[displayTab - 1].mode == 0) { //SubDiv and offset
} else if (i == 2 && channels[displayTab - 1].mode == Clock) { //SubDiv and offset
valueStr = String(channels[displayTab - 1].offset) + F("/");
int PulsesPerStep;
if (subDivs[channels[displayTab - 1].subDiv] < 0) {
@ -169,10 +169,10 @@ void updateScreen() {
PulsesPerStep = subDivs[channels[displayTab - 1].subDiv] * PPQN;
}
valueStr = valueStr + String(PulsesPerStep); //(playingModes[i] * PPQN) - 1 //String(channelPulsesPerCycle[displayTab-1]+1)
} else if (i == 2 && (channels[displayTab - 1].mode == 1 || channels[displayTab - 1].mode == 4) && subDivs[channels[displayTab - 1].subDiv] > 0) {
} else if (i == 2 && (channels[displayTab - 1].mode == Random || channels[displayTab - 1].mode == Gate) && subDivs[channels[displayTab - 1].subDiv] > 0) {
valueStr = F("/");
valueStr = valueStr + String(subDivs[channels[displayTab - 1].subDiv]);
} else if (i == 2 && (channels[displayTab - 1].mode == 1 || channels[displayTab - 1].mode == 4) && subDivs[channels[displayTab - 1].subDiv] < 0) {
} else if (i == 2 && (channels[displayTab - 1].mode == Random || channels[displayTab - 1].mode == Gate) && subDivs[channels[displayTab - 1].subDiv] < 0) {
valueStr = F("x");
valueStr = valueStr + String(abs(subDivs[channels[displayTab - 1].subDiv]));
} else if (i == 3 && channels[displayTab - 1].CV1Target == 0 && channels[displayTab - 1].CV2Target == 0) { //MOD
@ -183,7 +183,7 @@ void updateScreen() {
valueStr = F("CV2");
}
if (i == 2 && channels[displayTab - 1].mode == 2) { //EDIT PATTERN thing
if (i == 2 && channels[displayTab - 1].mode == Sequencer) { //EDIT PATTERN thing
if (menuItem == i && insideTab) {
u8g2.drawBox(leftOffset + 54, ((i-1) * 11), 11, 11);
}
@ -201,15 +201,15 @@ void updateScreen() {
//Main Param
leftOffset = 29;
width = 55;
if (channels[displayTab - 1].mode == 0) {
if (channels[displayTab - 1].mode == Clock) {
valueStr = F("SUBDIVISION");
} else if (channels[displayTab - 1].mode == 1) {
} else if (channels[displayTab - 1].mode == Random) {
valueStr = F("SKIP CHANCE");
} else if (channels[displayTab - 1].mode == 2) {
} else if (channels[displayTab - 1].mode == Sequencer) {
valueStr = F("PATTERN");
} else if (channels[displayTab - 1].mode == 3) {
} else if (channels[displayTab - 1].mode == Swing) {
valueStr = F("SWING");
} else if (channels[displayTab - 1].mode == 4) {
} else if (channels[displayTab - 1].mode == Gate) {
valueStr = gateLengthTime[displayTab - 1];
}
@ -219,16 +219,16 @@ void updateScreen() {
u8g2.drawButtonUTF8(leftOffset, 41, U8G2_BTN_BW0|U8G2_BTN_HCENTER, width, 1, 2, valueStr.c_str() );
}
if (channels[displayTab - 1].mode == 0) {
if (channels[displayTab - 1].mode == Clock) {
if (subDivs[channels[displayTab - 1].subDiv] > 0) {
valueStr = F("/");
} else {
valueStr = F("x");
}
valueStr = valueStr + String(abs(subDivs[channels[displayTab - 1].subDiv]));
} else if (channels[displayTab - 1].mode == 1) {
} else if (channels[displayTab - 1].mode == Random) {
valueStr = String(channels[displayTab - 1].random) + (channels[displayTab - 1].random == 0 ? "%" : "0%");
} else if (channels[displayTab - 1].mode == 2) {
} else if (channels[displayTab - 1].mode == Sequencer) {
if (channels[displayTab - 1].seqPattern < 8) {
valueStr = F("A");
valueStr = valueStr + String(channels[displayTab - 1].seqPattern + 1);
@ -242,10 +242,10 @@ void updateScreen() {
valueStr = F("D");
valueStr = valueStr + String(channels[displayTab - 1].seqPattern - 23);
}
} else if (channels[displayTab - 1].mode == 3) {
} else if (channels[displayTab - 1].mode == Swing) {
uint8_t swingVals[6] = {50, 58, 66, 75, 83, 92};
valueStr = String(swingVals[channels[displayTab - 1].swing]) + "%";
} else if (channels[displayTab - 1].mode == 4) {
} else if (channels[displayTab - 1].mode == Gate) {
valueStr = String(channels[displayTab - 1].gate) + "%";
}
u8g2.setFont(stkL);