[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Style properties
Let's start over. (This one is not easy in emails.) First, lets rename 'style attributes' to 'style properties', since CGM already has the concept of 'APS attributes' (ex: screentip). I think we all understand/agree that 'visibility' and 'interactivity' are 'APS attributes' not 'style properties'. Right? Only the DOM defines 'style properties', they are not part of the CGM file format. The 'style properties' we have defined so far are: background-color, character-height, fill-color, intensity, stroke-color, stroke-weight, text-color, text-font, raster-intensity. The problem we are facing is that both 'style properties' and some APS attribute ('visibility' & 'interactivity') require an inheritance model. We agreed that: BEGAPS 'one' ATTR 'visibility' 'on' BEGAPS 'two' ... ENDAPS; ENDAPS; - 'two' would be visible, and - example; setting one.setStyleAttr("intensity","50%") would make 'two' have an intensity of 50%. In my opinion, the inheritance model for both the APS attributes and style properties are similar with one exception: style properties do not have an 'Initial Value'. Note: Lofton may or may not agree with me, I'm not sure on what we agree on yet. The current wording of section 5.4 came from the CSS specification which I then tried to adapt to WebCGM (and apparently did a poor job, sorry) is this (5.4.1.1 Specified values): User agents must first assign a specified value to each style attributes based on the following mechanisms (in order of precedence): 1. If the style attribute is assigned a value, use it. 2. Otherwise, if the style attribute is inherited and the Application Structure is not the root of the document tree, use the computed value of the parent Application Structure. 3. Otherwise use the style attributes's initial value. The initial value of each property is indicated in the style attribute's definition. Here's an attempt at rewording the above for 'visibility' and 'interactivity' only. When reading a WebCGM file, (or following a change in APS attribute values from a DOM method to 'visibility' and 'interactivity',) User Agents must assign a specified value for those APS attributes based on the following mechanisms (in order of precedence): 1. If the APS attribute is assigned a value, use it. 2. Otherwise, if the APS attribute is inherited and the Application Structure is not the root of the document tree, use the computed value of the parent Application Structure. 3. Otherwise use the APS attribute's initial value. The initial value of each APS attribute is indicated in APS attribute's definition. Now if I attempt to define the inheritance model for the 'style properties' I get something like this: Following a change in APS style property values from a DOM method, User Agents must assign a specified value for the given style property on the given node and its children based on the following mechanisms (in order of precedence): 1. If the APS is assigned a style property value, use it. 2. Otherwise, use the computed value of the parent Application Structure. In my opinion, what is still undefined is the computed value of a style property (ex: stroke-weight). Thoughts on this? Can both model be combined into one? -- Benoit mailto:benoit@itedo.com
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]