HISE Logo Forum
    • Categories
    • Register
    • Login

    Programmatically scroll the viewport to a given element...

    Scheduled Pinned Locked Moved General Questions
    8 Posts 2 Posters 394 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.
    • LindonL
      Lindon
      last edited by

      I have a viewport, with 1000 items in it... is there a way to script the viewport scroll to (say) item 340? or 670? etc.

      HISE Development for hire.
      www.channelrobot.com

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

        @Lindon Yes - you need to calculate the size of the rows so you can calculate the position. Then you use viewport.set("viewPositionY", value);

        Here's an example from one of my projects - https://codeberg.org/LibreWave/RhapsodyBoilerplate/src/branch/main/includes/Articulations.js#L280

        In this case I'm not using the built in list. I'm using a panel within the viewport to draw the list (and provide some interactivity).

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

        LindonL 1 Reply Last reply Reply Quote 0
        • LindonL
          Lindon @d.healey
          last edited by

          @d-healey ok thanks....off to calculate the height of my rows....

          HISE Development for hire.
          www.channelrobot.com

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

            @Lindon viewportHeight / numItems ?

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

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @d.healey
              last edited by

              @d-healey said in Programmatically scroll the viewport to a given element...:

              @Lindon viewportHeight / numItems ?

              not quite... as you can see....

              a0d1d0ae-1bcd-4446-bca6-5cdd3a0bfac7-image.png

              but some quick resizing of the viewport worked this out for me...

              HISE Development for hire.
              www.channelrobot.com

              LindonL 1 Reply Last reply Reply Quote 1
              • LindonL
                Lindon @Lindon
                last edited by

                @Lindon no -its massively unreliable - if you ask for the same Y position twice it scrolls to the bottom of the list , and it scrolls to the bottom of the list randomly as well....

                HISE Development for hire.
                www.channelrobot.com

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

                  Looks like it's simpler than I thought, the Y value needs to be normalized so no need to calculate the row height.

                  HiseSnippet 1290.3ocsW9ubhaCDGWlDe8fdsWuN8APC8eflzTLXLvj9CZHIcXtlbLkbYtNsctwwVDTiQhwVjDtax6V+y93z2f1U1dsgDljbLS4Ohrr18i9p0Zk1LHT5whhjgDihmLeJiX7LygyEpw8F6xEj96SLdt4kb1USkgJphEoH6MepaTDymXXrwOoMxn3lj3e+yOrmafqvik+JB4TI2i8y7IbU9aGz8k7ffCc8Ymvmrf01c66IE8jAxYff1vrFYpq2EtmyN1UaVAShwSNvmqjgCUtfX.a1S5Oe3X4UhD6OkGwOKfo6XQFBfRdMo2Xdf+.bwFQHFaNHeouQxR+KLOh6yydedH3yhGfl6whw.iB2mjr9.jjwBRZyDI8Bygdg7op7Qz54iM6KTrvQtPndQojXKov6JX1SBVHT6Lw8B1ggPmLOp3Tq11T3OU2sTIHbGonW5FROM8irE86nnymyT8jSlJEPmJkyrnbtmbEaRD3wu8GvqFICoU3PuZ6R4zukZUS+vVaUsTwX61Y5rnwUJ2Gd9KokoaQ4.nhkx3tSDCllXSKucB5c9SIWTo7uKJWUOok3h.tfQGMS3o3RAUJdoPdlkVvgxfJdnZ2FVSAyXUK89REi7fgBNQpm2JIud2R2.zV8xLFX4pZwjhsmaPvYvFwJKOaZAca8rzbwE9rqikPfzyMfNGBMVzuAhQwKs.l3b0X5WSspR+JZrw6VrTwaENzIeCjQbM9eEBKyqBFcyBAfikJ1qDUhmmR2Thd6gFMZkiktHBXgqbXchY384XEwrImwBWLPqMD14tb5vSdboCdIeKVvPonufqd0TVZ+CkA95s45muaxCI8iIjFUHUgfop3jnOOMIh4iwVB2WmEkEpIwKhEO1hbaHeZJjgAbeVXLfOxLd6vJb90822U4pSoSkEH0orPEWGQL1mcIblXRBdQy8YQWnjSi0c5lPhwSezJ+57I966NOuy9cuh6qFSLLM9an6XF+7wJcOGCBYVDbjLbVtgQg38hjBueCyj7xZkRZsRaqm11Hs0NssYZqSZaqz11oscPNY.QhVHRKjoEB0BoZgXsPtVHXKjbcjb8LshjqijqijqijqijqijqijqijafjafjajEFPxMPxMPxMPxMPxMPxMPx1HYajrMR1NKBijsQx1HYajrMR1FI2DI2DI2DI2DI2L6iGRtIRtIRtIRtIR1AI6fjcPxNHYGjrS19BjrCR1AI6fjagjagjagjagjagjagjakskCI2BI2BI2FI2FI2FI2FI2FI2FI2FI2Na2LRtMRtCRtCRtCRtCRtCRtCRtCRtCRtSVhRG8gMYY9O6AOtIOiu6zky3iTy0mr9jXCIS399AL7tib65C1wlNj+NvTSSqcpAVJV73qIt4Swe8ltQyFMhecb4Wi3AShTft5OApJSe9zqiXTe1H2YAJZzE.G39vKX9mHismb2JZfZoj9yBbUKWfktRxzAzhcwpZzUtHfEw7Eqz7CnpqZ2aUWOVI9ByAbk23UqwBqPi5ah9ePio0p9IlGLZDySkKvMMO7MqagoOvz+KxYJt37ibgO8vFAyimMYHThtGClcgfEDouWof9Ryj90z80QfgLgebm+E9kNnktuQ5fV3fvlNnzo25kbqqtZ3mF+FPSh3h+KZdjtOcEW2Baz4u0yaYT2ww5qqiMVWGsWWGattN5rtN1Zccr8C6n9+c5GmojSRRaHjiFbPb4QFFGHbgcfw6VI+GPeXG+g
                  

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

                  LindonL 1 Reply Last reply Reply Quote 0
                  • LindonL
                    Lindon @d.healey
                    last edited by

                    @d-healey said in Programmatically scroll the viewport to a given element...:

                    HiseSnippet 1290.3ocsW9ubhaCDGWlDe8fdsWuN8APC8eflzTLXLvj9CZHIcXtlbLkbYtNsctwwVDTiQhwVjDtax6V+y93z2f1U1dsgDljbLS4Ohrr18i9p0Zk1LHT5whhjgDihmLeJiX7LygyEpw8F6xEj96SLdt4kb1USkgJphEoH6MepaTDymXXrwOoMxn3lj3e+yOrmafqvik+JB4TI2i8y7IbU9aGz8k7ffCc8Ymvmrf01c66IE8jAxYff1vrFYpq2EtmyN1UaVAShwSNvmqjgCUtfX.a1S5Oe3X4UhD6OkGwOKfo6XQFBfRdMo2Xdf+.bwFQHFaNHeouQxR+KLOh6yydedH3yhGfl6whw.iB2mjr9.jjwBRZyDI8Bygdg7op7Qz54iM6KTrvQtPndQojXKov6JX1SBVHT6Lw8B1ggPmLOp3Tq11T3OU2sTIHbGonW5FROM8irE86nnymyT8jSlJEPmJkyrnbtmbEaRD3wu8GvqFICoU3PuZ6R4zukZUS+vVaUsTwX61Y5rnwUJ2Gd9KokoaQ4.nhkx3tSDCllXSKucB5c9SIWTo7uKJWUOok3h.tfQGMS3o3RAUJdoPdlkVvgxfJdnZ2FVSAyXUK89REi7fgBNQpm2JIud2R2.zV8xLFX4pZwjhsmaPvYvFwJKOaZAca8rzbwE9rqikPfzyMfNGBMVzuAhQwKs.l3b0X5WSspR+JZrw6VrTwaENzIeCjQbM9eEBKyqBFcyBAfikJ1qDUhmmR2Thd6gFMZkiktHBXgqbXchY384XEwrImwBWLPqMD14tb5vSdboCdIeKVvPonufqd0TVZ+CkA95s45muaxCI8iIjFUHUgfop3jnOOMIh4iwVB2WmEkEpIwKhEO1hbaHeZJjgAbeVXLfOxLd6vJb90822U4pSoSkEH0orPEWGQL1mcIblXRBdQy8YQWnjSi0c5lPhwSezJ+57I966NOuy9cuh6qFSLLM9an6XF+7wJcOGCBYVDbjLbVtgQg38hjBueCyj7xZkRZsRaqm11Hs0NssYZqSZaqz11oscPNY.QhVHRKjoEB0BoZgXsPtVHXKjbcjb8LshjqijqijqijqijqijqijqijafjafjajEFPxMPxMPxMPxMPxMPxMPx1HYajrMR1NKBijsQx1HYajrMR1FI2DI2DI2DI2DI2L6iGRtIRtIRtIRtIR1AI6fjcPxNHYGjrS19BjrCR1AI6fjagjagjagjagjagjagjakskCI2BI2BI2FI2FI2FI2FI2FI2FI2FI2Na2LRtMRtCRtCRtCRtCRtCRtCRtCRtCRtSVhRG8gMYY9O6AOtIOiu6zky3iTy0mr9jXCIS399AL7tib65C1wlNj+NvTSSqcpAVJV73qIt4Swe8ltQyFMhecb4Wi3AShTft5OApJSe9zqiXTe1H2YAJZzE.G39vKX9mHismb2JZfZoj9yBbUKWfktRxzAzhcwpZzUtHfEw7Eqz7CnpqZ2aUWOVI9ByAbk23UqwBqPi5ah9ePio0p9IlGLZDySkKvMMO7MqagoOvz+KxYJt37ibgO8vFAyimMYHThtGClcgfEDouWof9Ryj90z80QfgLgebm+E9kNnktuQ5fV3fvlNnzo25kbqqtZ3mF+FPSh3h+KZdjtOcEW2Baz4u0yaYT2ww5qqiMVWGsWWGattN5rtN1Zccr8C6n9+c5GmojSRRaHjiFbPb4QFFGHbgcfw6VI+GPeXG+g

                    yep - that looks like it was it.. thanks again.

                    HISE Development for hire.
                    www.channelrobot.com

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

                    22

                    Online

                    1.7k

                    Users

                    11.8k

                    Topics

                    102.8k

                    Posts