/[suikacvs]/messaging/manakai/lib/Message/DOM/DOMViews.dis
Suika

Contents of /messaging/manakai/lib/Message/DOM/DOMViews.dis

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download)
Wed Jan 5 12:19:39 2005 UTC (19 years, 10 months ago) by wakaba
Branch: MAIN
CVS Tags: manakai-release-0-3-2, manakai-release-0-3-1
Changes since 1.2: +31 -1 lines
Assertion in dis perl code implemented; DISPerl:raiseException implemented; Scripts updated for new dis format; NodeList perl array representation implemented

1 wakaba 1.1 Module:
2 wakaba 1.2 @QName:
3     MDOM:DOMViews
4 wakaba 1.1 @Namespace:
5     http://suika.fam.cx/~wakaba/archive/2004/dom/views#
6     @BindingName:
7     @@@: views
8     @@Type:
9     lang:IDL-DOM
10     @@prefix: dom.w3c.org
11 wakaba 1.2
12 wakaba 1.1 @Description:
13     @@lang:en
14     @@@:
15     A document may have one or more <DFN:view>s associated
16     with it. That is, a view is a presentation of a source document.
17     \
18     A view may be static or dynamic, or may has other characteristics.
19     All such views are derived from the <IF:AbstractView>
20     interface defined in this module.
21    
22     @Author:
23     @@FullName: Wakaba
24     @@Mail: w@suika.fam.cx
25     @License:
26     license:Perl+MPL
27 wakaba 1.2 @Date:
28     @@@:
29 wakaba 1.3 $Date: 2004/12/31 12:03:40 $
30 wakaba 1.2 @@ContentType:
31     dis:Date.RCS
32 wakaba 1.1
33 wakaba 1.2 @DefaultFor:
34     ManakaiDOM:ManakaiDOMLatest
35 wakaba 1.1
36 wakaba 1.2 @Require:
37     @@Module:
38     @@@Name: DOMCore
39     @@Module:
40     @@@Name: DOMViews
41     @@@WithFor:
42     ManakaiDOM:ManakaiDOM
43     @@Module:
44     @@@Name: DOMViews
45     @@@WithFor:
46     ManakaiDOM:ManakaiDOM2
47     @@Module:
48     @@@Name: DOMViews
49     @@@WithFor:
50     ManakaiDOM:ManakaiDOMLatest
51    
52     Namespace:
53     @dis:
54     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#dis--
55     @dis2pm:
56     http://suika.fam.cx/~wakaba/archive/2004/11/8/dis2pm#
57     @DOMMain:
58     http://suika.fam.cx/~wakaba/archive/2004/dom/main#
59     @lang:
60     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#
61     @license:
62     http://suika.fam.cx/~wakaba/archive/2004/8/18/license#
63     @ManakaiDOM:
64     http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#
65     @ManakaiDOMCore:
66     http://suika.fam.cx/~wakaba/archive/2004/mdom-core#
67     @MDOM:
68     http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#ManakaiDOM.
69     @MDOMX:
70     http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#
71     @Perl:
72     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#Perl--
73     @rdf:
74     http://www.w3.org/1999/02/22-rdf-syntax-ns#
75     @rdfs:
76     http://www.w3.org/2000/01/rdf-schema#
77     @TreeCore:\
78    
79     ## -- Features
80    
81     ElementTypeBinding:
82     @Name: FeatureDef
83     @ElementType:
84     dis:ResourceDef
85     @ShadowContent:
86     @@rdf:type:
87     DOMMain:DOMFeature
88     @@AliasFor:
89     @@@@:
90     ::ManakaiDOM:all
91     @@@For:
92     !=ManakaiDOM:all
93     ElementTypeBinding:
94     @Name: FeatureVerDef
95     @ElementType:
96     dis:ResourceDef
97     @ShadowContent:
98     @@rdf:type:
99     DOMMain:DOMFeature
100    
101     ElementTypeBinding:
102     @Name: featureName
103     @ElementType:
104     dis:AppName
105     @ShadowContent:
106     @@ContentType:
107     dis:String
108    
109     FeatureDef:
110     @featureName: Views
111     @QName: ViewsFeature
112     @FeatureVerDef:
113 wakaba 1.1 @@Version:2.0
114 wakaba 1.2 @@QName: ViewsFeature20
115     @@ISA: ViewsFeature
116 wakaba 1.1 @@FullName:
117     @@@lang:en
118     @@@@: DOM Level 2 Views
119 wakaba 1.2 @@DOMMain:requireFeature:
120     DOMCore:CoreFeature20
121    
122     ElementTypeBinding:
123     @Name: PerlDef
124     @ElementType:
125     dis:Def
126     @ShadowContent:
127     @@ContentType:
128     lang:Perl
129    
130     ElementTypeBinding:
131     @Name: IF
132     @ElementType:
133     dis:ResourceDef
134     @ShadowContent:
135     @@rdf:type:
136     @@@@:
137     dis:MultipleResource
138     @@@ForCheck:
139     !ManakaiDOM:ForClass !ManakaiDOM:ForIF
140     @@rdf:type:
141     @@@@:
142     ManakaiDOM:IF
143     @@@ForCheck:
144     ManakaiDOM:ForIF
145     @@rdf:type:
146     @@@@:
147     ManakaiDOM:Class
148     @@@ForCheck:
149     ManakaiDOM:ForClass
150     @@resourceFor:
151     ManakaiDOM:ForIF
152     @@resourceFor:
153     @@@@:
154     ManakaiDOM:ForClass
155     @@@ForCheck:
156     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
157     @@ForCheck:
158     ManakaiDOM:DOM
159     @@ISA:
160     @@@@:
161     ManakaiDOM:ManakaiDOMObject
162     @@@ForCheck:
163     ManakaiDOM:ForClass
164     @@ISA:
165 wakaba 1.1 @@@@:
166 wakaba 1.2 ::ManakaiDOM:ManakaiDOM
167     @@@ForCheck:
168     ManakaiDOM:ForIF
169     @@@For:
170     ManakaiDOM:ManakaiDOM2
171    
172     ElementTypeBinding:
173     @Name: Method
174     @ElementType:
175     dis:ResourceDef
176     @ShadowContent:
177     @@rdf:type:
178     ManakaiDOM:DOMMethod
179     @@ForCheck:
180     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
181     ElementTypeBinding:
182     @Name: IntMethod
183     @ElementType:
184     dis:ResourceDef
185     @ShadowContent:
186     @@rdf:type:
187     ManakaiDOM:DOMMethod
188     @@ForCheck:
189     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
190     @@ManakaiDOM:isForInternal: 1
191     ElementTypeBinding:
192     @Name: ReMethod
193     @ElementType:
194     dis:ResourceDef
195     @ShadowContent:
196     @@rdf:type:
197     ManakaiDOM:DOMMethod
198     @@ForCheck:
199     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
200     @@ManakaiDOM:isRedefining: 1
201     ElementTypeBinding:
202     @Name: Param
203     @ElementType:
204     dis:ResourceDef
205     @ShadowContent:
206     @@rdf:type:
207     ManakaiDOM:DOMMethodParameter
208     ElementTypeBinding:
209     @Name: Exception
210     @ElementType:
211     ManakaiDOM:raises
212    
213     ElementTypeBinding:
214     @Name: Return
215     @ElementType:
216     dis:ResourceDef
217     @ShadowContent:
218     @@rdf:type:
219     ManakaiDOM:DOMMethodReturn
220     ElementTypeBinding:
221     @Name: Attr
222     @ElementType:
223     dis:ResourceDef
224     @ShadowContent:
225     @@rdf:type:
226     ManakaiDOM:DOMAttribute
227     @@ForCheck:
228     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
229    
230     ElementTypeBinding:
231     @Name: ReAttr
232     @ElementType:
233     dis:ResourceDef
234     @ShadowContent:
235     @@rdf:type:
236     ManakaiDOM:DOMAttribute
237     @@ForCheck:
238     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
239     @@ManakaiDOM:isRedefining: 1
240     ElementTypeBinding:
241     @Name: Get
242     @ElementType:
243     dis:ResourceDef
244     @ShadowContent:
245     @@rdf:type:
246     ManakaiDOM:DOMAttrGet
247     ElementTypeBinding:
248     @Name: Set
249     @ElementType:
250     dis:ResourceDef
251     @ShadowContent:
252     @@rdf:type:
253     ManakaiDOM:DOMAttrSet
254     ElementTypeBinding:
255     @Name: InCase
256     @ElementType:
257     dis:ResourceDef
258     @ShadowContent:
259     @@rdf:type:
260     ManakaiDOM:InCase
261    
262     ElementTypeBinding:
263     @Name: ConstGroup
264     @ElementType:
265     dis:ResourceDef
266     @ShadowContent:
267     @@rdf:type:
268     ManakaiDOM:ConstGroup
269     @@ForCheck:
270     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
271    
272     ElementTypeBinding:
273     @Name: L2IF
274     @ElementType:
275     DOMMain:implementFeature
276     @ShadowContent:
277     @@@: ViewsFeature20
278     @@For:
279     ManakaiDOM:DOM2
280     @ShadowSibling:
281     @@For:
282     ManakaiDOM:DOM2
283     @@For:
284     =ManakaiDOM:ManakaiDOM
285    
286     ElementTypeBinding:
287     @Name: L2
288     @ElementType:
289     DOMMain:implementFeature
290     @ShadowContent:
291     @@@: ViewsFeature20
292     @@For:
293     ManakaiDOM:DOM2
294 wakaba 1.1
295    
296 wakaba 1.3 ElementTypeBinding:
297     @Name: PropDef
298     @ElementType:
299     dis:ResourceDef
300     @ShadowContent:
301     @@rdf:type:
302     rdf:Property
303    
304 wakaba 1.1 IF:
305 wakaba 1.2 @Name:
306     @@@: AbstractView
307     @@ForCheck:
308     ManakaiDOM:ForIF
309    
310     @QName:
311     @@@: ManakaiDOMAbstractView
312     @@ForCheck:
313     ManakaiDOM:ForClass
314    
315     @Level[list]: 2
316     @SpecLevel[list]: 2
317     @L2IF:
318    
319 wakaba 1.1 @Description:
320     @@lang:en
321     @@@:
322     A base interface from which all views shall derived.
323    
324     @Attr:
325     @@Name: document
326     @@Description:
327     @@@lang:en
328     @@@@:
329     The source <IF:DocumentView> of which this is an
330     <IF:AbstractView>.
331     @@Get:
332     @@@Type: DocumentView
333     @@@Def:
334 wakaba 1.2 @@@@ContentType:
335 wakaba 1.1 lang:dis
336     @@@@GetPropNode:
337     DOMViews:document
338    
339     @IntMethod:
340     @@Name: newObject
341     @@Description:
342     @@@lang:en
343     @@@@:
344     Construct an object for a new instance of the <IF:AbstractView>.
345     @@Return:
346     @@@Type:
347     ManakaiDOM:ManakaiDOMNodeObject
348     @@@Description:
349     @@@@lang:en
350     @@@@@:
351     The object for the <IF:AbstractView> to be created.
352 wakaba 1.2 @@@PerlDef:
353 wakaba 1.1 @@@@@:
354 wakaba 1.2 my $node = $r = <ClassM::ManakaiDOM:ManakaiDOMNodeObject.new>;
355     push @{$node->{<Q::TreeCore:origin>}}, <Q::DOMViews:document>;
356 wakaba 1.1 @@@ImplNote:
357     @@@@lang:en
358     @@@@@:
359     Properties required to be a legal <IF:AbstractView> object:
360     <Q:DOMViews:document>.
361     \
362     Optional properties: none.
363 wakaba 1.2
364     @IntMethod:
365     @@Name: getNodeReference
366     @@Description:
367     @@@lang:en
368     @@@@:
369     Creates a new <IF::AbstractView> object blessed with an appropriate
370     class.
371     @@Param:
372     @@@Name: object
373     @@@Type:
374     ManakaiDOM:ManakaiDOMNodeObject
375     @@@Description:
376     @@@@lang:en
377     @@@@@: The node object referred to.
378     @@Param:
379     @@@Name:noSpecializedInterface
380     @@@Type:
381     DOMMain:boolean
382     @@@Description:
383     @@@@lang:en
384     @@@@@:
385     Whether the specialized interface for the type (such as
386     element type or document type) is selected if available.
387     @@@InCase:
388     @@@@Value:true
389     @@@@Description:
390     @@@@@lang:en
391     @@@@@@:
392     Specialized object is not returned however the
393     configuration parameter value is set.
394     \
395     Note that even if the specialized interface is not
396     selected by default, the specialized object can be
397     obtained from <M:Node.getFeature>.
398     @@@InCase:
399     @@@@Value:false
400     @@@@Description:
401     @@@@@lang:en
402     @@@@@@:
403     Specialized object is returned unless the configuration
404     disables it.
405     @@Return:
406     @@@Type: ManakaiDOMAbstractView
407     @@@Description:
408     @@@@lang:en
409     @@@@@: The node reference.
410     @@@PerlDef:
411     ## TODO: Find class
412     $r = $object-><M::ManakaiDOM:ManakaiDOMNodeObject.newReference>
413     (<ClassName::AbstractView>);
414 wakaba 1.1 ##IF:AbstractView
415    
416 wakaba 1.3 PropDef:
417     @QName: document
418     @Description:
419     @@lang:en
420     @@@:
421     The document that is associated with the subject.
422    
423 wakaba 1.1 IF:
424 wakaba 1.2 @Name:
425     @@@: DocumentView
426     @@ForCheck:
427     ManakaiDOM:ForIF
428    
429     @Name:
430     @@@: ManakaiDOMDocumentView
431     @@ForCheck:
432     ManakaiDOM:ForClass
433     @ISA:
434 wakaba 1.1 @@@:
435 wakaba 1.2 DOMCore:ManakaiDOMDocument
436     @@ForCheck:
437     ManakaiDOM:ForClass
438 wakaba 1.1
439     @Level[list]: 2
440     @SpecLevel[list]: 2
441 wakaba 1.2 @L2IF:
442 wakaba 1.1
443 wakaba 1.2 @Description:
444     @@lang:en
445 wakaba 1.1 @@@:
446 wakaba 1.2 The interface implemented by <IF:Document> object in
447     DOM Views implementation.
448 wakaba 1.1
449     @Attr:
450     @@Name: defaultView
451     @@Description:
452     @@@lang:en
453     @@@@:
454     The default <IF:AbstractView> for this document.
455     @@Get:
456     @@@Type: AbstractView
457     @@@InCase:
458     @@@@Value:
459     @@@@@is-null:1
460     @@@@Description:
461     @@@@@lang:en
462     @@@@@@:
463     No <IF:AbstractView> available.
464 wakaba 1.2 @@@PerlDef:
465 wakaba 1.1 @@@@@:
466 wakaba 1.2 $r = $self->{<Q::TreeCore:node>}->{<Q::DOMViews:view>}->[0];
467     if ($r) {
468     $r = <ClassM::ManakaiDOMAbstractView.getNodeReference> ($r);
469     }
470    
471 wakaba 1.1 ##IF:DocumentView
472 wakaba 1.3
473     PropDef:
474     @QName: view
475     @Description:
476     @@lang:en
477     @@@:
478     A view that is associated to the subject.
479     \
480     In the manakai DOM implementation, the <IF::Document>
481     internal node object has an optional <CODE::subnode2> property named as
482     <Q::DOMViews:view> and its value is an array reference, which
483     in turn contains zero or more internal node object for
484     <IF::AbstractView>. The first item, if any, is the default view
485     for that document. Note that internal view node objects have
486     a <CODE::origin> property of <Q::DOMViews:document>.
487 wakaba 1.1
488     ## DOMViews.dis ends here
489    
490    
491    
492    

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24