HISE Logo Forum
    • Categories
    • Register
    • Login

    Repaint panel or sliders on combobox callback

    Scheduled Pinned Locked Moved General Questions
    25 Posts 3 Posters 1.2k 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.
    • ulrikU
      ulrik @d.healey
      last edited by

      @d-healey Yeah, that was not a good idea ...

      Hise Develop branch
      MacOs 15.3.1, Xcode 16.2
      http://musikboden.se

      gorangroovesG 1 Reply Last reply Reply Quote 0
      • gorangroovesG
        gorangrooves @ulrik
        last edited by

        @d-healey Here is the simple example.

        HiseSnippet 2164.3oc6Z07aaibEmzwLvl65zr.sGVfdXfuDoFa8AkcxB3Fr9Ss0nR1FVNKV.Cifwjijl0TbDHGEKs6Zf8RQA58Bzi8b+yn+GzSEnmJPO1K8RO29lY3PQZ8Qrj8tnnIDIlZl48wu2adu2vYHOIj4RhhXgFlKe1ftDCyO1pwf.d68ZioAFGtug4Srpii3jPjpqcGzEGEQ7LLMezWH5vb4EMjW+qOeWrONvkLrKCiujQcI0ncn7g8dx1+ZpueUrG4LZmTTuw1G5xB1i4y5A34QVkL5hcuB2hbDVP1BVFlO9.OJmE1fi4jHflcYdCZzlccfh9ujFQuzmHZT1nAHHU2F60l56ch1ViLLLW7jgV9iTV9O0pN0ilz+POvSkCfFxQZef4BSCRkmAHYlBRKpfzmX0vMj1kObDAd9HqCCfIjlXvUmFJJZMV369YV6w.JB3E5fuhTMDZjvQtWTpzZH3O42xFnJh4SJ35Svg4fNrA+eDG8VbHZ+NQmfCf+Q7QuBokWKBeOVmtr.nQtUSQypBtSw9N99P+AjvHf6yGO6J71vm5QBKuZ90rQS35cyty8i8J2O1239w9lql+hL9dvyUm4Q.xujcIqOYJ9PIM6x5OU+2TQhVBN2aIT4dKgMt2RH1WZWr3qTWnJnZ6TE0gvay7hPMYgHdaBJR54ix5zgvUf1xoh2cCIPZcMlK1uFic0NAdUIDeHUYE6gzWHjzhJJQVsWfKmxBxspWH95Zz.HsRMEu5Znl5AasFhc4WmeE6ucE6UrWVpbLnSnyBXPeaI5TO.uM08JXPmsPEKJaD.EBPrlRqvGTgfxVEhDdCQgybk5Ws5KjW42RMVSnZ6ordAdDuSItbbPKeRtywmW5h0P3yqbApHxAstRSEcD84.iHaquKHIeFfcsFYuPfLz0TOdaMrZiC77IOKBccaJmfX83ZfJ3rslyXQrtx3lfHnA.tCQcYgBmWhL5C7KvI5WH8auE62ibDKrC1m9MDOPl4TpI+3IX8xRU1G4CSsBAmUuZ039NUiz+M1AS7V2dBRcKpfz4jWfii6IVeU4rBoAsFELSZRrcewzUYXZR4LUSnIMgoygyZSJHoXQpHRF0JDO3NoxmWVqz1YUZ6rJUn1aD+bkwkl4LioYN+uWZFoxm8RmW9gzrOjlMkzLcPB3GT4YrPPpjGzLM0+mbtVkYLWqxGx09Pt1OJ4ZG36S6FAyct8WONXWcuxEO2Qe+h7STySKCykFB6rYZpTmcITSbtkJGR9jlSwBAUUW9rjOqCKf8rzLTExyxU83iN6MmdvW75Z6b5ZnxkDRMlDQdzN9zVADuyH8gGcsNjIMdrrFZUWHkMj3sZ7JpII511wI3p8cJ1fvE.pJuNpVQPiNqeZwZqgprNp9wGcrss.p4DbPAJKsEb6WlZKZE7IAs3sgte9yyi9VIRED2UNLvwPROmBOdsd7HgtggSfQxnx+PahxESxqPk0BVboDrvaMRcngOVcdkntAQ7iHYElyrJLmoHrJypvpnEls8MxsZfzUIQbFpWWOgfSwI5RLrCcDLr1QYSCDkORJfFyzP2blJy.7VtXQ8l06BoSPTyqEbHRrv99wnNBR8YWgfvcTSfwBEJH2Ut.px4+67bu3RTEwepQ.CoZxwAIwBCuRZN4viYMD4NElLqgJ2ovkYMjQE1LhqHQDAvxYcwvDbcXIQbKRNYwTzYgCP7PZqVDYsTLJTQUh.JVL0YwTHdzbIwowgoMHbj9TYfHU3AE3gLwjbHF1ernWnJcCZmtPUSwY6g5v754ShFIbUg28fPuKwtWkyUuO70PxULjQrpPCJrTW+LwOEjccbygbof4xZVFSzjfCw15uQZFoNWDvoKWVYXgP.xiGvxSTYZH1dX.sF0ibPLSB7HM3GaBSL7WVR4sMKfVIDhGWRyTKGn7CpYT03HscEYOaI5YxpUq1ICIR7SYmnAUeiVsB+xTz6ndtwn9QHZxnH8rm.FIyrrfiXbxwA4xaCAc.9P2dnlMG6XwJwmDN1gEGMc3zXLWPuNWRB0APZBMLWL6AB+361AB6pd77TDxBNLfxOtKItcUlum3fdE+dziO1H946MLLsiQHPJWdLxOwJ8wMZPAg7SxzUYCoQDeT7e+e9e+2+biYVHNYDB527O+KygPp7PfjMxHjss+q+i4PHalQH+wtu5uMpPdZLG5SeTJlOxJ4PYyHB4qHYVEgysEgw1ypHpbaQrzLKhMt+FxliQDu9v8wbr3UeDG7BAzcIvthD4Ml6SdK0kndQHKasOI5JNqKjOkbpuvuUpdE8qIQr5mTuqXkZ8Pi9oeiTCR2PtAMCSKye2BFFsIzVs4hV8ggLsRonO9NmH0Wv+jzitii1Vqqgu6qH9.e46e6WwBoeC3OvfovIczuOrke7RK8GZJnkDfgBHh2IUMX23AhW8SDT1PraBgeGZB6wn09zPhrj0sjIrZOXRorsr9Ji4vpcTV8u88Kqthxpeh46UV8FJq92+9kUuoxp+4K7+EV8R2wUuRWKyx7OA+nCV12ifeJrAnL8mZIePGTYa0cm36UF02vACA31ZucKOGvIaQlGT33LGvIa1+CJbpLGvIaZ4CJb1XNfS17kGT3rogwnenDO0ptXqpXd1uaCwlXiGPjvj9ikP7AQDDQ4CR+DIyvGyQoo9wbbWg3mXcBk61d7XbgwfQ34R9g.iweBLqXcPylP0kg.bQqpe0798t7NT+ordhCvpNlGREQFG0qSCnhnKAzNrqS+HQzxBhc1nZWRWMpAIvS13+.WwCVVz1Ldvx5AgXN2P1ahOnCwGYyRxd.LEH+lhV1ptnMJ4I0srJUnjQGnF7abcEl+5kMLFOONyAOUlCd1XN3Yy4fmWLG77x4fmOap7HV9amdbVGU5.zwIGH2kfo4Ax0GkQgF+WOPk.aA
        

        Goran Rista
        https://gorangrooves.com

        Handy Drums and Handy Grooves
        https://library.gorangrooves.com

        d.healeyD ulrikU 2 Replies Last reply Reply Quote 0
        • d.healeyD
          d.healey @gorangrooves
          last edited by d.healey

          @gorangrooves I see the problem. You can't change the LAF function assigned to a control after on init. You need to use a single LAF function and use if or switch statements in there to draw the control how you want based on the combo box values.

          Free HISE Bootcamp Full Course for beginners.
          YouTube Channel - Public HISE tutorials
          My Patreon - HISE tutorials

          gorangroovesG 1 Reply Last reply Reply Quote 0
          • ulrikU
            ulrik @gorangrooves
            last edited by

            @gorangrooves As David says, it doesn't work here either
            I tried another way and that worked.

            differentlafs.gif

            HiseSnippet 1035.3ocsV01iZbCD1KGaTf9hRj5OfU2m1TQP.WRZkppJANnB0iKzv0nVEEEY7ZXcwq8JaStCUEo7an+R6+f1w6Kr6cfHbHU9.f8LOy7LiGOimnjDpVKUHmZWsNlhb9R2oqElv9gXl.M5bjyW6NFqMTkW5V8VGi0ZZ.xw4je1tgSspnjO+yO0CywBBsXKD5MRFgdAKhYJ1cR2egw4CwAzqXQkz9YcGQjh9RtbEvmSbaghwjk3EzKwV0p3hbdvf.lQplZvFpFzomLX8zP40hT8eCSylwo1EsQSACktMpeHiGLIOV0HjS0IEQ9IoQ923NlEv1reQF3QIB7JPTNG3TYeTp88fRNknT0TJ8X2oDEK1THwxmuvcj.NPligTcYpjpKpxeW0suDzPXZFgWRGpfEaP3+hVsZ3Ae8jendcHcqMde.CGti648id4vVPM8kQwRArv+TP1oVsyTmimWRUhhBA9ERBlegTt7khfgTJ2uv5f5CWIHsALygeMLoveQCO4r+7I0+q50VzTacl8L2O8GcyEJ5Zv.fr4PgxqkqDAzfWSIFrXAm5CPahA21vqsMJpsaibcHyPSsRfBe8.NmEqKCtCH7i2klctGzL.qVdvTsygS08EvEz9179r6AuIgXkQQWooGFyOXhekhcWviwlvlSF8ssZ97RTGpnrVaqpFHX1pvQCQ1ayKhZr4bZy+N6c.BlfyDzMY.OEcAy1z5B7beFDX2jjL.DMykLLOYcpk4P09LYO4Mmtwr52lf6c1nKktBH6DC8DLigqhPWIaM9GgfYKmC8vF2yd+PI49j76QMf6Y7UzDhTldI69z1Yol8bCLM+mX09XNeFzazurq.KThBWJMzWI7SbGPSu6JZ97cJKyVbpZmhsMrU6CnuXUzLppbvZUD5nc61jO3vZSRRSGkTTJFIXlWESyVOTxCrs+r+e6lpnr7os8ZFCAUMIMWeTVy07ydDCLiqKjPQIju7jMzuM5brAmaFvhfWhoJCyFLNmS+.LlKsmcM2yo5kFYbhtYGgHmG9Yc5MENj0ccwh+n60r.S3lM9DtaHksHrXh5m90tQX.tqyIVvFZj15InRtcc3qN1uNCl6t07EXxlLXEGat83N6b8LAvg6slwXmiHzLy5xYm6wLvV6cF3gRwG6NgYHg6liU1AGgCt+O3X1KG9J2AymCcNKHXU2g+9w9LgOi6gN0FlXAzXUwrm4WtJZJzLlPAuKDTt1VGTwV5mttkcsMCLE5fkr3egOYBaaW6jIrctPTDlnjumjdgw91jGlrCvIQxSwpAuIDV60N+lhqaqlsPQvyjdOgXC+mB2F2MlNGAlyNBLO6Hv77i.yKNBLe2Qf462KF6KTe4JiLJ85.rwjAIcrbbFHvPkURUH5+v3kgFg
            

            Hise Develop branch
            MacOs 15.3.1, Xcode 16.2
            http://musikboden.se

            gorangroovesG 1 Reply Last reply Reply Quote 0
            • gorangroovesG
              gorangrooves @d.healey
              last edited by

              @d-healey Thank you. I thought it might be something like that. I was able to draw a single slider the way you suggested, however, I got tied up trying to implement it for the array.

              Here is my original LAF script:

              const var PannerLAF = Content.createLocalLookAndFeel();
              PannerLAF.registerFunction("drawLinearSlider", function(g, obj)
              {
              
              	 var a = obj.area;
              	 
              	 var thick = 2; //thickness of the line
              	 g.setColour(PanState == 1 ? 0xFF666666 : 0xFFe38727);
              	 g.fillRoundedRectangle([a[0], a[3] / 2 -thick /2, a[2], thick], thick / 2);
              	 
              	 var wthick = 6; // width of the handle's white outline
              	 var hthick = wthick - 2; // width of the handle's innder portion
              	 var hx = a[2] * obj.valueNormalized - (hthick) * obj.valueNormalized-1; // x location of the handle
              	 var cx = a[2] * obj.valueNormalized - a[3] * obj.valueNormalized;
              	 
              	 
              	 g.setColour(Colours.white); //Outer white ring of the handle
              	 if (PanState ==3)
              	 	g.fillEllipse([cx-1, a[1]-1, a[3]+2, a[3]+2]);
              	 else
              	 g.fillRoundedRectangle([hx, a[1], wthick, a[3]], wthick /2);
              	 
              	 g.setColour(PanState == 1 ? 0xFF666666 : 0xFFe38727);
              	 
              	 if (PanState == 1 || PanState ==2)
              	 	g.fillRoundedRectangle([hx+1, a[1], hthick, a[3]], hthick /2);
              	 else if (PanState == 3)
              	 	{
              		 	g.fillEllipse([cx, a[1], a[3], a[3]]);
              		 	
              		 	g.setColour(Colours.white);
              		 	g.setFont(FONT_REGULAR, 10);
              		 	g.drawAlignedText("M", [cx, a[1], a[3], a[3]], "centred");
              	 	}
              	 
              });
              
              for (s in AllPanners)
              {
              	s.setLocalLookAndFeel(PannerLAF);
              }
              

              It works perfectly for a single component.

              How do I apply this to AllPanners array, using PanStates[] values of PanModeComboboxes array?

              Goran Rista
              https://gorangrooves.com

              Handy Drums and Handy Grooves
              https://library.gorangrooves.com

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

                @gorangrooves If possible I wouldn't hard code the colours in the laf function but apply them to the sliders and use these within the laf.

                Free HISE Bootcamp Full Course for beginners.
                YouTube Channel - Public HISE tutorials
                My Patreon - HISE tutorials

                1 Reply Last reply Reply Quote 0
                • gorangroovesG
                  gorangrooves @ulrik
                  last edited by

                  @ulrik

                  Thank you. That works for a single element.
                  As you can see from my script above, I was able to place all 3 looks within a single LAF function. It works perfectly if you want to set the same look for all of your sliders with a single change of the combobox.

                  The challenge here is applying LAF looks to individual sliders based on the value of their comboboxes.

                  @d-healey Hard cording or using slider colors doesn't really make any difference here. Its like telling the guys on a sinking ship: "I think you better put on some sunscreen." 😂

                  Goran Rista
                  https://gorangrooves.com

                  Handy Drums and Handy Grooves
                  https://library.gorangrooves.com

                  d.healeyD ulrikU 2 Replies Last reply Reply Quote 0
                  • d.healeyD
                    d.healey @gorangrooves
                    last edited by

                    @gorangrooves said in Repaint panel or sliders on combobox callback:

                    As you can see from my script above, I was able to place all 3 looks within a single LAF function.

                    Update the snippet with this change and I'll take a look

                    Free HISE Bootcamp Full Course for beginners.
                    YouTube Channel - Public HISE tutorials
                    My Patreon - HISE tutorials

                    gorangroovesG 1 Reply Last reply Reply Quote 0
                    • gorangroovesG
                      gorangrooves @d.healey
                      last edited by gorangrooves

                      @d-healey Thank you, Dave!

                      I appreciate you wanting to throw me a life line and not just a bottle of sunscreen 😁

                      HiseSnippet 1913.3oc4Y07aajaEeF6LAQZ2rMKvdo2H7kJ0Ha8oSVTWiH+k1ZTYaAqrKJfgaJ8LTZXMEovLTqkS2.rG5eDcu0+K589OQA5oTTfdtW5412iyLRyDI4Mqj2KMCL7HR993268HejONcBTtrvPUfkctWd6Plk8G6z8Vo1+.eJWZc7gV1ehyIzPMKfD0092NjFFx7rrsW+KvNry8.Kyy+9E6SEToKaZWVVekh6xZyGv0S6sSyeMWHZQ8XujOHE0MZdrqRdfRnFA3YcmJVCotWS6yNkhjslik8COxiqUAc0TMKzx9A6q7tsqu5FYD8eEOjekfgMpZ0EDTT2sTBODwXuVG3yEdcRr6PKPJcl5EVOxK7YNmv83S5ep23IlAHS4Hs+vdsrva8LvqZZ3UIE7lCjrSAoGDAoO0oqa.end5HHd9HmikPvoGEb6ogRDsVq8W9HmCT.ER8VCnWyZE.MlvQgmUoRIB7uh6jGnJTIXa4JXzfBPG4gXQnl70z.xgCB6PkveLAYWRh75yzGnFLTIgFE1HEMafbmh88DBneIKHD39h4ydDd6J3drfpaTrTdxBd99Yu1pwd8Ui8FqF6auQwKy36AO2IJOFP9UpqTiY2gOzPy9pw2o+6NQRhDpsxRn9JKgFqrDh8k4iciQqJQ22k6Ttb0MIsKedIRsMOub6Rj5aRN4rSOKO9TtLoKSSRlypUDHbnCTBxPZ.jJRi8p5Q5xGLTvHXVPx.k2HAKLOWJ3RFo2Hoqlqj.GnPNfJDWA4xJ3lfxRPvULhUj7GxmSnboBBW5wFCna5pksLccVuobAKr.qNWBKgnEArLw3tvvAZzuwXFol0DBVj1mkxQ.Pd9.1Le6tPrIrjE0yLMcQfmj.9HOSFCdB7yYn7cMKfVCDvwMVXTrJhYRBhCy2SEPJvApqrCgS9ko8nBlru1G59oOEMDTKoU+kaEhyjLA6IdfrgPvJdShZQK9Nz6r9j4n9YHZwnHcbIAF6F8PpSZuWKBL2zW4ERPjfA6PSNkvroS.iAocZhb2.F3kaiQk1J006I8ZwXBbOfITuU.qOGOEPq34IE1vKfdSaXpCMHJy0FklLIpP+RD0U+9h4goJ4LpkBpC5YKJnpch6KI7lYBLPDF+Iwzn84tWCDTaGR4xlFRXuObwGZd3LWfv9Q9K7XCElJzcIUIufTYbqVOy7P9ElFr5e9yq87h6X3qGbNjyUifYWdmyb0TYeAqvEzKpbYIB8h5WRJSpQ1LBDkqg8UCFwzN4MRRwTH9lDH+LDxja3dZ+D75SkdB1OKjbiOGfnZjN1BPF8SXLVBaFYzKPBbI.5.xPU.5vSDAtRDwH4ma71lUKmpBFPE7Wy7.QVHRKEmOAaV0nwwl01lrAYTarVb+d0hw0M2AicTuSPK5U3VF2RQDCmMBOwYjaJfK6OCP38Hoi00KB8kKJfdjPvGFBwQ2waVEiYUuL5c8KeZsj2WZhYLQH6NlH3ONh8RwwjHlmzDlRjD4W1ofyZI.Key2jZswt0RYZyChOsZBH8yBR+LfDM0YzUjaC1BZdNuDwhhKVnnjxg6+XnegAvoi2BRwTn0Ym9xWc9QewW1dOXC2pUlP.lBYOAuuj48R1XXm6SfjHyWykHa3B4pBXdaXLmbuA8duAOooIsKthHUpbL0StPDAyjVaRNMLE5js8TxSUZ1YxBFNgbqj2cnd8l6Xw4oErf4NLVgSvcwXA4nAWwBR1cMgP3X+YqkvYw0RjtTG2nb5oHTIOVx0mMjIWTAPVwaD.0cjOFU.oZSUGehS5SmZwghK9IY5ppkA3wUw8m+tu6e7BqevBoVFg71W+Y+qkPH0yHju8u9ed6RHjFYDRy7+s+4RHjsy5SFt6eeVg7jXNRNrpQLXwZwmgOiHLUW+CUD0VcQTe0EQiUWDaOGQ7kGeHUSwJkim7BSnGxfMCw0J1Gx9ZtKKpt4bNGxBuVqFZY+vIEI.+NR0ONopZrvUiderSpRYsFm9xLtMcCy9xS5nyeroOi22O00b7aaZ6jRge768Bp2WcZc5L5rQyP8sBy037qTA7WC9FJXVZ1fjqUI2Cezi9S8PZYRJj.AuNi1vg3j3sFDBoMvLwXL.ZB4m6eHOfYRY8NxDJEBLqT1WV+l0RX40RY4u8207CHKudZKe3GRVdiTVdma+Pxx2NcL+a++AK+Qum6rsf7aMYMGPgwbrWGZg1BjJ+m5DcX0p4idWK9c8Y8QZvf.tcNX+pKArVXxm6OXUaIf0ByLb+Aq5KArV3x16OX0XIf0BWSc+AqsACdl6l+INmf2+GUm8SEf2LX7.3Bqz2OOdG7xPt91zmp4d66G79BwO0oCW65OeLt1bvHbfqeLvX7Wc4wNG0qGjEZJ.efSqeyONehEKnVZMW1+DpNfiyLNczftPlSWFncnBQAVyk8ZX0QQsqfsQOPWlzyz3+BOwCVEaaGOX0jAsFPcCTuJ91iwuqyiL8.XRZ9jV4bNAaSlbZeGmJaUwZ.jq9Uttn4uIjKa97TaI3o9RvSikfmsWBdd1RvyyWBd976jGbax8FoUChVN.cz4HSkF11GY1G0LKz5+g3ZY.N
                      

                      In this script, changing the first combobox, changes the look of all sliders. (The other comboboxes are just standing there looking at what the first one is doing.)

                      Goran Rista
                      https://gorangrooves.com

                      Handy Drums and Handy Grooves
                      https://library.gorangrooves.com

                      1 Reply Last reply Reply Quote 0
                      • ulrikU
                        ulrik @gorangrooves
                        last edited by ulrik

                        @gorangrooves it works in your example as well, you have to have as many created laf objects as panners, and store the 3 functions as separated functions, then it's possible.
                        May a bit too much work

                        lafs.gif

                        EDIT simplified snippet

                        HiseSnippet 1996.3oc6Y8zbZjbEeFIMtDrqS7VUNjbqKtXHFg3exdqxI0Bh+XSEDPA3s1TJJNsloA5ngtolowBbpTUNjOD49dOmxGf7EHmy0MmRka62fjW2yLvLR.qDHmjJNTxdn698meuW+5Gu9Mcb3lDWWtildr9ymPzz+TidyYhQUFgoLsFU0z+gFv2YCInl3AHNCUAaaeI17JsSmOA65Rrzz02+URp0icfl5y29EmhswLSxxozz9RN0jzjNlJVNamR+LpsccrEoOcbHpKVpgImUgaymBHaeirZS.MhGRZgkjsmgl9ipYQEbmdBrf3poevobq48Fwul4Q+WRcoWZSjCxo0CDj2z041VRDKmUqxHpsUm.OfqFHkNK8G664O9AFmQsnKleoe4IpEPK4Hr+Peunva+HvKWX3kMD7VAjzCAoC7fzmYzyzgNQrbEId9DiFLAwY.Fb6gghGsZ605IFU3.ELQlw3qH0cfAK3H4yylMMB9uTuLNPkK2ljwzlfcRBSDG1KbEn2gcPUG61Ayf+H1neJJPdCIhJ7wS3LXPxDgnIQTtKaaCSyHNt.ymuZt8faOapEwIWhToiiVymua1yuarWX2Xu3tw9IIRcQDmG34NiaQ.xujeIeFYC9PEMmxmsQ+2FQRfDxuyRnvNKgh6rD78kwO93XEPUaTudst0Z0G0rbcT82zpR+Fsa0K1Qa9i+NgMdP8oLybfye.7TP4rjCSi3W9qSE+2DOlbiBCqAiyfcH3WFOl2jhQTyqfEx+RzwGqFvfitH9.XEBxlxHwiMLiqD9xjdIyNqd8mq9.GgfUF.4I6xmxfrWcIlBHgrMI443yydQZD97BWfNFkGcjmVNNubt7vJpwAOkjjZAftN.QOWhHz0TKwn.3.46srIO0Ec8Hpff3SEd.Tx2n.97EvQdlzZD.kAH1AMg6H8T9RXFvsDenerxO8Nr8TRKtyXrM88DKPhI8TRpUSvQ4TJbFxlahkhMpV8Th42oRTdsUtnxGEdyv6gaFk6HkT6smBIN8cONT1vaBg0sgMZlbqIGrk349717VLD15RcKsGNT33iox7mngN342Ak8rbApaTT0MJj59sKRy3Gbm+eGA2jBe9Kx+h+ev8+QBt+usv6ffAvx8hu4NpRN+PEgW3tGgGCI+2cMJOFZ8w4x0d.izWBrsIZ2iycKd2WFeni38TyNFy64s1sn9fMvZ11zItv9l4ri7C+7dV3hmkO34EoVoV2TztI0Ap4dSpKHVWpB+H8fHq0ZXfVNCMf6fd5XNi+zETWGJYJY81s5+1t0d0aZVtaZTtrARyxAecYa5PFwpOYFTJ0YIRiVM.RiRXBUa4PrR3eTCJypW+1cqg5+5ZmgZzBUF9qa2x+7nGBk60phXCpoJ8he.Zw2JDT2Vkt0J2uFpcqZdks0tKpV4JuF0qYip05BZnJZi5zqnZ3JrJMJkpzkjjBix9RDE8SBc4jL1D1PwHX5m8LUZgkLmYxT2QICp1zDRQHHMg3V6lb9UkYV0ID6jojdwkh6b5ER+8sHaoTAJjtNkkh5QDnfaII3H.9BGtMZB1At6qPNKDV1iNdBDpHu1MZL2ZpMwMNkIOZuHuFvgTHAWWOoYPcwoQpiGJKSdlyFhBsHxiWgbApoZOXIWd.T4zv.CgnMkp3brWDnBrKzYTHjxauDE5JL.OpiXfn7tprzZVssnt7y8vXt08kVoMIgd3MBIIWjwgLj5B95fvzjIjGHZBPB63QchzQBiOWghixcQH2zDoa5VnvyaMYMdqvFoxcsvCvYs3BRaVRkoBJAcykFLXkq4qEahyJWV13EmMwXR1zwWRbB6nkDpoePzVbXr9VbDtCLldmcBQHm0fQEsmPXqquLZ9G3zzzi6iJfTgpYHeOiv2ZViZoo+8iLUNMEvCZtTpewe+Kzt2BIeDgT5u89+zVHjBQDx270S9KagPJFQHn+3q9GagPNIpO4u90+4aKjm3yQvknUh4SLVzagnhPS6vR2WQj+lhP6dKhB6NJJdSQ7s2aewIqvPdSipXAV1.O+fWHfdBApbRdVQuJ4cTShW67hYTk3dkfOQS+QKZdA7cOU+3fl8I6mlRuO1HTG1zlEtGqyCOPUD2hI576KMhPGNJT2W+kkzMBovO8Nef5tpSsV2RmEK4Jlaq5y7q4Nz2C9FLXVBx3ft8F6QGd3eXfjVBCCIPjcYsIj2kIaloKj1PVPhbO.FBYkGVk5PTortgLgevDLqP1WT+l1VX44CY4eyupzGQVdgvV9jOlr7hgr7Ny+XxxOI7d9u6+Er7Cui+x1ZxuUhTZLFVyPeeXjzVfT4+HCUAPnbw8dl2+Yga6iDfAAbaT4zbaArVaxmGNXkeKf0ZyL7vAqBaArV6w1GNXUbKf0ZOS8vAqS.C9VuxvmXbl7VhXQz2fo79i9KHOXE90FJe0fLWpXd3Bidvdsl2UH9YFcnByQqFi6sBLBEb8g.i9uL3GaTav.HKzR.dfQ8u5Cya9UqKepfxFdFV3PkQFslNtGj4zjHee7PpM4ctz2Sd6HuwYkikdfdDlkZv+D93uXN4Xc+EyErn1XroC+s98XP95lOTMCfIl5MsGy3L4Xzhp8MLxlIq1XHW8aMMkl+QPtrUyS9sfmBaAOE2BdNYK344aAOuXK34y2HOxelr7TAer2wAXhN0T2zPWul52QUQgZ+K.bfrkzA
                        

                        Hise Develop branch
                        MacOs 15.3.1, Xcode 16.2
                        http://musikboden.se

                        gorangroovesG 1 Reply Last reply Reply Quote 2
                        • gorangroovesG
                          gorangrooves @ulrik
                          last edited by

                          @ulrik Yeah, I know I can set each slider separately, but I am looking for a more elegant, scalable option. I know that Dave is a "freak" of that department 😁

                          Goran Rista
                          https://gorangrooves.com

                          Handy Drums and Handy Grooves
                          https://library.gorangrooves.com

                          d.healeyD ulrikU 2 Replies Last reply Reply Quote 0
                          • d.healeyD
                            d.healey @gorangrooves
                            last edited by

                            @gorangrooves said in Repaint panel or sliders on combobox callback:

                            I know that Dave is a "freak" of that department

                            Working on it... :)

                            Free HISE Bootcamp Full Course for beginners.
                            YouTube Channel - Public HISE tutorials
                            My Patreon - HISE tutorials

                            1 Reply Last reply Reply Quote 0
                            • ulrikU
                              ulrik @gorangrooves
                              last edited by

                              @gorangrooves ok

                              Hise Develop branch
                              MacOs 15.3.1, Xcode 16.2
                              http://musikboden.se

                              gorangroovesG 1 Reply Last reply Reply Quote 0
                              • gorangroovesG
                                gorangrooves @ulrik
                                last edited by

                                @ulrik I appreciate your help very much, regardless of what solution yield most practical results! Thank you.

                                Goran Rista
                                https://gorangrooves.com

                                Handy Drums and Handy Grooves
                                https://library.gorangrooves.com

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

                                  This is the problem

                                  var PanState = PanStates[obj];

                                  obj is not an index, so you will always get PanStates[0].

                                  I can see a couple of possible solutions, but the thing that is really confusing me is why the laf function is retriggered when changing the combobox value... I added a button to the UI and pressing that also triggers the slider LAF function. Maybe it's always been this way but it seems weird to me.

                                  Edit: Nope, I just made a test and this is definitely weird behaviour in your snippet. I need to figure out what's going on.

                                  Free HISE Bootcamp Full Course for beginners.
                                  YouTube Channel - Public HISE tutorials
                                  My Patreon - HISE tutorials

                                  gorangroovesG 1 Reply Last reply Reply Quote 0
                                  • gorangroovesG
                                    gorangrooves @d.healey
                                    last edited by

                                    @d-healey I am itching. I've been pouring over this for over a day now....

                                    Goran Rista
                                    https://gorangrooves.com

                                    Handy Drums and Handy Grooves
                                    https://library.gorangrooves.com

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

                                      @gorangrooves There is something very strange with your snippet and I can't figure it out. I'll make a new snippet.

                                      Free HISE Bootcamp Full Course for beginners.
                                      YouTube Channel - Public HISE tutorials
                                      My Patreon - HISE tutorials

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

                                        Ok here's a minimal example. I'm just colouring the sliders in a solid colour, you can fill in the blanks in the laf to do what you want.

                                        There are a few ways to achieve the goal but I just discovered that we can now access the component ID in the obj within the laf function, I don't know when this was added so if it's not working for you you need to update HISE. But using it I think gives the cleanest approach.

                                        HiseSnippet 1187.3ocsW01aZbDDdOaeIkqsQIp4yUm7mNjbH.NMspVsEaroEE+BJjZUojznk6VfsrrKZ2EanU9OT+00+Asyr2AbIFgsox9CV2ryaOyK6rCszpXlwnzDuBuY5HFw6K7aOUZ6WuOkKIMOj38H+SnFKSGldzASGQMFVBwyayeFOvqvVD2e+yOc.UPkwrEGQHmq3wri4C41Em1p1q3BQCZB6M7g4j9E0ZFqj0UB0X.Oa5WlLhFOf1icJEEaCeh2CNJgaU51VpkY.YNPkLsce0kxT4Oma3cDLjnBoMXnziI06yEIslEqFBwaqVKh7MSi7m5eBOgO+7EYfG6XDtPi74.uMVEjpbGfjWNHsUJjdhe6XMejcAGDOeteSITP5RgTcdnjJKYiuZK+5JPBoszP5.VCMPLWinWVt7Ngv+JtWP.jtM1vARUGAsa3ODNSsXMChliUwTwwJ0f8kIMXLQDpRlvkzrdbrsnwXYrkqjQamnoWdLWxn51BdBSu8Ngcmwr2NgpN+Qwf+JnvETcHWlvl.9CMVyDSIG8Yci.YJwS.23jxfoTPpX0vNpCTSXl25D78k5wrmSEiYQECeVXE.UN4iccNfxAELWxsw8CiblnXPAvuEhoFVX4uG9pPpjt.F+v.QSxdHiNPfO.sWpzUVtzc.WuLwqtbw6oYLYd4KbEhwdk5BWC1WHhR0n3dEBtBSwO+4tDiIW4ARRfAe662K2YlbELHg.FptZ3HkDnMQa+JPh28tjsQC1UoCil.Y8T8bkgYo9QiM8ilfFnYRTQL0OojgYuVsOqtCBbEfcDitxRXGrtjgpEEpUBs5Yhcc3sv.EyvAZEsRTmJDcfgAQJ4LYx3fHNfKEPi271svqIEjhy7+NgWfcNtbf.Cx4MiKb979w4Zgdwk6l0AZXxjWyFAiHrm.2LggT3siqxgfSUV1YxHmiBtJH7SY0s6R4kAXASuT13DS8pTLRNdXGlNeXhBBiT934TO31MmJNsJlSPkrojaOaDKitgRjfyevuu9TMRVa.LeayLDBeYcS2db1zsY8CDdBNbaFYEhKDx+.C4NZhp++MwtKwD+ZyCoVJNxNK5fHdDSa4Xh06P1EvadoCvK3eHyLvpFAI74WAHdOL00OJy0oyKcN9g93E2JjIDOeumBta5BO+i0L1oB2az+hRy+Sv2TAAF616Ptl45C9DdF5ErlxVZFbSBegfjCCO3FvP0TL722FLrJ+bSw5to9olmyO9deM3k6g37Fa1ljeQjbQ7uWaH0gvMABtkMzfHuRP0fcI2c+TMmepwt+7yt4iG6s1OWeEDX4GUxXA09waDgq9kw.KG4WCAW0PZ31o4uybGVSp7JWS51Bwm32BWAX4XbikfQ3578AFyVt7K8OpaWn2cA.2xuwustaRdCt+0pwVtr2ITqlik5SGOrMrfQLC7tTxDFr7uANbNktLRiYf1vqZNh+E9KiYEj1KiYkYLICowZ0GhSGlhqu9YtS.LIcaqW.9YC.c37o399kKUlLD1j9CwwX3+L38hkqS00PmcWCcdwZny2rF57x0PmucMz46VoN3OhY+wV0vzqCvAsNx8Nlm2QRJzY45BI+GngGjOC
                                        

                                        Free HISE Bootcamp Full Course for beginners.
                                        YouTube Channel - Public HISE tutorials
                                        My Patreon - HISE tutorials

                                        gorangroovesG 1 Reply Last reply Reply Quote 1
                                        • gorangroovesG
                                          gorangrooves @d.healey
                                          last edited by

                                          @d-healey thank you very much! I'll investigate that thoroughly and report back (on successful results, i hope).

                                          Goran Rista
                                          https://gorangrooves.com

                                          Handy Drums and Handy Grooves
                                          https://library.gorangrooves.com

                                          gorangroovesG 1 Reply Last reply Reply Quote 0
                                          • gorangroovesG
                                            gorangrooves @gorangrooves
                                            last edited by

                                            @d-healey @ulrik Thank you both so very much! Both of your solutions work very well.

                                            @ulrik I didn't see your latest simplified version at first. While I was taking a break, I was thinking of a possible solution if I wouldn't be able to iterate through the index within LAF. I thought about creating multiple LAFs within a loop. Then, when I opened your latest script, I saw that you did that 😁

                                            Thank you!

                                            Goran Rista
                                            https://gorangrooves.com

                                            Handy Drums and Handy Grooves
                                            https://library.gorangrooves.com

                                            ulrikU 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post

                                            14

                                            Online

                                            2.0k

                                            Users

                                            12.7k

                                            Topics

                                            110.2k

                                            Posts