Changeset 65


Ignore:
Timestamp:
16/02/10 21:15:17 (5 months ago)
Author:
st8
Message:

Added warping, currently selected track

Location:
trunk/LiveOSC
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LiveOSC/LiveOSC.py

    r63 r65  
    5252    scenelisten = {} 
    5353    scene = 0 
     54    track = 0 
    5455 
    5556    def __init__(self, c_instance): 
     
    247248            self.song().view.add_selected_scene_listener(self.scene_change) 
    248249 
     250        if self.song().view.selected_track_has_listener(self.track_change) != 1: 
     251            self.song().view.add_selected_track_listener(self.track_change) 
     252 
    249253    def rem_scene_listeners(self): 
    250254        if self.song().view.selected_scene_has_listener(self.scene_change) == 1: 
    251255            self.song().view.remove_selected_scene_listener(self.scene_change) 
     256             
     257        if self.song().view.selected_track_has_listener(self.track_change) == 1: 
     258            self.song().view.remove_selected_track_listener(self.track_change) 
     259 
     260    def track_change(self): 
     261        selected_track = self.song().view.selected_track 
     262        tracks = self.song().visible_tracks 
     263        index = 0 
     264        selected_index = 0 
     265        for track in tracks: 
     266            index = index + 1         
     267            if track == selected_track: 
     268                selected_index = index 
     269                 
     270        if selected_index != self.track: 
     271            self.track = selected_index 
     272            self.oscServer.sendOSC("/live/track", (selected_index)) 
    252273 
    253274    def scene_change(self): 
  • trunk/LiveOSC/LiveOSCCallbacks.py

    r63 r65  
    119119        self.callbackManager.add(self.loopEndCB, "/live/clip/loopend_id") 
    120120         
     121        self.callbackManager.add(self.warpingCB, "/live/clip/warping") 
     122         
    121123        self.callbackManager.add(self.crossfaderCB, "/live/master/crossfader") 
    122124        self.callbackManager.add(self.trackxfaderCB, "/live/track/crossfader") 
     
    126128 
    127129        self.callbackManager.add(self.selectionCB, "/live/selection") 
     130 
     131    def warpingCB(self, msg): 
     132        """ Called when a /live/clip/warping message is recieved 
     133        """ 
     134        track = msg[2] 
     135        clip = msg[3] 
     136         
     137         
     138        if len(msg) == 4: 
     139            state = LiveUtils.getSong().visible_tracks[track].clip_slots[clip].clip.warping 
     140            self.oscServer.sendOSC("/live/clip/warping", (track, clip, int(state))) 
     141         
     142        elif len(msg) == 5: 
     143            LiveUtils.getSong().visible_tracks[track].clip_slots[clip].clip.warping = msg[4] 
    128144 
    129145    def selectionCB(self, msg): 
  • trunk/LiveOSC/OSCAPI.txt

    r52 r65  
    136136/live/clip/loopstate_id (int track, int clip)                           Get the loop state of clip on track with the track and clip id /live/clip/loopstate_id (int track, int clip, int state) 
    137137 
     138/live/clip/warping      (int track, int clip)                           Gets the warping state of the clip 
     139/live/clip/warping      (int track, int clip, int state)                Sets the warping state of the clip 
    138140 
    139141/live/master/crossfader                                                 Get the current crossfader position 
     
    146148/live/return/crossfader (int return)                                    Gets the current cross fader assignment for return track track 
    147149/live/return/crossfader (int return) (int assign)                       Sets the current cross fader assignment for return track track 
     150 
     151/live/selection (int tr_offset, int sc_offset, int width, int height)   Sets the dimensions and positions of the highlighted region in session view 
    148152 
    149153LISTENERS 
     
    180184/live/tempo 
    181185/live/scene 
     186/live/track 
    182187 
    183188/live/device/param (int track) (int device) (int param) (int value) (str name) 
Note: See TracChangeset for help on using the changeset viewer.