summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* letter-spacingJohn Mark Bell2008-11-201-4/+57
| | | | svn path=/trunk/libcss/; revision=5760
* heightJohn Mark Bell2008-11-201-4/+56
| | | | svn path=/trunk/libcss/; revision=5759
* Make integer_from_css_string return the number of input bytes processed.John Mark Bell2008-11-202-3/+9
| | | | svn path=/trunk/libcss/; revision=5758
* Port css21 frontend to new object APIJohn Mark Bell2008-11-093-119/+104
| | | | svn path=/trunk/libcss/; revision=5676
* Make stylesheet component constructors/destructors report errorsJohn Mark Bell2008-11-093-60/+96
| | | | svn path=/trunk/libcss/; revision=5675
* Port libcss to new lpu API.John Mark Bell2008-11-0910-144/+174
| | | | | | Make lexer, core parser, and css21 parser constructors&destructors return errors svn path=/trunk/libcss/; revision=5674
* Support signs on numbers, percentages, and dimensionsJohn Mark Bell2008-10-273-12/+79
| | | | svn path=/trunk/libcss/; revision=5648
* Really stop on first non-digitJohn Mark Bell2008-10-271-1/+1
| | | | svn path=/trunk/libcss/; revision=5647
* Update Lexer/Token documentation to handle CSS numbers correctly.John Mark Bell2008-10-272-3/+3
| | | | | | This is delightful. I get to rework the lexer state machine. Grr. svn path=/trunk/libcss/; revision=5646
* Function to extract an integer from a css_string.John Mark Bell2008-10-262-2/+44
| | | | | | | | | | Use this in font-weight parsing. TODO: NUMBER tokens may contain [-+]? ([0-9]+ | [0-9]* '.' [0-9]+). The lexer currently doesn't cater for the [-+]? part. This is a bug (inherited from the grammar in the spec), and must be fixed. TODO: integer_from_css_string probably wants to pass out the number of characters processed so that the client can determine if the input was valid for their context. svn path=/trunk/libcss/; revision=5645
* font-variant, font-weightJohn Mark Bell2008-10-262-9/+92
| | | | svn path=/trunk/libcss/; revision=5644
* font-styleJohn Mark Bell2008-10-262-5/+39
| | | | svn path=/trunk/libcss/; revision=5643
* font-sizeJohn Mark Bell2008-10-262-5/+101
| | | | svn path=/trunk/libcss/; revision=5642
* floatJohn Mark Bell2008-10-261-4/+35
| | | | svn path=/trunk/libcss/; revision=5641
* empty-cellsJohn Mark Bell2008-10-262-4/+36
| | | | svn path=/trunk/libcss/; revision=5640
* elevationJohn Mark Bell2008-10-262-5/+78
| | | | svn path=/trunk/libcss/; revision=5639
* directionJohn Mark Bell2008-10-262-9/+119
| | | | | | display svn path=/trunk/libcss/; revision=5638
* cue-{after,before}John Mark Bell2008-10-261-8/+99
| | | | svn path=/trunk/libcss/; revision=5637
* colorJohn Mark Bell2008-10-261-4/+47
| | | | svn path=/trunk/libcss/; revision=5636
* caption-sideJohn Mark Bell2008-10-261-4/+33
| | | | svn path=/trunk/libcss/; revision=5635
* border-collapseJohn Mark Bell2008-10-263-26/+275
| | | | | | | | {top,right,bottom,left} s/parse_length_specifier/parse_unit_specifier/g Fix error propagation in some cases. svn path=/trunk/libcss/; revision=5634
* border-{top,right,bottom,left}-{style,width}John Mark Bell2008-10-262-49/+185
| | | | svn path=/trunk/libcss/; revision=5633
* Some kind of border-{top,right,bottom,left}-color parsing.John Mark Bell2008-10-251-24/+67
| | | | svn path=/trunk/libcss/; revision=5630
* Fix memory corruption. This took far too long to debug. Bah.John Mark Bell2008-10-251-1/+2
| | | | svn path=/trunk/libcss/; revision=5628
* A bunch of property parsers.John Mark Bell2008-10-257-55/+558
| | | | | | | | | | Split out !important parsing into a separate function. Support for dumping bytecode to a file handle in some kind of human-readable format. Strings can be represented in the bytecode as a pointer, length pair rather than embedding the string data into the bytecode -- all strings are interned by the core syntax parser. Add todo relating to early destruction of parser object (it shouldn't be needed once parsing is complete). Note documented issue surrounding interned string dictionary, however. In general, it seems wasteful to create a new dictionary containing string representations of keywords for every single parser instance. It would be better to have one central (statically allocated?) dictionary for this and then each parser instance can have a smaller dictionary containing any unknown strings contained within the stylesheet being parsed (e.g. string constants or URLs). svn path=/trunk/libcss/; revision=5627
* Something approximating a parser for clear.John Mark Bell2008-10-235-8/+175
| | | | | | Provide API to create/destroy css_styles and append them to css_rules. svn path=/trunk/libcss/; revision=5625
* Actually include the opcodes header.John Mark Bell2008-10-222-2/+3
| | | | | | Fix typos. svn path=/trunk/libcss/; revision=5624
* Something approximating an enumeration of the opcode-specific value field.John Mark Bell2008-10-222-2/+633
| | | | | | Some type-related pedantry, too. svn path=/trunk/libcss/; revision=5623
* Bytecode stuffJohn Mark Bell2008-10-222-0/+166
| | | | svn path=/trunk/libcss/; revision=5621
* Parse common part of declarations.John Mark Bell2008-10-224-6/+1888
| | | | | | Stub out handlers for properties. svn path=/trunk/libcss/; revision=5620
* In hindsight, it's more likely that opcodes will be added than flags, so use ↵John Mark Bell2008-10-221-5/+5
| | | | | | 10 bits for the opcode and 8 for flags. svn path=/trunk/libcss/; revision=5619
* Provide example of typed parameter listJohn Mark Bell2008-10-211-0/+9
| | | | svn path=/trunk/libcss/; revision=5618
* Document shorthand propertiesJohn Mark Bell2008-10-211-0/+32
| | | | svn path=/trunk/libcss/; revision=5617
* Reduce space requirements by squashing opcode + flags + value into 32 bits. John Mark Bell2008-10-211-545/+431
| | | | | | | This has been achieved by reducing opcode's width from 16 to 8 bits. This is fine as there's 172 opcodes still available at present so plenty of room for expansion. Flags have been reduced from 16 to 10 bits wide and currently have 8 bits unused. This leaves 14 bits available for the opcode-specific value. No opcode needs all 14 bits at present. Inherit is now a global flag rather than a pre-defined value. This saves looking at the value field at all when styles are inherited and generally reduces complexity. svn path=/trunk/libcss/; revision=5616
* All properties done.John Mark Bell2008-10-211-23/+844
| | | | svn path=/trunk/libcss/; revision=5615
* Beginnings of a bytecode format.John Mark Bell2008-10-211-0/+318
| | | | svn path=/trunk/libcss/; revision=5611
* Style information for selector rulesets can be shared between the individual ↵John Mark Bell2008-10-201-2/+1
| | | | | | selectors in the ruleset. Therefore, hang it off the css_rule object, rather than having a separate copy for every selector in the ruleset. Selectors know which css_rule they belong to so can easily find the applicable style information. svn path=/trunk/libcss/; revision=5609
* Fix stupid.John Mark Bell2008-10-201-4/+8
| | | | svn path=/trunk/libcss/; revision=5606
* Squash warningJohn Mark Bell2008-10-201-1/+1
| | | | svn path=/trunk/libcss/; revision=5605
* Update commentJohn Mark Bell2008-10-191-1/+8
| | | | svn path=/trunk/libcss/; revision=5604
* Fix parsing of combinators: the CSS 2.1 spec grammar contains inaccuracies ↵John Mark Bell2008-10-191-11/+35
| | | | | | | | -- combinators may be preceded by whitespace. Fix handling of whitespace after a selector list: again, the CSS 2.1 grammar isn't accurate here. svn path=/trunk/libcss/; revision=5603
* Provide an internal mechanism for dumping stylesheets to a file handle.John Mark Bell2008-10-193-1/+178
| | | | | | Make the css21 test driver call this so we can see if it's working. svn path=/trunk/libcss/; revision=5602
* Finish selector list parsingJohn Mark Bell2008-10-193-77/+415
| | | | svn path=/trunk/libcss/; revision=5599
* More work on selector list parsingJohn Mark Bell2008-10-181-18/+99
| | | | svn path=/trunk/libcss/; revision=5597
* Modify CSS2.1 frontend test driver to use the public stylesheet API.John Mark Bell2008-09-253-22/+18
| | | | | | Media type handling may need to change -- 32bits may not be large enough in the long term, and there's no sensible way of extending this without causing ABI breakage in the future. svn path=/trunk/libcss/; revision=5439
* Implement css_stylesheet_append_data and css_stylesheet_data_doneJohn Mark Bell2008-09-251-10/+6
| | | | svn path=/trunk/libcss/; revision=5438
* Create a parser instance for a stylesheet. Also create a level-specific ↵John Mark Bell2008-09-253-3/+41
| | | | | | frontend. This probably wants reworking as we don't really want to be switching on the language level every time we want to interact with the parser frontend. svn path=/trunk/libcss/; revision=5437
* Mechanism for the client to select the language level.John Mark Bell2008-09-253-10/+23
| | | | svn path=/trunk/libcss/; revision=5436
* Add API to get/set a stylesheet's disabled stateJohn Mark Bell2008-09-252-2/+39
| | | | svn path=/trunk/libcss/; revision=5435
* Implement most of stylesheet's public APIJohn Mark Bell2008-09-252-19/+79
| | | | svn path=/trunk/libcss/; revision=5434