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.
    • 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
                                          • ulrikU
                                            ulrik @gorangrooves
                                            last edited by

                                            @gorangrooves my pleasure 👍

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

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

                                            18

                                            Online

                                            2.0k

                                            Users

                                            12.7k

                                            Topics

                                            110.2k

                                            Posts