Skip to content

Commit dd2e292

Browse files
committed
More simplificationof AI code
1 parent a292ae1 commit dd2e292

1 file changed

Lines changed: 12 additions & 16 deletions

File tree

The-Orm/KeyboardMacroView.cpp

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -250,12 +250,20 @@ void KeyboardMacroView::refreshUI() {
250250
}
251251
}
252252

253-
void setMidiDeviceFromString(std::shared_ptr<TypedNamedValue> prop, std::string const& storedValue) {
253+
void setMidiDeviceFromString(std::shared_ptr<TypedNamedValue> prop, std::string const& storedValue, bool allowAppend = false) {
254254
if (prop) {
255255
auto midiDeviceProp = std::dynamic_pointer_cast<MidiDevicePropertyEditor>(prop);
256256
if (midiDeviceProp) {
257-
auto appended = midiDeviceProp->findOrAppendLookup(storedValue);
258-
midiDeviceProp->value().setValue(appended);
257+
if (allowAppend) {
258+
auto appended = midiDeviceProp->findOrAppendLookup(storedValue);
259+
midiDeviceProp->value().setValue(appended);
260+
}
261+
else {
262+
int index = midiDeviceProp->indexOfValue(storedValue);
263+
if (index != 0) {
264+
midiDeviceProp->value().setValue(index);
265+
}
266+
}
259267
}
260268
else {
261269
spdlog::error("Program error - expected MidiDevicePropertyEditor for the property {}", prop->name());
@@ -359,19 +367,7 @@ void KeyboardMacroView::saveSettings() {
359367
Settings::instance().set(settingKey, prop->lookupValue());
360368
}
361369
else if (propertyName == kSecondaryMIDIOut) {
362-
auto secondaryProp = std::dynamic_pointer_cast<MidiDevicePropertyEditor>(prop);
363-
if (secondaryProp) {
364-
int selectedRow = int(secondaryProp->value().getValue());
365-
if (selectedRow <= 0) {
366-
Settings::instance().set(settingKey, "");
367-
}
368-
else {
369-
Settings::instance().set(settingKey, secondaryProp->lookupValue());
370-
}
371-
}
372-
else {
373-
Settings::instance().set(settingKey, prop->value().toString().toStdString());
374-
}
370+
Settings::instance().set(settingKey, prop->lookupValue());
375371
}
376372
else {
377373
Settings::instance().set(settingKey, prop->value().toString().toStdString());

0 commit comments

Comments
 (0)