Dynamic keyboard colouring
-
SMP[i].getChildSynthByIndex(idx == i);
That doesn't do anything.
local idx = SMP_COLOUR_buttons.indexOf(component);
That doesn't do anything either (really it should return an error) since there is no
component
in that function. So what it will always give you is the value 0.or (i2 = 0; i2 < 127; i2++)
Something just feels wrong about a variable calledi2
call itj
ork
orx
or something less weird :pWhat's this for?
(idx == i);
-
@d-healey said in Dynamic keyboard colouring:
SMP[i].getChildSynthByIndex(idx == i);
That doesn't do anything.I don't know what else to call...
Im trying to get the index for a sampler based on what button that was pressed so I could colour the correct key(inside theupdateCode()
block),local idx = SMP_COLOUR_buttons.indexOf(component);
That doesn't do anything either (really it should return an error) since there is nocomponent
in that function. So what it will always give you is the value 0.Appologies, I should have removed it from
updateCode()
But, on line 60 (inside theonbtn_COLOUR_SMP_Control
) its calling the index of the buttons.What's this for?
(idx == i);
Index of a button. ??
Heres an updated snippet;
HiseSnippet 3797.3oc6a0sbaabEFTxvVjIJwwSlosyjNCpRaGpXYIRpercjcConHsUMkDGRYYmwiGkU.qHgMH.F.PIw3QSyksOB8tbSun4p9H366Mcl9BjGg7DT2yYW7yBveDkirqSiXaf4d1yt624mc2ucITcGKUpqqkiTpz6zylJk58ka1yzqc41DcSoMVWJ0Txk2t11OrgzZ8rIttTMoTol7dXsoReII1me3KViXPLUoQhjj10RWkVSuitWjzup3CzMLpRzn6n2QP6kJtgpkYYKCqt.RlTNmjMQ84jVzsHnZSHKk5xUzz8rbZ5Q7ntRotzZVZ8Z115HSt96p6puuAEKjWpIzQbwUsLzPDiRkJ2V2PqdfE6JIk5J0ir+I41+GKuotldn7H+vUYUnD0BQ+QpIFE7xKBubiO7RI.uKwg2GI2T0Q21KpFDaen7l.L2vzi5b.ABChPiquzDtWUtrEngo27cHOmV0AJD1hr2Z4byorbtbytZloy3PaonuJ+eel++p5F7EVTR4tJO4oqJHnomitYqUyjABjtdJGRbTHF1sIfhACKQS6AlV6mclRXEyLmBLj3.p.eX5NuK0qAwrEMKTSgkWdNk7IqN6Ltd8LnPimYWpimtJwXl90Q2i1gmMgixwUqVh8oeE2uUL0xw9.pEYDNTsAYBMnZPaVNejE.JNb76W4HPenF8gcNrRp1oi7VNTp4fv98vJf1kOWgH3yzd3FPX0C.fqrT0pKUoeEGFDSn1.cIQlw9FcoCxJVCjiFwxKFYDntC2FBpcDQgHU5yJyWNWtpU6SuSONnZokv.pQ1mZjcFrBnYEJrDFKXy7zMMzMoJGz0T0S2xDZq4g.D2w59ziyd3rYdQlz3Tt1zi2g.qmfyBmIGZH4wGEvGKhOVBerL9XE7wMwG2Beba7QI7wZ3ix3i0wGUvGUmAlSyFAs7PeGLLOYShW64OvvxxI6gKjekYC0pvvzR42oDpmWWGSrCuNn+pYNYZvNWX3eTtSyJ6nv2y4OnLBEWXZAm7VOby8ZtY883sau0d3N6r8VMAzUPLTHnw9c87.470wldv5XSLoFiVECLTNXU3BAKPoTsZJMIcrMnNtYfZdRtmBUx1mc9VTO1B+rRq0aCSMHROCnTdHmDZbIMMEWdaUxq3YoPbbH8X8R9wnWJzeuTX5LYNvxQIqNz7bqpnqbmg39f5t90gjtoY47867dh9SERrQLX0w1xDJ.yK7LCzFa3LPzOq90yO6rq1WuwcyipyrMMF2NiGPFUmYr+o1Y7lO.WKymFqEiv2fKPfPvwxnLwvXefRSVKyDNFeEfY+mLf4+CS8rpA1ybP5FrXzrSigozFVvhYJ5ZGivuOLMuNlWr8AQsFsfz7+exTh9BPyaPMa40lmTvMa+LigEOm2EX.EfXFntqht+Jnmva5HFUdjbrG0v.+q2ndpiC1yCbZ1fGBko4qzkLh10VCnHVFV5Oa3LKbi.9tIdzi8vEhycLljwYVgqVD987Beufv2W7o9CuHaLv.ec5I+4AKrfcWuPro3x6RcSXMnsnGgqxoy1CBclOf1aeKhiFqSbHnk5aZ3Zir9nUn8ELQKXXZB8d8RaUolODN0LiW+7QpWcfnrWCqtdPTIaPTIaqYeQq4O.NaRICir1DGWJPMNqnuDlreRTDNMG00Jsl.pS+FIYNAIiXXJVFGGROnxWFPQOP7MtwM7k7bZOWEu1DLrZ5AdBEh+1Bmw4EoC01ExHP8lMzLdQ32BU5Y7t7YPWluvMgufaqHp0KBSGB9.VCe+pXR0OPIq+bQhquBYmcdc2sr7na0sy9TmMI11TsrOa1Yi2g3mJlsfvN5SgDVtKM6ylSIJf6FtKPvmShWLSB4mDjJylry+eBqdivZayrLhavB7JIq5fCFXc9qdwLtATMd3YmQ0vrlLWQvdCnhtGo6o1VwulYyjNHJ5+OK7YvWRqRboJI1xI+mG2EDUZeGJ44qlItvA0EERzE.LcsLnyaCYwdbdJ.3+MJAzvi5bez8YKDh1QwHzm1nxPILFXhri.94PozQqLd23rsCSJ39vj4EhqiinLsuyHc5fw.Npl3Hj+zGAT6X86f5V1ImD63BmScLdlFw9cweL8Kzqmj4DoTWJ98hjY32Kh301nxItInnk4Fl5daaSCKymZEHImT3LJQQQSjDkxl+L.0hD0+kwH4SlTRJ064qNnpG6RY9.+KkoogtF0QRWSJ0UjYWxgDySEdQWeuUQownwxxMnZIZ529rwpoWQlc59DMVhNVM9xx3gpS1VeaWrsS62V1AY8aJtIePSeeY7rvquboakKmzPG40XrRYM+ZxIWzIIJ9guXLPw0jSPtOralPd3VQcjefe6SbRi7igyXbLmBA8ibpwzg1moT3GooTX.lxC2XchGAuoQ+raHi2FuRDbtZp0oGpqR426XZ40otO2yxVJ0TgmkBBzd9WZJe3qZXAb+LasiNLmFQwGJKJJuzwhCeuvBE6U7HcMu1gB9puoXapdq1B2c7iK5iQNfxHGv4TJfcDn6k0zzdEpcz02fRe0qd0uJtzB9hYJirRiT9e9RtTlqYBiTxLJZy.C2iPLNymqjeo4yMGS355t1Fjdaq5QNzm+AT+ADCWJWgZVGAMDjcad46qyKBzf3BJ200ypy8bH1s0Uci230oGP5Z3UBHzPbv6WGp1yoqesqY.GnD5sFHcanlbyuxsYet0sxcyam6l44psiUqVFzMw6ZJVmi2lc41DSHgAwCW3Cco6RUgErE.TzHB0V0f30jc6Yw6r5UBBG8UAr1uiWzHUHrhJlZB.XEfCElXGla8dm5hqGGLepWvWXWrGlbDbwdfDpcS8uN1JIcHGKtjb7bku669NV3WLqBJxjEOIUZi9RR2n33YA7U3Y3ewyY7CP8MO9C1lgYAGbNaAa8Js27Vf+dcLC3udNa.uR5SNuLfKeJa3xv+2Gf+LCYPwE35eW4gMHQahjQtYoMqWqRigtx8273Dqb+u95jVTwcKlZRgQapyBKfngs3WVLZXktcQGhlt08br5ZKFW.JpvfHLZBlPbfpP5y0e2Xt9zmAVFBdmEEgY8DdmuYyh7XArIdxQe4hiB7Qg0gFFybFn0LL.K0OfSfyuo1XhSXdPk+1eGaBwvv5nfq.0EYETxvPIRfKr44Fl0cnvAyAdGSb1xMKLrbSk1uIyMiMrwxMuyYN2rPPtobp+BnZ.HkS8q4jEGVHdjzEEfWAA38x5EGRtz4SpJvyL3Pcol70K8bnXW5i+wkdVHwznR2dkkVZ4pU6KCTzD5+Gg+px.cpt.Sn3ue.3KEgeE5PVi3OBO9Csa5p60SLe3MxKMv3B2ORtNdgPCFuS7+F75+JXLsbkCN.XgFA1KIW8wuEdeKlP.KSE95vni2x38Bfxz9BTXRF96DCb9AJbx.QAORH08a+OuZxWNf2ZlMXW2RcKChSLuOftIiaxSNdWkx.LyKM1oHnIo7SlT5qIyb4+TBvrThe5.3qJCqZ+N.b4+9Ms1j34niLfgSd2DVTWk5edRWbuyIvsN4kyEPtuI0TiU.O5uek4wxo7qLePkhtjqErtTYKyCsL5xLcze7whRTZPg4t6GymrtSujKK7HpWbQe4KqA9FS0Xy12nicW3Pz0X+3KhNTeXsgocWOQ4vYyWCHS0BHcXpsSaGJQSr+fs1zRtdz80KKzG+4+cw0IcrA2pnNUqti+E.EIR2H58xqCZIbeK6HQ7uZXYYyN1un.339AEO2VK6sclvmvcFWStoG3gAiuk+OBEKc3xx36swa2WTRHvZXQzhe9zWVbstvVnNwk9OJxFpRcfTjXikuMzfZSId3MEEU42WpQCFQ1jsBxDQ9C63.IcwxY9guXaSJDK8DswxNVttG.lCqubikY10oEMVtJadjabYPbULhhAIHiGyezUCB9QZyFkbr2JIVVJqb9DkKjn7hIJuThxKmn7JIJeynxojimeekwK+dShMiUrflqo6mgA0wkHtzXnakMzBuNrCXW+K+N8655aOV1SNdv8TnGlN.ib1fU.ZaFVfDNuI+KtMTpHH2zxzxtskotZ7bdHGtUKpSbxfCvdJ44AS4DORTCpAk3JLo82VrltIk3Dep7YxUbJTHSMlgqeoLGtJ3xXuawyYpfeGgcgXjJN57Xm+hggROUjBqC4OyORFmFe7kvVmppCGWOdPAV92efX8A62bfsBx4Un5b47fS9yxyCNtttOvOmQgS44caJ7uuLayJEjaw+OSeWMnq.ay+67IWSRMwYZrq4v.XZXHNYzEnMgPB+MV4uXTcv8cuDmc25nc2jbHkOGFstDriPQapqV2BbjvbHbhq7pvHw6KXQmFVVLRw2AFrZVOf1Kn.6GFLplcQbwM56q6W3OgttF9WqH2li3hSjWXW3fHcntKrIr0CrbqlNYgcKTB+OkrNzCKL+wyt.DGz5pRctQSpiNn6ZqOWy0mqdkFkY5r374lcg0.aABVKruV9aXZsCwlN+QjCkVuqsgtJjGj7VwFCRwENOHEa+VjTr8nHEOUwKHEeAo3KHEmjI3nHEesjjhK75wJF4VcAq3289ICFDdkjtfh3ETD+YDEwoj2xxoCw30hj3DAjD+EXWw7Qgr69T4WTuw1+wJk2YupaWa8JMNYGGchYKC5d2XEs0X7y3TKuj7JKEQl72KRy7SiXVh8d.uR47EtYDuRVHiQjzmJEwe2StkAbmz7q.WKvOpx.t+E9FIfcguWQdokxmKlNfigqVsnqINnXr1fBdLKKTnd+HChyZVGEcPcAEens8.kGhAOeAwoz1GI8UE8dqJRRe0WOR5puYHoejtW6yEZ5KdAM8KnoeAM8KnoGQSewKnoeAM8KnoeAM8Knom3tbOGoouhHQy4tfl9Hoo+1HmqCQ0wZOU9ekUXl2TLI.bLYA5oj8c9A+YcIma9bRc.hG6opxAMjrF7Gen1d1DGncdrcHwW40A9hCInD51BKtGeLeO4Gg+ImyRzYu1MSIeCv8iiK6MugAACqiDpnsdq1A0nG9SRhnCe+frLM54OyNt0cE9KR2HLtDMHs7lXYkEO6MYoydSV9r2jUN6M4lm8lbqQ0DjUZotdVc36ICBpWguNVpvYKP18+EfgRBUO
but I'm still puzzled on how to correct this.
-
SMP[i].getChildSynthByIndex(idx == i);
This line isn't doing anything for a couple of reasons. Firstly you are not storing the return value anywhere. It should be
variable = function();
.
But this won't work anyway because SMP is already an array of child synths, you have this on line 53
SMP[i] = Synth.getChildSynth("SMP" + (i+1));
Im trying to get the index for a sampler based on what button that was pressed so I could colour the correct key
Why do you need the index of the sampler when you have the index of the button?
-
You're right, I don't need the index of the sampler.
In the SMP loop from @Line 71
SMP[i].getChildSynthByIndex(idx == i);
I can't use.showControl
for the keyboard. What else can I do? -
@ten7kur Just get rid of that line because it's not needed.
-
@d-healey
Even if I remove the SMP for loop, I still have the problem of both sampler1 and sampler2 keys being coloured on the keyboard. -
@ten7kur I know but removing any code that is not doing anything will make it easier to work out what needs to be fixed.
-
@d-healey
Yes. That is true.
I actually had the code like this before. :exclamation_question_mark: I don't understand why its colouring both sampler keys... -
Any thoughts?
-
I don't have time at the moment to look through the code again, so for now you're on your own. I'll have another look when I get chance.
-
@d-healey
Ok. Thanks. Appreciate it!
Ill keep trying..