HISE Logo Forum
    • Categories
    • Register
    • Login

    setAttribute - not working for me

    Scheduled Pinned Locked Moved General Questions
    14 Posts 5 Posters 1.1k 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.
    • LindonL
      Lindon
      last edited by

      Ok last frustration of the day....

      So I have a midiScript processor with a single slider in it. The slider is linked up to the attack value of my envelope - and works fine.

      in my main interface I say this:

      const var Acoustic_OUT_COMMS = Synth.getMidiProcessor("Acoustic_OUT_COMMS");
      
      inline function onAttack_ACOUSTICControl(component, value)
      {
      	Acoustic_OUT_COMMS.setAttribute(0, value);
      	Console.print("setting the attack");
      };
      
      Content.getComponent("Attack_ACOUSTIC").setControlCallback(onAttack_ACOUSTICControl);
      

      literally nothing is happening - there isnt even a Console.print.

      Perhaps this is because the Attack_ACOUSTIC widget was/is previously wired to another container - but i cant see how to "unwire" a component - so I dont know if thats the problem or not....

      HISE Development for hire.
      www.channelrobot.com

      LindonL 1 Reply Last reply Reply Quote 0
      • LindonL
        Lindon @Lindon
        last edited by

        @Lindon ...and a quick test shows me I am right... so we MUST have a way to remove processorId and parmaterId - without it this is very very poor UX

        HISE Development for hire.
        www.channelrobot.com

        1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart
          last edited by

          Yeah, basically that requires you to open up the JSON editor and remove the processorId and parameterId manually.

          LindonL 1 Reply Last reply Reply Quote 0
          • LindonL
            Lindon @Christoph Hart
            last edited by

            @Christoph-Hart any chance of a fix then?

            HISE Development for hire.
            www.channelrobot.com

            1 Reply Last reply Reply Quote 0
            • Christoph HartC
              Christoph Hart
              last edited by

              Yes, however there's an unspoken "if there's a workaround, it's not a bug" policy in HISE :) so it's categorized under "cleanup maintenance task"

              1 Reply Last reply Reply Quote 1
              • ustkU
                ustk
                last edited by

                @Christoph-Hart What if I want to link a button from the main interface to a script processor, AND use a callback in the main interface script?

                Can I link to the script processor from the callback in the main interface?
                I know there's a workaround using a global variable, but this is not a good idea AFAIK

                For instance, I have a button in the interface which controls another button in a script processor, but at the same time I want to set a panel visible in the main interface

                Thanks

                Can't help pressing F5 in the forum...

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

                  @ustk You can either use the interface designer to link a control to a parameter or you can write a custom callback function. You can't have both. So if you want a control to perform more than one function you will have to use a custom callback.

                  @Christoph-Hart Would it be possible to link a control in the interface designer and also have it trigger a custom callback after it performs its linked action? Or is there something fundamental preventing this?

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

                  1 Reply Last reply Reply Quote 0
                  • ustkU
                    ustk
                    last edited by

                    @d-healey Thanks, I understand that we can't have both, I think because it would be weird to have two different callbacks for the same control (I guess the property editor use a kind of callback in the background)

                    so what should I do in my custom callback if I want also to link to a button in a script processor?
                    is a:

                    ScriptProcessor.setAttribute(n, value)
                    

                    working?
                    If so, how to define "n" when you have 20 controls?

                    If it is not the way, it would be cool to add it 😀

                    Can't help pressing F5 in the forum...

                    orangeO 1 Reply Last reply Reply Quote 0
                    • ustkU
                      ustk
                      last edited by

                      Ok I tried, and it works this way ☺

                      Still, I don't understand how to find "n" except by trying all the possibilities

                      Can't help pressing F5 in the forum...

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

                        @ustk To get n put all the controls in an array then use array.indexOf(control);

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

                        1 Reply Last reply Reply Quote 0
                        • orangeO
                          orange @ustk
                          last edited by orange

                          @ustk Take a look at this example

                          A knob controlling Gain, Limiter Treshold and Delay at the same time. You can multiply the controls as much as you want...

                          By the way to get the n, you need to learn the control parameter names: create a slider (you won't use it to control, just to learn parameter name), select processor ID and Parameter. You can apply this Parameter name in setAttribute controls. Then delete the slider... ;)

                          HiseSnippet 1318.3oc6X8zaaTDEe1jrgXCA0h3CvJK.4fRS8FmjVUDxIw4OXBw1pNs.mhlr633QY8LV6NaaLUQhOAbOHNzuCbhy7ofaH0u.bf6v6M6td2E6DRPzpFoL4Rl2626Mu4su+MtsuzgEDH8IFENX3.Fw38L6LTn5UuGkKHM1hXXZZaaS1b3.ZP.ykXXL8tHKiByPzq+n1lTOpvgkRhPdpj6v9JdetJkZ602i64sC0kc.ueFzqrdCGontzSFBlwzlUHCnNmPOl0jhvlxjXL61tbkzuihpXADiY1T5NrSO4yEQ3eJOfejGC2XS5.JJh7NROWzhQpj583dtsSttADPKsSu7SGc4+Py84t7QzScB2QyvJUhr9CiotLyyNq4U4padFYLuYhLu6Z1wwmOPkxAss20rgPw76RgOAYMqHrjo9jYLqKADB0R8omv1wG1LRhx1qUYQK6UprvmMew4Kd+wVVat8tMZ1n4tVs1w5fuXaqM1us0SZ13.q6ewKTUv2z.k0yn9ZI9bKcX0RGyTa2sKyQUtDPtDdp4.t7Efb4+ATcrEy2dRvS3UJ5Nk7Wty4PLHFDNwyPcc2SHOReVZdkVz5gKZU8AQ5HAV.Cc9CX9JNK.7j8+xNsZlSnWLeQKXUpuzkU5QVk1h4vOh4UZwD5.pGYcO6JURn7btqpGPydkkGAhdJPn5ZI6CTrAc3eGpvJKAhles5pqNBXX2tbT1RVtal4Lcc8XskAbEWhG+nyVwNUgnq2Z+MaXsWyVoBwCZ6EdLWzl5C4gf+Dvo7CYI7GjmKlrhZJ0Uf9syhbebgGWvr5FJbPKvRJRfgNVeoWYGY+ARA3hWD9B4ExVX9hfmr..C84anT97iBUrxHATtDXf5Kj78NOxQTOnmOKnWOHaaQqxZote00VPKIFXMl9WdosXdzgwmvmVEQdVtn.HVqdh8l4i+BnphuP0oddGAkwJO1UEUWFGQSoh0RTdghunXghmMFmtcmDqXU4w7mDWr7p+kHVYQX+iX9ItvXbPUl7kwLu3xXYqx5D4Tx.TJZH3pVCXhKp3FI1Shk4hMJ.pRWj68iKx0wi6x7IbnVVQyDeHQaxw8NVu5Ou55jmzXKphlnIPooIn.ssXOC5DEU9rf4VrfSTxAZrwe+fC7pbtmB9Ci4fCcH9OeL7O4Spx17KIaEo8imiqeoVecKyY+o+JZAI331OJQBcZK1qERaIXoiHqUW5ffIoXi4zjThtlApgeHVCikshloAvXBoo4tXjway.M6jtgdTU9NfH7XF3ENaqFrch.bDCyNVvqk1hWUy8tls4JmdS1dmZB1KD.851diGxXdynFUoF6Ll67M+WmnXxC7TYRSTLcFa4cFMsGu+.O1toS6AQFWzzd5DNcwwr9suNNVLlv2t9DlGzX57WnouZWn+ko1t7..cG9aLArefo1wdSxf0e3u4Xv2wrM8sg.hGKCUbww6SgYNvZ9MC62Ad5iCCLUgf4gsdMlBaRFsuBtGMnNLgqdC1AIlocRcdjocBSxUHSeVLSe4K4gcDR1T8uu6NsW+1T8aS0uMU+s1T84RlyM9sOZeQwjc4+QbhdUTrK3k+YiWUqUnZPnZTq9pup1iYdLZPlr6euF7RI3UMof90Z6IXIHd44m+a09eK++Mh26MwYzm53KOzI5cNXgs4zTf6sPOMdAy8w8V1IutA8GvyK3G53fCGdOH1ZxRr70VhpWaIV4ZKwpWaIV6ZKwCt1R7vKQB7G2aiPkreT0BfP6s0upzvXaAEhV0oLj+FCRRsfC
                          

                          develop Branch / XCode 13.1
                          macOS Monterey / M1 Max

                          1 Reply Last reply Reply Quote 0
                          • Christoph HartC
                            Christoph Hart
                            last edited by

                            Or use the autocomplete popup which shows you all available parameters - this is also more safe because of NO MAGIC NUMBERS.

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

                              @Christoph-Hart said in setAttribute - not working for me:

                              Or use the autocomplete popup which shows you all available parameters - this is also more safe because of NO MAGIC NUMBERS.

                              Oops I totally misunderstood the question.

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

                              1 Reply Last reply Reply Quote 0
                              • ustkU
                                ustk
                                last edited by

                                Thanks! It is way easier...

                                Can't help pressing F5 in the forum...

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

                                43

                                Online

                                1.7k

                                Users

                                11.7k

                                Topics

                                101.9k

                                Posts