GSOC Day 10 – panelSystem Media
Today, I worked to finish the media support in panelPicture and to start and finish the media support in panelSystem. panelPicture’s support was nearly complete, but I had a few minor polish things to take care of. panelSystem didn’t have much structure for downloading images, so I had to add that – it was mostly fairly easy to copy the general ideas from panelPicture.
I had to tie into the media update events from the MediaThread, so that the panel could re-draw itself when new images were downloaded. This also meant that I had to keep a list of images that it wanted to pay attention to. I found that re-drawing only one image was a bit iffy, so I just had it rebuild itself whenever an image it cared about finished downloading. This worked well.
My other fixes for the day involved the MediaThread in libtpclient-py itself – the thread was not using authentication to log into a media server, so unless it was open to the public, it wouldn’t get in. I had to cut the URL into parts, which fortunately urllib does nicely for you, and then piece it back together in the format: http://username:firstname.lastname@example.org. Then it thought that the :password was the port, so I had to strip that out again in one section of the code. Finally, it worked.
It felt good to finally commit the media changes to the repository. Now I just need to work on the media for the starmap itself.
Here’s a screenshot of the media in panelSystem:
I’m not sure whether I’ll work on StarMap media tomorrow or whether I’ll work on orders. We’ll see.