summaryrefslogtreecommitdiff
path: root/lib/skin_parser/skin_parser.c (follow)
Commit message (Collapse)AuthorAge
* Fix unchecked result skin_parse_tag() exposed by r28480.Thomas Martitz2010-11-05
| | | | | | | It caused the parser to not see that skin parsing failed and to enter an infinite loop. And as a result it continued to endlessly malloc(). In normal build the skin buffer size limit made it end. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28497 a1c6a512-1295-4272-9138-f99709370657
* Correct spelling of 'seperate' in the skin parsing code - FS#11724 by ↵Bertrik Sikken2010-11-05
| | | | | | Alexander Levin git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28485 a1c6a512-1295-4272-9138-f99709370657
* Fix a bug introduced with r28370 (feature check tag improvements) where ↵Jonathan Gordon2010-11-03
| | | | | | %Rp<foo> would fail to parse if the target had recording. Also enable debugging in the checkwps build line git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28473 a1c6a512-1295-4272-9138-f99709370657
* skin_parser: Change the way hardware conditionals are done (i.e %?cc)Jonathan Gordon2010-10-28
| | | | | | | | They now only parse the correct branch (so only the true branch, or only the false branch). This shuold allow you to load different images/backdrops with the same id's depending on the targets hardware. Add a new %Tp - "touchscreen present?" tag to check if the target has a touchscreen git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28370 a1c6a512-1295-4272-9138-f99709370657
* libskin_parser: fix a annoying bug where viewports required at least one ↵Jonathan Gordon2010-10-05
| | | | | | line (even %Vi()). multiple %Vi lines direclty under eachother should now work git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28210 a1c6a512-1295-4272-9138-f99709370657
* New skin tag: %if(<tag>, <operator>, <operand> [,option count]) which lets ↵Jonathan Gordon2010-08-19
| | | | | | | | | | | | | | | | | you do very simple logical comparissons on other tags. <tag> is the tag to check against <operator> is the comparisson to do, any one of... =, !=, >, >=, <, <= (when comparring against a string tag like %ia only = and != work, and it is done NOT case sensitive) <operand> is either another tag, a number, or text. [option count] is an optinal number to use for the few tags which scale to the amount of options when used as a conditional (i.e %?pv<a|b|c|d> would have 4 options) example: %?if(%pv, >=, 0)<Warning.. volume clipping|coool...> That says "If the value from %pv (volume) is greater than or equal to 0 then display the warning line, otherwise the cool line." %?if(%ia, =, %Ia)<same artist> <= this artist and next artist are the same. some tags might need a touch of tweaking to work better with this. experiment and have fun git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27846 a1c6a512-1295-4272-9138-f99709370657
* Change %xd to allow for a number to be used to specify the subimage. i.e ↵Jonathan Gordon2010-08-14
| | | | | | | | | %xd(Ac) can now we written as %xd(A, 3). subimage count start at 1 so a=1, b=2 etc. Also adds the possibility to specify a set of params which a tag can have (i.e a tag or a integer) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27812 a1c6a512-1295-4272-9138-f99709370657
* Add a T type to the tag table which allows parameters to be a single tagJonathan Gordon2010-08-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27716 a1c6a512-1295-4272-9138-f99709370657
* make -vvv display the parse tree in checkwps. Fix a potential bug in the ↵Jonathan Gordon2010-08-03
| | | | | | parser where recursive tags (the playlist viewier) would share params with its parant which meant bad things git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27677 a1c6a512-1295-4272-9138-f99709370657
* skinparser lib: more const correctnessNils Wallménius2010-07-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27641 a1c6a512-1295-4272-9138-f99709370657
* skinparser lib: some const correctness and marking of local vars as 'static'Nils Wallménius2010-07-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27635 a1c6a512-1295-4272-9138-f99709370657
* FS#11470 - new skin code, finally svn uses the new parser from the theme ↵Jonathan Gordon2010-07-29
| | | | | | editor. This means that a skin that passes the editor WILL pass svn and checkwps (unless the target runs out of skin buffer or something. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27613 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Added column number to parser error messagesRobert Bieber2010-07-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27477 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Committed FS#11477 to add a DECIMAL parameter type in the ↵Robert Bieber2010-07-15
| | | | | | parser and adapt the Theme Editor to accomodate the change by Johnathan Gordon. Fixed bug in the parser caused by the patch (error was thrown on zero value) and adapted tag rendering for new format git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27426 a1c6a512-1295-4272-9138-f99709370657
* s/SUBLINES/LINE_ALTERNATOR/Jonathan Gordon2010-07-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27271 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Implemented a flags column in the tag table, removed the \n ↵Robert Bieber2010-07-04
| | | | | | flag at the end of the param list and replaced it with a NOBREAK flag to prevent the renderer from inserting a line break at the end of the line. Modified the theme editor's renderer to accomodate this flag git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27268 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Fixed a warning in the parser due to a stray asteriskRobert Bieber2010-07-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27239 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Removed some old hash code that caused viewer not to update ↵Robert Bieber2010-07-02
| | | | | | due to hash collisions. Made Vf and Vb tags attached to viewport definition eat newline at end of line' git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27238 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Fixed line numbering bug in parser. Implemented playlist ↵Robert Bieber2010-07-01
| | | | | | display in renderer: playlist will use info for next track for all tracks other than the current track git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27227 a1c6a512-1295-4272-9138-f99709370657
* minor tweak to r27210 to make it the same as the svn parser... eat ↵Jonathan Gordon2010-07-01
| | | | | | everything up to and including the \n after these tags git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27211 a1c6a512-1295-4272-9138-f99709370657
* Theme Editor: Implemented JdGordon's tag newline-eating mechanismRobert Bieber2010-07-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27210 a1c6a512-1295-4272-9138-f99709370657
* skin_parser: Fixed bug handling sublines with no contentRobert Bieber2010-06-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27060 a1c6a512-1295-4272-9138-f99709370657
* tiny clean up of memory allocationJonathan Gordon2010-06-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26887 a1c6a512-1295-4272-9138-f99709370657
* make the parser slightly more usable for rockbox, move the buffer allocation ↵Jonathan Gordon2010-06-17
| | | | | | into the lib (maybe not the best spot?) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26880 a1c6a512-1295-4272-9138-f99709370657
* Move the skin parser to a seperate libraryJonathan Gordon2010-06-17
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26877 a1c6a512-1295-4272-9138-f99709370657