I have a situation where I need to send complex large images and container controls (Which I will call STUFF) to users with very very low bandwidth. I do not mind an initial load time lag, but I need the UI to be snappy when the user needs it.
I am thinking that I could cache the STUFF somehow on load, but IM not sure the best way to use xojo to do this.
Some initial thoughts:
Make all the STUFF.visible = False and toggle that
Put the STUFF way off the screen and Move it Like STUFF.left=4500000 --> STUFF.left =25
Put Images in 1 pixel by one pixel image wells and inflate/enlarge them up demand?
Perhaps apply a style to the STUFF that makes it the same color as the background and then make it visible?
[quote=156191:@Jay Menna]I have a situation where I need to send complex large images and container controls (Which I will call STUFF) to users with very very low bandwidth. I do not mind an initial load time lag, but I need the UI to be snappy when the user needs it.
I am thinking that I could cache the STUFF somehow on load, but IM not sure the best way to use xojo to do this.
Some initial thoughts:
Make all the STUFF.visible = False and toggle that
Put the STUFF way off the screen and Move it Like STUFF.left=4500000 → STUFF.left =25
Put Images in 1 pixel by one pixel image wells and inflate/enlarge them up demand?
Perhaps apply a style to the STUFF that makes it the same color as the background and then make it visible?
Also, you may want to use image size reduction techniques, such as offered by several online services listed here reduce image size at DuckDuckGo . I have used that in the 90’s, in the modem era, when bandwidth was a luxury. Gaining 20 or 30% load time on a large image can make a world of difference.
I quickly tried the first link http://www.imageoptimizer.net
on the ShuttleLaunch.png picture from the Xojo examples. It went from 599 KB down to 313 KB with the normal quality compression setting (there are 6 different levels). That is not far from 50%. Yet, I looked at the two pictures in two browser windows side by side, and I cannot see the differences.