HISE Logo Forum
    • Categories
    • Register
    • Login

    Display User Preset name with Label but without Knob

    Scheduled Pinned Locked Moved General Questions
    23 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.
    • Dan KorneffD
      Dan Korneff @Tania Ghosh
      last edited by

      @Tania-Ghosh Check out @orange snip.

      In short, anytime the preset it changed, you need to call the UpdatePresetLabel function.
      Example:

      inline function onButton1Control(component, value)
      {
      	Engine.loadPreviousUserPreset(1);
              UpdatePresetLabel();
      };
      
      Content.getComponent("Button1").setControlCallback(onButton1Control);
      
      inline function onButton2Control(component, value)
      {
        Engine.loadNextUserPreset(1);
        UpdatePresetLabel();
      };
      
      Content.getComponent("Button2").setControlCallback(onButton2Control);
      

      Dan Korneff - Producer / Mixer / Audio Nerd

      Tania GhoshT 2 Replies Last reply Reply Quote 1
      • Tania GhoshT
        Tania Ghosh @Dan Korneff
        last edited by Tania Ghosh

        @dustbro Ok.. Understood. Thank you. :) Sir.

        Tania Ghosh

        1 Reply Last reply Reply Quote 0
        • Tania GhoshT
          Tania Ghosh @orange
          last edited by

          @orange Uuuhuuu... Yippee .... Thank you... Genius. :)

          Tania Ghosh

          1 Reply Last reply Reply Quote 0
          • Tania GhoshT
            Tania Ghosh @orange
            last edited by Tania Ghosh

            @orange The snippet is not loading..:crying_face: !
            Snippet.gif

            Tania Ghosh

            1 Reply Last reply Reply Quote 0
            • Tania GhoshT
              Tania Ghosh @Dan Korneff
              last edited by

              @dustbro One little Question... How Can I change/Update Label text by changing floating Panel presets? Because the code is working only if I change it from the Prev and next buttons.Change Pre Float.gif

              Tania Ghosh

              1 Reply Last reply Reply Quote 0
              • Tania GhoshT
                Tania Ghosh @orange
                last edited by

                @orange said in Display User Preset name with Label but without Knob:

                HiseSnippet 2542.3ocwZs0aaibElzwLYo23rIEAsOzTjA5gBYCsJj5tRQP13KJwciu.KmjVraQ.M4HIhPwQkbjczFXf1eSEEnsOUj9T+IzeA80BruTzWROyLbHonnskbylJCCKdl4Ly24x2YtPeP.wFGFRBTT0OZxHrh5M05NwmNXyAVt9J6rkh5sz10JjhCPBQaLYjUXH1QQU8ZOkIPUeYE9m+0i2vxyx2FmHRQ4kDWa7ycG5RSjdvW80tddcrbvG4NLUuq8U6XS72j3QFC34ZZFJirreiUe7dVrtsjlh5021wkRB5Rsn3PnOaPblzc.4TeQ+eoan6wdX1ClJcgARHVYyAtdNGHs0PEE0kOHwxulvxuq1ttNtwxS7.2l2.JQiz9.0klFRKOEjLOOH0g34vFfyAdpof2xB3cGst1AtinIsvv1mqsiODb5YAt8zvRzWkkdwc01j.8vmVdn0avcBfGh0nXCCiRn5FFq8KVcE1OOHyGzFa+zc1am8dJZ+Nnid11nCNb6taeDZiC2u61Ghd0N6s09uB8fy8iXTgfZHEchUPj5udC3qOBIwkkiyAV9XuhERZtPIDfrHbI6XHlY7ivATWbHXIC+kc2euLZ8tUWAAeJbpqCcPgGhZ1rZoHQCvt8GPAYUZKE4RwCE4aLwl0ZWsR8V0qLayUf1Ma0tYqF0Z21T1NE+VZr5EpznUsp0qUudAY6GSBbvAcc+NLScozSDYDfHZvX7z88PKG2wgPSFf7yjgE4Oy3H2eD1GmwWtwXJk3G6VDcA7LUJgLWD+YrhuaF+WqRY7x0pUIsOg4MRxTdEjpD6RFYE.S8ljgiH9vWR5oH9Ic7g6RFBMaELIqaperC2rQylMqXVO2fY0llUqVuoYs7ik0LZ1rcKy1MZG6lc88b8wndi8sotDeDweJGAyoEP7JZKgdIHP3MFu1pqD4fb6gJxEgdzi.WsPH6y6R9ZzPxFLn5BNfECJFmQThapL3H6+Y.7lJl0Gm37xFpViMZQ3bSKOuigpmEy2LxlYkStULFuHpZbmDD1pKTFVZkmGdKvtxMVWyrcslM.hm44GrqVolQ01erHt8r7BW.l6r9VOR3kvaEcA7L0.OwhwbiUcNXtsZb4bNIkdymCU8mClbp35++XsBmvmFVKOcXwosQwoKl1NkcLGz1MBHmNStUGOhE00u+Qtd3jELE8DvOjfUsxBsVarpBuT5.bMyFFMq0tdiV4SVqz1nc8psyaQXVLtpQ6J0a2rdq7WksZkFMqYztZ0lxliPLaSR7bv.Lf8X.F0osrnVrVe22F7s9mEKtCQj39j.WKuBY4F0qWalZPUSnPyCAHmEwWcEeX6rgvVawnW.XT.3W45.4Hg7zR8Gr95nMCvrMThrPVAfwfNlWd.QGXQQ1Sr8flnCBHi6O.9KFYONfgFjMnTeRvjxn0gceomkdXyG0HejnfCCMkPusDZRIz3Q.APmAAcOhskG5TNrxaEfD0jI9Lst3zGgN7gO1IyqD.OmTixPHHz5D7N9BnlpjKzBkP7nti.giGgdLpvyIVNHeHKAMlk4ORnB5gQs.OehKYb3TsVJgrd46IAlSfWRNUxNC4UC8bgug94nmQNgGo00OKsqP35J6.YdkAb9H.ry1JyOAYJzCIiA9ItnLPUrOKPHhD58EEHXLfhzAtghwb.aZAy23sUL5v+.VL7PKwCLnv0sGbVqif7a+9.2+aL3qSyGk97rN5fhqkH3Y7nPw09MQhjn+wncsnCJevNOnBLKlkqiVWJQLQ4Y5.p2E7633hZwVG9DvOmxByZUOBw6g3onAVm2S2dBkKayb+XG9fDMJrFSiZQa55a62G7skgZfN6AYIIjthxsaw5EFxulUgChRdlQIcAdNKM33Sd.dDKhVLkeQWO.SGG3GQmXRDKOjgo+bqiwdBJdHbBxvoX1LDfDPnLn45re0+0jw.kG30LuAr3Gxkhr7cX+4THti.JnOikXgFQFA+8TWpndgfFfNVTmLY.2bbHkLz86rXwoGxlTd2SpQCZx40SPjd7l3kCPTBhMdf.9vHvIRtXjPU9rbYUk1xMbjm0jz0W9TWRppYkr0jZmsxif9yMaHRIbDS4RWzJLoHPWsZDLd9S77xsBQmNUpC+zfWgP9PbEhjpKFu0vLS4Cm.qSODaSWjRGloGZ1ZrEkqvBGxtrQtSbmNVNVXqVqMEcWL+OwysuO14Hf7VLhax1PkfXjvLYWSDCQei47C0Bd3dzBWXML1kTELaMrrkuxg2mcrf8VKFshUE24h9Of0LuJ0iNSrAkKufYx1NewHw9Hf4elcyTNmsaTPp.6nMsZVBUO4TuIi5VjS8WvwMQE1HCmEjMxw6LO09jSWl4RGcY4nBS8HLClPMAz4dwYx6Oa6815+gqNK0oZ1iPw6CIcq7tUzW4rUPYapWubaK5bCdPJWdMKRFu.EK5Od3w3.4oljcTQc4ou0yqOe25osnVbpNR72w2kxtaBwyI2KpYN2KpRTwbEE0khPHzUJ+9QuUz8iJxATbgA4Kzl5tOT3FQ5amVYQFDwIwxYPdwNriWvt01H3krNCHaKXCD1Xwc3pqsEN7MTxHN9iVMPQ8yES9pxa3ksZFetuoVxxDJuUQUSkMeSjegufELpWW6ZBjHVvhI4mEgsjEtYRu28t2uaZoUXhu+8u+ukIN4jVrKVN9ZQTRtNDVuUiF5z26AStzcntbJSS+7LsUzjEBDF1+TMxvzRaXegRVC6tQRhVJVQ8mnk69+UxrlaFm4z6mmcG+SuedVpwkaD2TKopivL9aWUy3mpctGV4ioo7Ymmo.o4oqvIrleetYasTOursXqof1ks+nKwnRi4aN2DbNnWRBZ0nTZlKY5qiNwV9KyXK2Sld2Og27gO7gbXSEJT3GmCa5N24NeOS7EafottMIVywlmMN8izxdICYJLb+KtvvePMuBC23F23+jio.h+9OdEFNQtnf.sSUB7lyc8Wt09OTmIFeCM98SlX6uT4SWnMmnxkDfuEM5kNJL3z2PG2rus1z20lvtulLJiRVLTrzhj+J6draX8kx5Fdl5rtA3w+8rtg+96e+GxwMr6W+h+T1zB8q+m+i+02OuNG1gBXgL9wBT3KepdcMXismonL6q971Z6RbF6YQm9sxxd8yQM.aZYpW+I6Ub5G5Rmj90Su.upVibeUs4tkj4Dt2Q6.Wp8f7w6R4fWFA4GX7F8huWUa6d8fi3k.1k057qtpuk6E.JhSz1eWKZfKK8duwC6BIS1X.I9PAuPY47nmMjkN5h8c3O.r2OD0nojkwZzT1nxPK6.xqsE6yi8p0+LtD.S97+qBz01k8LxTtwNMMixFJCccbessMyU7k.1yWmJWAcpdEzo1UPm5WAcZbEzo4UPmVWnNr+YKdxXJYnfl.BNXaQEB0s8sfrLdFox+E64YeSC

                I really need it.. but the snippet is not loading... 😢 😢 :crying_face:

                Tania Ghosh

                NatanN orangeO 2 Replies Last reply Reply Quote 0
                • NatanN
                  Natan @Tania Ghosh
                  last edited by Natan

                  @Tania-Ghosh Try This:

                  HiseSnippet 2545.3ocwZs0aaibElzwLYo23cSJBZenoHCzCExFZUH0ckhfrwWTh6FeAVNIsX2h.ZxQRDghiJ4H6nMv.s+lJJPaepH8o9Sn+B5qEXeonujdlY3PRQQaK4ljJCCKdl4Ly24x2YtPeP.wFGFRBTT0OZxHrh5M05NwmNXyAVt9J6rkh5WnsqUHEGfDh1XxHqvPrihp50dBSfp9xJ7O+qGsgkmkuMNQjhxKHt13m4NzklH8fu9ab875X4fOxcXpdW6q2wl3uIwiLFvy0zLTFYY+Zq938rXcaIME0qusiKkDzkZQwgJpKuAwYR2AjS8E8+EtgtG6gYOXpzEFHg3NDOGFhYRU1bfqmyAR6NTAFkCR7BWS3Eti1ttNtwxS7F2h2.JQiz9C0ktH3YlFdFyO7TSAukEv61ZcsCbGQSZggsOWaGeHP0yBBAogknuJK876nsIA5gOs7PqWi6D.ODqQwFFFkP0MLV6Wr5JretelOnM19I6r2N68Dz9cPG8zsQGb31c29HzFGte2sOD8xc1aq8eI59m6GwnBA3PJ5DqfH0e0FvWeHRhKKGmCr7wdEKjzbgRH.YQ3R1wPLy3GgCnt3PvRF9K6t+dYz5sqtBB9T3TWG5fBO.0rY0RQhFfc6OfBxpzVJxkhGJx8XhMq0tZk5spWY1lq.sa1pcyVMp0tsorcJ9MzX0KToQqZUqWqd8Bx1OlD3fC5598Xl5RomHxH.Qzfw3o66gVNtiCglL.4mICKxelwQt+HrONiubiwTJwO1sH5B3YpTBYtH9yXEe6L9uVkx3kqUqRZeByajjo7RHUI1kLxJ.l5MICGQ7gujzSQ7S53C2kLDZ1JXRV2T+XGtYilMaVwrdtAypMMqVsdSyZ4GKqYzrY6VlsazN1M65645iQ8F6aScI9Hh+TNBlSKf3UzVB8RPfvaLdsUWIxA41CUjKB8vGBtZgP1m2l70ngjMXP0Eb.KFTLNinD2TYvQ1+y.3MULqONw4kMTsFazhv4lVddGCURKluYjMyJmbqXLdQT03NIHrUWnLrzJOO7VfckartlY6ZMa.DOyyOXWsRMips+PQb6Y4Et.L2Y8sdjvKg2J5B3YpAdhEi4Fq5bvba03x4bRJ8lOCp5OGL4Tw0++wZENgOMrVd5vhSaihSWLscJ6XNnsaDPNclbqNdDKpqe+ib8vIKXJ5IfeHAqZkEZs1XUEdozA3ZlMLZVqc8FsxmrVosQ65Uam2hvrXbUi1Up2tY8V4uJa0JMZVync0pMkMGgX1lj34fAX.6w.LpSaYQsXs91uK367OKVbGhHw8wAtVdExxMpWu1L0fplPglGBPNKhu5J9vVaCgs4hQOGvn.vuz0AxQB4ok52e80QaFfYanDYgrB.iAcLu7.hNvhhrmX6AMQGDPF2e.7WLxdb.CMHaPo9jfIkQqC69ROK8vlOpQ9HQAGFZJgdSIzjRnwi.BfNCB5dDaKOzobXk2J.IpIS7YZcwoOBc3CerSlWI.dNoFkgPPn0I3c7EPMUIWnEJg3QcGABGOB8HTgmQrbP9PVBZLKyejPEzChZAd9DWx3voZsTBY8x2SBLm.ujbpjcFxqF54BeC8yQOkbBORqqeVZWgv0U1Ax7JC37g.XmsUleBxTnGRFC7SbQYfpXeVfPDIz6KJPvX.EoCbCEi4.1zBluwapXzg+ArX3gVhGXPgqaO3bWGA4298At+2ZvWmlOJ84YczAEWKQvS4Qghq8ahDIQ+iP6ZQGT9fcteEXVLKWGstThXhxyzATuK32wwE0hsN7IfeNkEl0pdHh2CwSQCrNumt8DJW1l49wN7AIZTXMlF0h1z021uO3aKC0.c1CxRRHcEka2h0KLjeMqBGDk7LiR5B7bVZvwm7.7HVDsXJ+htd.lNNvOhNwjHVdHCS+YVGi8DT7P3DjgSwrYH.IfPYPy0Y+p+qIiAJOvqYdCXwOjKEY46v9yoPbGATPeFKwBMhLB96otTQ8BAM.crnNYx.t43PJYn62awhSOfMo7tmTiFzjyqmfH83MwKGfnDDa7.A7gQfSjbwHgp7Y4xpJska3HOqIoqu7otjTUyJYqI0NakGA8ma1PjR3HlxktnUXRQftZ0HX77G64kaEhNcpTG9oAuBg7g3JDIUWLdigYlxGNAVmdH1ltHkNLSOzr0XKJWgENjcYibm3NcrbrvVsVaJ5tX9ermaeeryQ.4sXD2jsgJAwHgYxtxHFh9Vy4GpE7v8nEtvZXrKrJX1ZXYKekCuO6XA6sVLZEqJtyE8Oh0LuJ0iNSrAkKufYx1Ne9Hw9Hf4elcyTNmsaTPp.6nMsZVBUO4TuIi5VjS8WvwMQE1HCmEjMxw6LO09jSWl4RGcY4nBS8HLClPMAz4dwYx6Oa6815+gqNK0oZ1iPw6CIcq71UzW4rUPYapWubaK5bCdPJWdMKRFu.EK5Od3w3.4oljcTQc4ou0yUN+a8L8kxZKpEmpiD+c7cor6lP9rvRkRLThMvzhRrqzR4lSNcKQzrW0pRz5CJJpKE0cnqT9Ut9EQW4pHsRw0QQ8K0l55TT39kzW9sxhLHhC2kyf77cXmXgcQvQvKYoKP1VvdRrwhqEVWaKb3qojQb7Gs.ih5mKl7UkWZLaAR9beSsjUdTdihplJa9lH+BeMPXTut10DHQrFHSxOKBaI6EfI8t28t+tokVgI9d26d+Vl3jCuwtq53aZQI4FVX8VMZnSeUJL4R2g5xoLM8yyzVQSVaQXX+S0HCSKsg8kJYMr6DIIZ0cE0ehVtGoPIyx3YblSeDA1qMX5iHvRMtbi3lZIExDlwe6pZF+Tsy87OeHMkO67LEHMOcQSg076yMaqk54ksEaMEztrsbcIFUZLey4lfyA8RRPqFkRybISeC2I1xeYFa4txz69I7l2+92mCapPgB+3bXS29129GXhuXCL0M3Iwpx7TR3Gok8dKxTX3dWbgg+fZdEFtwMtw+IGSAD+Ce.KLrzhETiJ3xMu+g5LA0anwuiyDi8EJe5hk4DFtjH5WPidwkBCN8s7wM6aoM880Ir6qICqnjU+DqkHIrxtG6FVeortgmpNqa.d7eOqa3u+t289bbC69MO+OkMOP+5+4+3e8cyqygcvBVHiezBE95kpWWC1b7YJJy95Suk1tDmwdVzoeytrWmcTCvFel5UnxdMo9gtzIoec2eTdcuyKbus1AtT6A4i2kxAuLBxGY7F8xyWUa6d8fiIl.1k057q93+lxUDmJt+tVz.WV58diG1ERlrw.R7gJbgx52QOaHqr0E66ve.XuuOpQSIKi0norQkgV1AjWYK1XG60y+YbI.l74+WJnqsK6YjobmbZZFkMTF5539Jaalq3q.rmuNUtB5T8JnSsqfN0uB5z3JnSyqfNstPcX+Ca73wTxPAMADbv1hJDpa6aAYY7LRk+KnOgkz.
                  

                  Or Just Paste This Into The Editor

                  Content.makeFrontInterface(600, 500);
                  
                  
                  //////////////// BEGINING OF THE PRESET BROSER WINDOW //////////////////////////
                  
                  
                  const var PRESET_Bar = Content.addPanel("PRESET_Bar", 0, 0);
                  
                  Content.setPropertiesFromJSON("PRESET_Bar", {
                      "width": 773,
                      "height": 29,
                      "itemColour": 2149325852,
                      "itemColour2": 1897864991,
                      "textColour": "268435455",
                      "borderSize": 1,
                      "visible": true,
                      "borderRadius": 0,
                  });
                  
                  
                  
                  
                  
                  
                  const var PRESET_Opener = Content.addButton("PRESET_Opener", 2, 1);
                  
                  Content.setPropertiesFromJSON("PRESET_Opener", {
                      "height": 28,
                      "width": 442,
                      "text": "PRESET BROWSER",
                      "parentComponent": "PRESET_Bar",
                      "isMomentary": true,
                      "bgColour": 16777215,
                      "itemColour": 371335714,
                      "itemColour2": 4077981969
                  });
                  
                  inline function onPRESET_OpenerControl(component, value)
                  {
                      if (value == 1)
                          {
                          PRESET_Container.set("visible", true);
                          }
                  };
                  
                  Content.getComponent("PRESET_Opener").setControlCallback(onPRESET_OpenerControl);
                  
                  
                  
                  
                  
                  
                  
                  const var PRESET_Container = Content.addPanel("PRESET_Container", 0, 31);
                  
                  Content.setPropertiesFromJSON("PRESET_Container", {
                      "width": 773,
                      "height": 435,
                      "itemColour": 4194764551,
                      "itemColour2": 4077324039,
                      "textColour": "268435455",
                      "borderSize": 1,
                      "visible": false,
                      "borderRadius": 0,
                  });
                  
                  
                  
                  
                  
                  const var PRESET_Closer = Content.addButton("PRESET_Closer", 473, 1);
                  
                  Content.setPropertiesFromJSON("PRESET_Closer", {
                      "height": 28,
                      "width": 86,
                      "isMomentary": true,
                      "text": "CLOSE",
                      "parentComponent": "PRESET_Container",
                      "bgColour": 16777215,
                      "itemColour": 371335714,
                      "itemColour2": 4077981969
                  });
                  
                  inline function onPRESET_CloserControl(component, value)
                  {
                      if (value == 1)
                          {
                          PRESET_Container.set("visible", false);
                          }
                  };
                  
                  Content.getComponent("PRESET_Closer").setControlCallback(onPRESET_CloserControl);
                  
                  
                  
                  
                  
                  
                  
                  const var PRESET_Browser = Content.addFloatingTile("PRESET_Browser", 3, 32);
                  
                  Content.setPropertiesFromJSON("PRESET_Browser", {
                     "bgColour": 4160749568,
                      "itemColour": 4290953929,
                      "itemColour2": 3092597581,
                      "textColour": 3267409337,
                      "ContentType": "PresetBrowser",
                      "Data": "{\r\n}",
                      "Font": "Arial",
                      "width": 554,
                      "height": 328,
                      "parentComponent": "PRESET_Container"
                  });
                  
                  
                  
                  
                  
                  
                  
                  namespace UserPresetWidgets
                  {
                  	/** Creates a arrow button that cycles through the current category. */
                  	inline function createPresetButton(name, x, y, up)
                  	{
                  		local widget = Content.addPanel(name, x, y);
                      
                  		Content.setPropertiesFromJSON(name, {
                  		"width": 15,
                  		"height": 20,
                  		"saveInPreset": false,
                  		"tooltip": up ? "Load next user preset" : "Load previous user preset",
                          "parentComponent": "PRESET_Bar",
                  		"allowCallbacks": "Clicks & Hover"
                  		});
                      
                  		widget.data.up = up;
                      
                  		widget.setPaintRoutine(function(g)
                  		{
                  			g.setColour(this.data.hover ? 0x20FFFFFF : 0x28FFFFFF);
                  			g.fillTriangle([0, 0, this.getWidth(), this.getHeight()], this.data.up ? Math.PI/2 : 1.5 * Math.PI);
                  		});
                      
                  		widget.setMouseCallback(function(event)
                  		{
                  			this.data.hover = event.hover;
                      	
                  			if(event.clicked)
                  			{
                  				if(this.data.up)
                  					Engine.loadNextUserPreset(true);
                  				else
                  					Engine.loadPreviousUserPreset(true);		
                  			}
                      	
                  			this.repaint();
                  		});
                  		return widget;
                  	};
                  
                  	/** Creates a Label that shows the current User Preset.
                  	*
                  	*	You can click on it and it will open up a popup with the preset browser.
                  	*
                  	*	Customization: Use the itemColour property of the Panel to set the
                  	*	Preset Browser Colour.
                  	*/
                  	inline function createPresetDisplay(name, x, y)
                  	{
                  		local widget = Content.addPanel(name, x, y);
                      
                  		Content.setPropertiesFromJSON(name, {
                  		"width": 312,
                  		"height": 29,
                  		"tooltip": "Click to show the Preset browser",
                          "parentComponent": "PRESET_Bar",
                  		});
                      
                      
                  		widget.setPaintRoutine(function(g)
                  		{
                  			g.fillAll(this.data.hover ? 0xFF252526 : 0xFF252526);
                  			g.setColour(0x01FFFFFF);
                  			g.drawRect([0, 0, this.getWidth(), this.getHeight()], 1);
                  			g.setFont("Arial", 21.0);
                  			g.setColour(0xFFadaea8);
                      	
                  			g.drawAlignedText(Engine.getCurrentUserPresetName(), [10, 0, this.getWidth(), this.getHeight()], "left");
                  		});
                      
                  		widget.setTimerCallback(function()
                  		{
                  			this.repaint();
                  		});
                      
                  		widget.startTimer(300);
                  	
                      
                  		widget.setMouseCallback(function(event)
                  		{
                  			this.data.hover = event.hover;
                  			this.repaint();
                  		});
                  		return widget;
                  	};
                  
                  }
                  
                  
                  Engine.loadNextUserPreset(true);
                  const var UpButton = UserPresetWidgets.createPresetButton("UpButton", 487, 5, true);
                  const var DownButton = UserPresetWidgets.createPresetButton("DownButton", 451, 5, false);
                  const var PresetDisplay = UserPresetWidgets.createPresetDisplay("PresetDisplay", 129, 0);
                  
                  
                  /////////////////////// END OF THE PRESET BROSER WINDOW //////////////////////////
                  
                  
                  
                  Tania GhoshT 1 Reply Last reply Reply Quote 0
                  • orangeO
                    orange @Tania Ghosh
                    last edited by orange

                    @Tania-Ghosh I checked again it works here. Which warning are you having on Hise while importing the snippet?

                    Or you can just copy and paste the code below just like @Natan did with my snippet. This code just adds the components real time, you don't need to add any button or floating tiles manually. Copy and paste will work.

                    Content.makeFrontInterface(600, 500);
                    
                    
                    //////////////// BEGINING OF THE PRESET BROSER WINDOW //////////////////////////
                    
                    
                    const var PRESET_Bar = Content.addPanel("PRESET_Bar", 0, 0);
                    
                    Content.setPropertiesFromJSON("PRESET_Bar", {
                        "width": 773,
                        "height": 29,
                        "itemColour": 2149325852,
                        "itemColour2": 1897864991,
                        "textColour": "268435455",
                        "borderSize": 1,
                        "visible": true,
                        "borderRadius": 0,
                    });
                    
                    
                    
                    
                    
                    
                    const var PRESET_Opener = Content.addButton("PRESET_Opener", 2, 1);
                    
                    Content.setPropertiesFromJSON("PRESET_Opener", {
                        "height": 28,
                        "width": 442,
                        "text": "PRESET BROWSER",
                        "parentComponent": "PRESET_Bar",
                        "isMomentary": true,
                        "bgColour": 16777215,
                        "itemColour": 371335714,
                        "itemColour2": 4077981969
                    });
                    
                    inline function onPRESET_OpenerControl(component, value)
                    {
                        if (value)
                            PRESET_Container.set("visible", true);
                    
                    };
                    
                    Content.getComponent("PRESET_Opener").setControlCallback(onPRESET_OpenerControl);
                    
                    
                    
                    
                    
                    
                    
                    const var PRESET_Container = Content.addPanel("PRESET_Container", 0, 31);
                    
                    Content.setPropertiesFromJSON("PRESET_Container", {
                        "width": 773,
                        "height": 435,
                        "itemColour": 4194764551,
                        "itemColour2": 4077324039,
                        "textColour": "268435455",
                        "borderSize": 1,
                        "visible": false,
                        "borderRadius": 0,
                    });
                    
                    
                    
                    
                    
                    const var PRESET_Closer = Content.addButton("PRESET_Closer", 473, 1);
                    
                    Content.setPropertiesFromJSON("PRESET_Closer", {
                        "height": 28,
                        "width": 86,
                        "isMomentary": true,
                        "text": "CLOSE",
                        "parentComponent": "PRESET_Container",
                        "bgColour": 16777215,
                        "itemColour": 371335714,
                        "itemColour2": 4077981969
                    });
                    
                    inline function onPRESET_CloserControl(component, value)
                    {
                        if (value)
                            PRESET_Container.set("visible", false);
                    };
                    
                    Content.getComponent("PRESET_Closer").setControlCallback(onPRESET_CloserControl);
                    
                    
                    
                    
                    
                    
                    
                    const var PRESET_Browser = Content.addFloatingTile("PRESET_Browser", 3, 32);
                    
                    Content.setPropertiesFromJSON("PRESET_Browser", {
                       "bgColour": 4160749568,
                        "itemColour": 4290953929,
                        "itemColour2": 3092597581,
                        "textColour": 3267409337,
                        "ContentType": "PresetBrowser",
                        "Data": "{\r\n}",
                        "Font": "Arial",
                        "width": 554,
                        "height": 328,
                        "parentComponent": "PRESET_Container"
                    });
                    
                    
                    
                    
                    
                    
                    
                    namespace UserPresetWidgets
                    {
                    	/** Creates a arrow button that cycles through the current category. */
                    	inline function createPresetButton(name, x, y, up)
                    	{
                    		local widget = Content.addPanel(name, x, y);
                        
                    		Content.setPropertiesFromJSON(name, {
                    		"width": 15,
                    		"height": 20,
                    		"saveInPreset": false,
                    		"tooltip": up ? "Load next user preset" : "Load previous user preset",
                            "parentComponent": "PRESET_Bar",
                    		"allowCallbacks": "Clicks & Hover"
                    		});
                        
                    		widget.data.up = up;
                        
                    		widget.setPaintRoutine(function(g)
                    		{
                    			g.setColour(this.data.hover ? 0x20FFFFFF : 0x28FFFFFF);
                    			g.fillTriangle([0, 0, this.getWidth(), this.getHeight()], this.data.up ? Math.PI/2 : 1.5 * Math.PI);
                    		});
                        
                    		widget.setMouseCallback(function(event)
                    		{
                    			this.data.hover = event.hover;
                        	
                    			if(event.clicked)
                    			{
                    				if(this.data.up)
                    					Engine.loadNextUserPreset(true);
                    				else
                    					Engine.loadPreviousUserPreset(true);		
                    			}
                        	
                    			this.repaint();
                    		});
                    		return widget;
                    	};
                    
                    	/** Creates a Label that shows the current User Preset.
                    	*
                    	*	You can click on it and it will open up a popup with the preset browser.
                    	*
                    	*	Customization: Use the itemColour property of the Panel to set the
                    	*	Preset Browser Colour.
                    	*/
                    	inline function createPresetDisplay(name, x, y)
                    	{
                    		local widget = Content.addPanel(name, x, y);
                        
                    		Content.setPropertiesFromJSON(name, {
                    		"width": 312,
                    		"height": 29,
                    		"tooltip": "Click to show the Preset browser",
                            "parentComponent": "PRESET_Bar",
                    		});
                        
                        
                    		widget.setPaintRoutine(function(g)
                    		{
                    			g.fillAll(this.data.hover ? 0xFF252526 : 0xFF252526);
                    			g.setColour(0x01FFFFFF);
                    			g.drawRect([0, 0, this.getWidth(), this.getHeight()], 1);
                    			g.setFont("Arial", 21.0);
                    			g.setColour(0xFFadaea8);
                        	
                    			g.drawAlignedText(Engine.getCurrentUserPresetName(), [10, 0, this.getWidth(), this.getHeight()], "left");
                    		});
                        
                    		widget.setTimerCallback(function()
                    		{
                    			this.repaint();
                    		});
                        
                    		widget.startTimer(300);
                    	
                        
                    		widget.setMouseCallback(function(event)
                    		{
                    			this.data.hover = event.hover;
                    			this.repaint();
                    		});
                    		return widget;
                    	};
                    
                    }
                    
                    
                    Engine.loadNextUserPreset(true);
                    const var UpButton = UserPresetWidgets.createPresetButton("UpButton", 487, 5, true);
                    const var DownButton = UserPresetWidgets.createPresetButton("DownButton", 451, 5, false);
                    const var PresetDisplay = UserPresetWidgets.createPresetDisplay("PresetDisplay", 129, 0);
                    
                    
                    /////////////////////// END OF THE PRESET BROSER WINDOW //////////////////////////
                    
                    
                    

                    develop Branch / XCode 13.1
                    macOS Monterey / M1 Max

                    Tania GhoshT 1 Reply Last reply Reply Quote 1
                    • Tania GhoshT
                      Tania Ghosh @orange
                      last edited by

                      @orange Yes... @Natan Snippet loaded. Thank you once again. :)

                      Tania Ghosh

                      1 Reply Last reply Reply Quote 1
                      • Tania GhoshT
                        Tania Ghosh @Natan
                        last edited by

                        @Natan Excellent. Thank you... :)

                        Tania Ghosh

                        1 Reply Last reply Reply Quote 1
                        • NatanN
                          Natan
                          last edited by Natan

                          @Tania-Ghosh No Problem , Thanks Goes To @orange For The Code 👏

                          1 Reply Last reply Reply Quote 1
                          • Tania GhoshT
                            Tania Ghosh
                            last edited by

                            @orange @Natan One little question.... How can I load my Custom Button Image on Next/Prev Btn? Since it's a panel there is no filmstrip Image properties.

                            Tania Ghosh

                            1 Reply Last reply Reply Quote 0
                            • Tania GhoshT
                              Tania Ghosh
                              last edited by Tania Ghosh

                              @Orange @Natan I am getting Image not found error. Here is my Code.

                              /* g.fillTriangle([0, 0, this.getWidth(), this.getHeight()], this.data.up ? Math.PI/2 : 1.5 * Math.PI); */
                              g.drawImage("{PROJECT_FOLDER}Prev.png", [0,0,this.getWidth(),this.getHeight()], 0,0);
                              

                              Prev.png Prev.png

                              From API it says API.jpg

                              Tania Ghosh

                              1 Reply Last reply Reply Quote 0
                              • Tania GhoshT
                                Tania Ghosh
                                last edited by

                                @Orange @Natan and please tell me how Can I use Another image (Next Btn) because you have used one g.fillTriangle with Math.PI/2 : 1.5 * Math.PI for both.

                                Is it applicable for g.drawImage ?

                                Tania Ghosh

                                1 Reply Last reply Reply Quote 0
                                • ?
                                  A Former User
                                  last edited by A Former User

                                  @Tania-Ghosh You can do one simple step:

                                   // g.setColour(this.data.hover ? 0x20FFFFFF : 0x28FFFFFF);
                                  /*  g.fillTriangle([0, 0, this.getWidth(), this.getHeight()], this.data.up ? Math.PI/2 : 1.5 * Math.PI); */
                                  

                                  And Insert 2 images ( your 2 Images "Prev.png" and "Next.png" and Place it before UpButton and DownButton.

                                  Additionally you have to adjust the Panel X,Y,Width & Height

                                  Content.setPropertiesFromJSON(name, {
                                  		"width": 28,  //Change it according to your Image width
                                  		"height": 20,  //Change it according to your Image height
                                  //////// &
                                  const var UpButton = UserPresetWidgets.createPresetButton("UpButton", 480, 5, true);  //Change it
                                  const var DownButton = UserPresetWidgets.createPresetButton("DownButton", 440, 5, false);   //Change it
                                  

                                  According to your Image Width,Height and X,Y pos.

                                  End result is something like this..
                                  Pts.jpg

                                  1 Reply Last reply Reply Quote 1
                                  • ?
                                    A Former User
                                    last edited by

                                    @Tania-Ghosh Ptbn.gif

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

                                    20

                                    Online

                                    1.7k

                                    Users

                                    11.8k

                                    Topics

                                    103.0k

                                    Posts