summaryrefslogtreecommitdiff
path: root/tex/context/base/node-tra.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/node-tra.lua')
-rw-r--r--tex/context/base/node-tra.lua33
1 files changed, 15 insertions, 18 deletions
diff --git a/tex/context/base/node-tra.lua b/tex/context/base/node-tra.lua
index 1d7a19896..3538b5e34 100644
--- a/tex/context/base/node-tra.lua
+++ b/tex/context/base/node-tra.lua
@@ -712,24 +712,21 @@ number.nopts = nopts
local colors = { }
tracers.colors = colors
-local get_attribute = node.has_attribute
-local set_attribute = node.set_attribute
-local unset_attribute = node.unset_attribute
+local unsetvalue = attributes.unsetvalue
local a_color = attributes.private('color')
local a_colormodel = attributes.private('colormodel')
-local a_state = attributes.private('state')
local m_color = attributes.list[a_color] or { }
function colors.set(n,c,s)
local mc = m_color[c]
if not mc then
- unset_attribute(n,a_color)
+ n[a_color] = unsetvalue
else
- if not get_attribute(n,a_colormodel) then
- set_attribute(n,a_colormodel,s or 1)
+ if not n[a_colormodel] then
+ n[a_colormodel] = s or 1
end
- set_attribute(n,a_color,mc)
+ n[a_color] = mc
end
return n
end
@@ -739,12 +736,12 @@ function colors.setlist(n,c,s)
while n do
local mc = m_color[c]
if not mc then
- unset_attribute(n,a_color)
+ n[a_color] = unsetvalue
else
- if not get_attribute(n,a_colormodel) then
- set_attribute(n,a_colormodel,s or 1)
+ if not n[a_colormodel] then
+ n[a_colormodel] = s or 1
end
- set_attribute(n,a_color,mc)
+ n[a_color] = mc
end
n = n.next
end
@@ -752,7 +749,7 @@ function colors.setlist(n,c,s)
end
function colors.reset(n)
- unset_attribute(n,a_color)
+ n[a_color] = unsetvalue
return n
end
@@ -767,9 +764,9 @@ local m_transparency = attributes.list[a_transparency] or { }
function transparencies.set(n,t)
local mt = m_transparency[t]
if not mt then
- unset_attribute(n,a_transparency)
+ n[a_transparency] = unsetvalue
else
- set_attribute(n,a_transparency,mt)
+ n[a_transparency] = mt
end
return n
end
@@ -779,9 +776,9 @@ function transparencies.setlist(n,c,s)
while n do
local mt = m_transparency[c]
if not mt then
- unset_attribute(n,a_transparency)
+ n[a_transparency] = unsetvalue
else
- set_attribute(n,a_transparency,mt)
+ n[a_transparency] = mt
end
n = n.next
end
@@ -789,7 +786,7 @@ function transparencies.setlist(n,c,s)
end
function transparencies.reset(n)
- unset_attribute(n,a_transparency)
+ n[a_transparency] = unsetvalue
return n
end