Rockbox mail archiveSubject: Re: Working towards skin engine 2.0 (includes RFC on code!)
Re: Working towards skin engine 2.0 (includes RFC on code!)
From: Jonathan Gordon <jdgordy_at_gmail.com>
Date: Wed, 9 Nov 2011 00:17:02 +1100
I honestly didnt think it would be this simple! Attached is the
changes removing all dynamic pointers from the skin engine!
I'm not entirely sure what to do about the conversion macros. I am
going to keep the OFFSETTYPE() one (though open to a better name)
because it is helpful).
Like I said in my previous emails, the ultimate goal is to have each
wps_data struct manage its own buffer, so skin_buffer wont be
skin_buffer everywhere. Though because this is evolving I'm not
entirely sure what it will look like.
I'm hopefully going to do target builds for most targets and put them
online, but going by previous attempts I think it is unlikely to get
enough testers to find the subtle bugs. The mere fact it works at all
means I didnt break the engine, but it is possible individual tags got
messed up, so they would hopefully be simple to fix once we have a
broken skin file.
I'm *hoping* to have the last of this round of changes done tommorow
and I'd like to commit it soon (depending on external testers). Macros
are dead simple to replace if someone comes up with a good replacement
so I'm not too worried about leaving that discussion open (though I
don't think changing them to functions is beneficial).
I *did* use skin_buffer_to/from_offset() in the library because its
base pointer is static for the life of the parse so there is no need
to pass another variable around, and the macro there is awkward.
Testing is pretty much: Apply and run your themes. If it works there
should be no difference at all.