HISE Logo Forum
    • Categories
    • Register
    • Login

    Dynamic keyboard colouring

    Scheduled Pinned Locked Moved Scripting
    20 Posts 2 Posters 1.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • d.healeyD
      d.healey
      last edited by d.healey

      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 called i2 call it j or k or x or something less weird :p

      What's this for?
      (idx == i);

      Libre Wave - Freedom respecting instruments and effects
      My Patreon - HISE tutorials
      YouTube Channel - Public HISE tutorials

      ten7kurT 1 Reply Last reply Reply Quote 0
      • ten7kurT
        ten7kur @d.healey
        last edited by

        @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 the updateCode() block),

        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.

        Appologies, I should have removed it from updateCode()
        But, on line 60 (inside the onbtn_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.😕

        d.healeyD 1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey @ten7kur
          last edited by

          @ten7kur

          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?

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          ten7kurT 1 Reply Last reply Reply Quote 0
          • ten7kurT
            ten7kur @d.healey
            last edited by

            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 .showControlfor the keyboard. What else can I do?

            d.healeyD 1 Reply Last reply Reply Quote 0
            • d.healeyD
              d.healey @ten7kur
              last edited by

              @ten7kur Just get rid of that line because it's not needed.

              Libre Wave - Freedom respecting instruments and effects
              My Patreon - HISE tutorials
              YouTube Channel - Public HISE tutorials

              ten7kurT 1 Reply Last reply Reply Quote 0
              • ten7kurT
                ten7kur @d.healey
                last edited by

                @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.

                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @ten7kur
                  last edited by

                  @ten7kur I know but removing any code that is not doing anything will make it easier to work out what needs to be fixed.

                  Libre Wave - Freedom respecting instruments and effects
                  My Patreon - HISE tutorials
                  YouTube Channel - Public HISE tutorials

                  ten7kurT 1 Reply Last reply Reply Quote 0
                  • ten7kurT
                    ten7kur @d.healey
                    last edited by

                    @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...

                    1 Reply Last reply Reply Quote 0
                    • ten7kurT
                      ten7kur
                      last edited by

                      Any thoughts?

                      1 Reply Last reply Reply Quote 0
                      • d.healeyD
                        d.healey
                        last edited by

                        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.

                        Libre Wave - Freedom respecting instruments and effects
                        My Patreon - HISE tutorials
                        YouTube Channel - Public HISE tutorials

                        ten7kurT 1 Reply Last reply Reply Quote 0
                        • ten7kurT
                          ten7kur @d.healey
                          last edited by

                          @d-healey
                          Ok. Thanks. Appreciate it!
                          Ill keep trying..

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          25

                          Online

                          1.7k

                          Users

                          11.8k

                          Topics

                          102.5k

                          Posts