HISE Logo Forum
    • Categories
    • Register
    • Login

    Some indications to make small popup

    Scheduled Pinned Locked Moved Scripting
    popupopensettings
    28 Posts 8 Posters 6.3k 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.
    • M
      mwplugs
      last edited by

      @Christoph-Hart how would you go beyond two panels with the example code you provided. i have 16 i have to do lol

      1 Reply Last reply Reply Quote 0
      • staiffS
        staiff
        last edited by staiff

        @mwplugs :
        add 16 panels, 16 buttons (or more or less) and

        1 - solution 1:

        inline function onReverbSetsControl(component, value) // *for one panel (reverbSets in this example). so you must do that for each panel you want to add*
        {
        	Panel2.set("visible", value); // *visible*
        Panel3.set("visible", !value); // *not visible because of "!" before "Value"*
        Panel4.set("visible", !value); // *idem*
        Panel5.set("visible", !value); //*idem*
        etc. ...
        };
        

        for each panel just change the "!" for the visible panel and invisible panels.

        2 - Solution 2 :
        Use the first script that Christoph gave 6 month ago, but don't use the inline function (delete it) and use this in the OnControl:

        function onControl(number, value)
        {
        	switch(number)
        	{
        		case Tab1: //Tab1 is the name of your button, change it with your own name
        		{
        			Panel1.set("visible", value); // visible
        			Panel2.set("visible", !value); //invisible
        			// Insert logic here...
        			break;
        		}
        		case Tab2: // idem of Tab1
        		{
        			Panel1.set("visible", !value); // invisible
        			Panel2.set("visible", value); //visible
        			// Insert logic here...
        			
        			break;
        		}		
        *etc. ...*
        	}
        }
        

        3 - Solution 3:
        if you want to use just 1 button to control all, always in the OnControl:

        switch(number)
        	{
        		case Tab1:
        		{
        			if (number == Tab1)
        	{
        			bg1.set("visible", value);
        			bg2.set("visible", !value);
        			// Insert logic here...
        		}
        		else if (number == Tab1)
        	{
        			bg1.set("visible", !value);
        			bg2.set("visible", value);
        			break;
        		}
        }
        }
        

        Excuse me i'm French.

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

          The shortest solution is to use an array and the for loop to iterate:

          // Store all pages into one array
          const var pageArray = [Content.getComponent("Page1"),
                                 Content.getComponent("Page2"), 
                                 // ...
                                 ];
          
          // Call this function with the page you want to show
          inline function showPage(page)
          {
              for(p in pageArray)
                  p.set("visible", page == p);
          }
          

          page == p will evaluate to true for only the page you want to show, every other panel in the array will be hidden.

          1 Reply Last reply Reply Quote 0
          • M
            mwplugs
            last edited by

            nice. so im using small edit buttons (x17 actually) to select page of 7 knobs which edit each of the 16+master (quick edit). i like the loop option but what would be an example code linking the buttons to the selection of the pages. also alternatively for the larger full edit popup over nearly the whole gui, i need to put an X to close it.

            1 Reply Last reply Reply Quote 0
            • M
              mwplugs
              last edited by

              nvrmnd i figured it out. however i do need to know how to add an X to close a popup panel

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

                Ah, you might also want to check out the native HISE popup system. Check this:

                HiseSnippet 892.3ocsV87iSbCE1NalVRff.odjCi1SYknQy.rPkppJaxxVEA6RTCrp2Pd83jXVO1ir8rKADR8uudi+S3Tu1973YRl.CnMHgODk2O8me9687LQqnLiQoQ3q+hkYLD9FASWJsKFsfvknwGhv2L3XhwxzgdUCWlQLFVBBi24ObJvcZiJVe72GRDDIksVEBcphSYOimxsq0l83mxEhiHIrWvSq48Cd7XpRNRIT4.d1IHBkQnmSlyNg3bqU.5BN6RCBGEb+6MPed7Yu8fAex5x2NB9cNn+BwvXsYeFHhn4ZMSZOEBGgCv+GrvAOIgaU5oVhkA4bmgpjkSWntT525S4F9YBlSHFMEvjWMZzBtHYRUYyfP31SVWD2wWD+ofi4I7U5WWLuUggv0QTubhasIjZuAjh+RP5HkHwkfu.7v0fWaO7tcvTplmYWawgsqGLVB2yyHvMXcX48E05evAiTfGR6fTx4rizfvpH5+vnn6FteTzd+Zut85B2iFa3EDc3DhjIhC+svpXmyriToYJIHzeWu4c8QwkBtjENKWRsbkLTIGlasJYrKVsRzmVE3cgbKxY60q6650sCeV+JwNgvxmzAFnzcfYhJKOq+Lhvvb6RGF7mM8iJTFVkiNedeAZZFvkHZ28FXb5Kv0HhPbFPU6+o.1krZmlSTV1yk82q6651o66+LKyl0joxTIX5lr55fzekv5KySOioqpWk9ALgMoZ+vUipQ8kjZNpjikb6yyXkxqIiwMPFQk0TGsrDffq1BR4MKIk9JHhCIoSPY4DUf95yUPub7gDKoJQPNg8Iiosb2wAeH6BXtims2I3Pl4bqJCFgr5hDNxWgs8MtoEifcao6OP6E5RdhcgS3uAgEL97EVmzcPEGtUI+G8IuWUilinUj6qE3Ic9TOnJ0utdp+2MR8G.Itmb5SCF2B848zvjEURtfX2bbiaDcoAfWrQesq2UZ31k0GguEyfhZbFTiW6WQ3d6fIbKcQy3sUC3Et9+di2xI58BdxrYLpcMXaGbze8sN9dKfxepxsb47iIVM2wYNIOcJ79HkAHQBzAiiizxw97xQNYWkYJSlDU8ZWowXmLtzXbkQTJgpUuh5aHcuYbsBM.ljEu71A9D.PNbUenC2ovCYuhRcEheFPdyQbusNh6u0Q7fsNh825Hd3VGwi15H9kuRDtuZ3fbqJ02VfP+OcGNoJA
                
                gorangroovesG 1 Reply Last reply Reply Quote 1
                • M
                  mwplugs
                  last edited by

                  works great. i want to have double click the waveform display open the popup instead of deleting the loaded wav now.

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

                    Thats not possible unfortunately. But you can hide the filename and change the colours in the latest version.

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

                      But you could overlay a transparent panel and use its mouse callback for this. But then you‘ll loose the ability of dragging the sample area.

                      1 Reply Last reply Reply Quote 0
                      • Dan KorneffD
                        Dan Korneff
                        last edited by

                        Is there any documentation that details the visible property? I'm looking to use buttons to hide/show controls, but the scripts above look foreign to me.

                        Dan Korneff - Producer / Mixer / Audio Nerd

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

                          @dustbro Yes its use is to toggle control visibility. The page == p part is a shortcut for if page == p and will be either 1 or 0

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

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

                            @Christoph-Hart said in Some indications to make small popup:

                            Ah, you might also want to check out the native HISE popup system. Check this:

                            HiseSnippet 892.3ocsV87iSbCE1NalVRff.odjCi1SYknQy.rPkppJaxxVEA6RTCrp2Pd83jXVO1ir8rKADR8uudi+S3Tu1973YRl.CnMHgODk2O8me9687LQqnLiQoQ3q+hkYLD9FASWJsKFsfvknwGhv2L3XhwxzgdUCWlQLFVBBi24ObJvcZiJVe72GRDDIksVEBcphSYOimxsq0l83mxEhiHIrWvSq48Cd7XpRNRIT4.d1IHBkQnmSlyNg3bqU.5BN6RCBGEb+6MPed7Yu8fAex5x2NB9cNn+BwvXsYeFHhn4ZMSZOEBGgCv+GrvAOIgaU5oVhkA4bmgpjkSWntT525S4F9YBlSHFMEvjWMZzBtHYRUYyfP31SVWD2wWD+ofi4I7U5WWLuUggv0QTubhasIjZuAjh+RP5HkHwkfu.7v0fWaO7tcvTplmYWawgsqGLVB2yyHvMXcX48E05evAiTfGR6fTx4rizfvpH5+vnn6FteTzd+Zut85B2iFa3EDc3DhjIhC+svpXmyriToYJIHzeWu4c8QwkBtjENKWRsbkLTIGlasJYrKVsRzmVE3cgbKxY60q6650sCeV+JwNgvxmzAFnzcfYhJKOq+Lhvvb6RGF7mM8iJTFVkiNedeAZZFvkHZ28FXb5Kv0HhPbFPU6+o.1krZmlSTV1yk82q6651o66+LKyl0joxTIX5lr55fzekv5KySOioqpWk9ALgMoZ+vUipQ8kjZNpjikb6yyXkxqIiwMPFQk0TGsrDffq1BR4MKIk9JHhCIoSPY4DUf95yUPub7gDKoJQPNg8Iiosb2wAeH6BXtims2I3Pl4bqJCFgr5hDNxWgs8MtoEifcao6OP6E5RdhcgS3uAgEL97EVmzcPEGtUI+G8IuWUilinUj6qE3Ic9TOnJ0utdp+2MR8G.Itmb5SCF2B848zvjEURtfX2bbiaDcoAfWrQesq2UZ31k0GguEyfhZbFTiW6WQ3d6fIbKcQy3sUC3Et9+di2xI58BdxrYLpcMXaGbze8sN9dKfxepxsb47iIVM2wYNIOcJ79HkAHQBzAiiizxw97xQNYWkYJSlDU8ZWowXmLtzXbkQTJgpUuh5aHcuYbsBM.ljEu71A9D.PNbUenC2ovCYuhRcEheFPdyQbusNh6u0Q7fsNh825Hd3VGwi15H9kuRDtuZ3fbqJ02VfP+OcGNoJA
                            

                            This was a great solution that works well and is easy to implement.
                            @Christoph-Hart I was wondering about the following:

                            1. Is it possible to remove the close (X) button in the top right corner of a pop-up panel, on per instance basis? And if so, what code do I need to add?

                            2. When a pop-up panel is initiated using a button, it can be closed in 2 ways: by clicking on the button again or by clicking on the close (X) in the top right corner of the panel. When a panel is closed by clicking on the X, the button that originally initiated the popup stays in pressed state. How do we reset the original button to its unpressed state simultaneously while a panel is closed by clicking on the X?

                            Thank you.

                            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

                              1. Is it possible to remove the close (X) button in the top right corner of a pop-up panel, on per instance basis? And if so, what code do I need to add?

                              Just use a normal panel (disable the popup mode).

                              HiseSnippet 853.3ocsV0sSaCCE1ozLQ5VQCo8.DwUsRLTKCXShMst9GqZCnZkgl1MLShaiGI1QIN.UHj1iFOE64XuAcGGmzDfBp8B5cme9Nmub7mOt8C3VjvPd.Ry3nw9Dj1KzGLlIbZ4foLTu1HsUz2GGJHAlJWMG6iCCI1HMsk1S5PynHJ92+9XSrKlYQxbgPGyoVjuR8nhLu9M9B00sK1lbD0KW1a0nmEm0h6xi.9rjdMjO15L7HxAXYZEzQZOqiMUvCFHvBRHRqXSt83AN7KXp7OlFRO0kHMpiF.ER4tK20VxXoWTKGpqc+zu6PDTk9YSgkTSgWouO0lN0e1z3kwALyPjednU3wnW87zq17SOsbzqnhdqpOvJf5KxhH41y06wfCpgX3HHOsT4hJ7WM8VbHClXCO7YjtAfwTDU1oVs0M2tVsp6VtT4RvAQnv7bbfYeLi3V27CloXGQDs3d9bFXTYMU30TnnLWJiXNLhYInblIm0LRH3r5RrAb2JVo.WGpsaDoZ4RWUtjI7SUmMBgoUZxpL1UEe1cOo7qUciPh3XY9YnLjvJW55XlMGvSZaKrq6oftqxcIurl49xNfKHGxpTszUkLJc88hLb3rBkTJWRvrhJuND7Hvpvh7NkDjN6RxCTE2V1o+vxt72JrTijbIxY8XTwg9D1CIFQIyQorLgTPphXQ4JIhR0TCQAsmgdxHDEy376JPeuWar.mVHnlPe7IABp7SPqM4bXwgRsan2lDdlf6C6.ld3A6Bli1d4zVdS+Fiy5+mabA0V3j43WMbHzQN41R89FnbMyP0rxoW7jp03dsrtR4lqUn8x0p+7y6zpaX2sUl+tAUP7RW7Y7rzkmYd2LuaA4RQVxSlLgD699qIfkUb6HWr31avjqsSB.xqaspPtNfEREiyeT8jrVado6p58oBKmYy2Byfufh5oluIORTVuyvgDKQFYKp28GO8uHf9FORPYi1GKBnfrS+fHuAfZvh.LgAhQ4N.sBxaqJ6ZRa4jY.gYGa.hlIIAqKs0RBVOMHxCaEvOwRcGW9Lzxwd.NwheM1.9aAfs4zq1Rd6AuMdhkkbP7Zf4yFwlKLh2rvH1ZgQr8BiXmEFwaWXDu6QPH+iHeJRv8TWK.G86DuRUSqCCCppXEH5+DH4o+C
                              

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

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

                                @d-healey I shall try that. Thank you very much!

                                Goran Rista
                                https://gorangrooves.com

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

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

                                19

                                Online

                                1.7k

                                Users

                                11.8k

                                Topics

                                102.4k

                                Posts