summaryrefslogtreecommitdiff
path: root/src/select/helpers.h
diff options
context:
space:
mode:
authorMichael Drake <Michael Drake tlsa@netsurf-browser.org>2020-12-04 13:39:28 +0000
committerMichael Drake <Michael Drake tlsa@netsurf-browser.org>2020-12-04 13:41:33 +0000
commite8238ac2dab2a9c8cd31e7f66504218cf90c4d23 (patch)
tree4e5c33647da6f2334eece2b2cf6858d4be100b1e /src/select/helpers.h
parent03ab48a3171d358d50d0d97331a64a79c084521b (diff)
downloadlibcss-e8238ac2dab2a9c8cd31e7f66504218cf90c4d23.tar.gz
libcss-e8238ac2dab2a9c8cd31e7f66504218cf90c4d23.tar.bz2
select: Split out bytecode to unit conversion helper.
Diffstat (limited to 'src/select/helpers.h')
-rw-r--r--src/select/helpers.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/select/helpers.h b/src/select/helpers.h
new file mode 100644
index 0000000..ba2e3be
--- /dev/null
+++ b/src/select/helpers.h
@@ -0,0 +1,51 @@
+/*
+ * This file is part of LibCSS
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ * Copyright 2009 John-Mark Bell <jmb@netsurf-browser.org>
+ */
+
+#ifndef css_select_helpers_h_
+#define css_select_helpers_h_
+
+/**
+ * Convert unit bytecode to a css_unit.
+ */
+static inline css_unit css__to_css_unit(uint32_t u)
+{
+ switch (u) {
+ case UNIT_PX: return CSS_UNIT_PX;
+ case UNIT_EX: return CSS_UNIT_EX;
+ case UNIT_EM: return CSS_UNIT_EM;
+ case UNIT_IN: return CSS_UNIT_IN;
+ case UNIT_CM: return CSS_UNIT_CM;
+ case UNIT_MM: return CSS_UNIT_MM;
+ case UNIT_PT: return CSS_UNIT_PT;
+ case UNIT_PC: return CSS_UNIT_PC;
+ case UNIT_CAP: return CSS_UNIT_CAP;
+ case UNIT_CH: return CSS_UNIT_CH;
+ case UNIT_IC: return CSS_UNIT_IC;
+ case UNIT_REM: return CSS_UNIT_REM;
+ case UNIT_LH: return CSS_UNIT_LH;
+ case UNIT_RLH: return CSS_UNIT_RLH;
+ case UNIT_VH: return CSS_UNIT_VH;
+ case UNIT_VW: return CSS_UNIT_VW;
+ case UNIT_VI: return CSS_UNIT_VI;
+ case UNIT_VB: return CSS_UNIT_VB;
+ case UNIT_VMIN: return CSS_UNIT_VMIN;
+ case UNIT_VMAX: return CSS_UNIT_VMAX;
+ case UNIT_Q: return CSS_UNIT_Q;
+ case UNIT_PCT: return CSS_UNIT_PCT;
+ case UNIT_DEG: return CSS_UNIT_DEG;
+ case UNIT_GRAD: return CSS_UNIT_GRAD;
+ case UNIT_RAD: return CSS_UNIT_RAD;
+ case UNIT_MS: return CSS_UNIT_MS;
+ case UNIT_S: return CSS_UNIT_S;
+ case UNIT_HZ: return CSS_UNIT_HZ;
+ case UNIT_KHZ: return CSS_UNIT_KHZ;
+ }
+
+ return 0;
+}
+
+#endif