Hello! I'm running into ConfigurableButtonElement' object has no attribute 'selected_strip' error when I use modes in my script. Here is an error from logs:
2019-01-30T00:17:54.224624: info: RemoteScriptError: Traceback (most recent call last):
2019-01-30T00:17:54.224743: info: RemoteScriptError: File "C:\ProgramData\Ableton\Live 10 Intro\Resources\MIDI Remote Scripts\newcontroll\__init__.py", line 4, in create_instance
2019-01-30T00:17:54.225015: info: RemoteScriptError:
2019-01-30T00:17:54.225088: info: RemoteScriptError: return newcontroll(c_instance)
2019-01-30T00:17:54.225181: info: RemoteScriptError: File "C:\ProgramData\Ableton\Live 10 Intro\Resources\MIDI Remote Scripts\newcontroll\newcontroll.py", line 32, in __init__
2019-01-30T00:17:54.225343: info: RemoteScriptError:
2019-01-30T00:17:54.225407: info: RemoteScriptError: self._set_active_mode()
2019-01-30T00:17:54.225494: info: RemoteScriptError: File "C:\ProgramData\Ableton\Live 10 Intro\Resources\MIDI Remote Scripts\newcontroll\newcontroll.py", line 311, in _set_active_mode
2019-01-30T00:17:54.225913: info: RemoteScriptError:
2019-01-30T00:17:54.225974: info: RemoteScriptError: self._mode1()
2019-01-30T00:17:54.226060: info: RemoteScriptError: File "C:\ProgramData\Ableton\Live 10 Intro\Resources\MIDI Remote Scripts\newcontroll\newcontroll.py", line 94, in _mode1
2019-01-30T00:17:54.226284: info: RemoteScriptError:
2019-01-30T00:17:54.226345: info: RemoteScriptError: self._mode1_devices()
2019-01-30T00:17:54.226430: info: RemoteScriptError: File "C:\ProgramData\Ableton\Live 10 Intro\Resources\MIDI Remote Scripts\newcontroll\newcontroll.py", line 123, in _mode1_devices
2019-01-30T00:17:54.226681: info: RemoteScriptError:
2019-01-30T00:17:54.226743: info: RemoteScriptError: if (len(self.mixer.selected_strip()._track.devices) > device_number):
2019-01-30T00:17:54.226826: info: RemoteScriptError: AttributeError
2019-01-30T00:17:54.226979: info: RemoteScriptError: :
2019-01-30T00:17:54.227042: info: RemoteScriptError: 'ConfigurableButtonElement' object has no attribute 'selected_strip'
2019-01-30T00:17:54.227100: info: RemoteScriptError:
2019-01-30T00:17:54.227129: info: Exception: Script could not be loaded.
2019-01-30T00:17:54.283304: info: Performance: Startup hook 'EnableMidiRemoteScriptManager': Running time: 136 ms
I'm atta
Comments
Ableton 10.0.5 Intro, Windows 10, doesn't work on Default Ableton project.
After debugging it looks like I named Shift button 'Mixer' and it messed up code generation. The modes switch methods looked like this:
def _mode0(self):
self.show_message("_mode0 is active")
# mixer
global mixer
self.mixer = ConfigurableButtonElement(0, MIDI_NOTE_TYPE, 14, 26)
self.mixer.add_value_listener(self._activate_shift_mode2,identify_sender= False)
# select track 6 button
self.track6 = ConfigurableButtonElement(0, MIDI_NOTE_TYPE, 14, 25)
self.track6.add_value_listener(self.track_select_6, identify_sender=False)
# select track 5 button
self.track5 = ConfigurableButtonElement(0, MIDI_NOTE_TYPE, 14, 24)
self.track5.add_value_listener(self.track_select_5, identify_sender=False)
# select track 4 button
...
def _remove_mode0(self):
# mixer
global mixer
self.mixer.remove_value_listener(self._activate_shift_mode2)
self.mixer = None
self.track6.send_value(0)
self.track6.remove_value_listener(self.track_select_6)
self.track6 = None
self.track5.send_value(0)
self.track5.remove_value_listener(self.track_select_5)
...
After renaming 'Mixer' into something else everything seems to work fine.
Thanks for the details, that's a very good point you've raised here!