HISE Logo Forum
    • Categories
    • Register
    • Login

    Changing Selected Sample Maps With Buttons

    Scheduled Pinned Locked Moved General Questions
    52 Posts 5 Posters 2.0k 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.
    • NatanN
      Natan
      last edited by

      @ulrik
      Can We Have A Prev Next Button For It :folded_hands:

      ulrikU 1 Reply Last reply Reply Quote 0
      • ulrikU
        ulrik @Natan
        last edited by

        @Natan absolutely, you know how to do that right? 👍

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

          @ulrik Yeah :) I Have Time & Examples 💎 Thank You So Much

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

            @ulrik
            Is This Good? 🐣

            /// Perv Next Buttons
            const var PrevSample = Content.getComponent("PrevSample");
            const var NextSample = Content.getComponent("NextSample");
            
            /// Pervius Sample
            inline function onPrevSampleControl(component, value)
            {
            	if(value)
                {
                    ViewportA.setValue(ViewportA.getValue() == 0 ? MapNamesArray.length-1 : ViewportA.getValue() - 1);
                }
            };
            
            Content.getComponent("PrevSample").setControlCallback(onPrevSampleControl);
            
            
            /// Next Sample
            inline function onNextSampleControl(component, value)
            {
            	if(value)
                {
            
             ViewportA.setValue((ViewportA.getValue() + 1) % MapNamesArray.length);
                }
            };
            
            Content.getComponent("NextSample").setControlCallback(onNextSampleControl);
            
            HiseSnippet 1967.3oc4X8uaabiDdW6rNw5hCZKZA5+T.Bgd.RvNJRINoGN2zHKEmBiKNQvxM3vkZzxrKkDaVQtfKWm3FDf9nbOB2iPeTtGg9Fb2Pxc0xc8JEEg51h6jAjE+wL7a9lgbFxABtOINlKbb27jyiHNtW2a34L4j9SvTlygOzw8FdGgikDAxzUuyivwwj.GW20+ZUGtadEG8me4A8vgXlOIuKGmmwo9jGSmRk48Nn6eiFF9Hb.4D5TqYua2C84r97PdBfm08Z6Dg8eIdL4IX0zVyywciCBnRtXnDKIwNtWoGO37gS3uhYl+ynwzWDRTM53LDTjo6GwCCTHV0qS+IzvfAY1criiq2fbVXcCK7wdGQCny5OmM9.8.nbIr4C20VD75XCu1KO7bsf2ULv6C8F5KnQx7QTX6O4cHCbTivfKvFVl45r1mWyqOGlAS1ZJ9kjGIfFyjnw8Z2dGzca2t4daUaqZfiHVhNCKPOiRdUDWH2GceTl3iIx97oQbFznQ8YyntR1bIGhmFEBAN2GoCoTRk1Ui5o+njD8AdaLWbdOIKFD64UudCnXFOtdyc1pFZtepVz9S3TwpI5.bvpIXORXHH4oZd01Z01ggHNBGEqhx0V8o6oT1stEBMfUfcTfegyu+jB5GP7bmtQ+A1yWCzEp+dgFaXDWfZPgwZuGhh9Rztv+1d6laU6MF5oJKqUTR7DfFYn5aihvhXBD60ftcmVsaphBzDXEVXpb8mfpilqfUXpYqWvhjqJSNUvdgUKXs2VzKBxoEaeg.ethtpx32oRSyJXpBCXmJQ2o6kKj8unrPJifFkv7kTNCAGjZsYREYJ3gM7yBK2AvdXBI2kQGgZj0kp8axUdH2GGhnr.xqUmAXo1V5Ne5nb81rR3M6DhVwDXGAURlFWemhT2y055zV+.mxZT+aY0aZqqbM3OAyFSBZ.dB0.u03OzQjuPx.XV.g4FHLnZ0SYh93vvW.YWZTIOk4kuHsFxwAFOBb74zYnZADqg8vf3mAwQfIdAFRicerrBrWxS.SRc3xyTqPilnGXq145Zvxln+Jpd8T9p7pmdRbqbKCbKMJ5ZrVlSet19Nc1VVXi.OjzJRPgMIKkXZpsPHQYmxbX4loGgp96Vv4QCHhyPOg7ZIpWhTB.ovoeBxYFcL2DW4SoTdHkNeGxlOk5FXkAHZRbJmV0lx7kbwaI2jNZdaGKvblPg7trhNtOb7LDhTvkzJjvFKmbyNPDQkBcSTmlyBTdq1vd2bW06qtfol49TLk1qMeZJmceuoI3GUvPUSQaCVK5OWIEsbrfcTP0rvErDCKXaqbI4orFMq8lZaV6s0PkGZznJGKUcppopZXUo0hEIXCVxzWPDYzY1DgZLKVDq27Kh0tFaeC+XMQN6PFU9zHBadk15jRppZvSQELUotD2OJsDWRPlmygFnpwclizQCb35CajcYCmxJ4FoJwb7fVAWyyT9XlzdtKujlpGe+kbCOU58Y3c18kVFYupmtJfRK52b3CwRr5xAoTHPqQDgjp7XtOjbFbqKyUE1z6gj3WJ4QfplE3BWyaoY4WaectysaHgPa0B.azgP+XmWQCjSlMgeZT2ID53IVW7i1MJLYLkM.KfsavEOLWrKWCIwvcEikJyTYm55Dbb+DOnHtN0futs5q6n9ZWGbHcLap1X1vKjLR5LBnhgzezhha20wxlu56NnvxXeY2BFKgggnd0k+dLAKXp6UIvAT9WK3IQ1N0hrfy2uzPHM5ZNP3mdb2KaHjFlNO.7sW5.HKVedHf7qDB1btH35d4YsrgwdVv3e+CcowGwUgdXAzs6ZUfpXrpvGSbspsYux5deYocINGT.Y0V.xxyjXgre9eXgr+4pfrxaR61MCqeUEX8huEwG3cDOHIDKK9LIp2FJc.HsSg2iP8lCrXp7baG1kxamrrv8Cg8+R+IUi20p.uvIuW13M8kn1x6fQiH9xbvdEuG82u7e1Ian7YmjkrPJH3oT13zKMnwyldYs9U3sAiV52FDhf0WSnvA9+b2dI.cIJ16+pqdo1eJOgUXsRA9wjHBVBdeKYtV2iOVepRYo9kGniUNQ.02ALg8.OkQ.ZWZai8E733Qf4n0Ur8PCRDiUbUdOGSNiHhK12SRlBtdFiDFmkV7ahIJWM0+HrTPKjeVuJsOAqc2q4YZ2oT6aWp8cJ0d2Rsuao12qT6uHu8rKPpBLTOXaohIu5xULInfAXvjslYO53YJ2zSd7a6bZVCEqWDth2Sci+P+bu+1cB65KGbeGuH8lYXbHU4cNfcFrsD5QgwOBp8bDNITl0amBn7HNiGMgyn9E2D.A0iGSD1XuRCZeoD1Cl2yG28XRHAGasK9y69X3lkXQw81uWbQmkmKVj+5S8LvEoNWC8+FYFW++6yLtHp6Fo4EQvpC2q5O194q6oOJGox796ETOlmHgLpYY07fTeCgz89D6DfqoRpZZ2N65vCIr.ci+C7IcvNYYKUC1IaPG+LUA1V5u02j1ccSox5B9Bg7vg1gzwPQEJHAYz9MAkSw9B924adc.EVultG.krzaLejpMpyrmEvqcq1NSgbUemuuZivMAFtZYt8JHycVAY1cEj4tqfL2aEj4KVAY9KKTFUYB6mH4SMGRBcL3.Sfk6AyBrV24+ZunVRI
            
            NatanN 1 Reply Last reply Reply Quote 0
            • NatanN
              Natan @Natan
              last edited by

              @Natan No It's Not 😶

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

                Prev Fixed, But Next Has Issues :) LOL Both Wont Load SampleMaps : )

                /// Perv Next Buttons
                const var PrevSample = Content.getComponent("PrevSample");
                const var NextSample = Content.getComponent("NextSample");
                
                /// Pervius Sample
                inline function onPrevSampleControl(component, value)
                {
                	if(value)
                    {
                        ViewportA.setValue(ViewportA.getValue() == 0 ? MapNamesArray[value]-1 : ViewportA.getValue() - 1);
                    }
                };
                
                Content.getComponent("PrevSample").setControlCallback(onPrevSampleControl);
                
                
                /// Next Sample
                inline function onNextSampleControl(component, value)
                {
                	if(value)
                    {
                        ViewportA.setValue((ViewportA.getValue() + 1) % MapNamesArray[value]); // This Not Works
                    }
                };
                
                Content.getComponent("NextSample").setControlCallback(onNextSampleControl);
                
                MikeBM ulrikU 2 Replies Last reply Reply Quote 0
                • NatanN
                  Natan
                  last edited by

                  Prev Fixed :) Go Boy Gooooo 🙌

                  inline function onPrevSampleControl(component, value)
                  {
                      local activeIndex;
                          
                      for (cat in CategoryBtns)
                      {
                          cat.getValue() ? activeIndex = CategoryBtns.indexOf(cat) : "";
                      }
                      
                  	if(value)
                      {
                          ViewportA.setValue(ViewportA.getValue() == 0 ? Sampler.loadSampleMap(MapNamesArray[activeIndex][value]-1) : ViewportA.getValue() - 1);
                          ViewportA.changed();
                      }
                  };
                  
                  Content.getComponent("PrevSample").setControlCallback(onPrevSampleControl);
                  
                  1 Reply Last reply Reply Quote 0
                  • MikeBM
                    MikeB @Natan
                    last edited by

                    @Natan maybe

                    ViewportA.changed();
                    

                    "One hour of trial and error can save 10 minutes of reading the manual."
                    "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                    HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                      @MikeB Thanks Mike, Yeah I Just Added That:)

                      MikeBM 1 Reply Last reply Reply Quote 1
                      • MikeBM
                        MikeB @Natan
                        last edited by

                        @Natan Over thousands of miles the same thought :-)

                        "One hour of trial and error can save 10 minutes of reading the manual."
                        "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                        HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

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

                          @MikeB Exactly :) Thanks A Ton

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

                            There is A Small Glitch Once It Reaches To The Max List Item For Next, And Viceversa For Prev.
                            Wont Loop Inside The Viewport :/

                            /// Perv Next Buttons
                            const var PrevSample = Content.getComponent("PrevSample");
                            const var NextSample = Content.getComponent("NextSample");
                            
                            /// Pervius Sample
                            inline function onPrevSampleControl(component, value)
                            {
                                local activeIndex;
                                    
                                for (cat in CategoryBtns)
                                {
                                    cat.getValue() ? activeIndex = CategoryBtns.indexOf(cat) : "";
                                }
                                
                            	if(value)
                                {
                                    ViewportA.setValue(ViewportA.getValue() == 0 ? Sampler.loadSampleMap(MapNamesArray[activeIndex][value]-1) : ViewportA.getValue() - 1);
                                    ViewportA.changed();
                                }
                            };
                            
                            Content.getComponent("PrevSample").setControlCallback(onPrevSampleControl);
                            
                            
                            /// Next Sample
                            inline function onNextSampleControl(component, value)
                            {
                                local activeIndex;
                                    
                                for (cat in CategoryBtns)
                                {
                                    cat.getValue() ? activeIndex = CategoryBtns.indexOf(cat) : "";
                                }
                                
                            	if(value)
                                {
                                    ViewportA.getValue() == Sampler.loadSampleMap(MapNamesArray[activeIndex][value]) ? ViewportA.setValue(1): ViewportA.setValue(ViewportA.getValue() + 1);
                                    ViewportA.changed();
                                }
                            };
                            
                            Content.getComponent("NextSample").setControlCallback(onNextSampleControl);
                            
                            ulrikU 1 Reply Last reply Reply Quote 0
                            • ulrikU
                              ulrik @Natan
                              last edited by

                              This post is deleted!
                              1 Reply Last reply Reply Quote 0
                              • ulrikU
                                ulrik @Natan
                                last edited by

                                @Natan

                                inline function onPrevSampleControl(component, value)
                                {   
                                	if(value)
                                    {
                                        //  get current value from ViewportA
                                        local currentValue = ViewportA.getValue();
                                
                                        currentValue < 1 ? ViewportA.setValue(4) : ViewportA.setValue(current - 1);
                                        ViewportA.changed();
                                    }
                                };
                                
                                ulrikU 1 Reply Last reply Reply Quote 1
                                • ulrikU
                                  ulrik @ulrik
                                  last edited by

                                  @ulrik so prev button count down to 1, if < 1 it starts at the largest value (4)
                                  Now you need to go the other way, if next button > ? then...

                                  NatanN 1 Reply Last reply Reply Quote 0
                                  • MikeBM
                                    MikeB
                                    last edited by

                                    @Natan

                                    Maybe this will help you?

                                    HiseSnippet 1529.3oc4XstaaaCElJNpq1qYncq+X+ZfvXCPFsNwt21v15pyEmgrkzXDmVTfhhLFIZahJSJPQmVut.rGk9nrGo8FrwKRVRtxWpWcxvl.BPN7bN774yMxCawYt3vPFGXU73gAXf00raOjJ5scODgB1aGf0WYW6NUeL90hps33ypdDh5w5C2bfGgsOiEzxGMDyAaML.EFh8.VVE9QkpVEWEn+9yGsExGQcwIKA.OkQbw6S5SDIq1pwOS782E4gOlzOkz2qwdtL51Le1.ILKXWCDfbeIpK9wHkXqXCrtRSOhfwaKPBbHvZ0sXdCa2i8JpQ9mRBIm5iUD0AskajY4cY9dJDqVErcOhuWqX2QH.XY2Jw4Tv3bto8ADOxn0SbRWWy.lnQZ+g0JSCd0SCuZyO7rRAuUMv6F1sc4j.QBGE19X68nBLuCRFBRCKirfU9sqYuMSJAUrdezKw6xkDizv4A0pca38qUqx2sVo0JswFv8YHOS3uCwGGBITACFvX9vpK0u0J0j1kPwq6KAf196pruDorVRq6n.3FaT8B5S4LhbHxjyPA7LDObYaxQVZ7xu5vGB0ksq2EKzoJZJmxZ4fJAgQRVV4mR1nnx4GBiSATa.qe.iJIbJaXOlN+LkcZ8Iphl6XZnZeLQETLGSdUmlIJuhY4K9nsLRuImiFBai5GXR7gIogU0Uq7O7QZh5edH74kC0lsV80eE5rx2Nl7NYIuaVx6kk79YIefl7EWR0MlrHiyDFh8wtBBitDLHg5Kaa.6Lfps.jQ0lVkbwk8Mbiyrtsze6O.WYsRuYsRP42nJJcX1fzQsVyu1Z8PrPkO3T9MsN5vep41GextGt+NMO57x2REIet1DuPk8dt7uoVAo1qHPtMx2+T4gdNYw9kRQPTGisFHDKgvUJqYLT9dACuSR4GxKNmUpbizp3rIZS5.chWVQGkDn9z9bEPdphuiyAHYdAWt4xCebTGOVohBBYE2sGh1E64Dy4bSH+R4HJ8M2V1QrIUsoL9rK1lo6uar6uB7GRVxobeBsbE3iFOH8NJUEVuB7amnXxMB85x53XwYFDm1AS4mvlxIbocQE8k3MYAvK9z.k0Wnzfh4lC78vwCcyQNvslYNfJY5eRNf4xL4mCjxCbQmCjNNvD3CoNUJ8lREKcdI33r5zIWdQ.2GyyksZjM9zTzgNn+oXdb.OVP4rKYGNxdxCGkd1MWi2OkfL5dTh3v.LcRiLAhBYxgmVMBURQE5Qm9jnQmLkG.hbBoqZaN+.nQb5oWASR619D4k.0Z+Q15rmwU9pM.ygouhsJW48vvYzU0qIGcexd6fDH0jiQ9AouI.yEDka2ZG7YxQxMyQVzdGb3KEr.siJJ2VFZlsq50ir3e7rFCSH3MHgGv5K2FDeXb7IYmuxLciSXia7rFgBbPaxuhS+hCx9AIj2rAXt9QD4zSz72eRJK8V+o+SvdVAjj88srT66uj299ti1ec6CXdC7Qhru5f5oVhXHq1xLduZDdZHQLLsiYo7TDyKbugcKhvsW93ckbvqLWcYi2nG1YM6lc5Hm.IArqZu6yV9uhSZn7YwPYzv8XyC3bS62cTiODO3Vvb+faxIgbkgsL0X5X4wb4QaDZ2zlRAylTjzW3kd4iXLg5.lzO3mYlJoGkKjaeFowmg4gY2A0fUl276KrGe7pzC7B5qbG1VJczcBL+quDWZSkdglTuXRqByc.983UDW8e0uh3EWmlByGbmwCcVLFisIp3cS5YXeYchFiep7TqNnA9h3UyVjb.ixB5wnD2r4YBNoaWLOM1y8GzlBgLWO8wJGg8wnvTIzeYi8kW5EwGuT48vWTe98ESKd841F3BUU1v+abBQg+edBwQrABYG1CPxDUUurGOneaYiYWrDITJ1WcmYqUT2MzPWKteVaL0SS7WxuHl0UzVQLqGy7BwF8Qtb1ItlKvpxkupdE4uaptmdQ6CTzvQWY11t150j8x8Hm35pb2UqC.4qycV.ct6Bny8V.ct+BnyCV.c95EPmuYp5nNLZyABVeSonbgVM0iPXYM57cqBf+FLJN3.G
                                    

                                    "One hour of trial and error can save 10 minutes of reading the manual."
                                    "It's easier to hit the developer with feature requests than to spend 10 minutes reading the manual. :-)))"
                                    HISE Develop - Mac Pro 5.1, OS X 10.14.6, Projucer 6.02, Xcode 10.3

                                    1 Reply Last reply Reply Quote 0
                                    • NatanN
                                      Natan @ulrik
                                      last edited by

                                      @ulrik Thank You Ulrik
                                      But The Viewport Max Value is Not 4 For My Project,
                                      It's Greater Than 100 Or 50 In Other Sample map Lists.

                                      ulrikU 1 Reply Last reply Reply Quote 0
                                      • ulrikU
                                        ulrik @Natan
                                        last edited by

                                        @Natan it was 4 in the example you provided, you just have to exchange it with the SampleMapList.length

                                        ListWith100Maps.length etc...
                                        
                                        NatanN 2 Replies Last reply Reply Quote 0
                                        • NatanN
                                          Natan @ulrik
                                          last edited by

                                          @ulrik Thank Ulrik, Just Found An Issue With the Length Of Each Sample map names.

                                          If I Select First Category And Select Sample Map Number. 100
                                          And Then By Selecting Second Category That Has 50,
                                          Console Shows An Error!
                                          Because The Number 100 "Value" Is Not Exist In The Category That Holds 50 Samplemaps.
                                          And It Points Me to This Line

                                          Sampler.loadSampleMap(MapNamesArray[activeIndex][value]);

                                          1 Reply Last reply Reply Quote 0
                                          • NatanN
                                            Natan @ulrik
                                            last edited by

                                            @ulrik said in Changing Selected Sample Maps With Buttons:

                                            ListWith100Maps.length etc...

                                            That 4 Was An Example :)
                                            One Has 105
                                            Second HAs 45
                                            And Last 2 50 Maps.

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

                                            39

                                            Online

                                            1.8k

                                            Users

                                            12.0k

                                            Topics

                                            104.1k

                                            Posts