summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2008-09-25 00:19:16 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2008-09-25 00:19:16 +0000
commit4793b871b96c1b64383695be117467b59bfbfaa1 (patch)
treedfad2fa0ceb4fc6cf0aef9bc7f6b183f1c7ece17 /src
parent3986ea98445d605596d94318aa0d91fabc883cc4 (diff)
downloadlibcss-4793b871b96c1b64383695be117467b59bfbfaa1.tar.gz
libcss-4793b871b96c1b64383695be117467b59bfbfaa1.tar.bz2
Public stylesheet API & stubbed out implementations.
Make public headers use libcss_ as their guard macro prefix. svn path=/trunk/libcss/; revision=5433
Diffstat (limited to 'src')
-rw-r--r--src/stylesheet.c135
-rw-r--r--src/stylesheet.h5
2 files changed, 140 insertions, 0 deletions
diff --git a/src/stylesheet.c b/src/stylesheet.c
index d848e89..ef981d5 100644
--- a/src/stylesheet.c
+++ b/src/stylesheet.c
@@ -11,6 +11,141 @@
#include "utils/utils.h"
/**
+ * Create a stylesheet
+ *
+ * \param url URL of stylesheet
+ * \param title Title of stylesheet
+ * \param origin Origin of stylesheet
+ * \param media Media stylesheet applies to
+ * \param import_callback Handler for imported stylesheets
+ * \param import_pw Client private data for import_callback
+ * \param alloc Memory (de)allocation function
+ * \param alloc_pw Client private data for alloc
+ * \return Pointer to stylesheet on success, NULL otherwise
+ */
+css_stylesheet *css_stylesheet_create(const char *url, const char *title,
+ css_origin origin, uint32_t media,
+ css_import_handler import_callback, void *import_pw,
+ css_alloc alloc, void *alloc_pw)
+{
+ UNUSED(url);
+ UNUSED(title);
+ UNUSED(origin);
+ UNUSED(media);
+ UNUSED(import_callback);
+ UNUSED(import_pw);
+ UNUSED(alloc);
+ UNUSED(alloc_pw);
+
+ return NULL;
+}
+
+/**
+ * Destroy a stylesheet
+ *
+ * \param sheet The stylesheet to destroy
+ */
+void css_stylesheet_destroy(css_stylesheet *sheet)
+{
+ UNUSED(sheet);
+}
+
+/**
+ * Append source data to a stylesheet
+ *
+ * \param sheet The stylesheet to append data to
+ * \param data Pointer to data to append
+ * \param len Length, in bytes, of data to append
+ * \return CSS_OK on success, appropriate error otherwise
+ */
+css_error css_stylesheet_append_data(css_stylesheet *sheet,
+ const uint8_t *data, size_t len)
+{
+ UNUSED(sheet);
+ UNUSED(data);
+ UNUSED(len);
+
+ return CSS_OK;
+}
+
+/**
+ * Flag that the last of a stylesheet's data has been seen
+ *
+ * \param sheet The stylesheet in question
+ * \return CSS_OK on success, appropriate error otherwise
+ */
+css_error css_stylesheet_data_done(css_stylesheet *sheet)
+{
+ UNUSED(sheet);
+
+ return CSS_OK;
+}
+
+/**
+ * Retrieve the URL associated with a stylesheet
+ *
+ * \param sheet The stylesheet to retrieve the URL from
+ * \param url Pointer to location to receive pointer to URL
+ * \return CSS_OK on success, appropriate error otherwise
+ */
+css_error css_stylesheet_get_url(css_stylesheet *sheet, const char **url)
+{
+ UNUSED(sheet);
+ UNUSED(url);
+
+ return CSS_OK;
+}
+
+/**
+ * Retrieve the title associated with a stylesheet
+ *
+ * \param sheet The stylesheet to retrieve the title from
+ * \param title Pointer to location to receive pointer to title
+ * \return CSS_Ok on success, appropriate error otherwise
+ */
+css_error css_stylesheet_get_title(css_stylesheet *sheet, const char **title)
+{
+ UNUSED(sheet);
+ UNUSED(title);
+
+ return CSS_OK;
+}
+
+/**
+ * Retrieve the origin of a stylesheet
+ *
+ * \param sheet The stylesheet to retrieve the origin of
+ * \param origin Pointer to location to receive origin
+ * \return CSS_OK on success, appropriate error otherwise
+ */
+css_error css_stylesheet_get_origin(css_stylesheet *sheet, css_origin *origin)
+{
+ UNUSED(sheet);
+ UNUSED(origin);
+
+ return CSS_OK;
+}
+
+/**
+ * Retrieve the media types associated with a stylesheet
+ *
+ * \param sheet The stylesheet to retrieve the media types for
+ * \param media Pointer to location to receive media types
+ * \return CSS_OK on success, appropriate error otherwise
+ */
+css_error css_stylesheet_get_media(css_stylesheet *sheet, uint32_t *media)
+{
+ UNUSED(sheet);
+ UNUSED(media);
+
+ return CSS_OK;
+}
+
+/******************************************************************************
+ * Private API below here *
+ ******************************************************************************/
+
+/**
* Create a selector
*
* \param sheet The stylesheet context
diff --git a/src/stylesheet.h b/src/stylesheet.h
index 0b87b9f..5968083 100644
--- a/src/stylesheet.h
+++ b/src/stylesheet.h
@@ -12,6 +12,7 @@
#include <libcss/errors.h>
#include <libcss/functypes.h>
+#include <libcss/stylesheet.h>
#include <libcss/types.h>
typedef struct css_rule css_rule;
@@ -122,6 +123,7 @@ struct css_stylesheet {
char *url; /**< URL of this sheet */
char *title; /**< Title of this sheet */
+ css_origin origin; /**< Origin of stylesheet */
uint32_t media; /**< Bitfield of media types */
void *ownerNode; /**< Owning node in document */
@@ -133,6 +135,9 @@ struct css_stylesheet {
css_stylesheet *next; /**< Next in sibling list */
css_stylesheet *prev; /**< Previous in sibling list */
+ css_import_handler import; /**< Import callback */
+ void *import_pw; /**< Import handler data */
+
css_alloc alloc; /**< Allocation function */
void *pw; /**< Private word */
};