Skip to content

sheinin/myguide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 

Repository files navigation

Overview

An incubating 2D scroll helper.

  • Measures the size and position of UI layouts on the screen
  • Continuously fetches views closest to scroll position
  • Applies offset X/Y to view containers
  • Binds data to the containers

Example data mapping with containers A, B, C, D given scroll position of bottom right x: 4, y: 4:

     DATA        SCREEN   CONTAINERS  
00 01 02 03 04  . . . . .  A -> 44  
10 11 12 13 14  . . . . .  B -> 43  
20 21 22 23 24  . . . _ .  C -> 33  
30 31 32 33 34  . . |   |  D -> 34  
40 41 42 43 44  . . | _ |  

Filter and sort of list is attained by updating indexes of visible views, and does not need data reload:

DATA
# | col1 | col2      #
0                    #
.                    #
N                    # Table data
    
FILTER
# | DATA.#           # 
0        0           # Sorted, filtered
.        .           # data indexes
M        N           # M <= N
     
DISPLAY
# | FILTER.# | XYWH  #
0          0         # View container
.          .         # mapping
L          M         # L <= M

Screenshots

2D Scrolling

Text Scaling and Zoom

Collapsible Tree

N-Column Table

Experimental Mode

Rendering and positioning of layouts is handled internally, without relying on UI libraries or context.

Layout templates are sourced from serialized strings

In Experimental Mode, UI rendering relies on algebraic calculations with no need for external dependencies. This approach promises new Browsing capabilities to low power devices.

Links

Watch the Video

Browser Prototype

PlayStore App

About

A 2D scrolling helper

Topics

Resources

Stars

Watchers

Forks

Contributors