aboutsummaryrefslogtreecommitdiff
path: root/src/css.cc
diff options
context:
space:
mode:
authorJohannes Hofmann <Johannes.Hofmann@gmx.de>2009-07-11 16:40:35 +0200
committerJohannes Hofmann <Johannes.Hofmann@gmx.de>2009-07-11 16:40:35 +0200
commitb2e341a63d6b2d5e458aa3511b66ca43e040da8f (patch)
tree31567056180eb47ad60cae4c466443acfadffa42 /src/css.cc
parent3c9d42d1fbfe6dc6c74360faec48c09e8449506f (diff)
make CssSimpleSelector members private
Diffstat (limited to 'src/css.cc')
-rw-r--r--src/css.cc35
1 files changed, 27 insertions, 8 deletions
diff --git a/src/css.cc b/src/css.cc
index 04bd8414..b5ec54a4 100644
--- a/src/css.cc
+++ b/src/css.cc
@@ -200,6 +200,25 @@ CssSimpleSelector::~CssSimpleSelector () {
dFree (pseudo);
}
+void CssSimpleSelector::setSelect (SelectType t, const char *v) {
+ switch (t) {
+ case SELECT_CLASS:
+ if (klass == NULL)
+ klass = dStrdup (v);
+ break;
+ case SELECT_PSEUDO_CLASS:
+ if (pseudo == NULL)
+ pseudo = dStrdup (v);
+ break;
+ case SELECT_ID:
+ if (id == NULL)
+ id = dStrdup (v);
+ break;
+ default:
+ break;
+ }
+}
+
/**
* \brief Return whether simple selector matches at a given node of
* the document tree.
@@ -327,8 +346,8 @@ void CssStyleSheet::addRule (CssRule *rule) {
RuleList *ruleList = NULL;
lout::object::ConstString *string;
- if (top->id) {
- string = new lout::object::ConstString (top->id);
+ if (top->getId ()) {
+ string = new lout::object::ConstString (top->getId ());
ruleList = idTable->get (string);
if (ruleList == NULL) {
ruleList = new RuleList ();
@@ -336,8 +355,8 @@ void CssStyleSheet::addRule (CssRule *rule) {
} else {
delete string;
}
- } else if (top->klass) {
- string = new lout::object::ConstString (top->klass);
+ } else if (top->getClass ()) {
+ string = new lout::object::ConstString (top->getClass ());
ruleList = classTable->get (string);
if (ruleList == NULL) {
ruleList = new RuleList;
@@ -345,16 +364,16 @@ void CssStyleSheet::addRule (CssRule *rule) {
} else {
delete string;
}
- } else if (top->element >= 0 && top->element < ntags) {
- ruleList = elementTable[top->element];
- } else if (top->element == CssSimpleSelector::ELEMENT_ANY) {
+ } else if (top->getElement () >= 0 && top->getElement () < ntags) {
+ ruleList = elementTable[top->getElement ()];
+ } else if (top->getElement () == CssSimpleSelector::ELEMENT_ANY) {
ruleList = anyTable;
}
if (ruleList) {
ruleList->insert (rule);
} else {
- assert (top->element == CssSimpleSelector::ELEMENT_NONE);
+ assert (top->getElement () == CssSimpleSelector::ELEMENT_NONE);
delete rule;
}
}