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.
    • 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

                                22

                                Online

                                1.7k

                                Users

                                11.8k

                                Topics

                                103.0k

                                Posts