HISE Logo Forum
    • Categories
    • Register
    • Login

    draggable filter panel preset problem

    Scheduled Pinned Locked Moved General Questions
    33 Posts 4 Posters 1.5k 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 @yall
      last edited by

      @yall - so you need to find out which node was last touched, and replace the "0" or "1" with its number...

      HISE Development for hire.
      www.channelrobot.com

      Y 1 Reply Last reply Reply Quote 1
      • Y
        yall @Lindon
        last edited by

        @Lindon
        it doesn't work the way I want it to. in fact, sorry, maybe my translator doesn't express exactly what i mean.

        for simplicity. I want to create exactly the same as the parametriqEQ1 in the effects.

        1 / create a draggable filter panel> ok
        2 / create 3 buttons only (Freq, Gain, Q)
        3 / I create for example, 12 frequency points on the EQ1. I want to see acting on my selected frequencies simply with my 3 buttons. as in the paramtric EQ effect.
        I don't want to create 36 buttons (3 times 12 frequencies).
        I don't know if you understood what I meant ^^

        3 buttons to manage all of all frequencies. as soon as you select a frequency, the buttons return to their respective value

        LindonL ustkU 2 Replies Last reply Reply Quote 0
        • LindonL
          Lindon @yall
          last edited by Lindon

          @yall - yes I understood.. so you need to :

          1. wait until the user has "touched" an eq node.
          2. find out which on it is ( I dont know how you would do that..)
          3. So given there is a way to obtain this node number - in some variable - lets call it: nodeNumber

          do this:

          inline function onLoShelfFreqControl(component, value)
          {
          	//low shelf freq
          	local eqdx = nodeNumber * EQ1.BandOffset + EQ1.Freq;
          	EQ1.setAttribute(eqdx, value);
          };
          
          Content.getComponent("LoShelfFreq").setControlCallback(onLoShelfFreqControl);
          

          HISE Development for hire.
          www.channelrobot.com

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

            @yall Since the draggable filter panel has no callback system, you can't find which node you clicked to connect your set of sliders.
            But what you can do is create a set of small buttons, one per band, so you can click to select the band manually. Unfortunately, it is not possible to do it automatically unless something I'm not aware of... I don't even recommend that anyway because it means that if you drag a node, the sliders are not matching the actual moving node... You have no other choice but to wrap up your own draggable EQ

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

            Y 1 Reply Last reply Reply Quote 0
            • Y
              yall @ustk
              last edited by

              @ustk @Lindon it does not work. indeed the EQ1 does not have a reminder. It’s a shame because that would make it possible to gain precision, to have freq gain knobs .. which manage all frequencies. tanpi i will wait for @Christoph-Hart to work on the topic ^^ anyway thank you guys for your help

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

                @yall - yeah I wouldnt hold my breath if I were you - like @ustk says - the knobs end up showing something thats not correct - its counter intuitive.

                HISE Development for hire.
                www.channelrobot.com

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

                  @Lindon I had thought a solution may be possible but complicated. create 50 frequency node. create 50 panels with their buttons and hide them. then make them visible only when a frequency is selected. but I can't even imagine the work

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

                    @yall you dont need to do that. A single set of knobs would suffice if you knew which node the user had selected. But as @ustk says - there is no call back for this user-selects-a-node event so you are stuck - not going to happen. Unless @christoph decides to add this event.

                    HISE Development for hire.
                    www.channelrobot.com

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

                      @Lindon yes @Christoph-Hart my genius, my god, give us this gift :) it's my birthday next week ^^

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

                        @yall I'm not sure the floating tile system can be easily upgraded to accept callbacks as there isn't one in the currently available tiles... They are simply not made for that purpose but I might be wrong, and we might gain from having one with the draggable filter, at least just to catch the index. But as @Lindon said, I wouldn't hold my breath...

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

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

                          For anyone else coming here for the original subject, I made a generic thing that will handle all parametriq EQs in your project (obviously if you only have one then ignore this).

                          // Save EQs with presets
                          const eqIds = Synth.getIdList("Parametriq EQ");
                          
                          for (id in eqIds)
                              Engine.addModuleStateToUserPreset(id);
                          

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

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

                          46

                          Online

                          1.7k

                          Users

                          11.7k

                          Topics

                          102.0k

                          Posts