🔥 Lifetime deal! Get Control Surface Studio for Just £67 👉 Click Here To Get It
Time left... mailtimers.com
⚠️ Lifetime licenses are ending soon, get yours before they're gone ⚠️
Your shopping cart is empty.

Bulk Move/Edit/Delete/Modify controls

Submitted by qbrd on Tue, 09/15/2020 - 00:10
qbrd
Control Surface Studio User

Hello,

I have 9 columns and 9 rows of buttons. I built everything too low, and had to move everything one at a time... It would be really nice if there was a way to "select all" and drag them to the right place. Or, be able to add a volume control to each track mapping.

Also a way to renumber objects... The order they were created isn't exactly the order that they're in... So it'd be nice to highlight a row and go "these are 1-8"

Thanks!

Topic Category: 

4 Responses

Comments

Image_Engine
Control Surface Studio User
#1

Not atm (that I know of)
The easiest thing is to just copy the top value and paste in each box...much easier than manually moving

qbrd
Control Surface Studio User
#2

Yea, marginally less tedious, but still just as time consuming.

I thought I had tagged it "Feature request"...

qbrd
Control Surface Studio User
#3

Cool, I wrote a quick script to rip through the JSON and update everything and rewrite the index of the nodes.

```
const fs = require('fs')
var index = 100
var parent = {}

const inputFile = process.argv.slice(2).shift()
const controller = JSON.parse(fs.readFileSync(inputFile).toString())
const outputFile = `${inputFile.replace(/\.[^/.]+$/, "")}-out.json`

const new_controller = controller.map(item => {
// return the first two items of the array
if (item.id <= 1) {
return item
}

// increment update our index and keep a map of old indicies
old_id = item.id
item.id = index++
parent[old_id] = item.id

if(item.type.type == 'Endless Encoder') {
item.name = `${item.MIDI_value}.${item.MIDI_channel} - Endless Encoder`
}
else if (item.type.type == 'Knob') {
item.name = `${item.MIDI_value}.${item.MIDI_channel} - Knob`
}
else if (item.type.type == 'Pad') {
item.name = `P${item.MIDI_value} - Pad`
}

if (item.level >= 1) {
item.parent_id = parent[item.parent_id]
}

return item
})

fs.writeFileSync(outputFile, JSON.stringify(new_controller, null, 2))
```

JohnC
Forum Admin
#4

Cool!
I've changed the subject to feature request.