I’m absolutely loving this for “not-completely-attached-to-the-puter” drum programming. I’ve already written tons of notes on desired functionality that I’d like to integrate myself.
So I started to work on an interface for showing the current step, but half an hour into my research I came across some code which you’ve commented out in StepSequencer.lua.
The code is as follows:
--[[
if renoise.song().transport.playing then
local pos = renoise.song().transport.playback_pos
else
-- if we stopped playing, turn off position
if(self.__playing) then
self:__update_position(0)
self.__playing = false
end
end
]]--
So if we had a position variable available to the StepSequencer object, which could then update the side grid buttons with a brighter/lighter color or do the same with an entire row. Was this your intention? I currently don’t see the self:__update_position method, but maybe I am missing a bit of scope. I noticed that there seems to be no way to update a single value’s color using the UISlider control(I was planning on using the level slider). So my next step was to begin researching how to manually control point on the grid.
First, I don’t want to step on any toes, so if you have a planned, good solution… please feel free Although that won’t keep me from giving it a shot myself as the night passes. Do you and/or Danoise and/or ANYONE have any ideas on this?
Also, this brings up thoughts of version control and distribution for these tools(Duplex as a whole, and applications which extend it, but may not be part of the main release). To Danoise’s credit, I do appreciate the simplicity of forum based peer review, and single ownership/release ability.
This also gets me thinking about the ability to page through various Duplex controls. Through my brief learning/reading the codebase, I certainly don’t see a baked in way of doing this, but that of course doesn’t stop us. Pages could be incredibly useful for any app, I feel that Ableton’s default config shows a lot of what could be done here in terms of putting a lot of interface inside of 64 + 16 buttons. Holding down buttons is a more complex version of pulling of the same idea, but useful for quick edits where paging through many results could become cumbersome. The fact that we have 8 rows does allow us some paging flexibility, in that we can use equal col/row placements in order to allow the user to assume connections.
Boy this is more fun than the backend web dev I do for work.(at least I get to work from home and play with renoise from time to time =D )