summaryrefslogtreecommitdiff
path: root/src/select/properties/column_rule_style.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2012-01-28 20:25:01 +0000
committerMichael Drake <tlsa@netsurf-browser.org>2012-01-28 20:25:01 +0000
commit32ed7d0984f0dd872b4aaac0ac12c18471f291a0 (patch)
tree39181671076458c8f379507e0585d376ebc7363f /src/select/properties/column_rule_style.c
parent6800a4d203fa62366720cc18993a74af92c0359c (diff)
downloadlibcss-32ed7d0984f0dd872b4aaac0ac12c18471f291a0.tar.gz
libcss-32ed7d0984f0dd872b4aaac0ac12c18471f291a0.tar.bz2
Add support for parsing CSS3 Multi-column layout properties:
+ break-after + break-before + break-inside + column-count + column-fill + column-gap + column-rule-color + column-rule-style + column_rule-width + column_span + column_width TODO: Shorthand properties (columns, column-rule) TODO: Selection svn path=/trunk/libcss/; revision=13412
Diffstat (limited to 'src/select/properties/column_rule_style.c')
-rw-r--r--src/select/properties/column_rule_style.c73
1 files changed, 73 insertions, 0 deletions
diff --git a/src/select/properties/column_rule_style.c b/src/select/properties/column_rule_style.c
new file mode 100644
index 0000000..ba558a2
--- /dev/null
+++ b/src/select/properties/column_rule_style.c
@@ -0,0 +1,73 @@
+/*
+ * This file is part of LibCSS
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ * Copyright 2012 Michael Drake <tlsa@netsurf-browser.org>
+ */
+
+#include "bytecode/bytecode.h"
+#include "bytecode/opcodes.h"
+#include "select/propset.h"
+#include "select/propget.h"
+#include "utils/utils.h"
+
+#include "select/properties/properties.h"
+#include "select/properties/helpers.h"
+
+css_error css__cascade_column_rule_style(uint32_t opv, css_style *style,
+ css_select_state *state)
+{
+ UNUSED(style);
+
+ if (isInherit(opv) == false) {
+ switch (getValue(opv)) {
+ case COLUMN_RULE_STYLE_NONE:
+ case COLUMN_RULE_STYLE_HIDDEN:
+ case COLUMN_RULE_STYLE_DOTTED:
+ case COLUMN_RULE_STYLE_DASHED:
+ case COLUMN_RULE_STYLE_SOLID:
+ case COLUMN_RULE_STYLE_DOUBLE:
+ case COLUMN_RULE_STYLE_GROOVE:
+ case COLUMN_RULE_STYLE_RIDGE:
+ case COLUMN_RULE_STYLE_INSET:
+ case COLUMN_RULE_STYLE_OUTSET:
+ /** \todo convert to public values */
+ break;
+ }
+ }
+
+ if (css__outranks_existing(getOpcode(opv), isImportant(opv), state,
+ isInherit(opv))) {
+ /** \todo set computed elevation */
+ }
+
+ return CSS_OK;
+}
+
+css_error css__set_column_rule_style_from_hint(const css_hint *hint,
+ css_computed_style *style)
+{
+ UNUSED(hint);
+ UNUSED(style);
+
+ return CSS_OK;
+}
+
+css_error css__initial_column_rule_style(css_select_state *state)
+{
+ UNUSED(state);
+
+ return CSS_OK;
+}
+
+css_error css__compose_column_rule_style(const css_computed_style *parent,
+ const css_computed_style *child,
+ css_computed_style *result)
+{
+ UNUSED(parent);
+ UNUSED(child);
+ UNUSED(result);
+
+ return CSS_OK;
+}
+