summaryrefslogtreecommitdiff
path: root/src/select/select.c
Commit message (Collapse)AuthorAgeFilesLines
* A motley selection of changes. Vague summary:John Mark Bell2009-02-141-122/+333
| | | | | | | | | | | | | | | | | | + Add config makefile (not that there's anything to configure at present :) + Fix dumping of UNIT_MS to actually use sprintf and not printf + Extend computed style dumping (still loads of properties missing) + Make result buffer larger in select-auto.c -- avoids buffer overflows when there's way more output than expected + Expand expected test output to contain defaulted properties (more of this will be needed once the computed style dumping is complete) + Store interned string pointers in css_select_state. + Intern pseudo class/element names at start of selecting styles for a sheet + Group properties so we know which ones appear in the extension blocks + Fixup unset properties once the cascade has completed + Implement matching of pseudo class/element selectors + Fix setting of background-image and list-style-image when there's no URL. svn path=/trunk/libcss/; revision=6470
* Ensure pseudo classes/elements fail to match.John Mark Bell2009-02-131-0/+6
| | | | | | Ensure that plain element selectors match. svn path=/trunk/libcss/; revision=6467
* Don't attempt to match details on a NULL pointerJohn Mark Bell2009-02-121-10/+13
| | | | svn path=/trunk/libcss/; revision=6460
* Verify parameters to css_select_style.John Mark Bell2009-02-121-1/+1
| | | | svn path=/trunk/libcss/; revision=6459
* Something approximating font-family. This is hideous.John Mark Bell2009-02-111-0/+3
| | | | svn path=/trunk/libcss/; revision=6439
* So, it transpires that we don't need the selection context in the property ↵John Mark Bell2009-02-111-9/+6
| | | | | | | | handlers after all. Remove that, then. Implement handlers for a few properties. svn path=/trunk/libcss/; revision=6414
* Implement sort ordering. Inevitably, this is more comment than code.John Mark Bell2009-02-101-17/+110
| | | | svn path=/trunk/libcss/; revision=6413
* Purge side bits. These cause more trouble than they're worth, and it's not ↵John Mark Bell2009-02-101-16/+27
| | | | | | as if there's a dearth of opcode space. svn path=/trunk/libcss/; revision=6410
* Much API cleanup.John Mark Bell2009-02-101-23/+141
| | | | | | | | Dispatch property handling through a table. Implement cascade_style. All property handlers are stubs at present. svn path=/trunk/libcss/; revision=6409
* Distinguish between pseudo classes and pseudo elementsJohn Mark Bell2009-02-101-2/+5
| | | | svn path=/trunk/libcss/; revision=6406
* Musings about a potential optimisationJohn Mark Bell2009-02-091-0/+6
| | | | svn path=/trunk/libcss/; revision=6405
* Match detailsJohn Mark Bell2009-02-091-5/+42
| | | | svn path=/trunk/libcss/; revision=6404
* This is more likely to handle universal simple_selectors correctly.John Mark Bell2009-02-091-41/+143
| | | | | | | | Refactor stuff while we're at it. Selector chains containing universal simple components are expensive to match/reject, as they require matching details on every previous sibling/ancestor (depending on the combinator type). Thus, we aim to handle the universal case last, to have the best chance of avoiding it. svn path=/trunk/libcss/; revision=6403
* Match selector chains. Universal selectors will probably break this.John Mark Bell2009-02-091-6/+107
| | | | svn path=/trunk/libcss/; revision=6402
* Beginnings of a handler function table.John Mark Bell2009-02-091-8/+11
| | | | svn path=/trunk/libcss/; revision=6401
* Iterate over the selectors in a stylesheet which match the current node's name.John Mark Bell2009-02-091-3/+76
| | | | svn path=/trunk/libcss/; revision=6400
* Traverse stylesheet tree iteratively.John Mark Bell2009-02-091-22/+60
| | | | svn path=/trunk/libcss/; revision=6399
* Further tweaks. We need to know the <sheet,rule> pair from which a property ↵John Mark Bell2009-02-071-2/+8
| | | | | | got set so that we can determine whether a subsequently defined rule overrides it. svn path=/trunk/libcss/; revision=6395
* Beginnings of a style selection algorithm.John Mark Bell2009-02-071-10/+76
| | | | svn path=/trunk/libcss/; revision=6392
* Fix build.John Mark Bell2009-02-071-1/+18
| | | | | | Sketch out a struct containing the state needed during selection. We need to know the specificity, origin, and importance of the source of the current property value. We also need to know whether the property has been set at all (as this is not available by simply inspecting the computed style struct). svn path=/trunk/libcss/; revision=6391
* Oh look, I've changed my mind again.John Mark Bell2009-02-071-2/+2
| | | | | | It's far better that the client creates computed style objects which we then populate. This will allow more efficient composition of styles as, in the most common case, it won't require any memory allocation. svn path=/trunk/libcss/; revision=6390
* More API changes.John Mark Bell2009-02-071-2/+3
| | | | | | | Make css_computed_style_create() private. Implement css_computed_style_[create,destroy](). svn path=/trunk/libcss/; revision=6389
* Mutators for computed styleJohn Mark Bell2009-02-071-1/+1
| | | | svn path=/trunk/libcss/; revision=6388
* Fill in members of css_computed_{style,uncommon}John Mark Bell2009-02-051-0/+1
| | | | | | Add a couple of types to types.h -- the fixed point stuff needs thinking about. svn path=/trunk/libcss/; revision=6365
* Fiddle around with css_select_style()'s API. Add some documentation.John Mark Bell2009-01-271-2/+23
| | | | svn path=/trunk/libcss/; revision=6285
* Introduce ability to create/destroy selection contexts.John Mark Bell2009-01-261-0/+220
svn path=/trunk/libcss/; revision=6284