summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* max-heightJohn Mark Bell2008-11-253-43/+350
| | | | | | | | | | | | | max-width min-height min-width orphans outline-color outline-style TODO: fix all instances of the creation of bytecode with parameters. Currently, they only consult value to determine if there are additional parameters. This means that, in the case of inherit and the default value being one which takes parameters, spurious space is allocated in the bytecode. svn path=/trunk/libcss/; revision=5771
* margin-{bottom,left,right,top}John Mark Bell2008-11-251-33/+74
| | | | | | Fix parse_border_side_* to emit lengths correctly. svn path=/trunk/libcss/; revision=5770
* list-style-type.John Mark Bell2008-11-253-13/+87
| | | | | | Apparently, upper-greek doesn't exist, so remove it from the bytecode. svn path=/trunk/libcss/; revision=5769
* list-style-positionJohn Mark Bell2008-11-252-5/+36
| | | | svn path=/trunk/libcss/; revision=5768
* list-style-imageJohn Mark Bell2008-11-251-4/+48
| | | | svn path=/trunk/libcss/; revision=5767
* Fix rounding when fractional part is close to 1.John Mark Bell2008-11-241-3/+4
| | | | | | Add testcase to exercise this. svn path=/trunk/libcss/; revision=5766
* Fix number parsing and make test code automatically determine correctness.John Mark Bell2008-11-241-2/+3
| | | | | | | More test data, which covers everything. Fix includes in libcss/types.h svn path=/trunk/libcss/; revision=5764
* All numerical values are represented in 22:10 fixed point.John Mark Bell2008-11-233-24/+122
| | | | svn path=/trunk/libcss/; revision=5762
* Something approximating line-heightJohn Mark Bell2008-11-211-4/+66
| | | | | | | TODO: parse floats TODO: values with units may contain floats, not integers svn path=/trunk/libcss/; revision=5761
* 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-092-116/+102
| | | | svn path=/trunk/libcss/; revision=5676
* Make stylesheet component constructors/destructors report errorsJohn Mark Bell2008-11-092-57/+93
| | | | svn path=/trunk/libcss/; revision=5675
* Port libcss to new lpu API.John Mark Bell2008-11-097-131/+164
| | | | | | 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-271-12/+30
| | | | svn path=/trunk/libcss/; revision=5648
* Really stop on first non-digitJohn Mark Bell2008-10-271-1/+1
| | | | svn path=/trunk/libcss/; revision=5647
* 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-256-52/+555
| | | | | | | | | | 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-223-6/+1815
| | | | | | Stub out handlers for properties. svn path=/trunk/libcss/; revision=5620
* 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-192-0/+175
| | | | | | 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-251-1/+1
| | | | | | 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-252-2/+40
| | | | | | 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-251-2/+3
| | | | svn path=/trunk/libcss/; revision=5436