I am trying to create a module that allows users to cycle lists to look for a pattern and need a way to programmatically establish the number of controllers depending on the number of lists being used. As a small example, I am trying to do something like this:
testModule[___] :=
Module[{disks = {{"a", "b", "c"}, {"d", "e", "f"}, {"g", "h",
"i"}}},
Manipulate[
Row[{Column[RotateRight[disks[[1]], Disk1], Spacings -> 1],
Column[RotateRight[disks[[2]], Disk2], Spacings -> 1],
Column[RotateRight[disks[[3]], Disk3], Spacings -> 1]}],
{{Disk1, 0}, -3, 3, 1},
{{Disk2, 0}, -3, 3, 1},
{{Disk3, 0}, -3, 3, 1}]]
What I would like to do is be able to set up the controller command programmatically because there are in some examples 32 lists (called disks) but I am also wanting a way to make the number of lists variable.
Looking through the StackExchange, I think it is a some combination of using With and setting the initial values, but I cannot get it to work.