]> err.no Git - sope/blob - Recycler/NGObjDOM/WORenderDOM.h
added maintenance directory
[sope] / Recycler / NGObjDOM / WORenderDOM.h
1 /*
2   Copyright (C) 2000-2003 SKYRIX Software AG
3
4   This file is part of OGo
5
6   OGo is free software; you can redistribute it and/or modify it under
7   the terms of the GNU Lesser General Public License as published by the
8   Free Software Foundation; either version 2, or (at your option) any
9   later version.
10
11   OGo is distributed in the hope that it will be useful, but WITHOUT ANY
12   WARRANTY; without even the implied warranty of MERCHANTABILITY or
13   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
14   License for more details.
15
16   You should have received a copy of the GNU Lesser General Public
17   License along with OGo; see the file COPYING.  If not, write to the
18   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19   02111-1307, USA.
20 */
21 // $Id$
22
23 #ifndef __NGObjDOM_WORenderDOM_H__
24 #define __NGObjDOM_WORenderDOM_H__
25
26 #include <NGObjWeb/WODynamicElement.h>
27 #include <NGObjDOM/ODNodeRendererFactory.h>
28
29 /*
30   This is a NGObjWeb dynamic element for rendering a DOM tree.
31
32   Bindings:
33
34     domDocument [in]
35     node        [out]
36     factory     [in]
37     renderer    [in]
38
39   'Factory' and 'renderer' bindings are invoked with 'node' setup to the
40   currently processed DOM-node of 'domDocument'.
41
42   The dynamic element binds itself as the node renderer factory to the ctx,
43   and forwards any renderer creation request to either a factory, if
44   the factory binding is set, or to a component, if the 'node' binding is set.
45 */
46
47 @interface WORenderDOM : WODynamicElement < ODNodeRendererFactory >
48 {
49   WOAssociation *domDocument; /* the document object            */
50   WOAssociation *factory;     /* the renderer factory           */
51   WOAssociation *node;        /* the current node for callbacks */
52   WOAssociation *renderer;    /* the renderer to apply on node  */
53 }
54
55 - (id)domInContext:(WOContext *)_ctx; // used in SkyForm
56
57 @end
58
59 #endif /* __NGObjDOM_WORenderDOM_H__ */