本文整理汇总了Python中SpecialSessionComponent.SpecialSessionComponent.move_by方法的典型用法代码示例。如果您正苦于以下问题:Python SpecialSessionComponent.move_by方法的具体用法?Python SpecialSessionComponent.move_by怎么用?Python SpecialSessionComponent.move_by使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SpecialSessionComponent.SpecialSessionComponent
的用法示例。
在下文中一共展示了SpecialSessionComponent.move_by方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Serato
# 需要导入模块: from SpecialSessionComponent import SpecialSessionComponent [as 别名]
# 或者: from SpecialSessionComponent.SpecialSessionComponent import move_by [as 别名]
#.........这里部分代码省略.........
def _setup_device_control(self):
is_momentary = True
self._device_on_off_button = ButtonElement(not is_momentary, MIDI_NOTE_TYPE, 0, 0)
self._device = SpecialDeviceComponent()
self._device.set_serato_interface(self._serato_interface)
self._device.set_parameter_controls(tuple([ SliderElement(MIDI_CC_TYPE, 0, 0) for index in range(NUM_PARAMS) ]))
self._device.set_on_off_button(self._device_on_off_button)
self.set_device_component(self._device)
def _handle_session_event(self, event):
result = False
if event.type in CLIP_EVENTS:
value = 127 * int(event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventClipPlayedDown)
track_index = event.key1 - 1
scene_index = event.key2 - 1
if track_index in range(NUM_TRACKS) and scene_index in range(NUM_SCENES):
self._matrix.get_button(track_index, scene_index).receive_value(value)
result = True
elif event.type in SCENE_EVENTS:
value = 127 * int(event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventScenePlayedDown)
scene_index = event.key1 - 1
if scene_index in range(NUM_SCENES):
self._scene_launch_buttons[scene_index].receive_value(value)
result = True
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlMatrixSizeChanged:
new_width = event.key1
new_height = event.key2
self._session.set_size(new_width, new_height)
result = True
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlMatrixOffsetChanged:
x_increment = event.key1
y_increment = event.key2
self._session.move_by(x_increment, y_increment)
result = True
return result
def _handle_mixer_event(self, event):
result = True
track_index = event.key1 - 1
value = event.key2
if event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackMasterGainChange:
self._mixer.master_strip().set_track_volume(fixed_value(value))
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventMasterTrackStopped:
self.song().stop_all_clips()
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventMasterTrackSelect:
self.song().view.selected_track = self.song().master_track
else:
result = track_index in range(NUM_TRACKS) and self._handle_strip_event(event)
return result
def _handle_strip_event(self, event):
result = True
track_index = event.key1 - 1
value = event.key2
if value == 0:
self._shift_button.receive_value(127)
if event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackSolo:
self._track_solo_buttons[track_index].receive_value(127)
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackRecord:
self._track_arm_buttons[track_index].receive_value(127)
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackActive:
self._track_mute_buttons[track_index].receive_value(127)
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackStopped:
self._track_stop_buttons[track_index].receive_value(127)
elif event.type == libInterprocessCommsAPIPython.kAbletonClipControlEventTrackSelect: