mirror of
https://github.com/lexborisov/Modest
synced 2024-11-24 22:59:38 +03:00
We put in order CSS properties. Fixed memory collision bug
This commit is contained in:
parent
221b3ae461
commit
ca51a60b2a
4
Makefile
4
Makefile
@ -15,6 +15,10 @@ MODEST_OPTIMIZATION_LEVEL ?= -O2
|
||||
CFLAGS ?= -Wall -Werror
|
||||
CFLAGS += $(MODEST_OPTIMIZATION_LEVEL) -fPIC --std=c99 -I$(SRCDIR)
|
||||
|
||||
ifdef MODEST_BUILD_DEBUG
|
||||
CFLAGS += -g
|
||||
endif
|
||||
|
||||
MODEST_BUILD_WITHOUT_THREADS ?= NO
|
||||
ifeq ($(MODEST_BUILD_WITHOUT_THREADS),YES)
|
||||
$(info Build without POSIX Threads)
|
||||
|
@ -14,6 +14,9 @@
|
||||
0E0C918C1DAECB56007A0501 /* serialization.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C918A1DAECB56007A0501 /* serialization.c */; };
|
||||
0E0C918F1DAED006007A0501 /* serialization.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C918D1DAED006007A0501 /* serialization.c */; };
|
||||
0E0C91921DAED0F5007A0501 /* serialization.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C91901DAED0F5007A0501 /* serialization.c */; };
|
||||
0E0C91961DB1064E007A0501 /* serialization.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C91941DB1064E007A0501 /* serialization.c */; };
|
||||
0E0C91991DB107E7007A0501 /* property.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C91971DB107E7007A0501 /* property.c */; };
|
||||
0E0C919C1DB10866007A0501 /* raw_property.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C919A1DB10866007A0501 /* raw_property.c */; };
|
||||
0E5AA4BD1DA9689700FF5358 /* shared.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E5AA4BB1DA9689700FF5358 /* shared.c */; };
|
||||
0E750EE31D9AF1D500337E9B /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E750EE21D9AF1D500337E9B /* main.c */; };
|
||||
0E750EF81D9AF25300337E9B /* finder.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E750EEE1D9AF25300337E9B /* finder.c */; };
|
||||
@ -100,6 +103,7 @@
|
||||
0E7510041D9AF27F00337E9B /* mctree.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E750FE21D9AF27F00337E9B /* mctree.c */; };
|
||||
0E7510051D9AF27F00337E9B /* utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E750FE51D9AF27F00337E9B /* utils.c */; };
|
||||
0E818EF61DAE6F8F005B0C77 /* serialization.c in Sources */ = {isa = PBXBuildFile; fileRef = 0E818EF41DAE6F8F005B0C77 /* serialization.c */; };
|
||||
0EA033771DB6AFBA009CB2B9 /* raw.c in Sources */ = {isa = PBXBuildFile; fileRef = 0EA033751DB6AFBA009CB2B9 /* raw.c */; };
|
||||
0EF808A31D9FF3BC001AF6EF /* sheet.c in Sources */ = {isa = PBXBuildFile; fileRef = 0EF808A11D9FF3BC001AF6EF /* sheet.c */; };
|
||||
0EF808A61DA08BBE001AF6EF /* map.c in Sources */ = {isa = PBXBuildFile; fileRef = 0EF808A41DA08BBE001AF6EF /* map.c */; };
|
||||
/* End PBXBuildFile section */
|
||||
@ -132,6 +136,12 @@
|
||||
0E0C91901DAED0F5007A0501 /* serialization.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = serialization.c; sourceTree = "<group>"; };
|
||||
0E0C91911DAED0F5007A0501 /* serialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = serialization.h; sourceTree = "<group>"; };
|
||||
0E0C91931DAEEFC8007A0501 /* resources_name.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = resources_name.h; sourceTree = "<group>"; };
|
||||
0E0C91941DB1064E007A0501 /* serialization.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = serialization.c; path = ../../../source/modest/node/serialization.c; sourceTree = "<group>"; };
|
||||
0E0C91951DB1064E007A0501 /* serialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = serialization.h; path = ../../../source/modest/node/serialization.h; sourceTree = "<group>"; };
|
||||
0E0C91971DB107E7007A0501 /* property.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = property.c; path = ../../../source/modest/node/property.c; sourceTree = "<group>"; };
|
||||
0E0C91981DB107E7007A0501 /* property.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = property.h; path = ../../../source/modest/node/property.h; sourceTree = "<group>"; };
|
||||
0E0C919A1DB10866007A0501 /* raw_property.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = raw_property.c; path = ../../../source/modest/node/raw_property.c; sourceTree = "<group>"; };
|
||||
0E0C919B1DB10866007A0501 /* raw_property.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = raw_property.h; path = ../../../source/modest/node/raw_property.h; sourceTree = "<group>"; };
|
||||
0E5AA4BB1DA9689700FF5358 /* shared.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = shared.c; sourceTree = "<group>"; };
|
||||
0E5AA4BC1DA9689700FF5358 /* shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shared.h; sourceTree = "<group>"; };
|
||||
0E750EDF1D9AF1D500337E9B /* Modest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Modest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
@ -330,6 +340,8 @@
|
||||
0E818EF41DAE6F8F005B0C77 /* serialization.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = serialization.c; sourceTree = "<group>"; };
|
||||
0E818EF51DAE6F8F005B0C77 /* serialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = serialization.h; sourceTree = "<group>"; };
|
||||
0E818EF71DAE6FEE005B0C77 /* serialization_resources.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = serialization_resources.h; sourceTree = "<group>"; };
|
||||
0EA033751DB6AFBA009CB2B9 /* raw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = raw.c; sourceTree = "<group>"; };
|
||||
0EA033761DB6AFBA009CB2B9 /* raw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = raw.h; sourceTree = "<group>"; };
|
||||
0EF808A11D9FF3BC001AF6EF /* sheet.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sheet.c; sourceTree = "<group>"; };
|
||||
0EF808A21D9FF3BC001AF6EF /* sheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sheet.h; sourceTree = "<group>"; };
|
||||
0EF808A41DA08BBE001AF6EF /* map.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = map.c; sourceTree = "<group>"; };
|
||||
@ -353,6 +365,8 @@
|
||||
children = (
|
||||
0EF808A21D9FF3BC001AF6EF /* sheet.h */,
|
||||
0EF808A11D9FF3BC001AF6EF /* sheet.c */,
|
||||
0EA033761DB6AFBA009CB2B9 /* raw.h */,
|
||||
0EA033751DB6AFBA009CB2B9 /* raw.c */,
|
||||
0E0239801D9FE8EC0084A81A /* type.h */,
|
||||
0E02397F1D9FE8EC0084A81A /* type.c */,
|
||||
0EF808A51DA08BBE001AF6EF /* map.h */,
|
||||
@ -368,6 +382,12 @@
|
||||
children = (
|
||||
0E0239841D9FEAB90084A81A /* node.h */,
|
||||
0E0239831D9FEAB90084A81A /* node.c */,
|
||||
0E0C91981DB107E7007A0501 /* property.h */,
|
||||
0E0C91971DB107E7007A0501 /* property.c */,
|
||||
0E0C919B1DB10866007A0501 /* raw_property.h */,
|
||||
0E0C919A1DB10866007A0501 /* raw_property.c */,
|
||||
0E0C91951DB1064E007A0501 /* serialization.h */,
|
||||
0E0C91941DB1064E007A0501 /* serialization.c */,
|
||||
);
|
||||
name = node;
|
||||
sourceTree = "<group>";
|
||||
@ -477,8 +497,8 @@
|
||||
0E750F2A1D9AF27200337E9B /* check.h */,
|
||||
0E750F2B1D9AF27200337E9B /* convert.c */,
|
||||
0E750F2C1D9AF27200337E9B /* convert.h */,
|
||||
0E750F371D9AF27200337E9B /* entry.c */,
|
||||
0E750F381D9AF27200337E9B /* entry.h */,
|
||||
0E750F371D9AF27200337E9B /* entry.c */,
|
||||
0E750F3F1D9AF27200337E9B /* mycss.c */,
|
||||
0E750F401D9AF27200337E9B /* mycss.h */,
|
||||
0E750F421D9AF27200337E9B /* mystring.c */,
|
||||
@ -683,8 +703,8 @@
|
||||
0E750FD71D9AF27F00337E9B /* utils */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
0E750FD81D9AF27F00337E9B /* mchar_async.c */,
|
||||
0E750FD91D9AF27F00337E9B /* mchar_async.h */,
|
||||
0E750FD81D9AF27F00337E9B /* mchar_async.c */,
|
||||
0E750FDA1D9AF27F00337E9B /* mcobject.c */,
|
||||
0E750FDB1D9AF27F00337E9B /* mcobject.h */,
|
||||
0E750FDC1D9AF27F00337E9B /* mcobject_async.c */,
|
||||
@ -758,6 +778,7 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
0EA033771DB6AFBA009CB2B9 /* raw.c in Sources */,
|
||||
0E750FF71D9AF27F00337E9B /* tag.c in Sources */,
|
||||
0E750FF21D9AF27F00337E9B /* perf.c in Sources */,
|
||||
0E750FFF1D9AF27F00337E9B /* mchar_async.c in Sources */,
|
||||
@ -775,6 +796,7 @@
|
||||
0E750F891D9AF27200337E9B /* state.c in Sources */,
|
||||
0E750F1A1D9AF26300337E9B /* head.c in Sources */,
|
||||
0E750F1B1D9AF26300337E9B /* hhea.c in Sources */,
|
||||
0E0C91991DB107E7007A0501 /* property.c in Sources */,
|
||||
0E750EFB1D9AF25300337E9B /* type.c in Sources */,
|
||||
0E750F191D9AF26300337E9B /* glyf.c in Sources */,
|
||||
0E750F8B1D9AF27200337E9B /* mystring.c in Sources */,
|
||||
@ -788,6 +810,7 @@
|
||||
0E750F971D9AF27200337E9B /* pseudo.c in Sources */,
|
||||
0E750FEA1D9AF27F00337E9B /* encoding_detect.c in Sources */,
|
||||
0E750EFA1D9AF25300337E9B /* pseudo_class.c in Sources */,
|
||||
0E0C91961DB1064E007A0501 /* serialization.c in Sources */,
|
||||
0E750F901D9AF27200337E9B /* init.c in Sources */,
|
||||
0E750F921D9AF27200337E9B /* function.c in Sources */,
|
||||
0E750FFA1D9AF27F00337E9B /* tokenizer_doctype.c in Sources */,
|
||||
@ -815,6 +838,7 @@
|
||||
0E750FF11D9AF27F00337E9B /* parser.c in Sources */,
|
||||
0E750F221D9AF26300337E9B /* os_2.c in Sources */,
|
||||
0E750F991D9AF27200337E9B /* value.c in Sources */,
|
||||
0E0C919C1DB10866007A0501 /* raw_property.c in Sources */,
|
||||
0E750FF01D9AF27F00337E9B /* mystring.c in Sources */,
|
||||
0E750F961D9AF27200337E9B /* parser.c in Sources */,
|
||||
0E5AA4BD1DA9689700FF5358 /* shared.c in Sources */,
|
||||
|
Binary file not shown.
@ -28,6 +28,7 @@
|
||||
#include "modest/finder/thread.h"
|
||||
#include "myhtml/encoding.h"
|
||||
#include "myfont/myfont.h"
|
||||
#include "modest/node/serialization.h"
|
||||
|
||||
struct res_data {
|
||||
char *data;
|
||||
@ -154,9 +155,7 @@ void print_tree_after_all(modest_t* modest, myhtml_tree_t* myhtml_tree, myhtml_t
|
||||
if(m_node) {
|
||||
printf("\tstyles: ");
|
||||
|
||||
if(m_node->stylesheet->width.raw.declaration) {
|
||||
mycss_declaration_serialization_entry(mycss_entry, m_node->stylesheet->width.raw.declaration, serialization_callback, NULL);
|
||||
}
|
||||
modest_node_raw_serialization(mycss_entry, m_node, serialization_callback, NULL);
|
||||
|
||||
printf("\n");
|
||||
}
|
||||
@ -175,8 +174,14 @@ void print_tree_after_all(modest_t* modest, myhtml_tree_t* myhtml_tree, myhtml_t
|
||||
}
|
||||
}
|
||||
|
||||
size_t count = 0;
|
||||
|
||||
void modest_callback_for_create_mnode(myhtml_tree_t* tree, myhtml_tree_node_t* node, void* ctx)
|
||||
{
|
||||
if(node->tag_id == MyHTML_TAG__TEXT) {
|
||||
return;
|
||||
}
|
||||
|
||||
modest_t *modest = (modest_t*)ctx;
|
||||
|
||||
/* create modest node */
|
||||
@ -197,18 +202,21 @@ int main(int argc, const char * argv[]) {
|
||||
//char *css_f = "/new/C-git/bootstrap.css";
|
||||
|
||||
char *html = "<fff>sdsd<aaaa id=hash class=best><div a1><menu class=\"lalala\" id=\"menu-id\" b1><span span1><div a2></div></div><menu class=\"be\" id=\"menu\" b1><span span2></aaaa><a href=\"\" sec></a><div div1><div div2></div><div div3></div><div div4></div></div><p p1><p p2><p p3><p p4>";
|
||||
char *css = "div {padding: 10px 10 3em 0 !important; padding-bottom: 130px !important; padding-top: 18888pt !important; padding-left: 1em !important; padding-right: !important 20%;} div {width: 20px;}";
|
||||
char *css = "div {width: 0;} div[div2] {border-top-style: none;}";
|
||||
|
||||
char *selector = "menu";
|
||||
|
||||
modest_t *modest = modest_create();
|
||||
modest_status_t status = modest_init(modest);
|
||||
|
||||
// myhtml_tree_t *myhtml_tree = myhtml(html_f, strlen(html_f), true, false, modest_callback_for_create_mnode, (void*)modest);
|
||||
// mycss_entry_t *mycss_entry = mycss(css_f, strlen(css_f), true, true);
|
||||
myhtml_tree_t *myhtml_tree = myhtml(html_f, strlen(html_f), true, false, modest_callback_for_create_mnode, (void*)modest);
|
||||
mycss_entry_t *mycss_entry = mycss(css_f, strlen(css_f), true, true);
|
||||
|
||||
myhtml_tree_t *myhtml_tree = myhtml(html, strlen(html), false, true, modest_callback_for_create_mnode, (void*)modest);
|
||||
mycss_entry_t *mycss_entry = mycss(css, strlen(css), false, true);
|
||||
// myhtml_tree_t *myhtml_tree = myhtml(html, strlen(html), false, true, modest_callback_for_create_mnode, (void*)modest);
|
||||
// mycss_entry_t *mycss_entry = mycss(css, strlen(css), false, true);
|
||||
|
||||
modest->myhtml_tree = myhtml_tree;
|
||||
modest->mycss_entry = mycss_entry;
|
||||
|
||||
mycss_stylesheet_t *stylesheet = mycss_entry_stylesheet(mycss_entry);
|
||||
|
||||
@ -216,13 +224,16 @@ int main(int argc, const char * argv[]) {
|
||||
uint64_t parse_simple_start = myhtml_hperf_clock(NULL);
|
||||
uint64_t parse_simple_stop = myhtml_hperf_clock(NULL);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* full api */
|
||||
uint64_t parse_start = myhtml_hperf_clock(NULL);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
modest_finder_t* finder = modest_finder_create();
|
||||
status = modest_finder_init(finder, myhtml_tree, stylesheet);
|
||||
|
||||
@ -232,17 +243,20 @@ int main(int argc, const char * argv[]) {
|
||||
|
||||
status = modest_finder_thread_process(modest, finder_thread, myhtml_tree, myhtml_tree->node_html, stylesheet->sel_list_first);
|
||||
|
||||
finder_thread = modest_finder_thread_destroy(finder_thread, true);
|
||||
finder = modest_finder_destroy(finder, true);
|
||||
//finder_thread = modest_finder_thread_destroy(finder_thread, true);
|
||||
//finder = modest_finder_destroy(finder, true);
|
||||
|
||||
|
||||
uint64_t parse_stop = myhtml_hperf_clock(NULL);
|
||||
|
||||
//print_tree_after_all(modest, myhtml_tree, myhtml_tree->node_html, mycss_entry);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
uint64_t parse_stop = myhtml_hperf_clock(NULL);
|
||||
|
||||
|
||||
|
||||
printf("\n\n------------\nInformation:\n");
|
||||
printf("\tTicks/sec: %llu\n", (unsigned long long) myhtml_hperf_res(NULL));
|
||||
@ -274,3 +288,5 @@ int main(int argc, const char * argv[]) {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -20,10 +20,19 @@ else
|
||||
CFLAGS += -pthread
|
||||
endif
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
else
|
||||
UNAM := $(shell uname -s)
|
||||
ifeq ($(UNAM),Darwin)
|
||||
else
|
||||
CFLAGS += -D_POSIX_C_SOURCE=199309L
|
||||
endif
|
||||
endif
|
||||
|
||||
find_files_h = $(wildcard $(dir)/*.h)
|
||||
find_files_c = $(wildcard $(dir)/*.c)
|
||||
|
||||
SUBDIRS := selectors declarations font
|
||||
SUBDIRS := selectors declarations font modest
|
||||
HDRS += $(foreach dir,$(SUBDIRS),$(find_files_h))
|
||||
SRCS += $(foreach dir,$(SUBDIRS),$(find_files_c))
|
||||
|
||||
|
204
examples/modest/property_to_node.c
Normal file
204
examples/modest/property_to_node.c
Normal file
@ -0,0 +1,204 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#include <modest/modest.h>
|
||||
#include <modest/finder/finder.h>
|
||||
#include <modest/finder/thread.h>
|
||||
#include <modest/node/serialization.h>
|
||||
#include <myhtml/serialization.h>
|
||||
|
||||
myhtml_tree_t * parse_html(const char* data, size_t data_size, myhtml_callback_tree_node_f cai, void* cai_ctx)
|
||||
{
|
||||
myhtml_t* myhtml = myhtml_create();
|
||||
myhtml_init(myhtml, MyHTML_OPTIONS_DEFAULT, 1, 0);
|
||||
|
||||
myhtml_tree_t* tree = myhtml_tree_create();
|
||||
myhtml_tree_init(tree, myhtml);
|
||||
|
||||
myhtml_callback_tree_node_insert_set(tree, cai, cai_ctx);
|
||||
|
||||
myhtml_parse(tree, MyHTML_ENCODING_UTF_8, data, data_size);
|
||||
|
||||
return tree;
|
||||
}
|
||||
|
||||
void destroy_html(myhtml_tree_t* myhtml_tree)
|
||||
{
|
||||
myhtml_t* myhtml = myhtml_tree->myhtml;
|
||||
myhtml_tree_destroy(myhtml_tree);
|
||||
myhtml_destroy(myhtml);
|
||||
}
|
||||
|
||||
mycss_entry_t * parse_css(const char* data, size_t data_size)
|
||||
{
|
||||
// base init
|
||||
mycss_t *mycss = mycss_create();
|
||||
mycss_status_t status = mycss_init(mycss);
|
||||
|
||||
if(status) {
|
||||
fprintf(stderr, "Can't init CSS Parser\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
// currenr entry work init
|
||||
mycss_entry_t *entry = mycss_entry_create();
|
||||
status = mycss_entry_init(mycss, entry);
|
||||
|
||||
if(status) {
|
||||
fprintf(stderr, "Can't init CSS Entry\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
mycss_parse(entry, MyHTML_ENCODING_UTF_8, data, data_size);
|
||||
|
||||
return entry;
|
||||
}
|
||||
|
||||
void destroy_css(mycss_entry_t *mycss_entry)
|
||||
{
|
||||
mycss_t* mycss = mycss_entry->mycss;
|
||||
mycss_entry_destroy(mycss_entry, true);
|
||||
mycss_destroy(mycss, true);
|
||||
}
|
||||
|
||||
void serialization_callback(const char* data, size_t len, void* ctx)
|
||||
{
|
||||
printf("%.*s", (int)len, data);
|
||||
}
|
||||
|
||||
void callback_for_create_mnode(myhtml_tree_t* tree, myhtml_tree_node_t* node, void* ctx)
|
||||
{
|
||||
if(node->data)
|
||||
return;
|
||||
|
||||
modest_t *modest = (modest_t*)ctx;
|
||||
|
||||
/* create modest node */
|
||||
modest_node_t *m_node = modest_node_create(modest);
|
||||
if(m_node == NULL)
|
||||
return;
|
||||
|
||||
modest_node_init(modest, m_node);
|
||||
|
||||
node->data = (void*)m_node;
|
||||
}
|
||||
|
||||
void print_tree(modest_t* modest, myhtml_tree_t* myhtml_tree, myhtml_tree_node_t* scope_node, mycss_entry_t *mycss_entry)
|
||||
{
|
||||
myhtml_tree_node_t* node = scope_node;
|
||||
|
||||
while(node) {
|
||||
modest_node_t *m_node = (modest_node_t*)node->data;
|
||||
|
||||
myhtml_serialization_node_callback(myhtml_tree, node, serialization_callback, NULL);
|
||||
|
||||
if(m_node) {
|
||||
printf(" {");
|
||||
|
||||
modest_node_raw_serialization(mycss_entry, m_node, serialization_callback, NULL);
|
||||
|
||||
printf("}\n");
|
||||
}
|
||||
|
||||
if(node->child)
|
||||
node = node->child;
|
||||
else {
|
||||
while(node != scope_node && node->next == NULL)
|
||||
node = node->parent;
|
||||
|
||||
if(node == scope_node)
|
||||
break;
|
||||
|
||||
node = node->next;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int main(int argc, const char * argv[])
|
||||
{
|
||||
char *html = "<div id=div1>a</div><div id=div2>b</div><div id=div3>c</div><div id=div4>c</div>";
|
||||
char *css = "div {padding: 0;} div[id=div2], div[id=div4] {padding-left: 130px;}";
|
||||
|
||||
/*
|
||||
Init Modest
|
||||
*/
|
||||
modest_t *modest = modest_create();
|
||||
modest_status_t status = modest_init(modest);
|
||||
|
||||
if(status) {
|
||||
fprintf(stderr, "Can't init Modest\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
/*
|
||||
Parse HTML, CSS
|
||||
*/
|
||||
modest->myhtml_tree = parse_html(html, strlen(html), callback_for_create_mnode, (void*)modest);
|
||||
modest->mycss_entry = parse_css(css, strlen(css));
|
||||
|
||||
mycss_stylesheet_t *stylesheet = mycss_entry_stylesheet(modest->mycss_entry);
|
||||
|
||||
/*
|
||||
Init Finder for comparison selectors and tree nodes
|
||||
*/
|
||||
modest_finder_t* finder = modest_finder_create();
|
||||
status = modest_finder_init(finder, modest->myhtml_tree, stylesheet);
|
||||
|
||||
modest_finder_thread_t *finder_thread = modest_finder_thread_create();
|
||||
modest_finder_thread_init(finder, finder_thread, 2);
|
||||
|
||||
/*
|
||||
Comparison selectors and tree nodes with two threads
|
||||
*/
|
||||
status = modest_finder_thread_process(modest, finder_thread, modest->myhtml_tree,
|
||||
modest->myhtml_tree->node_html, stylesheet->sel_list_first);
|
||||
|
||||
/*
|
||||
Print
|
||||
*/
|
||||
print_tree(modest, modest->myhtml_tree, modest->myhtml_tree->node_html, modest->mycss_entry);
|
||||
|
||||
/*
|
||||
Destroy Finder and Threads
|
||||
*/
|
||||
finder_thread = modest_finder_thread_destroy(finder_thread, true);
|
||||
finder = modest_finder_destroy(finder, true);
|
||||
|
||||
/*
|
||||
Destroy Stylesheet
|
||||
*/
|
||||
mycss_stylesheet_destroy(stylesheet, true);
|
||||
|
||||
/*
|
||||
Destroy other
|
||||
*/
|
||||
destroy_css(modest->mycss_entry);
|
||||
destroy_html(modest->myhtml_tree);
|
||||
|
||||
/*
|
||||
Destroy Modest
|
||||
*/
|
||||
modest = modest_destroy(modest, true);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -34,6 +34,10 @@
|
||||
|
||||
#include <mycss/declaration/myosi.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_finder_thread_declaration {
|
||||
mycss_declaration_entry_t* entry;
|
||||
modest_style_raw_specificity_t raw_spec;
|
||||
@ -90,4 +94,8 @@ modest_status_t modest_finder_thread_process(modest_t* modest, modest_finder_thr
|
||||
void modest_finder_thread_wait_for_all_done(modest_finder_thread_t* finder_thread);
|
||||
bool modest_finder_thread_spec_is_up(modest_style_raw_specificity_t* spec_f, modest_style_raw_specificity_t* spec_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* thread_h */
|
||||
|
@ -23,8 +23,13 @@
|
||||
#pragma once
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/node/node.h>
|
||||
#include <myhtml/utils/mcobject.h>
|
||||
#include <myhtml/utils/mcobject_async.h>
|
||||
#include <myhtml/utils/mchar_async.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest {
|
||||
mcobject_async_t* mnode_obj;
|
||||
@ -32,6 +37,18 @@ struct modest {
|
||||
|
||||
mcobject_async_t* mstylesheet_obj;
|
||||
size_t mstylesheet_node_id;
|
||||
|
||||
mchar_async_t* mstyle_type_obj;
|
||||
size_t mstyle_type_node_id;
|
||||
|
||||
mcobject_async_t* mraw_style_obj;
|
||||
size_t mraw_style_node_id;
|
||||
|
||||
mcobject_t* mraw_style_declaration_obj;
|
||||
|
||||
/* refs */
|
||||
myhtml_tree_t* myhtml_tree;
|
||||
mycss_entry_t* mycss_entry;
|
||||
};
|
||||
|
||||
|
||||
@ -40,5 +57,8 @@ modest_status_t modest_init(modest_t* modest);
|
||||
void modest_clean(modest_t* modest);
|
||||
modest_t * modest_destroy(modest_t* modest, bool self_destroy);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_H */
|
||||
|
@ -22,7 +22,8 @@
|
||||
#define MODEST_MYOSI_H
|
||||
#pragma once
|
||||
|
||||
#include <myhtml/myosi.h>
|
||||
#include <myhtml/myhtml.h>
|
||||
#include <mycss/mycss.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -24,13 +24,22 @@
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/modest.h>
|
||||
#include <modest/style/sheet.h>
|
||||
#include <modest/style/raw.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_node {
|
||||
modest_style_sheet_t* stylesheet;
|
||||
modest_style_raw_t* raw_style;
|
||||
};
|
||||
|
||||
modest_node_t * modest_node_create(modest_t* modest);
|
||||
modest_status_t modest_node_init(modest_t* modest, modest_node_t *mnode);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_NODE_H */
|
||||
|
35
include/modest/node/property.h
Normal file
35
include/modest/node/property.h
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_PROPERTY_H
|
||||
#define MODEST_NODE_PROPERTY_H
|
||||
#pragma once
|
||||
|
||||
#include <modest/node/node.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_PROPERTY_H */
|
38
include/modest/node/raw_property.h
Normal file
38
include/modest/node/raw_property.h
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_RAW_PROPERTY_H
|
||||
#define MODEST_NODE_RAW_PROPERTY_H
|
||||
#pragma once
|
||||
|
||||
#include <modest/node/node.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define modest_node_raw_property(mnode, property) (mnode->raw_style == NULL || mnode->raw_style->property == NULL ? NULL : mnode->raw_style->property->declaration)
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_RAW_PROPERTY_H */
|
41
include/modest/node/serialization.h
Normal file
41
include/modest/node/serialization.h
Normal file
@ -0,0 +1,41 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_SERIALIZATION_H
|
||||
#define MODEST_NODE_SERIALIZATION_H
|
||||
#pragma once
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/node/node.h>
|
||||
#include <modest/node/raw_property.h>
|
||||
#include <mycss/myosi.h>
|
||||
#include <mycss/declaration/serialization.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
bool modest_node_raw_serialization(mycss_entry_t* mycss_entry, modest_node_t* mnode, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_SERIALIZATION_H */
|
@ -23,293 +23,302 @@
|
||||
#pragma once
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/modest.h>
|
||||
#include <modest/finder/myosi.h>
|
||||
#include <modest/finder/thread.h>
|
||||
|
||||
typedef void (*modest_style_map_collate_f)(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void modest_style_map_collate_declaration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
typedef void (*modest_style_map_collate_f)(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
void modest_style_map_collate_declaration_undef(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_items(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_self(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_delay(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_fill_mode(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_iteration_count(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_name(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_play_state(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_timing_function(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_appearance(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_backface_visibility(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_attachment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_clip(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_repeat(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_label(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_level(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_state(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_left_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_right_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_collapse(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_outset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_repeat(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_slice(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_left_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_right_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_decoration_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_shadow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_sizing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_suppress(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_inside(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caption_side(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret_shape(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_clear(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_clear_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_interpolation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_interpolation_filters(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_count(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_fill(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_gap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_span(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_columns(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_contain(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_continue(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_counter_increment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cursor(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_display(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_empty_cells(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill_rule(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_basis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_flow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_grow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_shrink(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_float(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_float_displace(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_family(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_feature_settings(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_kerning(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_language_override(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_size_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_stretch(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_synthesis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_alternates(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_caps(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_east_asian(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_ligatures(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_numeric(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_weight(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_glyph_orientation_vertical(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_hanging_punctuation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_hyphens(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_image_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_indent_edge_reset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_inline_size_step(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_justify_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_letter_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_height_step(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_type(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_end(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_mid(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_side(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_start(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_lines(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_min_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_min_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_down(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_up(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_end(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_start(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_order(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_orphans(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_offset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_x(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_y(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_perspective(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_perspective_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_presentation_level(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_quotes(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_region_fragment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_resize(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_merge(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_padding(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_stop(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_type(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_image_threshold(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_outside(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_speak(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_speak_as(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_string_set(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_dasharray(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_dashoffset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_linecap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_linejoin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_miterlimit(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_tab_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_table_layout(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align_all(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align_last(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_combine_upright(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_line(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_skip(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_styl(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_indent(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_justify(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_orientation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_overflow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_shadow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_size_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_transform(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_underline_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_touch_action(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_box(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_delay(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_property(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_timing_function(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_unicode_bidi(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_user_select(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_vertical_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_visibility(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_balance(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_family(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_pitch(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_range(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_rate(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_stress(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_volume(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_white_space(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_widows(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_will_change(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_wrap_flow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_wrap_through(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_writing_mode(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_z_index(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
void modest_style_map_collate_declaration_undef(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_items(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_self(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_delay(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_fill_mode(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_iteration_count(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_name(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_play_state(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_timing_function(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_appearance(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_backface_visibility(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_attachment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_clip(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_repeat(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_label(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_level(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_state(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_left_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_right_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_collapse(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_outset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_repeat(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_slice(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_left_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_right_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_decoration_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_shadow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_sizing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_suppress(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_inside(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caption_side(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret_shape(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_clear(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_clear_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_interpolation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_interpolation_filters(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_count(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_fill(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_gap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_span(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_columns(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_contain(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_continue(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_counter_increment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cursor(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_display(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_empty_cells(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill_rule(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_basis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_flow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_grow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_shrink(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_float(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_float_displace(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_family(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_feature_settings(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_kerning(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_language_override(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_size_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_stretch(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_synthesis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_alternates(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_caps(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_east_asian(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_ligatures(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_numeric(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_weight(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_glyph_orientation_vertical(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_hanging_punctuation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_hyphens(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_image_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_indent_edge_reset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_inline_size_step(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_justify_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_letter_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_height_step(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_type(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_end(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_mid(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_side(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_start(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_lines(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_min_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_min_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_down(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_up(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_end(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_start(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_order(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_orphans(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_offset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_x(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_y(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_perspective(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_perspective_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_presentation_level(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_quotes(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_region_fragment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_resize(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_merge(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_padding(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_stop(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_type(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_image_threshold(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_outside(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_speak(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_speak_as(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_string_set(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_dasharray(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_dashoffset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_linecap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_linejoin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_miterlimit(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_tab_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_table_layout(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align_all(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align_last(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_combine_upright(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_line(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_skip(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_styl(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_indent(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_justify(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_orientation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_overflow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_shadow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_size_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_transform(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_underline_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_touch_action(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_box(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_delay(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_property(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_timing_function(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_unicode_bidi(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_user_select(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_vertical_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_visibility(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_balance(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_family(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_pitch(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_range(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_rate(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_stress(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_volume(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_white_space(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_widows(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_will_change(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_wrap_flow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_wrap_through(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_writing_mode(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_z_index(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_MAP_H */
|
||||
|
89
include/modest/style/raw.h
Normal file
89
include/modest/style/raw.h
Normal file
@ -0,0 +1,89 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_STYLE_RAW_H
|
||||
#define MODEST_STYLE_RAW_H
|
||||
#pragma once
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/modest.h>
|
||||
#include <myhtml/utils/mcobject.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct modest_style_raw modest_style_raw_t;
|
||||
typedef struct modest_style_raw_declaration modest_style_raw_declaration_t;
|
||||
typedef struct modest_style_raw_specificity modest_style_raw_specificity_t;
|
||||
|
||||
struct modest_style_raw_specificity {
|
||||
unsigned int x;
|
||||
unsigned int a;
|
||||
unsigned int b;
|
||||
unsigned int c;
|
||||
};
|
||||
|
||||
struct modest_style_raw_declaration {
|
||||
mycss_declaration_entry_t* declaration;
|
||||
modest_style_raw_specificity_t spec;
|
||||
};
|
||||
|
||||
struct modest_style_raw {
|
||||
modest_style_raw_declaration_t* width;
|
||||
modest_style_raw_declaration_t* height;
|
||||
|
||||
modest_style_raw_declaration_t* padding_top;
|
||||
modest_style_raw_declaration_t* padding_right;
|
||||
modest_style_raw_declaration_t* padding_bottom;
|
||||
modest_style_raw_declaration_t* padding_left;
|
||||
modest_style_raw_declaration_t* margin_top;
|
||||
modest_style_raw_declaration_t* margin_right;
|
||||
modest_style_raw_declaration_t* margin_bottom;
|
||||
modest_style_raw_declaration_t* margin_left;
|
||||
|
||||
modest_style_raw_declaration_t* display;
|
||||
|
||||
modest_style_raw_declaration_t* border_top_width;
|
||||
modest_style_raw_declaration_t* border_right_width;
|
||||
modest_style_raw_declaration_t* border_bottom_width;
|
||||
modest_style_raw_declaration_t* border_left_width;
|
||||
|
||||
modest_style_raw_declaration_t* border_top_style;
|
||||
modest_style_raw_declaration_t* border_right_style;
|
||||
modest_style_raw_declaration_t* border_bottom_style;
|
||||
modest_style_raw_declaration_t* border_left_style;
|
||||
|
||||
modest_style_raw_declaration_t* box_sizing;
|
||||
|
||||
modest_style_raw_declaration_t* vertical_align;
|
||||
modest_style_raw_declaration_t* line_height;
|
||||
};
|
||||
|
||||
modest_style_raw_t * modest_style_raw_create(modest_t* modest);
|
||||
modest_status_t modest_style_raw_init(modest_t* modest, modest_style_raw_t* raw_style);
|
||||
|
||||
modest_style_raw_declaration_t * modest_style_raw_declaration_create(modest_t* modest);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_RAW_H */
|
@ -26,12 +26,37 @@
|
||||
#include <modest/modest.h>
|
||||
#include <modest/style/type.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_style_sheet {
|
||||
modest_style_type_length_t width;
|
||||
modest_style_type_length_t height;
|
||||
|
||||
modest_style_type_length_t padding_top;
|
||||
modest_style_type_length_t padding_right;
|
||||
modest_style_type_length_t padding_bottom;
|
||||
modest_style_type_length_t padding_left;
|
||||
|
||||
modest_style_type_length_t margin_top;
|
||||
modest_style_type_length_t margin_right;
|
||||
modest_style_type_length_t margin_bottom;
|
||||
modest_style_type_length_t margin_left;
|
||||
|
||||
modest_style_type_display_t display;
|
||||
|
||||
modest_style_type_length_t border_top_width;
|
||||
modest_style_type_length_t border_right_width;
|
||||
modest_style_type_length_t border_bottom_width;
|
||||
modest_style_type_length_t border_left_width;
|
||||
};
|
||||
|
||||
modest_style_sheet_t * modest_style_sheet_create(modest_t* modest);
|
||||
modest_status_t modest_style_sheet_init(modest_t* modest, modest_style_sheet_t* m_stylesheet);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_SHEET_H */
|
||||
|
@ -23,28 +23,31 @@
|
||||
#pragma once
|
||||
|
||||
#include <modest/myosi.h>
|
||||
#include <modest/modest.h>
|
||||
#include <mycss/declaration/myosi.h>
|
||||
#include <myhtml/utils/mchar_async.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct modest_style_type_length modest_style_type_length_t;
|
||||
|
||||
typedef struct modest_style_raw modest_style_raw_t;
|
||||
typedef struct modest_style_raw_specificity modest_style_raw_specificity_t;
|
||||
|
||||
struct modest_style_raw_specificity {
|
||||
unsigned int x;
|
||||
unsigned int a;
|
||||
unsigned int b;
|
||||
unsigned int c;
|
||||
};
|
||||
|
||||
struct modest_style_raw {
|
||||
mycss_declaration_entry_t* declaration;
|
||||
modest_style_raw_specificity_t spec;
|
||||
};
|
||||
typedef struct modest_style_type_display modest_style_type_display_t;
|
||||
|
||||
struct modest_style_type_length {
|
||||
float value;
|
||||
modest_style_raw_t raw;
|
||||
};
|
||||
|
||||
struct modest_style_type_display {
|
||||
mycss_property_display_t value;
|
||||
};
|
||||
|
||||
|
||||
void * modest_style_type_create(modest_t* modest, size_t size);
|
||||
modest_status_t modest_style_type_init(modest_t* modest, void *data);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_TYPE_H */
|
||||
|
@ -37,6 +37,9 @@ void mycss_declaration_entry_destroy(mycss_declaration_t* declaration, mycss_dec
|
||||
|
||||
mycss_declaration_entry_t * mycss_declaration_entry(mycss_declaration_t* declaration);
|
||||
mycss_declaration_entry_t * mycss_declaration_entry_last(mycss_declaration_t* declaration);
|
||||
mycss_declaration_entry_t * mycss_declaration_entry_clone(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry, bool with_value);
|
||||
void mycss_declaration_entry_type_set(mycss_declaration_entry_t* dec_entry, mycss_property_type_t type);
|
||||
void mycss_declaration_entry_important_set(mycss_declaration_entry_t* dec_entry, bool is_important);
|
||||
|
||||
void mycss_declaration_entry_append_to_current(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry);
|
||||
void mycss_declaration_entry_remove(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry);
|
||||
|
@ -38,8 +38,9 @@ bool mycss_declaration_serialization_entry(mycss_entry_t* entry, mycss_declarati
|
||||
void mycss_declaration_serialization_entries(mycss_entry_t* entry, mycss_declaration_entry_t* first_dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
bool mycss_declaration_serialization_undef(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_padding(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_padding_x(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_four(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_two(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_two_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
@ -205,11 +205,11 @@ static mycss_declaration_serialization_f mycss_declaration_serialization_map_by_
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_padding,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_padding_x,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -265,7 +265,7 @@ bool mycss_property_parser_text_decoration(mycss_entry_t* entry, mycss_token_t*
|
||||
bool mycss_property_parser_text_decoration_color(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_line(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_skip(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_styl(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_style(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis_color(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis_position(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -257,7 +257,7 @@ static const char * mycss_property_index_type_name[] =
|
||||
"text-decoration-color",
|
||||
"text-decoration-line",
|
||||
"text-decoration-skip",
|
||||
"text-decoration-styl",
|
||||
"text-decoration-style",
|
||||
"text-emphasis",
|
||||
"text-emphasis-color",
|
||||
"text-emphasis-position",
|
||||
@ -327,40 +327,40 @@ static const char * mycss_property_index_type_value[] =
|
||||
"absolute",
|
||||
"alias",
|
||||
"all",
|
||||
"all-petite-caps",
|
||||
"all-scroll",
|
||||
"all-small-caps",
|
||||
"allow-end",
|
||||
"allow_end",
|
||||
"all_petite_caps",
|
||||
"all_scroll",
|
||||
"all_small_caps",
|
||||
"alternate",
|
||||
"alternate-reverse",
|
||||
"alternate_reverse",
|
||||
"always",
|
||||
"auto",
|
||||
"available",
|
||||
"avoid",
|
||||
"avoid-column",
|
||||
"avoid-page",
|
||||
"avoid-region",
|
||||
"avoid_column",
|
||||
"avoid_page",
|
||||
"avoid_region",
|
||||
"backwards",
|
||||
"balance",
|
||||
"balance-all",
|
||||
"balance_all",
|
||||
"bar",
|
||||
"baseline",
|
||||
"bevel",
|
||||
"bidi-override",
|
||||
"bidi_override",
|
||||
"blink",
|
||||
"block",
|
||||
"block-within-page",
|
||||
"block_within_page",
|
||||
"bold",
|
||||
"bolder",
|
||||
"border-box",
|
||||
"border-edge",
|
||||
"border_box",
|
||||
"border_edge",
|
||||
"both",
|
||||
"bottom",
|
||||
"box-decoration",
|
||||
"box_decoration",
|
||||
"break",
|
||||
"break-all",
|
||||
"break-spaces",
|
||||
"break-word",
|
||||
"break_all",
|
||||
"break_spaces",
|
||||
"break_word",
|
||||
"butt",
|
||||
"capitalize",
|
||||
"caption",
|
||||
@ -371,20 +371,20 @@ static const char * mycss_property_index_type_value[] =
|
||||
"clip",
|
||||
"clone",
|
||||
"closed",
|
||||
"col-resize",
|
||||
"collapse",
|
||||
"column",
|
||||
"column-reverse",
|
||||
"common-ligatures",
|
||||
"column_reverse",
|
||||
"col_resize",
|
||||
"common_ligatures",
|
||||
"complex",
|
||||
"condensed",
|
||||
"contain",
|
||||
"content",
|
||||
"content-box",
|
||||
"content-edge",
|
||||
"contents",
|
||||
"context-menu",
|
||||
"content_box",
|
||||
"content_edge",
|
||||
"contextual",
|
||||
"context_menu",
|
||||
"copy",
|
||||
"cover",
|
||||
"crispedges",
|
||||
@ -394,48 +394,48 @@ static const char * mycss_property_index_type_value[] =
|
||||
"dashed",
|
||||
"default",
|
||||
"descendants",
|
||||
"diagonal-fractions",
|
||||
"diagonal_fractions",
|
||||
"digits",
|
||||
"discard",
|
||||
"discretionary-ligatures",
|
||||
"discretionary_ligatures",
|
||||
"dot",
|
||||
"dotted",
|
||||
"double",
|
||||
"double-circle",
|
||||
"e-resize",
|
||||
"each-line",
|
||||
"double_circle",
|
||||
"each_line",
|
||||
"ease",
|
||||
"ease-in",
|
||||
"ease-in-out",
|
||||
"ease-out",
|
||||
"ease_in",
|
||||
"ease_in_out",
|
||||
"ease_out",
|
||||
"economy",
|
||||
"edges",
|
||||
"ellipsis",
|
||||
"embed",
|
||||
"end",
|
||||
"evenodd",
|
||||
"ew-resize",
|
||||
"ew_resize",
|
||||
"exact",
|
||||
"expanded",
|
||||
"extra-condensed",
|
||||
"extra-expanded",
|
||||
"extra_condensed",
|
||||
"extra_expanded",
|
||||
"e_resize",
|
||||
"fast",
|
||||
"fill",
|
||||
"fill-box",
|
||||
"filled",
|
||||
"fill_box",
|
||||
"first",
|
||||
"fit-content",
|
||||
"fit_content",
|
||||
"fixed",
|
||||
"flat",
|
||||
"flex",
|
||||
"flex-end",
|
||||
"flex-start",
|
||||
"flex_end",
|
||||
"flex_start",
|
||||
"flow",
|
||||
"flow-root",
|
||||
"force-end",
|
||||
"flow_root",
|
||||
"force_end",
|
||||
"forwards",
|
||||
"fragments",
|
||||
"full-width",
|
||||
"full_width",
|
||||
"geometricprecision",
|
||||
"grab",
|
||||
"grabbing",
|
||||
@ -446,10 +446,10 @@ static const char * mycss_property_index_type_value[] =
|
||||
"hidden",
|
||||
"hide",
|
||||
"high",
|
||||
"historical-forms",
|
||||
"historical-ligatures",
|
||||
"historical_forms",
|
||||
"historical_ligatures",
|
||||
"horizontal",
|
||||
"horizontal-tb",
|
||||
"horizontal_tb",
|
||||
"icon",
|
||||
"increment",
|
||||
"indent",
|
||||
@ -457,42 +457,41 @@ static const char * mycss_property_index_type_value[] =
|
||||
"initial",
|
||||
"ink",
|
||||
"inline",
|
||||
"inline-block",
|
||||
"inline-flex",
|
||||
"inline-grid",
|
||||
"inline-list-item",
|
||||
"inline-table",
|
||||
"inline_block",
|
||||
"inline_flex",
|
||||
"inline_grid",
|
||||
"inline_list_item",
|
||||
"inline_table",
|
||||
"inset",
|
||||
"inside",
|
||||
"inter-character",
|
||||
"inter-word",
|
||||
"inter_character",
|
||||
"inter_word",
|
||||
"invert",
|
||||
"isolate",
|
||||
"isolate-override",
|
||||
"isolate_override",
|
||||
"italic",
|
||||
"jis04",
|
||||
"jis78",
|
||||
"jis83",
|
||||
"jis90",
|
||||
"justify",
|
||||
"justify-all",
|
||||
"keep-all",
|
||||
"justify_all",
|
||||
"keep_all",
|
||||
"large",
|
||||
"larger",
|
||||
"last",
|
||||
"layout",
|
||||
"left",
|
||||
"leftwards",
|
||||
"length",
|
||||
"lighter",
|
||||
"line",
|
||||
"line-through",
|
||||
"linear",
|
||||
"linearrgb",
|
||||
"lining-nums",
|
||||
"list-container",
|
||||
"list-item",
|
||||
"literal-punctuation",
|
||||
"line_through",
|
||||
"lining_nums",
|
||||
"list_container",
|
||||
"list_item",
|
||||
"literal_punctuation",
|
||||
"local",
|
||||
"loose",
|
||||
"loud",
|
||||
@ -502,44 +501,44 @@ static const char * mycss_property_index_type_value[] =
|
||||
"mandatory",
|
||||
"manipulation",
|
||||
"manual",
|
||||
"margin-edge",
|
||||
"match-parent",
|
||||
"max-content",
|
||||
"margin_edge",
|
||||
"match_parent",
|
||||
"maximum",
|
||||
"max_content",
|
||||
"medium",
|
||||
"menu",
|
||||
"message-box",
|
||||
"message_box",
|
||||
"middle",
|
||||
"min-content",
|
||||
"minimum",
|
||||
"min_content",
|
||||
"miter",
|
||||
"mixed",
|
||||
"moderate",
|
||||
"move",
|
||||
"n-resize",
|
||||
"ne-resize",
|
||||
"nesw-resize",
|
||||
"no-common-ligatures",
|
||||
"no-content",
|
||||
"no-contextual",
|
||||
"no-discretionary-ligatures",
|
||||
"no-display",
|
||||
"no-drop",
|
||||
"no-historical-ligatures",
|
||||
"no-punctuation",
|
||||
"no-repeat",
|
||||
"nesw_resize",
|
||||
"ne_resize",
|
||||
"none",
|
||||
"nonzero",
|
||||
"normal",
|
||||
"not-allowed",
|
||||
"not_allowed",
|
||||
"nowrap",
|
||||
"ns-resize",
|
||||
"nw-resize",
|
||||
"nwse-resize",
|
||||
"no_common_ligatures",
|
||||
"no_content",
|
||||
"no_contextual",
|
||||
"no_discretionary_ligatures",
|
||||
"no_display",
|
||||
"no_drop",
|
||||
"no_historical_ligatures",
|
||||
"no_punctuation",
|
||||
"no_repeat",
|
||||
"ns_resize",
|
||||
"nwse_resize",
|
||||
"nw_resize",
|
||||
"n_resize",
|
||||
"objects",
|
||||
"oblique",
|
||||
"off",
|
||||
"oldstyle-nums",
|
||||
"oldstyle_nums",
|
||||
"on",
|
||||
"open",
|
||||
"optimizelegibility",
|
||||
@ -551,38 +550,37 @@ static const char * mycss_property_index_type_value[] =
|
||||
"over",
|
||||
"overflow",
|
||||
"overline",
|
||||
"padding-box",
|
||||
"padding-edge",
|
||||
"padding_box",
|
||||
"padding_edge",
|
||||
"page",
|
||||
"paginate",
|
||||
"paint",
|
||||
"pan-down",
|
||||
"pan-left",
|
||||
"pan-right",
|
||||
"pan-up",
|
||||
"pan-x",
|
||||
"pan-y",
|
||||
"pan_down",
|
||||
"pan_left",
|
||||
"pan_right",
|
||||
"pan_up",
|
||||
"pan_x",
|
||||
"pan_y",
|
||||
"paused",
|
||||
"percentage",
|
||||
"petite-caps",
|
||||
"petite_caps",
|
||||
"plaintext",
|
||||
"pointer",
|
||||
"pre",
|
||||
"pre-line",
|
||||
"pre-wrap",
|
||||
"preserve",
|
||||
"preserve-3d",
|
||||
"preserve_3d",
|
||||
"pre_line",
|
||||
"pre_wrap",
|
||||
"progress",
|
||||
"proportional-nums",
|
||||
"proportional-width",
|
||||
"proportional_nums",
|
||||
"proportional_width",
|
||||
"proximity",
|
||||
"recto",
|
||||
"reduced",
|
||||
"region",
|
||||
"relative",
|
||||
"repeat",
|
||||
"repeat-x",
|
||||
"repeat-y",
|
||||
"repeat_x",
|
||||
"repeat_y",
|
||||
"reverse",
|
||||
"ridge",
|
||||
"right",
|
||||
@ -590,54 +588,53 @@ static const char * mycss_property_index_type_value[] =
|
||||
"root",
|
||||
"round",
|
||||
"row",
|
||||
"row-resize",
|
||||
"row-reverse",
|
||||
"row_resize",
|
||||
"row_reverse",
|
||||
"rtl",
|
||||
"ruby",
|
||||
"ruby-base",
|
||||
"ruby-base-container",
|
||||
"ruby-text",
|
||||
"ruby-text-container",
|
||||
"run-in",
|
||||
"ruby_base",
|
||||
"ruby_base_container",
|
||||
"ruby_text",
|
||||
"ruby_text_container",
|
||||
"running",
|
||||
"s-resize",
|
||||
"run_in",
|
||||
"same",
|
||||
"scroll",
|
||||
"scroll-position",
|
||||
"se-resize",
|
||||
"semi-condensed",
|
||||
"semi-expanded",
|
||||
"scroll_position",
|
||||
"semi_condensed",
|
||||
"semi_expanded",
|
||||
"separate",
|
||||
"sesame",
|
||||
"sesameinitial",
|
||||
"se_resize",
|
||||
"show",
|
||||
"sideways",
|
||||
"sideways-lr",
|
||||
"sideways-rl",
|
||||
"sideways_lr",
|
||||
"sideways_rl",
|
||||
"silent",
|
||||
"simplified",
|
||||
"size",
|
||||
"slashed-zero",
|
||||
"slashed_zero",
|
||||
"slice",
|
||||
"slow",
|
||||
"small",
|
||||
"small-caps",
|
||||
"small-caption",
|
||||
"smaller",
|
||||
"small_caps",
|
||||
"small_caption",
|
||||
"soft",
|
||||
"solid",
|
||||
"space",
|
||||
"space-around",
|
||||
"space-between",
|
||||
"spaces",
|
||||
"spell-out",
|
||||
"space_around",
|
||||
"space_between",
|
||||
"spell_out",
|
||||
"square",
|
||||
"srgb",
|
||||
"stacked-fractions",
|
||||
"stacked_fractions",
|
||||
"start",
|
||||
"static",
|
||||
"status-bar",
|
||||
"step-end",
|
||||
"step-start",
|
||||
"status_bar",
|
||||
"step_end",
|
||||
"step_start",
|
||||
"sticky",
|
||||
"stretch",
|
||||
"strict",
|
||||
@ -645,62 +642,70 @@ static const char * mycss_property_index_type_value[] =
|
||||
"style",
|
||||
"sub",
|
||||
"super",
|
||||
"sw-resize",
|
||||
"sw_resize",
|
||||
"s_resize",
|
||||
"table",
|
||||
"table-caption",
|
||||
"table-cell",
|
||||
"table-column",
|
||||
"table-column-group",
|
||||
"table-footer-group",
|
||||
"table-header-group",
|
||||
"table-row",
|
||||
"table-row-group",
|
||||
"tabular-nums",
|
||||
"table_caption",
|
||||
"table_cell",
|
||||
"table_column",
|
||||
"table_column_group",
|
||||
"table_footer_group",
|
||||
"table_header_group",
|
||||
"table_row",
|
||||
"table_row_group",
|
||||
"tabular_nums",
|
||||
"text",
|
||||
"text-bottom",
|
||||
"text-top",
|
||||
"titling-caps",
|
||||
"text_bottom",
|
||||
"text_top",
|
||||
"thick",
|
||||
"thin",
|
||||
"titling_caps",
|
||||
"top",
|
||||
"traditional",
|
||||
"triangle",
|
||||
"ultra-condensed",
|
||||
"ultra-expanded",
|
||||
"ultra_condensed",
|
||||
"ultra_expanded",
|
||||
"under",
|
||||
"underline",
|
||||
"underscore",
|
||||
"unicase",
|
||||
"unset",
|
||||
"uppercase",
|
||||
"upright",
|
||||
"verso",
|
||||
"vertical",
|
||||
"vertical-lr",
|
||||
"vertical-rl",
|
||||
"vertical-text",
|
||||
"view-box",
|
||||
"vertical_lr",
|
||||
"vertical_rl",
|
||||
"vertical_text",
|
||||
"view_box",
|
||||
"visible",
|
||||
"w-resize",
|
||||
"wait",
|
||||
"wavy",
|
||||
"weak",
|
||||
"weight",
|
||||
"wrap",
|
||||
"wrap-reverse",
|
||||
"wrap_reverse",
|
||||
"w_resize",
|
||||
"x",
|
||||
"x-fast",
|
||||
"x-high",
|
||||
"x-large",
|
||||
"x-loud",
|
||||
"x-low",
|
||||
"x-slow",
|
||||
"x-small",
|
||||
"x-soft",
|
||||
"x-strong",
|
||||
"x-weak",
|
||||
"xx-large",
|
||||
"xx-small",
|
||||
"xx_large",
|
||||
"xx_small",
|
||||
"x_fast",
|
||||
"x_high",
|
||||
"x_large",
|
||||
"x_loud",
|
||||
"x_low",
|
||||
"x_slow",
|
||||
"x_small",
|
||||
"x_soft",
|
||||
"x_strong",
|
||||
"x_weak",
|
||||
"y",
|
||||
"zoom-in",
|
||||
"zoom-out",
|
||||
"zoom_in",
|
||||
"zoom_out",
|
||||
"<color>",
|
||||
"<length>",
|
||||
"<number>",
|
||||
"<percentage>",
|
||||
""
|
||||
};
|
||||
|
||||
|
@ -33,7 +33,20 @@ extern "C" {
|
||||
bool mycss_property_shared_switch_to_find_important(mycss_entry_t* entry);
|
||||
bool mycss_property_shared_switch_to_parse_error(mycss_entry_t* entry);
|
||||
bool mycss_property_shared_check_declaration_end(mycss_entry_t* entry, mycss_token_t* token);
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, mycss_declaration_entry_t* dec_entry);
|
||||
|
||||
bool mycss_property_shared_number(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_length_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_default(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str);
|
||||
unsigned int mycss_property_shared_get_value_type(mycss_entry_t* entry, mycss_token_t* token, myhtml_string_t* str);
|
||||
bool mycss_property_shared_by_value_type(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, unsigned int check_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_height(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_line_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_line_style(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str);
|
||||
|
||||
void mycss_property_shared_destroy_string(myhtml_string_t* str);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
@ -30,10 +30,20 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct mycss_values_shorthand_two_type mycss_values_shorthand_two_type_t;
|
||||
typedef struct mycss_values_shorthand_four mycss_values_shorthand_four_t;
|
||||
typedef struct mycss_values_shorthand_two mycss_values_shorthand_two_t;
|
||||
typedef struct mycss_values_percentage mycss_values_percentage_t;
|
||||
typedef struct mycss_values_length mycss_values_length_t;
|
||||
|
||||
struct mycss_values_shorthand_two_type {
|
||||
void* one;
|
||||
void* two;
|
||||
|
||||
unsigned int type_one;
|
||||
unsigned int type_two;
|
||||
};
|
||||
|
||||
struct mycss_values_shorthand_four {
|
||||
void* one;
|
||||
void* two;
|
||||
@ -41,6 +51,11 @@ struct mycss_values_shorthand_four {
|
||||
void* four;
|
||||
};
|
||||
|
||||
struct mycss_values_shorthand_two {
|
||||
void* one;
|
||||
void* two;
|
||||
};
|
||||
|
||||
struct mycss_values_length {
|
||||
union {
|
||||
int i;
|
||||
@ -60,10 +75,11 @@ struct mycss_values_percentage {
|
||||
bool is_float;
|
||||
};
|
||||
|
||||
|
||||
void * mycss_values_create(mycss_entry_t* entry, size_t size);
|
||||
void * mycss_values_destroy(mycss_entry_t* entry, void* value);
|
||||
|
||||
void * mycss_values_clone(mycss_entry_t* entry, void* value);
|
||||
|
||||
void * mycss_values_entry(mycss_entry_t* entry);
|
||||
void mycss_values_entry_set(mycss_entry_t* entry, void** value);
|
||||
|
||||
|
@ -26,23 +26,21 @@
|
||||
#include <myhtml/mystring.h>
|
||||
#include <myhtml/tree.h>
|
||||
|
||||
#define myhtml_serialization_realloc_if_need(len) \
|
||||
if((len + str->length) >= str->size) { \
|
||||
size_t size = (len + str->length) + 4096; \
|
||||
char *data = (char*)myhtml_realloc(str->data, size * sizeof(char)); \
|
||||
\
|
||||
if(data) { \
|
||||
str->data = data; \
|
||||
str->size = size; \
|
||||
} \
|
||||
else \
|
||||
return false; \
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
// callback to be implemented by the user
|
||||
typedef void (*myhtml_callback_serialize_f)(const char* buffer, size_t size, void* ctx);
|
||||
|
||||
// the serialization functions
|
||||
bool myhtml_serialization_tree_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_tree_callback(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_callback_serialize_f callback, void* ptr);
|
||||
bool myhtml_serialization_node_callback(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void* ptr);
|
||||
|
||||
// in versuon 1.0.3 this is in public api.
|
||||
// Need to set deprecated?
|
||||
bool myhtml_serialization(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
|
||||
|
@ -113,6 +113,8 @@ mchar_async_chunk_t * mchar_async_chunk_malloc(mchar_async_t *mchar_async, mchar
|
||||
char * mchar_async_crop_first_chars(mchar_async_t *mchar_async, size_t node_idx, char *data, size_t crop_len);
|
||||
char * mchar_async_crop_first_chars_without_cache(char *data, size_t crop_len);
|
||||
|
||||
size_t mchar_async_get_size_by_data(const char *data);
|
||||
|
||||
// cache
|
||||
void mchar_async_cache_init(mchar_async_cache_t *cache);
|
||||
mchar_async_cache_t * mchar_async_cache_destroy(mchar_async_cache_t *cache, bool self_destroy);
|
||||
|
@ -23,8 +23,8 @@
|
||||
/* private functions */
|
||||
static void modest_finder_thread_stream(mythread_id_t thread_id, void* arg);
|
||||
static modest_finder_thread_context_t * modest_finder_thread_create_context(modest_finder_thread_t* finder_thread, size_t count);
|
||||
static void modest_finder_thread_callback_found(modest_finder_t* finder, myhtml_tree_node_t* node, mycss_selectors_list_t* selector_list,
|
||||
mycss_selectors_entry_t* selector, mycss_selectors_specificity_t* spec, void* ctx);
|
||||
//static void modest_finder_thread_callback_found(modest_finder_t* finder, myhtml_tree_node_t* node, mycss_selectors_list_t* selector_list,
|
||||
// mycss_selectors_entry_t* selector, mycss_selectors_specificity_t* spec, void* ctx);
|
||||
|
||||
/* basic functions */
|
||||
modest_finder_thread_t * modest_finder_thread_create(void)
|
||||
@ -126,7 +126,7 @@ void modest_finder_thread_collate_node(modest_t* modest, myhtml_tree_node_t* nod
|
||||
modest_finder_thread_declaration_t* dec = entry->declaration;
|
||||
|
||||
while(dec) {
|
||||
modest_style_map_collate_declaration(node, dec);
|
||||
modest_style_map_collate_declaration(modest, node, dec->entry, &dec->raw_spec);
|
||||
dec = dec->next;
|
||||
}
|
||||
}
|
||||
@ -377,7 +377,6 @@ void modest_finder_thread_stream(mythread_id_t thread_id, void* arg)
|
||||
|
||||
while(selector_list) {
|
||||
for(size_t i = 0; i < selector_list->entries_list_length; i++) {
|
||||
|
||||
/* split selectors by thread id */
|
||||
if(count == counnt_done) {
|
||||
mycss_selectors_entries_list_t *entries = &selector_list->entries_list[i];
|
||||
|
@ -34,6 +34,10 @@
|
||||
|
||||
#include "mycss/declaration/myosi.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_finder_thread_declaration {
|
||||
mycss_declaration_entry_t* entry;
|
||||
modest_style_raw_specificity_t raw_spec;
|
||||
@ -90,4 +94,8 @@ modest_status_t modest_finder_thread_process(modest_t* modest, modest_finder_thr
|
||||
void modest_finder_thread_wait_for_all_done(modest_finder_thread_t* finder_thread);
|
||||
bool modest_finder_thread_spec_is_up(modest_style_raw_specificity_t* spec_f, modest_style_raw_specificity_t* spec_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* thread_h */
|
||||
|
@ -19,6 +19,9 @@
|
||||
*/
|
||||
|
||||
#include "modest/modest.h"
|
||||
#include "modest/style/sheet.h"
|
||||
#include "modest/style/raw.h"
|
||||
#include "modest/node/node.h"
|
||||
|
||||
modest_t * modest_create(void)
|
||||
{
|
||||
@ -58,6 +61,40 @@ modest_status_t modest_init(modest_t* modest)
|
||||
if(mcstatus)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
|
||||
/* Modest style type */
|
||||
modest->mstyle_type_obj = mchar_async_create(12, (4096 * 5));
|
||||
if(modest->mstyle_type_obj == NULL)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
modest->mstyle_type_node_id = mchar_async_node_add(modest->mstyle_type_obj);
|
||||
|
||||
|
||||
/* Modest raw style */
|
||||
modest->mraw_style_obj = mcobject_async_create();
|
||||
if(modest->mraw_style_obj == NULL)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
mcstatus = mcobject_async_init(modest->mraw_style_obj, 128, 1024, sizeof(modest_style_raw_t));
|
||||
if(mcstatus)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
/* base object node for all modest raw style objects */
|
||||
modest->mraw_style_node_id = mcobject_async_node_add(modest->mraw_style_obj, &mcstatus);
|
||||
|
||||
if(mcstatus)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
|
||||
/* for raw declaration style */
|
||||
modest->mraw_style_declaration_obj = mcobject_create();
|
||||
if(modest->mraw_style_declaration_obj == NULL)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
myhtml_status_t myhtml_status = mcobject_init(modest->mraw_style_declaration_obj, 256, sizeof(modest_style_raw_declaration_t));
|
||||
if(myhtml_status)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
return MODEST_STATUS_OK;
|
||||
}
|
||||
|
||||
|
@ -23,8 +23,13 @@
|
||||
#pragma once
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/node/node.h"
|
||||
#include "myhtml/utils/mcobject.h"
|
||||
#include "myhtml/utils/mcobject_async.h"
|
||||
#include "myhtml/utils/mchar_async.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest {
|
||||
mcobject_async_t* mnode_obj;
|
||||
@ -32,6 +37,18 @@ struct modest {
|
||||
|
||||
mcobject_async_t* mstylesheet_obj;
|
||||
size_t mstylesheet_node_id;
|
||||
|
||||
mchar_async_t* mstyle_type_obj;
|
||||
size_t mstyle_type_node_id;
|
||||
|
||||
mcobject_async_t* mraw_style_obj;
|
||||
size_t mraw_style_node_id;
|
||||
|
||||
mcobject_t* mraw_style_declaration_obj;
|
||||
|
||||
/* refs */
|
||||
myhtml_tree_t* myhtml_tree;
|
||||
mycss_entry_t* mycss_entry;
|
||||
};
|
||||
|
||||
|
||||
@ -40,5 +57,8 @@ modest_status_t modest_init(modest_t* modest);
|
||||
void modest_clean(modest_t* modest);
|
||||
modest_t * modest_destroy(modest_t* modest, bool self_destroy);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_H */
|
||||
|
@ -22,7 +22,8 @@
|
||||
#define MODEST_MYOSI_H
|
||||
#pragma once
|
||||
|
||||
#include "myhtml/myosi.h"
|
||||
#include "myhtml/myhtml.h"
|
||||
#include "mycss/mycss.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -19,6 +19,7 @@
|
||||
*/
|
||||
|
||||
#include "modest/node/node.h"
|
||||
#include "modest/style/sheet.h"
|
||||
|
||||
modest_node_t * modest_node_create(modest_t* modest)
|
||||
{
|
||||
@ -42,5 +43,15 @@ modest_status_t modest_node_init(modest_t* modest, modest_node_t *mnode)
|
||||
if(status)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
mnode->raw_style = modest_style_raw_create(modest);
|
||||
if(mnode->raw_style == NULL)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
status = modest_style_raw_init(modest, mnode->raw_style);
|
||||
if(status)
|
||||
return MODEST_STATUS_OK;
|
||||
|
||||
return MODEST_STATUS_OK;
|
||||
}
|
||||
|
||||
|
||||
|
@ -24,13 +24,22 @@
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/modest.h"
|
||||
#include "modest/style/sheet.h"
|
||||
#include "modest/style/raw.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_node {
|
||||
modest_style_sheet_t* stylesheet;
|
||||
modest_style_raw_t* raw_style;
|
||||
};
|
||||
|
||||
modest_node_t * modest_node_create(modest_t* modest);
|
||||
modest_status_t modest_node_init(modest_t* modest, modest_node_t *mnode);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_NODE_H */
|
||||
|
23
source/modest/node/property.c
Normal file
23
source/modest/node/property.c
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#include "modest/node/property.h"
|
||||
|
||||
|
35
source/modest/node/property.h
Normal file
35
source/modest/node/property.h
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_PROPERTY_H
|
||||
#define MODEST_NODE_PROPERTY_H
|
||||
#pragma once
|
||||
|
||||
#include "modest/node/node.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_PROPERTY_H */
|
23
source/modest/node/raw_property.c
Normal file
23
source/modest/node/raw_property.c
Normal file
@ -0,0 +1,23 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#include "modest/node/raw_property.h"
|
||||
|
||||
|
38
source/modest/node/raw_property.h
Normal file
38
source/modest/node/raw_property.h
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_RAW_PROPERTY_H
|
||||
#define MODEST_NODE_RAW_PROPERTY_H
|
||||
#pragma once
|
||||
|
||||
#include "modest/node/node.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define modest_node_raw_property(mnode, property) (mnode->raw_style == NULL || mnode->raw_style->property == NULL ? NULL : mnode->raw_style->property->declaration)
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_RAW_PROPERTY_H */
|
76
source/modest/node/serialization.c
Normal file
76
source/modest/node/serialization.c
Normal file
@ -0,0 +1,76 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#include "modest/node/serialization.h"
|
||||
|
||||
void modest_node_raw_serialization_declaration(mycss_entry_t* mycss_entry, mycss_declaration_entry_t* decl, mycss_callback_serialization_f callback, void* context, bool* is_use)
|
||||
{
|
||||
if(decl) {
|
||||
if(is_use && *is_use) {
|
||||
callback(" ", 1, context);
|
||||
}
|
||||
|
||||
mycss_declaration_serialization_entry(mycss_entry, decl, callback, context);
|
||||
callback(";", 1, context);
|
||||
|
||||
if(is_use && *is_use == false) {
|
||||
*is_use = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool modest_node_raw_serialization(mycss_entry_t* mycss_entry, modest_node_t* mnode, mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
bool is_use = false;
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, width), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, height), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, padding_top), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, padding_right), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, padding_bottom), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, padding_left), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, margin_top), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, margin_right), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, margin_bottom), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, margin_left), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, display), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_top_width), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_right_width), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_bottom_width), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_left_width), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_top_style), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_right_style), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_bottom_style), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, border_left_style), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, box_sizing), callback, context, &is_use);
|
||||
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, vertical_align), callback, context, &is_use);
|
||||
modest_node_raw_serialization_declaration(mycss_entry, modest_node_raw_property(mnode, line_height), callback, context, &is_use);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
41
source/modest/node/serialization.h
Normal file
41
source/modest/node/serialization.h
Normal file
@ -0,0 +1,41 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_NODE_SERIALIZATION_H
|
||||
#define MODEST_NODE_SERIALIZATION_H
|
||||
#pragma once
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/node/node.h"
|
||||
#include "modest/node/raw_property.h"
|
||||
#include "mycss/myosi.h"
|
||||
#include "mycss/declaration/serialization.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
bool modest_node_raw_serialization(mycss_entry_t* mycss_entry, modest_node_t* mnode, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_NODE_SERIALIZATION_H */
|
File diff suppressed because it is too large
Load Diff
@ -23,293 +23,302 @@
|
||||
#pragma once
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/modest.h"
|
||||
#include "modest/finder/myosi.h"
|
||||
#include "modest/finder/thread.h"
|
||||
|
||||
typedef void (*modest_style_map_collate_f)(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void modest_style_map_collate_declaration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
typedef void (*modest_style_map_collate_f)(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
void modest_style_map_collate_declaration_undef(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_items(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_align_self(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_delay(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_fill_mode(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_iteration_count(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_name(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_play_state(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_animation_timing_function(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_appearance(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_backface_visibility(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_attachment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_clip(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_repeat(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_background_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_label(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_level(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bookmark_state(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_left_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_right_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_bottom_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_collapse(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_outset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_repeat(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_slice(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_image_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_left_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_right_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_left_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_right_radius(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_top_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_border_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_decoration_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_shadow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_sizing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_box_suppress(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_break_inside(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caption_side(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_caret_shape(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_clear(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_clear_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_interpolation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_interpolation_filters(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_color_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_count(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_fill(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_gap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_rule_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_span(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_column_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_columns(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_contain(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_continue(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_counter_increment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cue_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_cursor(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_display(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_empty_cells(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_fill_rule(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_basis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_direction(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_flow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_grow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_shrink(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_flex_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_float(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_float_displace(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_family(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_feature_settings(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_kerning(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_language_override(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_size_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_stretch(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_synthesis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_alternates(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_caps(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_east_asian(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_ligatures(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_numeric(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_variant_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_font_weight(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_glyph_orientation_vertical(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_hanging_punctuation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_hyphens(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_image_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_indent_edge_reset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_inline_size_step(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_justify_content(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_letter_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_line_height_step(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_image(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_list_style_type(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_margin_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_end(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_mid(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_side(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_marker_start(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_lines(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_max_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_min_height(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_min_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_down(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_nav_up(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_end(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_offset_start(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_order(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_orphans(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_offset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_outline_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_x(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_overflow_y(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_bottom(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_left(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_padding_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_pause_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_perspective(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_perspective_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_presentation_level(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_quotes(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_region_fragment(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_resize(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest_after(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_rest_before(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_right(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_merge(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_ruby_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_padding(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_stop(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_type(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_image_threshold(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_margin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_outside(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_shape_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_speak(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_speak_as(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_string_set(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_dasharray(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_dashoffset(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_linecap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_linejoin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_miterlimit(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_opacity(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_stroke_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_tab_size(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_table_layout(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align_all(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_align_last(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_combine_upright(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_line(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_skip(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_decoration_styl(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_color(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_indent(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_justify(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_orientation(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_overflow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_rendering(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_shadow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_size_adjust(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_transform(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_text_underline_position(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_top(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_touch_action(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_box(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_origin(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transform_style(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_delay(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_property(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_transition_timing_function(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_unicode_bidi(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_user_select(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_vertical_align(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_visibility(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_balance(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_duration(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_family(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_pitch(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_range(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_rate(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_stress(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_voice_volume(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_white_space(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_widows(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_width(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_will_change(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_break(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_spacing(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_word_wrap(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_wrap_flow(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_wrap_through(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_writing_mode(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration_z_index(myhtml_tree_node_t* node, modest_finder_thread_declaration_t* thr_dec);
|
||||
void modest_style_map_collate_declaration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
void modest_style_map_collate_declaration_undef(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_items(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_align_self(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_delay(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_fill_mode(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_iteration_count(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_name(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_play_state(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_animation_timing_function(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_appearance(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_backface_visibility(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_attachment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_clip(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_repeat(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_background_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_label(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_level(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bookmark_state(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_left_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_right_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_bottom_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_collapse(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_outset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_repeat(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_slice(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_image_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_left_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_right_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_left_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_right_radius(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_top_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_border_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_decoration_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_shadow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_sizing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_box_suppress(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_break_inside(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caption_side(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_caret_shape(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_clear(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_clear_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_interpolation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_interpolation_filters(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_color_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_count(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_fill(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_gap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_rule_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_span(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_column_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_columns(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_contain(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_continue(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_counter_increment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cue_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_cursor(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_display(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_empty_cells(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_fill_rule(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_basis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_direction(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_flow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_grow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_shrink(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_flex_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_float(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_float_displace(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_family(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_feature_settings(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_kerning(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_language_override(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_size_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_stretch(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_synthesis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_alternates(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_caps(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_east_asian(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_ligatures(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_numeric(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_variant_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_font_weight(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_glyph_orientation_vertical(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_hanging_punctuation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_hyphens(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_image_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_indent_edge_reset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_inline_size_step(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_justify_content(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_letter_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_line_height_step(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_image(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_list_style_type(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_margin_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_end(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_mid(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_side(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_marker_start(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_lines(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_max_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_min_height(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_min_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_down(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_nav_up(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_end(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_offset_start(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_order(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_orphans(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_offset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_outline_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_x(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_overflow_y(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_bottom(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_left(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_padding_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_pause_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_perspective(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_perspective_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_presentation_level(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_quotes(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_region_fragment(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_resize(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest_after(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_rest_before(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_right(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_merge(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_ruby_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_padding(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_stop(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_scroll_snap_type(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_image_threshold(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_margin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_outside(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_shape_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_speak(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_speak_as(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_string_set(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_dasharray(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_dashoffset(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_linecap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_linejoin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_miterlimit(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_opacity(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_stroke_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_tab_size(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_table_layout(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align_all(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_align_last(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_combine_upright(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_line(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_skip(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_decoration_styl(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_color(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_emphasis_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_indent(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_justify(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_orientation(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_overflow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_rendering(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_shadow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_size_adjust(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_transform(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_text_underline_position(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_top(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_touch_action(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_box(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_origin(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transform_style(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_delay(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_property(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_transition_timing_function(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_unicode_bidi(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_user_select(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_vertical_align(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_visibility(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_balance(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_duration(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_family(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_pitch(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_range(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_rate(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_stress(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_voice_volume(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_white_space(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_widows(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_width(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_will_change(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_break(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_spacing(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_word_wrap(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_wrap_flow(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_wrap_through(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_writing_mode(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
void modest_style_map_collate_declaration_z_index(modest_t* modest, myhtml_tree_node_t* node, mycss_declaration_entry_t* decl, modest_style_raw_specificity_t* spec);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_MAP_H */
|
||||
|
51
source/modest/style/raw.c
Normal file
51
source/modest/style/raw.c
Normal file
@ -0,0 +1,51 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#include "modest/style/raw.h"
|
||||
|
||||
modest_style_raw_t * modest_style_raw_create(modest_t* modest)
|
||||
{
|
||||
modest_style_raw_t* raw_style = (modest_style_raw_t*)mcobject_async_malloc(modest->mraw_style_obj, modest->mraw_style_node_id, NULL);
|
||||
|
||||
if(raw_style == NULL)
|
||||
return NULL;
|
||||
|
||||
memset(raw_style, 0, sizeof(modest_style_raw_t));
|
||||
|
||||
return raw_style;
|
||||
}
|
||||
|
||||
modest_status_t modest_style_raw_init(modest_t* modest, modest_style_raw_t* raw_style)
|
||||
{
|
||||
return MODEST_STATUS_OK;
|
||||
}
|
||||
|
||||
modest_style_raw_declaration_t * modest_style_raw_declaration_create(modest_t* modest)
|
||||
{
|
||||
modest_style_raw_declaration_t* raw_decl = (modest_style_raw_declaration_t*)mcobject_malloc(modest->mraw_style_declaration_obj, NULL);
|
||||
|
||||
if(raw_decl == NULL)
|
||||
return NULL;
|
||||
|
||||
memset(raw_decl, 0, sizeof(modest_style_raw_declaration_t));
|
||||
|
||||
return raw_decl;
|
||||
}
|
||||
|
89
source/modest/style/raw.h
Normal file
89
source/modest/style/raw.h
Normal file
@ -0,0 +1,89 @@
|
||||
/*
|
||||
Copyright (C) 2016 Alexander Borisov
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
*/
|
||||
|
||||
#ifndef MODEST_STYLE_RAW_H
|
||||
#define MODEST_STYLE_RAW_H
|
||||
#pragma once
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/modest.h"
|
||||
#include "myhtml/utils/mcobject.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct modest_style_raw modest_style_raw_t;
|
||||
typedef struct modest_style_raw_declaration modest_style_raw_declaration_t;
|
||||
typedef struct modest_style_raw_specificity modest_style_raw_specificity_t;
|
||||
|
||||
struct modest_style_raw_specificity {
|
||||
unsigned int x;
|
||||
unsigned int a;
|
||||
unsigned int b;
|
||||
unsigned int c;
|
||||
};
|
||||
|
||||
struct modest_style_raw_declaration {
|
||||
mycss_declaration_entry_t* declaration;
|
||||
modest_style_raw_specificity_t spec;
|
||||
};
|
||||
|
||||
struct modest_style_raw {
|
||||
modest_style_raw_declaration_t* width;
|
||||
modest_style_raw_declaration_t* height;
|
||||
|
||||
modest_style_raw_declaration_t* padding_top;
|
||||
modest_style_raw_declaration_t* padding_right;
|
||||
modest_style_raw_declaration_t* padding_bottom;
|
||||
modest_style_raw_declaration_t* padding_left;
|
||||
modest_style_raw_declaration_t* margin_top;
|
||||
modest_style_raw_declaration_t* margin_right;
|
||||
modest_style_raw_declaration_t* margin_bottom;
|
||||
modest_style_raw_declaration_t* margin_left;
|
||||
|
||||
modest_style_raw_declaration_t* display;
|
||||
|
||||
modest_style_raw_declaration_t* border_top_width;
|
||||
modest_style_raw_declaration_t* border_right_width;
|
||||
modest_style_raw_declaration_t* border_bottom_width;
|
||||
modest_style_raw_declaration_t* border_left_width;
|
||||
|
||||
modest_style_raw_declaration_t* border_top_style;
|
||||
modest_style_raw_declaration_t* border_right_style;
|
||||
modest_style_raw_declaration_t* border_bottom_style;
|
||||
modest_style_raw_declaration_t* border_left_style;
|
||||
|
||||
modest_style_raw_declaration_t* box_sizing;
|
||||
|
||||
modest_style_raw_declaration_t* vertical_align;
|
||||
modest_style_raw_declaration_t* line_height;
|
||||
};
|
||||
|
||||
modest_style_raw_t * modest_style_raw_create(modest_t* modest);
|
||||
modest_status_t modest_style_raw_init(modest_t* modest, modest_style_raw_t* raw_style);
|
||||
|
||||
modest_style_raw_declaration_t * modest_style_raw_declaration_create(modest_t* modest);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_RAW_H */
|
@ -26,12 +26,37 @@
|
||||
#include "modest/modest.h"
|
||||
#include "modest/style/type.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct modest_style_sheet {
|
||||
modest_style_type_length_t width;
|
||||
modest_style_type_length_t height;
|
||||
|
||||
modest_style_type_length_t padding_top;
|
||||
modest_style_type_length_t padding_right;
|
||||
modest_style_type_length_t padding_bottom;
|
||||
modest_style_type_length_t padding_left;
|
||||
|
||||
modest_style_type_length_t margin_top;
|
||||
modest_style_type_length_t margin_right;
|
||||
modest_style_type_length_t margin_bottom;
|
||||
modest_style_type_length_t margin_left;
|
||||
|
||||
modest_style_type_display_t display;
|
||||
|
||||
modest_style_type_length_t border_top_width;
|
||||
modest_style_type_length_t border_right_width;
|
||||
modest_style_type_length_t border_bottom_width;
|
||||
modest_style_type_length_t border_left_width;
|
||||
};
|
||||
|
||||
modest_style_sheet_t * modest_style_sheet_create(modest_t* modest);
|
||||
modest_status_t modest_style_sheet_init(modest_t* modest, modest_style_sheet_t* m_stylesheet);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_SHEET_H */
|
||||
|
@ -20,5 +20,19 @@
|
||||
|
||||
#include "modest/style/type.h"
|
||||
|
||||
void * modest_style_type_create(modest_t* modest, size_t size)
|
||||
{
|
||||
void* data = (void*)mchar_async_malloc(modest->mstyle_type_obj, modest->mstyle_type_node_id, size);
|
||||
|
||||
if(data == NULL)
|
||||
return NULL;
|
||||
|
||||
memset(data, 0, size);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
modest_status_t modest_style_type_init(modest_t* modest, void *data)
|
||||
{
|
||||
return MODEST_STATUS_OK;
|
||||
}
|
||||
|
@ -23,28 +23,31 @@
|
||||
#pragma once
|
||||
|
||||
#include "modest/myosi.h"
|
||||
#include "modest/modest.h"
|
||||
#include "mycss/declaration/myosi.h"
|
||||
#include "myhtml/utils/mchar_async.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct modest_style_type_length modest_style_type_length_t;
|
||||
|
||||
typedef struct modest_style_raw modest_style_raw_t;
|
||||
typedef struct modest_style_raw_specificity modest_style_raw_specificity_t;
|
||||
|
||||
struct modest_style_raw_specificity {
|
||||
unsigned int x;
|
||||
unsigned int a;
|
||||
unsigned int b;
|
||||
unsigned int c;
|
||||
};
|
||||
|
||||
struct modest_style_raw {
|
||||
mycss_declaration_entry_t* declaration;
|
||||
modest_style_raw_specificity_t spec;
|
||||
};
|
||||
typedef struct modest_style_type_display modest_style_type_display_t;
|
||||
|
||||
struct modest_style_type_length {
|
||||
float value;
|
||||
modest_style_raw_t raw;
|
||||
};
|
||||
|
||||
struct modest_style_type_display {
|
||||
mycss_property_display_t value;
|
||||
};
|
||||
|
||||
|
||||
void * modest_style_type_create(modest_t* modest, size_t size);
|
||||
modest_status_t modest_style_type_init(modest_t* modest, void *data);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
||||
#endif /* MODEST_STYLE_TYPE_H */
|
||||
|
@ -44,8 +44,11 @@ void mycss_declaration_entry_clean_all(mycss_declaration_entry_t* dec_entry)
|
||||
|
||||
void mycss_declaration_entry_destroy(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry)
|
||||
{
|
||||
if(dec_entry == NULL)
|
||||
return;
|
||||
|
||||
if(dec_entry->value)
|
||||
mycss_values_destroy(declaration->ref_entry, dec_entry);
|
||||
mycss_values_destroy(declaration->ref_entry, dec_entry->value);
|
||||
|
||||
mcobject_free(declaration->mcobject_entries, dec_entry);
|
||||
}
|
||||
@ -63,6 +66,18 @@ void mycss_declaration_entry_append_to_current(mycss_declaration_t* declaration,
|
||||
declaration->entry_last = dec_entry;
|
||||
}
|
||||
|
||||
mycss_declaration_entry_t * mycss_declaration_entry_clone(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry, bool with_value)
|
||||
{
|
||||
mycss_declaration_entry_t *new_decl = mycss_declaration_entry_create(declaration, NULL);
|
||||
memcpy(new_decl, dec_entry, sizeof(mycss_declaration_entry_t));
|
||||
|
||||
if(with_value && dec_entry->value) {
|
||||
new_decl->value = mycss_values_clone(declaration->ref_entry, dec_entry->value);
|
||||
}
|
||||
|
||||
return new_decl;
|
||||
}
|
||||
|
||||
void mycss_declaration_entry_remove(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry)
|
||||
{
|
||||
if(dec_entry->next) {
|
||||
@ -95,4 +110,14 @@ mycss_declaration_entry_t * mycss_declaration_entry_last(mycss_declaration_t* de
|
||||
return declaration->entry_last;
|
||||
}
|
||||
|
||||
void mycss_declaration_entry_type_set(mycss_declaration_entry_t* dec_entry, mycss_property_type_t type)
|
||||
{
|
||||
dec_entry->type = type;
|
||||
}
|
||||
|
||||
void mycss_declaration_entry_important_set(mycss_declaration_entry_t* dec_entry, bool is_important)
|
||||
{
|
||||
dec_entry->is_important = is_important;
|
||||
}
|
||||
|
||||
|
||||
|
@ -37,6 +37,9 @@ void mycss_declaration_entry_destroy(mycss_declaration_t* declaration, mycss_dec
|
||||
|
||||
mycss_declaration_entry_t * mycss_declaration_entry(mycss_declaration_t* declaration);
|
||||
mycss_declaration_entry_t * mycss_declaration_entry_last(mycss_declaration_t* declaration);
|
||||
mycss_declaration_entry_t * mycss_declaration_entry_clone(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry, bool with_value);
|
||||
void mycss_declaration_entry_type_set(mycss_declaration_entry_t* dec_entry, mycss_property_type_t type);
|
||||
void mycss_declaration_entry_important_set(mycss_declaration_entry_t* dec_entry, bool is_important);
|
||||
|
||||
void mycss_declaration_entry_append_to_current(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry);
|
||||
void mycss_declaration_entry_remove(mycss_declaration_t* declaration, mycss_declaration_entry_t* dec_entry);
|
||||
|
@ -31,6 +31,9 @@ static void mycss_declaration_serialization_important_if_need(mycss_declaration_
|
||||
bool mycss_declaration_serialization_entry(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(dec_entry == NULL)
|
||||
return false;
|
||||
|
||||
mycss_property_serialization_type_name(dec_entry->type, callback, context);
|
||||
|
||||
callback(": ", 2, context);
|
||||
@ -41,6 +44,9 @@ bool mycss_declaration_serialization_entry(mycss_entry_t* entry, mycss_declarati
|
||||
void mycss_declaration_serialization_entries(mycss_entry_t* entry, mycss_declaration_entry_t* first_dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(first_dec_entry == NULL)
|
||||
return;
|
||||
|
||||
while(first_dec_entry) {
|
||||
mycss_declaration_serialization_entry(entry, first_dec_entry, callback, context);
|
||||
|
||||
@ -56,7 +62,7 @@ void mycss_declaration_serialization_entries(mycss_entry_t* entry, mycss_declara
|
||||
bool mycss_declaration_serialization_undef(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(dec_entry->value == NULL)
|
||||
if(dec_entry == NULL)
|
||||
return false;
|
||||
|
||||
mycss_property_serialization_value(dec_entry->value_type, dec_entry->value, callback, context);
|
||||
@ -65,10 +71,10 @@ bool mycss_declaration_serialization_undef(mycss_entry_t* entry, mycss_declarati
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_declaration_serialization_padding(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
bool mycss_declaration_serialization_shorthand_four(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(dec_entry->value == NULL)
|
||||
if(dec_entry == NULL || dec_entry->value == NULL)
|
||||
return false;
|
||||
|
||||
mycss_values_shorthand_four_t *value = (mycss_values_shorthand_four_t*)dec_entry->value;
|
||||
@ -105,14 +111,52 @@ bool mycss_declaration_serialization_padding(mycss_entry_t* entry, mycss_declara
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_declaration_serialization_padding_x(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
bool mycss_declaration_serialization_shorthand_two(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(dec_entry->value == NULL)
|
||||
if(dec_entry == NULL || dec_entry->value == NULL)
|
||||
return false;
|
||||
|
||||
mycss_property_serialization_value(dec_entry->value_type, dec_entry->value, callback, context);
|
||||
mycss_values_shorthand_two_t *shorthand_two = (mycss_values_shorthand_two_t*)dec_entry->value;
|
||||
mycss_declaration_entry_t *tmp;
|
||||
|
||||
if(shorthand_two->one) {
|
||||
tmp = (mycss_declaration_entry_t*)shorthand_two->one;
|
||||
mycss_property_serialization_value(tmp->value_type, tmp->value, callback, context);
|
||||
}
|
||||
|
||||
if(shorthand_two->two) {
|
||||
callback(" ", 1, context);
|
||||
|
||||
tmp = (mycss_declaration_entry_t*)shorthand_two->two;
|
||||
mycss_property_serialization_value(tmp->value_type, tmp->value, callback, context);
|
||||
}
|
||||
|
||||
mycss_declaration_serialization_important_if_need(dec_entry, callback, context);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_declaration_serialization_shorthand_two_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,
|
||||
mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
if(dec_entry == NULL || dec_entry->value == NULL)
|
||||
return false;
|
||||
|
||||
mycss_values_shorthand_two_type_t *short_two_type = (mycss_values_shorthand_two_type_t*)dec_entry->value;
|
||||
|
||||
if(short_two_type->one) {
|
||||
mycss_property_serialization_value(short_two_type->type_one, short_two_type->one, callback, context);
|
||||
}
|
||||
|
||||
if(short_two_type->two) {
|
||||
callback(" ", 1, context);
|
||||
|
||||
mycss_property_serialization_value(short_two_type->type_two, short_two_type->two, callback, context);
|
||||
}
|
||||
|
||||
mycss_declaration_serialization_important_if_need(dec_entry, callback, context);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -38,8 +38,9 @@ bool mycss_declaration_serialization_entry(mycss_entry_t* entry, mycss_declarati
|
||||
void mycss_declaration_serialization_entries(mycss_entry_t* entry, mycss_declaration_entry_t* first_dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
bool mycss_declaration_serialization_undef(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_padding(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_padding_x(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_four(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_two(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
bool mycss_declaration_serialization_shorthand_two_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_callback_serialization_f callback, void* context);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
@ -205,11 +205,11 @@ static mycss_declaration_serialization_f mycss_declaration_serialization_map_by_
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_padding,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_padding_x,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
mycss_declaration_serialization_undef,
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -265,7 +265,7 @@ bool mycss_property_parser_text_decoration(mycss_entry_t* entry, mycss_token_t*
|
||||
bool mycss_property_parser_text_decoration_color(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_line(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_skip(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_styl(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_decoration_style(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis_color(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
bool mycss_property_parser_text_emphasis_position(mycss_entry_t* entry, mycss_token_t* token, bool last_response);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -257,7 +257,7 @@ static const char * mycss_property_index_type_name[] =
|
||||
"text-decoration-color",
|
||||
"text-decoration-line",
|
||||
"text-decoration-skip",
|
||||
"text-decoration-styl",
|
||||
"text-decoration-style",
|
||||
"text-emphasis",
|
||||
"text-emphasis-color",
|
||||
"text-emphasis-position",
|
||||
@ -327,40 +327,40 @@ static const char * mycss_property_index_type_value[] =
|
||||
"absolute",
|
||||
"alias",
|
||||
"all",
|
||||
"all-petite-caps",
|
||||
"all-scroll",
|
||||
"all-small-caps",
|
||||
"allow-end",
|
||||
"allow_end",
|
||||
"all_petite_caps",
|
||||
"all_scroll",
|
||||
"all_small_caps",
|
||||
"alternate",
|
||||
"alternate-reverse",
|
||||
"alternate_reverse",
|
||||
"always",
|
||||
"auto",
|
||||
"available",
|
||||
"avoid",
|
||||
"avoid-column",
|
||||
"avoid-page",
|
||||
"avoid-region",
|
||||
"avoid_column",
|
||||
"avoid_page",
|
||||
"avoid_region",
|
||||
"backwards",
|
||||
"balance",
|
||||
"balance-all",
|
||||
"balance_all",
|
||||
"bar",
|
||||
"baseline",
|
||||
"bevel",
|
||||
"bidi-override",
|
||||
"bidi_override",
|
||||
"blink",
|
||||
"block",
|
||||
"block-within-page",
|
||||
"block_within_page",
|
||||
"bold",
|
||||
"bolder",
|
||||
"border-box",
|
||||
"border-edge",
|
||||
"border_box",
|
||||
"border_edge",
|
||||
"both",
|
||||
"bottom",
|
||||
"box-decoration",
|
||||
"box_decoration",
|
||||
"break",
|
||||
"break-all",
|
||||
"break-spaces",
|
||||
"break-word",
|
||||
"break_all",
|
||||
"break_spaces",
|
||||
"break_word",
|
||||
"butt",
|
||||
"capitalize",
|
||||
"caption",
|
||||
@ -371,20 +371,20 @@ static const char * mycss_property_index_type_value[] =
|
||||
"clip",
|
||||
"clone",
|
||||
"closed",
|
||||
"col-resize",
|
||||
"collapse",
|
||||
"column",
|
||||
"column-reverse",
|
||||
"common-ligatures",
|
||||
"column_reverse",
|
||||
"col_resize",
|
||||
"common_ligatures",
|
||||
"complex",
|
||||
"condensed",
|
||||
"contain",
|
||||
"content",
|
||||
"content-box",
|
||||
"content-edge",
|
||||
"contents",
|
||||
"context-menu",
|
||||
"content_box",
|
||||
"content_edge",
|
||||
"contextual",
|
||||
"context_menu",
|
||||
"copy",
|
||||
"cover",
|
||||
"crispedges",
|
||||
@ -394,48 +394,48 @@ static const char * mycss_property_index_type_value[] =
|
||||
"dashed",
|
||||
"default",
|
||||
"descendants",
|
||||
"diagonal-fractions",
|
||||
"diagonal_fractions",
|
||||
"digits",
|
||||
"discard",
|
||||
"discretionary-ligatures",
|
||||
"discretionary_ligatures",
|
||||
"dot",
|
||||
"dotted",
|
||||
"double",
|
||||
"double-circle",
|
||||
"e-resize",
|
||||
"each-line",
|
||||
"double_circle",
|
||||
"each_line",
|
||||
"ease",
|
||||
"ease-in",
|
||||
"ease-in-out",
|
||||
"ease-out",
|
||||
"ease_in",
|
||||
"ease_in_out",
|
||||
"ease_out",
|
||||
"economy",
|
||||
"edges",
|
||||
"ellipsis",
|
||||
"embed",
|
||||
"end",
|
||||
"evenodd",
|
||||
"ew-resize",
|
||||
"ew_resize",
|
||||
"exact",
|
||||
"expanded",
|
||||
"extra-condensed",
|
||||
"extra-expanded",
|
||||
"extra_condensed",
|
||||
"extra_expanded",
|
||||
"e_resize",
|
||||
"fast",
|
||||
"fill",
|
||||
"fill-box",
|
||||
"filled",
|
||||
"fill_box",
|
||||
"first",
|
||||
"fit-content",
|
||||
"fit_content",
|
||||
"fixed",
|
||||
"flat",
|
||||
"flex",
|
||||
"flex-end",
|
||||
"flex-start",
|
||||
"flex_end",
|
||||
"flex_start",
|
||||
"flow",
|
||||
"flow-root",
|
||||
"force-end",
|
||||
"flow_root",
|
||||
"force_end",
|
||||
"forwards",
|
||||
"fragments",
|
||||
"full-width",
|
||||
"full_width",
|
||||
"geometricprecision",
|
||||
"grab",
|
||||
"grabbing",
|
||||
@ -446,10 +446,10 @@ static const char * mycss_property_index_type_value[] =
|
||||
"hidden",
|
||||
"hide",
|
||||
"high",
|
||||
"historical-forms",
|
||||
"historical-ligatures",
|
||||
"historical_forms",
|
||||
"historical_ligatures",
|
||||
"horizontal",
|
||||
"horizontal-tb",
|
||||
"horizontal_tb",
|
||||
"icon",
|
||||
"increment",
|
||||
"indent",
|
||||
@ -457,42 +457,41 @@ static const char * mycss_property_index_type_value[] =
|
||||
"initial",
|
||||
"ink",
|
||||
"inline",
|
||||
"inline-block",
|
||||
"inline-flex",
|
||||
"inline-grid",
|
||||
"inline-list-item",
|
||||
"inline-table",
|
||||
"inline_block",
|
||||
"inline_flex",
|
||||
"inline_grid",
|
||||
"inline_list_item",
|
||||
"inline_table",
|
||||
"inset",
|
||||
"inside",
|
||||
"inter-character",
|
||||
"inter-word",
|
||||
"inter_character",
|
||||
"inter_word",
|
||||
"invert",
|
||||
"isolate",
|
||||
"isolate-override",
|
||||
"isolate_override",
|
||||
"italic",
|
||||
"jis04",
|
||||
"jis78",
|
||||
"jis83",
|
||||
"jis90",
|
||||
"justify",
|
||||
"justify-all",
|
||||
"keep-all",
|
||||
"justify_all",
|
||||
"keep_all",
|
||||
"large",
|
||||
"larger",
|
||||
"last",
|
||||
"layout",
|
||||
"left",
|
||||
"leftwards",
|
||||
"length",
|
||||
"lighter",
|
||||
"line",
|
||||
"line-through",
|
||||
"linear",
|
||||
"linearrgb",
|
||||
"lining-nums",
|
||||
"list-container",
|
||||
"list-item",
|
||||
"literal-punctuation",
|
||||
"line_through",
|
||||
"lining_nums",
|
||||
"list_container",
|
||||
"list_item",
|
||||
"literal_punctuation",
|
||||
"local",
|
||||
"loose",
|
||||
"loud",
|
||||
@ -502,44 +501,44 @@ static const char * mycss_property_index_type_value[] =
|
||||
"mandatory",
|
||||
"manipulation",
|
||||
"manual",
|
||||
"margin-edge",
|
||||
"match-parent",
|
||||
"max-content",
|
||||
"margin_edge",
|
||||
"match_parent",
|
||||
"maximum",
|
||||
"max_content",
|
||||
"medium",
|
||||
"menu",
|
||||
"message-box",
|
||||
"message_box",
|
||||
"middle",
|
||||
"min-content",
|
||||
"minimum",
|
||||
"min_content",
|
||||
"miter",
|
||||
"mixed",
|
||||
"moderate",
|
||||
"move",
|
||||
"n-resize",
|
||||
"ne-resize",
|
||||
"nesw-resize",
|
||||
"no-common-ligatures",
|
||||
"no-content",
|
||||
"no-contextual",
|
||||
"no-discretionary-ligatures",
|
||||
"no-display",
|
||||
"no-drop",
|
||||
"no-historical-ligatures",
|
||||
"no-punctuation",
|
||||
"no-repeat",
|
||||
"nesw_resize",
|
||||
"ne_resize",
|
||||
"none",
|
||||
"nonzero",
|
||||
"normal",
|
||||
"not-allowed",
|
||||
"not_allowed",
|
||||
"nowrap",
|
||||
"ns-resize",
|
||||
"nw-resize",
|
||||
"nwse-resize",
|
||||
"no_common_ligatures",
|
||||
"no_content",
|
||||
"no_contextual",
|
||||
"no_discretionary_ligatures",
|
||||
"no_display",
|
||||
"no_drop",
|
||||
"no_historical_ligatures",
|
||||
"no_punctuation",
|
||||
"no_repeat",
|
||||
"ns_resize",
|
||||
"nwse_resize",
|
||||
"nw_resize",
|
||||
"n_resize",
|
||||
"objects",
|
||||
"oblique",
|
||||
"off",
|
||||
"oldstyle-nums",
|
||||
"oldstyle_nums",
|
||||
"on",
|
||||
"open",
|
||||
"optimizelegibility",
|
||||
@ -551,38 +550,37 @@ static const char * mycss_property_index_type_value[] =
|
||||
"over",
|
||||
"overflow",
|
||||
"overline",
|
||||
"padding-box",
|
||||
"padding-edge",
|
||||
"padding_box",
|
||||
"padding_edge",
|
||||
"page",
|
||||
"paginate",
|
||||
"paint",
|
||||
"pan-down",
|
||||
"pan-left",
|
||||
"pan-right",
|
||||
"pan-up",
|
||||
"pan-x",
|
||||
"pan-y",
|
||||
"pan_down",
|
||||
"pan_left",
|
||||
"pan_right",
|
||||
"pan_up",
|
||||
"pan_x",
|
||||
"pan_y",
|
||||
"paused",
|
||||
"percentage",
|
||||
"petite-caps",
|
||||
"petite_caps",
|
||||
"plaintext",
|
||||
"pointer",
|
||||
"pre",
|
||||
"pre-line",
|
||||
"pre-wrap",
|
||||
"preserve",
|
||||
"preserve-3d",
|
||||
"preserve_3d",
|
||||
"pre_line",
|
||||
"pre_wrap",
|
||||
"progress",
|
||||
"proportional-nums",
|
||||
"proportional-width",
|
||||
"proportional_nums",
|
||||
"proportional_width",
|
||||
"proximity",
|
||||
"recto",
|
||||
"reduced",
|
||||
"region",
|
||||
"relative",
|
||||
"repeat",
|
||||
"repeat-x",
|
||||
"repeat-y",
|
||||
"repeat_x",
|
||||
"repeat_y",
|
||||
"reverse",
|
||||
"ridge",
|
||||
"right",
|
||||
@ -590,54 +588,53 @@ static const char * mycss_property_index_type_value[] =
|
||||
"root",
|
||||
"round",
|
||||
"row",
|
||||
"row-resize",
|
||||
"row-reverse",
|
||||
"row_resize",
|
||||
"row_reverse",
|
||||
"rtl",
|
||||
"ruby",
|
||||
"ruby-base",
|
||||
"ruby-base-container",
|
||||
"ruby-text",
|
||||
"ruby-text-container",
|
||||
"run-in",
|
||||
"ruby_base",
|
||||
"ruby_base_container",
|
||||
"ruby_text",
|
||||
"ruby_text_container",
|
||||
"running",
|
||||
"s-resize",
|
||||
"run_in",
|
||||
"same",
|
||||
"scroll",
|
||||
"scroll-position",
|
||||
"se-resize",
|
||||
"semi-condensed",
|
||||
"semi-expanded",
|
||||
"scroll_position",
|
||||
"semi_condensed",
|
||||
"semi_expanded",
|
||||
"separate",
|
||||
"sesame",
|
||||
"sesameinitial",
|
||||
"se_resize",
|
||||
"show",
|
||||
"sideways",
|
||||
"sideways-lr",
|
||||
"sideways-rl",
|
||||
"sideways_lr",
|
||||
"sideways_rl",
|
||||
"silent",
|
||||
"simplified",
|
||||
"size",
|
||||
"slashed-zero",
|
||||
"slashed_zero",
|
||||
"slice",
|
||||
"slow",
|
||||
"small",
|
||||
"small-caps",
|
||||
"small-caption",
|
||||
"smaller",
|
||||
"small_caps",
|
||||
"small_caption",
|
||||
"soft",
|
||||
"solid",
|
||||
"space",
|
||||
"space-around",
|
||||
"space-between",
|
||||
"spaces",
|
||||
"spell-out",
|
||||
"space_around",
|
||||
"space_between",
|
||||
"spell_out",
|
||||
"square",
|
||||
"srgb",
|
||||
"stacked-fractions",
|
||||
"stacked_fractions",
|
||||
"start",
|
||||
"static",
|
||||
"status-bar",
|
||||
"step-end",
|
||||
"step-start",
|
||||
"status_bar",
|
||||
"step_end",
|
||||
"step_start",
|
||||
"sticky",
|
||||
"stretch",
|
||||
"strict",
|
||||
@ -645,62 +642,70 @@ static const char * mycss_property_index_type_value[] =
|
||||
"style",
|
||||
"sub",
|
||||
"super",
|
||||
"sw-resize",
|
||||
"sw_resize",
|
||||
"s_resize",
|
||||
"table",
|
||||
"table-caption",
|
||||
"table-cell",
|
||||
"table-column",
|
||||
"table-column-group",
|
||||
"table-footer-group",
|
||||
"table-header-group",
|
||||
"table-row",
|
||||
"table-row-group",
|
||||
"tabular-nums",
|
||||
"table_caption",
|
||||
"table_cell",
|
||||
"table_column",
|
||||
"table_column_group",
|
||||
"table_footer_group",
|
||||
"table_header_group",
|
||||
"table_row",
|
||||
"table_row_group",
|
||||
"tabular_nums",
|
||||
"text",
|
||||
"text-bottom",
|
||||
"text-top",
|
||||
"titling-caps",
|
||||
"text_bottom",
|
||||
"text_top",
|
||||
"thick",
|
||||
"thin",
|
||||
"titling_caps",
|
||||
"top",
|
||||
"traditional",
|
||||
"triangle",
|
||||
"ultra-condensed",
|
||||
"ultra-expanded",
|
||||
"ultra_condensed",
|
||||
"ultra_expanded",
|
||||
"under",
|
||||
"underline",
|
||||
"underscore",
|
||||
"unicase",
|
||||
"unset",
|
||||
"uppercase",
|
||||
"upright",
|
||||
"verso",
|
||||
"vertical",
|
||||
"vertical-lr",
|
||||
"vertical-rl",
|
||||
"vertical-text",
|
||||
"view-box",
|
||||
"vertical_lr",
|
||||
"vertical_rl",
|
||||
"vertical_text",
|
||||
"view_box",
|
||||
"visible",
|
||||
"w-resize",
|
||||
"wait",
|
||||
"wavy",
|
||||
"weak",
|
||||
"weight",
|
||||
"wrap",
|
||||
"wrap-reverse",
|
||||
"wrap_reverse",
|
||||
"w_resize",
|
||||
"x",
|
||||
"x-fast",
|
||||
"x-high",
|
||||
"x-large",
|
||||
"x-loud",
|
||||
"x-low",
|
||||
"x-slow",
|
||||
"x-small",
|
||||
"x-soft",
|
||||
"x-strong",
|
||||
"x-weak",
|
||||
"xx-large",
|
||||
"xx-small",
|
||||
"xx_large",
|
||||
"xx_small",
|
||||
"x_fast",
|
||||
"x_high",
|
||||
"x_large",
|
||||
"x_loud",
|
||||
"x_low",
|
||||
"x_slow",
|
||||
"x_small",
|
||||
"x_soft",
|
||||
"x_strong",
|
||||
"x_weak",
|
||||
"y",
|
||||
"zoom-in",
|
||||
"zoom-out",
|
||||
"zoom_in",
|
||||
"zoom_out",
|
||||
"<color>",
|
||||
"<length>",
|
||||
"<number>",
|
||||
"<percentage>",
|
||||
""
|
||||
};
|
||||
|
||||
|
@ -33,11 +33,11 @@ void mycss_property_serialization_type_name(mycss_property_type_t prop_type, myc
|
||||
void mycss_property_serialization_value(unsigned int value_type, void* value, mycss_callback_serialization_f callback, void* context)
|
||||
{
|
||||
switch (value_type) {
|
||||
case MyCSS_PROPERTY_VALUE_LENGTH:
|
||||
case MyCSS_PROPERTY_VALUE__LENGTH:
|
||||
mycss_values_serialization_length(value, callback, context);
|
||||
break;
|
||||
|
||||
case MyCSS_PROPERTY_VALUE_PERCENTAGE:
|
||||
case MyCSS_PROPERTY_VALUE__PERCENTAGE:
|
||||
mycss_values_serialization_percentage(value, callback, context);
|
||||
break;
|
||||
|
||||
|
@ -52,43 +52,282 @@ bool mycss_property_shared_check_declaration_end(mycss_entry_t* entry, mycss_tok
|
||||
return false;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, mycss_declaration_entry_t* dec_entry)
|
||||
bool mycss_property_shared_number(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
void *value = NULL;
|
||||
mycss_values_entry_set(entry, &value);
|
||||
|
||||
if(mycss_values_consume_length(entry, token)) {
|
||||
dec_entry->value = value;
|
||||
dec_entry->value_type = MyCSS_PROPERTY_WIDTH_LENGTH;
|
||||
}
|
||||
else if(mycss_values_consume_percentage(entry, token)) {
|
||||
dec_entry->value = value;
|
||||
dec_entry->value_type = MyCSS_PROPERTY_WIDTH_PERCENTAGE;
|
||||
}
|
||||
else if(token->type == MyCSS_TOKEN_TYPE_IDENT)
|
||||
{
|
||||
myhtml_string_t str;
|
||||
mycss_token_data_to_string(entry, token, &str, true, false);
|
||||
|
||||
dec_entry->value_type = mycss_property_value_type_by_name(str.data, str.length);
|
||||
myhtml_string_destroy(&str, false);
|
||||
|
||||
if(dec_entry->value_type != MyCSS_PROPERTY_WIDTH_AUTO &&
|
||||
dec_entry->value_type != MyCSS_PROPERTY_WIDTH_INHERIT)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if(token->type != MyCSS_TOKEN_TYPE_NUMBER)
|
||||
return false;
|
||||
|
||||
mycss_values_length_t *length = mycss_values_create(entry, sizeof(mycss_values_length_t));
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
double return_num;
|
||||
mycss_convert_data_to_double(str->data, str->length, &return_num, &length->is_float);
|
||||
|
||||
if(length->is_float)
|
||||
length->f = (float)return_num;
|
||||
else
|
||||
length->i = (int)return_num;
|
||||
|
||||
*value = length;
|
||||
*value_type = MyCSS_PROPERTY_VALUE__NUMBER;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_DIMENSION && token->type != MyCSS_TOKEN_TYPE_NUMBER)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
double return_num; bool is_float;
|
||||
size_t consume_length = mycss_convert_data_to_double(str->data, str->length, &return_num, &is_float);
|
||||
|
||||
mycss_units_type_t type = mycss_units_type_by_name(&str->data[consume_length], (str->length - consume_length));
|
||||
|
||||
if(type == MyCSS_UNIT_TYPE_UNDEF)
|
||||
if(is_float == true || (long)return_num != 0)
|
||||
return false;
|
||||
|
||||
mycss_values_length_t *length = mycss_values_create(entry, sizeof(mycss_values_length_t));
|
||||
|
||||
if(is_float)
|
||||
length->f = (float)return_num;
|
||||
else
|
||||
length->i = (int)return_num;
|
||||
|
||||
length->is_float = is_float;
|
||||
length->type = type;
|
||||
|
||||
*value = length;
|
||||
*value_type = MyCSS_PROPERTY_VALUE__LENGTH;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_PERCENTAGE)
|
||||
return false;
|
||||
|
||||
mycss_values_percentage_t *length = mycss_values_create(entry, sizeof(mycss_values_length_t));
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
double return_num;
|
||||
mycss_convert_data_to_double(str->data, str->length, &return_num, &length->is_float);
|
||||
|
||||
if(length->is_float)
|
||||
length->f = (float)return_num;
|
||||
else
|
||||
length->i = (int)return_num;
|
||||
|
||||
*value = length;
|
||||
*value_type = MyCSS_PROPERTY_VALUE__PERCENTAGE;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_length_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
return mycss_property_shared_length(entry, token, value, value_type, str) ||
|
||||
mycss_property_shared_percentage(entry, token, value, value_type, str);
|
||||
}
|
||||
|
||||
bool mycss_property_shared_default(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
*value_type = mycss_property_value_type_by_name(str->data, str->length);
|
||||
|
||||
switch (*value_type) {
|
||||
case MyCSS_PROPERTY_VALUE_INHERIT:
|
||||
case MyCSS_PROPERTY_VALUE_INITIAL:
|
||||
case MyCSS_PROPERTY_VALUE_UNSET:
|
||||
break;
|
||||
|
||||
default:
|
||||
*value_type = MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_line_width(mycss_entry_t* entry, mycss_token_t* token, bool last_response)
|
||||
unsigned int mycss_property_shared_get_value_type(mycss_entry_t* entry, mycss_token_t* token, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
return mycss_property_value_type_by_name(str->data, str->length);
|
||||
}
|
||||
|
||||
bool mycss_property_shared_by_value_type(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, unsigned int check_type, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
if(check_type != mycss_property_value_type_by_name(str->data, str->length)) {
|
||||
*value_type = check_type;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(mycss_property_shared_length_percentage(entry, token, value, value_type, str))
|
||||
return true;
|
||||
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
*value_type = mycss_property_value_type_by_name(str->data, str->length);
|
||||
|
||||
switch (*value_type) {
|
||||
case MyCSS_PROPERTY_WIDTH_AVAILABLE:
|
||||
case MyCSS_PROPERTY_WIDTH_MIN_CONTENT:
|
||||
case MyCSS_PROPERTY_WIDTH_MAX_CONTENT:
|
||||
case MyCSS_PROPERTY_WIDTH_FIT_CONTENT:
|
||||
case MyCSS_PROPERTY_WIDTH_AUTO:
|
||||
/* default values */
|
||||
case MyCSS_PROPERTY_VALUE_INHERIT:
|
||||
case MyCSS_PROPERTY_VALUE_INITIAL:
|
||||
case MyCSS_PROPERTY_VALUE_UNSET:
|
||||
break;
|
||||
|
||||
default:
|
||||
*value_type = MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_height(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(mycss_property_shared_length_percentage(entry, token, value, value_type, str))
|
||||
return true;
|
||||
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
*value_type = mycss_property_value_type_by_name(str->data, str->length);
|
||||
|
||||
switch (*value_type) {
|
||||
case MyCSS_PROPERTY_HEIGHT_AVAILABLE:
|
||||
case MyCSS_PROPERTY_HEIGHT_MIN_CONTENT:
|
||||
case MyCSS_PROPERTY_HEIGHT_MAX_CONTENT:
|
||||
case MyCSS_PROPERTY_HEIGHT_FIT_CONTENT:
|
||||
case MyCSS_PROPERTY_HEIGHT_AUTO:
|
||||
case MyCSS_PROPERTY_HEIGHT_COMPLEX:
|
||||
/* default values */
|
||||
case MyCSS_PROPERTY_VALUE_INHERIT:
|
||||
case MyCSS_PROPERTY_VALUE_INITIAL:
|
||||
case MyCSS_PROPERTY_VALUE_UNSET:
|
||||
break;
|
||||
|
||||
default:
|
||||
*value_type = MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_line_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(mycss_property_shared_length(entry, token, value, value_type, str))
|
||||
return true;
|
||||
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
*value_type = mycss_property_value_type_by_name(str->data, str->length);
|
||||
|
||||
switch (*value_type) {
|
||||
case MyCSS_PROPERTY_BORDER_WIDTH_THIN:
|
||||
case MyCSS_PROPERTY_BORDER_WIDTH_MEDIUM:
|
||||
case MyCSS_PROPERTY_BORDER_WIDTH_THICK:
|
||||
/* default values */
|
||||
case MyCSS_PROPERTY_VALUE_INHERIT:
|
||||
case MyCSS_PROPERTY_VALUE_INITIAL:
|
||||
case MyCSS_PROPERTY_VALUE_UNSET:
|
||||
break;
|
||||
|
||||
default:
|
||||
*value_type = MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool mycss_property_shared_line_style(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str)
|
||||
{
|
||||
if(token->type != MyCSS_TOKEN_TYPE_IDENT)
|
||||
return false;
|
||||
|
||||
if(str->data == NULL)
|
||||
mycss_token_data_to_string(entry, token, str, true, false);
|
||||
|
||||
*value_type = mycss_property_value_type_by_name(str->data, str->length);
|
||||
|
||||
switch (*value_type) {
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_NONE:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_HIDDEN:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_DOTTED:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_DASHED:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_SOLID:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_DOUBLE:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_GROOVE:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_RIDGE:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_INSET:
|
||||
case MyCSS_PROPERTY_BORDER_STYLE_OUTSET:
|
||||
/* default values */
|
||||
case MyCSS_PROPERTY_VALUE_INHERIT:
|
||||
case MyCSS_PROPERTY_VALUE_INITIAL:
|
||||
case MyCSS_PROPERTY_VALUE_UNSET:
|
||||
break;
|
||||
|
||||
default:
|
||||
*value_type = MyCSS_PROPERTY_TYPE_UNDEF;
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void mycss_property_shared_destroy_string(myhtml_string_t* str)
|
||||
{
|
||||
myhtml_string_destroy(str, false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -33,7 +33,20 @@ extern "C" {
|
||||
bool mycss_property_shared_switch_to_find_important(mycss_entry_t* entry);
|
||||
bool mycss_property_shared_switch_to_parse_error(mycss_entry_t* entry);
|
||||
bool mycss_property_shared_check_declaration_end(mycss_entry_t* entry, mycss_token_t* token);
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, mycss_declaration_entry_t* dec_entry);
|
||||
|
||||
bool mycss_property_shared_number(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_length(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_length_percentage(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_default(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str);
|
||||
unsigned int mycss_property_shared_get_value_type(mycss_entry_t* entry, mycss_token_t* token, myhtml_string_t* str);
|
||||
bool mycss_property_shared_by_value_type(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, unsigned int check_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_height(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_line_width(mycss_entry_t* entry, mycss_token_t* token, void** value, unsigned int* value_type, myhtml_string_t* str);
|
||||
bool mycss_property_shared_line_style(mycss_entry_t* entry, mycss_token_t* token, unsigned int* value_type, myhtml_string_t* str);
|
||||
|
||||
void mycss_property_shared_destroy_string(myhtml_string_t* str);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
@ -154,7 +154,8 @@ void mycss_selectors_function_begin_not(mycss_entry_t* entry, mycss_selectors_en
|
||||
|
||||
(*new_list)->parent = current_list;
|
||||
|
||||
mycss_entry_parser_list_push(entry, mycss_selectors_function_parser_not_or_matches_or_current_parser, entry->parser_switch, entry->parser_ending_token, false);
|
||||
mycss_entry_parser_list_push(entry, mycss_selectors_function_parser_not_or_matches_or_current_parser,
|
||||
entry->parser_switch, entry->parser_ending_token, false);
|
||||
}
|
||||
|
||||
void mycss_selectors_function_begin_current(mycss_entry_t* entry, mycss_selectors_entry_t* selector)
|
||||
@ -173,7 +174,8 @@ void mycss_selectors_function_begin_current(mycss_entry_t* entry, mycss_selector
|
||||
|
||||
(*new_list)->parent = current_list;
|
||||
|
||||
mycss_entry_parser_list_push(entry, mycss_selectors_function_parser_not_or_matches_or_current_parser, entry->parser_switch, entry->parser_ending_token, false);
|
||||
mycss_entry_parser_list_push(entry, mycss_selectors_function_parser_not_or_matches_or_current_parser,
|
||||
entry->parser_switch, entry->parser_ending_token, false);
|
||||
}
|
||||
|
||||
void mycss_selectors_function_begin_nth_of_type(mycss_entry_t* entry, mycss_selectors_entry_t* selector)
|
||||
|
@ -77,9 +77,12 @@ mycss_selectors_list_t * mycss_selectors_list_append_selector(mycss_selectors_t*
|
||||
current_list->entries_list = mycss_selectors_entries_list_add_one(selectors, current_list->entries_list, current_list->entries_list_length);
|
||||
}
|
||||
|
||||
selectors->specificity = ¤t_list->entries_list[current_list->entries_list_length].specificity;
|
||||
mycss_selectors_entries_list_t *entries_list = ¤t_list->entries_list[current_list->entries_list_length];
|
||||
memset(entries_list, 0, sizeof(mycss_selectors_entries_list_t));
|
||||
|
||||
current_list->entries_list[current_list->entries_list_length].entry = selector;
|
||||
selectors->specificity = &entries_list->specificity;
|
||||
|
||||
entries_list->entry = selector;
|
||||
current_list->entries_list_length++;
|
||||
|
||||
return current_list;
|
||||
|
@ -31,18 +31,31 @@ void * mycss_values_create(mycss_entry_t* entry, size_t size)
|
||||
|
||||
void * mycss_values_destroy(mycss_entry_t* entry, void* value)
|
||||
{
|
||||
if(value == NULL)
|
||||
return NULL;
|
||||
|
||||
mchar_async_free(entry->mchar, entry->mchar_value_node_id, value);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void * mycss_values_clone(mycss_entry_t* entry, void* value)
|
||||
{
|
||||
size_t size = mchar_async_get_size_by_data(value);
|
||||
|
||||
void *new_value = mycss_values_create(entry, size);
|
||||
memcpy(new_value, value, size);
|
||||
|
||||
return new_value;
|
||||
}
|
||||
|
||||
void mycss_values_entry_set(mycss_entry_t* entry, void** value)
|
||||
{
|
||||
entry->values = value;
|
||||
}
|
||||
|
||||
|
||||
void * mycss_values_entry(mycss_entry_t* entry)
|
||||
{
|
||||
return (*entry->values);
|
||||
}
|
||||
|
||||
|
||||
|
@ -30,10 +30,20 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct mycss_values_shorthand_two_type mycss_values_shorthand_two_type_t;
|
||||
typedef struct mycss_values_shorthand_four mycss_values_shorthand_four_t;
|
||||
typedef struct mycss_values_shorthand_two mycss_values_shorthand_two_t;
|
||||
typedef struct mycss_values_percentage mycss_values_percentage_t;
|
||||
typedef struct mycss_values_length mycss_values_length_t;
|
||||
|
||||
struct mycss_values_shorthand_two_type {
|
||||
void* one;
|
||||
void* two;
|
||||
|
||||
unsigned int type_one;
|
||||
unsigned int type_two;
|
||||
};
|
||||
|
||||
struct mycss_values_shorthand_four {
|
||||
void* one;
|
||||
void* two;
|
||||
@ -41,6 +51,11 @@ struct mycss_values_shorthand_four {
|
||||
void* four;
|
||||
};
|
||||
|
||||
struct mycss_values_shorthand_two {
|
||||
void* one;
|
||||
void* two;
|
||||
};
|
||||
|
||||
struct mycss_values_length {
|
||||
union {
|
||||
int i;
|
||||
@ -60,10 +75,11 @@ struct mycss_values_percentage {
|
||||
bool is_float;
|
||||
};
|
||||
|
||||
|
||||
void * mycss_values_create(mycss_entry_t* entry, size_t size);
|
||||
void * mycss_values_destroy(mycss_entry_t* entry, void* value);
|
||||
|
||||
void * mycss_values_clone(mycss_entry_t* entry, void* value);
|
||||
|
||||
void * mycss_values_entry(mycss_entry_t* entry);
|
||||
void mycss_values_entry_set(mycss_entry_t* entry, void** value);
|
||||
|
||||
|
@ -16,23 +16,381 @@
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
Author: lex.borisov@gmail.com (Alexander Borisov)
|
||||
Author: https://github.com/EmielBruijntjes (Emiel Bruijntjes)
|
||||
*/
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "myhtml/serialization.h"
|
||||
|
||||
bool myhtml_serialization_append(myhtml_string_raw_t* str, const char* src_data, size_t length);
|
||||
bool myhtml_serialization_append_attr(myhtml_string_raw_t* str, const char* src_data, size_t length);
|
||||
bool myhtml_serialization_append_raw(myhtml_string_raw_t* str, const char* src_data, size_t length);
|
||||
|
||||
bool myhtml_serialization_attributes(myhtml_tree_t* tree, myhtml_tree_attr_t* attr, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node_append_text_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node_append_close(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
/**
|
||||
* Forward declaration of all the functions that are used inside this module
|
||||
*/
|
||||
static void myhtml_serialization_append(const char* str, size_t size, myhtml_callback_serialize_f callback, void *ptr);
|
||||
static void myhtml_serialization_append_attr(const char* str, size_t length, myhtml_callback_serialize_f callback, void *ptr);
|
||||
static void myhtml_serialization_attributes(myhtml_tree_t* tree, myhtml_tree_attr_t* attr, myhtml_callback_serialize_f callback, void *ptr);
|
||||
static void myhtml_serialization_node_append_text_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void *ptr);
|
||||
static void myhtml_serialization_node_append_close(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void *ptr);
|
||||
|
||||
/**
|
||||
* See the function myhtml_serialization_tree_buffer
|
||||
*/
|
||||
bool myhtml_serialization(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str)
|
||||
{
|
||||
if(str == NULL)
|
||||
return false;
|
||||
return myhtml_serialization_tree_buffer(tree, scope_node, str);
|
||||
}
|
||||
|
||||
/**
|
||||
* See the function myhtml_serialization_node_buffer
|
||||
*/
|
||||
bool myhtml_serialization_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str)
|
||||
{
|
||||
return myhtml_serialization_node_buffer(tree, node, str);
|
||||
}
|
||||
|
||||
/**
|
||||
* The serialize function for an entire tree
|
||||
* @param tree the tree to be serialized
|
||||
* @param scope_node the scope_node
|
||||
* @param callback function that will be called for all strings that have to be printed
|
||||
* @param ptr user-supplied pointer
|
||||
* @return bool
|
||||
*/
|
||||
bool myhtml_serialization_tree_callback(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_callback_serialize_f callback, void *ptr)
|
||||
{
|
||||
myhtml_tree_node_t* node = scope_node;
|
||||
|
||||
if(node == tree->document) {
|
||||
if (!tree->document) return false;
|
||||
node = tree->document->child;
|
||||
}
|
||||
|
||||
while(node) {
|
||||
if(!myhtml_serialization_node_callback(tree, node, callback, ptr)) return false;
|
||||
|
||||
if(node->child)
|
||||
node = node->child;
|
||||
else {
|
||||
while(node != scope_node && node->next == NULL) {
|
||||
myhtml_serialization_node_append_close(tree, node, callback, ptr);
|
||||
node = node->parent;
|
||||
}
|
||||
|
||||
if(node == scope_node) {
|
||||
if(node != tree->document) myhtml_serialization_node_append_close(tree, node, callback, ptr);
|
||||
break;
|
||||
}
|
||||
|
||||
myhtml_serialization_node_append_close(tree, node, callback, ptr);
|
||||
node = node->next;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* The serialize function for a single node
|
||||
* @param tree the tree to be serialized
|
||||
* @param node the node that is going to be serialized
|
||||
* @param callback function that will be called for all strings that have to be printed
|
||||
* @param ptr user-supplied pointer
|
||||
* @return bool
|
||||
*/
|
||||
bool myhtml_serialization_node_callback(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void *ptr)
|
||||
{
|
||||
switch (node->tag_id) {
|
||||
case MyHTML_TAG__TEXT: {
|
||||
myhtml_serialization_node_append_text_node(tree, node, callback, ptr);
|
||||
break;
|
||||
}
|
||||
case MyHTML_TAG__COMMENT: {
|
||||
callback("<!--", 4, ptr);
|
||||
if(node->token && node->token->str.data) callback(node->token->str.data, node->token->str.length, ptr);
|
||||
callback("-->", 3, ptr);
|
||||
break;
|
||||
}
|
||||
case MyHTML_TAG__DOCTYPE: {
|
||||
callback("<!DOCTYPE", 9, ptr);
|
||||
|
||||
if(node->token) {
|
||||
myhtml_tree_attr_t* attr = node->token->attr_first;
|
||||
|
||||
if(attr->key.data && attr->key.length) {
|
||||
callback(" ", 1, ptr);
|
||||
callback(attr->key.data, attr->key.length, ptr);
|
||||
}
|
||||
}
|
||||
callback(">", 1, ptr);
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
size_t length;
|
||||
const char *tag = myhtml_tag_name_by_id(tree, node->tag_id, &length);
|
||||
|
||||
callback("<", 1, ptr);
|
||||
callback(tag, length, ptr);
|
||||
if(node->token) myhtml_serialization_attributes(tree, node->token->attr_first, callback, ptr);
|
||||
callback(">", 1, ptr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal function to process attributes
|
||||
* @param tree
|
||||
* @param attr
|
||||
* @param callback
|
||||
* @param ptr
|
||||
*/
|
||||
void myhtml_serialization_attributes(myhtml_tree_t* tree, myhtml_tree_attr_t* attr, myhtml_callback_serialize_f callback, void* ptr)
|
||||
{
|
||||
while(attr) {
|
||||
callback(" ", 1, ptr);
|
||||
|
||||
switch (attr->ns) {
|
||||
case MyHTML_NAMESPACE_XML:
|
||||
callback("xml:", 4, ptr);
|
||||
break;
|
||||
case MyHTML_NAMESPACE_XMLNS: {
|
||||
/*
|
||||
If the attribute is in the XMLNS namespace and the attribute's local name is not xmlns
|
||||
The attribute's serialized name is the string "xmlns:" followed by the attribute's local name.
|
||||
*/
|
||||
if(attr->key.data && attr->key.length == 5 && myhtml_strcmp(attr->key.data, "xmlns")) {
|
||||
callback("xmlns:", 6, callback);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case MyHTML_NAMESPACE_XLINK: {
|
||||
callback("xlink:", 6, callback);
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
size_t length;
|
||||
const char *data = myhtml_attribute_key(attr, &length);
|
||||
if(data) callback(data, length, ptr);
|
||||
callback("=\"", 2, ptr);
|
||||
|
||||
data = myhtml_attribute_value(attr, &length);
|
||||
if(data) myhtml_serialization_append_attr(data, length, callback, ptr);
|
||||
callback("\"", 1, ptr);
|
||||
attr = attr->next;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal function to process a close tag
|
||||
* @param tree
|
||||
* @param node
|
||||
* @param callback
|
||||
* @param ptr
|
||||
*/
|
||||
void myhtml_serialization_node_append_close(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void* ptr)
|
||||
{
|
||||
if(node->tag_id != MyHTML_TAG__TEXT &&
|
||||
node->tag_id != MyHTML_TAG__COMMENT &&
|
||||
node->tag_id != MyHTML_TAG__DOCTYPE)
|
||||
{
|
||||
size_t length;
|
||||
const char *tag = myhtml_tag_name_by_id(tree, node->tag_id, &length);
|
||||
|
||||
callback("</", 2, ptr);
|
||||
callback(tag, length, ptr);
|
||||
callback(">", 1, ptr);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal function to process a text node
|
||||
* @param tree
|
||||
* @param node
|
||||
* @param callback
|
||||
* @param ptr
|
||||
*/
|
||||
void myhtml_serialization_node_append_text_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void* ptr)
|
||||
{
|
||||
if(node->token == NULL || node->token->str.data == NULL) return;
|
||||
|
||||
if(node->parent == NULL) return myhtml_serialization_append(node->token->str.data, node->token->str.length, callback, ptr);
|
||||
|
||||
switch (node->parent->tag_id) {
|
||||
case MyHTML_TAG_STYLE:
|
||||
case MyHTML_TAG_SCRIPT:
|
||||
case MyHTML_TAG_XMP:
|
||||
case MyHTML_TAG_IFRAME:
|
||||
case MyHTML_TAG_NOEMBED:
|
||||
case MyHTML_TAG_NOFRAMES:
|
||||
case MyHTML_TAG_PLAINTEXT:
|
||||
callback(node->token->str.data, node->token->str.length, ptr);
|
||||
break;
|
||||
default:
|
||||
myhtml_serialization_append(node->token->str.data, node->token->str.length, callback, ptr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal method to process a buffer that could contain to-be-quoted output
|
||||
* @param data
|
||||
* @param size
|
||||
* @param callback
|
||||
* @param ptr
|
||||
*/
|
||||
void myhtml_serialization_append(const char *data, size_t size, myhtml_callback_serialize_f callback, void* ptr)
|
||||
{
|
||||
// number of chars not yet displayed
|
||||
size_t notwritten = 0;
|
||||
|
||||
// iterate over the buffer
|
||||
for (size_t i = 0; i < size; ++i) {
|
||||
switch ((unsigned char)data[i]) {
|
||||
case '&':
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback("&", 5, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
case '<':
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback("<", 4, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
case '>':
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback(">", 4, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
case 0xA0:
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback(" ", 6, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
default:
|
||||
++notwritten;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (notwritten) callback(data + size - notwritten, notwritten, ptr);
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal method to process an attribute
|
||||
* @param data
|
||||
* @param size
|
||||
* @param callback
|
||||
* @param ptr
|
||||
*/
|
||||
void myhtml_serialization_append_attr(const char* data, size_t size, myhtml_callback_serialize_f callback, void* ptr)
|
||||
{
|
||||
// number of chars not yet displayed
|
||||
size_t notwritten = 0;
|
||||
|
||||
// iterate over the buffer
|
||||
for (size_t i = 0; i < size; ++i) {
|
||||
switch ((unsigned char)data[i]) {
|
||||
case '&':
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback("&", 5, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
case '"':
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback(""", 6, ptr);
|
||||
notwritten = 0;
|
||||
break;
|
||||
case 0xA0:
|
||||
if (notwritten) callback(data + i - notwritten, notwritten, ptr);
|
||||
callback(" ", 6, NULL);
|
||||
notwritten = 0;
|
||||
break;
|
||||
default:
|
||||
++notwritten;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (notwritten) callback(data + size - notwritten, notwritten, ptr);
|
||||
}
|
||||
|
||||
/**
|
||||
* Because we want to leap out of the algorithm if we're halfway through
|
||||
* serializing, we use a longjmp() call to jump back to the public APP
|
||||
* @var jmp_buf
|
||||
*/
|
||||
static jmp_buf leap;
|
||||
|
||||
/**
|
||||
* Reallocate the buffer
|
||||
* @param str the buffer to reallocate
|
||||
* @param size new size
|
||||
*/
|
||||
void myhtml_serialization_reallocate(myhtml_string_raw_t *str, size_t size)
|
||||
{
|
||||
// construct a buffer
|
||||
char *data = (char*)myhtml_realloc(str->data, size * sizeof(char));
|
||||
|
||||
// was it ok?
|
||||
if (data == NULL) {
|
||||
|
||||
// allocation failed, reset the string object
|
||||
myhtml_free(str->data);
|
||||
memset(str, 0, sizeof(myhtml_string_raw_t));
|
||||
|
||||
// leap back to the source of the serialization algorithm
|
||||
longjmp(leap, 1);
|
||||
}
|
||||
else {
|
||||
|
||||
// reallocation succeeded
|
||||
str->data = data;
|
||||
str->size = size;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Implementation of the myhtml_callback_serialize_f function for internal
|
||||
* use that concatenats everything to a string
|
||||
* @param data
|
||||
* @param size
|
||||
*/
|
||||
void myhtml_serialization_concatenate(const char* data, size_t length, void *ptr)
|
||||
{
|
||||
// get the string back
|
||||
myhtml_string_raw_t* str = (myhtml_string_raw_t *)ptr;
|
||||
|
||||
// do we still have enough size in the output buffer?
|
||||
if ((length + str->length) >= str->size) myhtml_serialization_reallocate(str, length + str->length + 4096);
|
||||
|
||||
// copy data
|
||||
strncpy(&str->data[ str->length ], data, length);
|
||||
|
||||
// update counters
|
||||
str->length += length;
|
||||
str->data[ str->length ] = '\0';
|
||||
}
|
||||
|
||||
/**
|
||||
* Serialize tree to an output string
|
||||
* @param tree
|
||||
* @param scope_node
|
||||
* @param str
|
||||
* @return bool
|
||||
*/
|
||||
bool myhtml_serialization_tree_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str) {
|
||||
|
||||
// we need an output variable
|
||||
if(str == NULL) return false;
|
||||
|
||||
// allocate space that is most likely enough for the output
|
||||
if(str->data == NULL) {
|
||||
str->size = 4098 * 5;
|
||||
str->length = 0;
|
||||
@ -44,63 +402,32 @@ bool myhtml_serialization(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, m
|
||||
}
|
||||
}
|
||||
|
||||
myhtml_tree_node_t* node = scope_node;
|
||||
|
||||
if(node == tree->document) {
|
||||
if(tree->document)
|
||||
node = tree->document->child;
|
||||
else {
|
||||
myhtml_free(str->data);
|
||||
memset(str, 0, sizeof(myhtml_string_raw_t));
|
||||
return false;
|
||||
}
|
||||
// if allocation halfway the algorithm fails, we want to leap back
|
||||
if (setjmp(leap) == 0)
|
||||
{
|
||||
// serialize the entire tree
|
||||
return myhtml_serialization_tree_callback(tree, scope_node, myhtml_serialization_concatenate, str);
|
||||
}
|
||||
|
||||
while(node) {
|
||||
if(myhtml_serialization_node(tree, node, str) == false) {
|
||||
myhtml_free(str->data);
|
||||
memset(str, 0, sizeof(myhtml_string_raw_t));
|
||||
return false;
|
||||
}
|
||||
|
||||
if(node->child)
|
||||
node = node->child;
|
||||
else {
|
||||
while(node != scope_node && node->next == NULL) {
|
||||
myhtml_serialization_node_append_close(tree, node, str);
|
||||
node = node->parent;
|
||||
}
|
||||
|
||||
if(node == scope_node) {
|
||||
if(node != tree->document) {
|
||||
if(myhtml_serialization_node_append_close(tree, node, str) == false) {
|
||||
myhtml_free(str->data);
|
||||
memset(str, 0, sizeof(myhtml_string_raw_t));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
if(myhtml_serialization_node_append_close(tree, node, str) == false) {
|
||||
myhtml_free(str->data);
|
||||
memset(str, 0, sizeof(myhtml_string_raw_t));
|
||||
return false;
|
||||
}
|
||||
|
||||
node = node->next;
|
||||
}
|
||||
else
|
||||
{
|
||||
// the serialization algorithm failed because of a memory-allocation failure
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str)
|
||||
{
|
||||
if(str == NULL)
|
||||
return false;
|
||||
/**
|
||||
* Serialize node to an output string
|
||||
* @param tree
|
||||
* @param node
|
||||
* @param str
|
||||
* @return bool
|
||||
*/
|
||||
bool myhtml_serialization_node_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str) {
|
||||
|
||||
// we need an output variable
|
||||
if(str == NULL) return false;
|
||||
|
||||
// allocate space that is most likely enough for the output
|
||||
if(str->data == NULL) {
|
||||
str->size = 2048;
|
||||
str->length = 0;
|
||||
@ -112,311 +439,16 @@ bool myhtml_serialization_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, my
|
||||
}
|
||||
}
|
||||
|
||||
switch (node->tag_id) {
|
||||
case MyHTML_TAG__TEXT: {
|
||||
if(myhtml_serialization_node_append_text_node(tree, node, str) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
case MyHTML_TAG__COMMENT: {
|
||||
if(myhtml_serialization_append_raw(str, "<!--", 4) == false)
|
||||
return false;
|
||||
|
||||
if(node->token && node->token->str.data) {
|
||||
if(myhtml_serialization_append_raw(str, node->token->str.data, node->token->str.length) == false)
|
||||
return false;
|
||||
}
|
||||
|
||||
if(myhtml_serialization_append_raw(str, "-->", 3) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
case MyHTML_TAG__DOCTYPE: {
|
||||
if(myhtml_serialization_append_raw(str, "<!DOCTYPE", 9) == false)
|
||||
return false;
|
||||
|
||||
if(node->token) {
|
||||
myhtml_tree_attr_t* attr = node->token->attr_first;
|
||||
|
||||
if(attr->key.data && attr->key.length) {
|
||||
if(myhtml_serialization_append_raw(str, " ", 1) == false)
|
||||
return false;
|
||||
|
||||
if(myhtml_serialization_append_raw(str, attr->key.data, attr->key.length) == false)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if(myhtml_serialization_append_raw(str, ">", 1) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
size_t length;
|
||||
const char *tag = myhtml_tag_name_by_id(tree, node->tag_id, &length);
|
||||
|
||||
if(myhtml_serialization_append_raw(str, "<", 1) == false)
|
||||
return false;
|
||||
|
||||
if(myhtml_serialization_append_raw(str, tag, length) == false)
|
||||
return false;
|
||||
|
||||
if(node->token) {
|
||||
if(myhtml_serialization_attributes(tree, node->token->attr_first, str) == false)
|
||||
return false;
|
||||
}
|
||||
|
||||
if(myhtml_serialization_append_raw(str, ">", 1) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_attributes(myhtml_tree_t* tree, myhtml_tree_attr_t* attr, myhtml_string_raw_t* str)
|
||||
{
|
||||
while(attr) {
|
||||
if(myhtml_serialization_append_raw(str, " ", 1) == false)
|
||||
return false;
|
||||
|
||||
switch (attr->ns) {
|
||||
case MyHTML_NAMESPACE_XML: {
|
||||
if(myhtml_serialization_append_raw(str, "xml:", 4) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
case MyHTML_NAMESPACE_XMLNS: {
|
||||
/*
|
||||
If the attribute is in the XMLNS namespace and the attribute's local name is not xmlns
|
||||
The attribute's serialized name is the string "xmlns:" followed by the attribute's local name.
|
||||
*/
|
||||
if(attr->key.data && attr->key.length == 5 && myhtml_strcmp(attr->key.data, "xmlns")) {
|
||||
if(myhtml_serialization_append_raw(str, "xmlns:", 6) == false)
|
||||
return false;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case MyHTML_NAMESPACE_XLINK: {
|
||||
if(myhtml_serialization_append_raw(str, "xlink:", 6) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
size_t length;
|
||||
const char *data = myhtml_attribute_key(attr, &length);
|
||||
if(data) {
|
||||
if(myhtml_serialization_append_raw(str, data, length) == false)
|
||||
return false;
|
||||
}
|
||||
|
||||
if(myhtml_serialization_append_raw(str, "=\"", 2) == false)
|
||||
return false;
|
||||
|
||||
data = myhtml_attribute_value(attr, &length);
|
||||
if(data) {
|
||||
if(myhtml_serialization_append_attr(str, data, length) == false)
|
||||
return false;
|
||||
}
|
||||
|
||||
if(myhtml_serialization_append_raw(str, "\"", 1) == false)
|
||||
return false;
|
||||
|
||||
attr = attr->next;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_node_append_close(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str)
|
||||
{
|
||||
if(node->tag_id != MyHTML_TAG__TEXT &&
|
||||
node->tag_id != MyHTML_TAG__COMMENT &&
|
||||
node->tag_id != MyHTML_TAG__DOCTYPE)
|
||||
// if allocation halfway the algorithm fails, we want to leap back
|
||||
if (setjmp(leap) == 0)
|
||||
{
|
||||
size_t length;
|
||||
const char *tag = myhtml_tag_name_by_id(tree, node->tag_id, &length);
|
||||
|
||||
if(myhtml_serialization_append_raw(str, "</", 2) == false)
|
||||
return false;
|
||||
|
||||
if(myhtml_serialization_append_raw(str, tag, length) == false)
|
||||
return false;
|
||||
|
||||
if(myhtml_serialization_append_raw(str, ">", 1) == false)
|
||||
return false;
|
||||
// pass on
|
||||
return myhtml_serialization_node_callback(tree, node, myhtml_serialization_concatenate, str);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_node_append_text_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str)
|
||||
{
|
||||
if(node->token == NULL || node->token->str.data == NULL)
|
||||
return str;
|
||||
|
||||
if(node->parent == NULL)
|
||||
return myhtml_serialization_append(str, node->token->str.data, node->token->str.length);
|
||||
|
||||
switch (node->parent->tag_id) {
|
||||
case MyHTML_TAG_STYLE:
|
||||
case MyHTML_TAG_SCRIPT:
|
||||
case MyHTML_TAG_XMP:
|
||||
case MyHTML_TAG_IFRAME:
|
||||
case MyHTML_TAG_NOEMBED:
|
||||
case MyHTML_TAG_NOFRAMES:
|
||||
case MyHTML_TAG_PLAINTEXT:
|
||||
if(myhtml_serialization_append_raw(str, node->token->str.data, node->token->str.length) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
if(myhtml_serialization_append(str, node->token->str.data, node->token->str.length) == false)
|
||||
return false;
|
||||
|
||||
break;
|
||||
else
|
||||
{
|
||||
// the serialization algorithm failed because of a memory-allocation failure
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_append_raw(myhtml_string_raw_t* str, const char* src_data, size_t length)
|
||||
{
|
||||
myhtml_serialization_realloc_if_need((length + 1))
|
||||
strncpy(&str->data[ str->length ], src_data, length);
|
||||
|
||||
str->length += length;
|
||||
str->data[ str->length ] = '\0';
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_append(myhtml_string_raw_t* str, const char* src_data, size_t length)
|
||||
{
|
||||
myhtml_serialization_realloc_if_need(length)
|
||||
|
||||
for(size_t i = 0; i < length; i++) {
|
||||
if(src_data[i] == '&') {
|
||||
myhtml_serialization_realloc_if_need(6)
|
||||
|
||||
strncpy(&str->data[str->length], "&", 5);
|
||||
str->length += 5;
|
||||
}
|
||||
else if(src_data[i] == '<') {
|
||||
myhtml_serialization_realloc_if_need(5)
|
||||
|
||||
strncpy(&str->data[str->length], "<", 4);
|
||||
str->length += 4;
|
||||
}
|
||||
else if(src_data[i] == '>') {
|
||||
myhtml_serialization_realloc_if_need(5)
|
||||
|
||||
strncpy(&str->data[str->length], ">", 4);
|
||||
str->length += 4;
|
||||
}
|
||||
else if((unsigned char)src_data[i] == 0xC2) {
|
||||
i++;
|
||||
|
||||
if(i >= length) {
|
||||
str->data[str->length] = (unsigned char)0xC2;
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
if((unsigned char)src_data[i] == 0xA0) {
|
||||
myhtml_serialization_realloc_if_need(7)
|
||||
|
||||
strncpy(&str->data[str->length], " ", 6);
|
||||
str->length += 6;
|
||||
}
|
||||
else {
|
||||
str->data[str->length] = src_data[i];
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
}
|
||||
}
|
||||
else {
|
||||
str->data[str->length] = src_data[i];
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
}
|
||||
}
|
||||
|
||||
str->data[ str->length ] = '\0';
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool myhtml_serialization_append_attr(myhtml_string_raw_t* str, const char* src_data, size_t length)
|
||||
{
|
||||
myhtml_serialization_realloc_if_need(length)
|
||||
|
||||
for(size_t i = 0; i < length; i++) {
|
||||
if(src_data[i] == '&') {
|
||||
myhtml_serialization_realloc_if_need(6)
|
||||
|
||||
strncpy(&str->data[str->length], "&", 5);
|
||||
str->length += 5;
|
||||
}
|
||||
else if(src_data[i] == '"') {
|
||||
myhtml_serialization_realloc_if_need(7)
|
||||
|
||||
strncpy(&str->data[str->length], """, 6);
|
||||
str->length += 6;
|
||||
}
|
||||
else if((unsigned char)src_data[i] == 0xC2) {
|
||||
i++;
|
||||
|
||||
if(i >= length) {
|
||||
str->data[str->length] = (unsigned char)0xC2;
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
if((unsigned char)src_data[i] == 0xA0) {
|
||||
myhtml_serialization_realloc_if_need(7)
|
||||
|
||||
strncpy(&str->data[str->length], " ", 6);
|
||||
str->length += 6;
|
||||
}
|
||||
else {
|
||||
str->data[str->length] = src_data[i];
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
}
|
||||
}
|
||||
else {
|
||||
str->data[str->length] = src_data[i];
|
||||
|
||||
str->length++;
|
||||
myhtml_serialization_realloc_if_need(1)
|
||||
}
|
||||
}
|
||||
|
||||
str->data[ str->length ] = '\0';
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
@ -26,23 +26,21 @@
|
||||
#include "myhtml/mystring.h"
|
||||
#include "myhtml/tree.h"
|
||||
|
||||
#define myhtml_serialization_realloc_if_need(len) \
|
||||
if((len + str->length) >= str->size) { \
|
||||
size_t size = (len + str->length) + 4096; \
|
||||
char *data = (char*)myhtml_realloc(str->data, size * sizeof(char)); \
|
||||
\
|
||||
if(data) { \
|
||||
str->data = data; \
|
||||
str->size = size; \
|
||||
} \
|
||||
else \
|
||||
return false; \
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
// callback to be implemented by the user
|
||||
typedef void (*myhtml_callback_serialize_f)(const char* buffer, size_t size, void* ctx);
|
||||
|
||||
// the serialization functions
|
||||
bool myhtml_serialization_tree_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node_buffer(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_tree_callback(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_callback_serialize_f callback, void* ptr);
|
||||
bool myhtml_serialization_node_callback(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_callback_serialize_f callback, void* ptr);
|
||||
|
||||
// in versuon 1.0.3 this is in public api.
|
||||
// Need to set deprecated?
|
||||
bool myhtml_serialization(myhtml_tree_t* tree, myhtml_tree_node_t* scope_node, myhtml_string_raw_t* str);
|
||||
bool myhtml_serialization_node(myhtml_tree_t* tree, myhtml_tree_node_t* node, myhtml_string_raw_t* str);
|
||||
|
||||
|
@ -472,9 +472,18 @@ char * mchar_async_crop_first_chars_without_cache(char *data, size_t crop_len)
|
||||
return data;
|
||||
}
|
||||
|
||||
size_t mchar_async_get_size_by_data(const char *data)
|
||||
{
|
||||
if(data == NULL)
|
||||
return 0;
|
||||
|
||||
return *((size_t*)(data - sizeof(size_t)));
|
||||
}
|
||||
|
||||
void mchar_async_free(mchar_async_t *mchar_async, size_t node_idx, char *entry)
|
||||
{
|
||||
mchar_async_cache_add(&mchar_async->nodes[node_idx].cache, entry, *(size_t*)(entry - sizeof(size_t)));
|
||||
if(entry)
|
||||
mchar_async_cache_add(&mchar_async->nodes[node_idx].cache, entry, *(size_t*)(entry - sizeof(size_t)));
|
||||
}
|
||||
|
||||
void mchar_async_cache_init(mchar_async_cache_t *cache)
|
||||
|
@ -113,6 +113,8 @@ mchar_async_chunk_t * mchar_async_chunk_malloc(mchar_async_t *mchar_async, mchar
|
||||
char * mchar_async_crop_first_chars(mchar_async_t *mchar_async, size_t node_idx, char *data, size_t crop_len);
|
||||
char * mchar_async_crop_first_chars_without_cache(char *data, size_t crop_len);
|
||||
|
||||
size_t mchar_async_get_size_by_data(const char *data);
|
||||
|
||||
// cache
|
||||
void mchar_async_cache_init(mchar_async_cache_t *cache);
|
||||
mchar_async_cache_t * mchar_async_cache_destroy(mchar_async_cache_t *cache, bool self_destroy);
|
||||
|
Loading…
Reference in New Issue
Block a user