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.
    • ulrikU
      ulrik @Natan
      last edited by

      @Natan I think it is important that you understand what is changed in the code, and why, so you can benefit from the understanding in your next project :)

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

        @ulrik said in Changing Selected Sample Maps With Buttons:

        you understand what is changed in the code, and why, so you can benefit from the understanding in your next proj

        Sure, I Always Do My Changes By Reading And Learning From Expert Codes.
        :folded_hands: A Ton

        1 Reply Last reply Reply Quote 1
        • 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
                                            • First post
                                              Last post

                                            30

                                            Online

                                            1.8k

                                            Users

                                            12.0k

                                            Topics

                                            104.1k

                                            Posts