Code

Modify includes to not conflict with inkscape
[inkscape.git] / src / dom / svg / svgimpl.h
1 #ifndef __SVGIMPL_H__\r
2 #define __SVGIMPL_H__\r
3 \r
4 /**\r
5  * Phoebe DOM Implementation.\r
6  *\r
7  * This is a C++ approximation of the W3C DOM model, which follows\r
8  * fairly closely the specifications in the various .idl files, copies of\r
9  * which are provided for reference.  Most important is this one:\r
10  *\r
11  * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/idl-definitions.html\r
12  *\r
13  * Authors:\r
14  *   Bob Jamison\r
15  *\r
16  * Copyright (C) 2005 Bob Jamison\r
17  *\r
18  *  This library is free software; you can redistribute it and/or\r
19  *  modify it under the terms of the GNU Lesser General Public\r
20  *  License as published by the Free Software Foundation; either\r
21  *  version 2.1 of the License, or (at your option) any later version.\r
22  *\r
23  *  This library is distributed in the hope that it will be useful,\r
24  *  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
25  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
26  *  Lesser General Public License for more details.\r
27  *\r
28  *  You should have received a copy of the GNU Lesser General Public\r
29  *  License along with this library; if not, write to the Free Software\r
30  *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\r
31  */\r
32 \r
33 \r
34 #include "svg.h"\r
35 #include "domimpl.h"\r
36 #include "smilimpl.h"\r
37 \r
38 #include <math.h>\r
39 \r
40 \r
41 \r
42 namespace org\r
43 {\r
44 namespace w3c\r
45 {\r
46 namespace dom\r
47 {\r
48 namespace svg\r
49 {\r
50 \r
51 \r
52 //local definitions\r
53 typedef dom::DOMString DOMString;\r
54 typedef dom::DOMException DOMException;\r
55 typedef dom::Element Element;\r
56 typedef dom::Document Document;\r
57 typedef dom::NodeList NodeList;\r
58 \r
59 \r
60 \r
61 class SVGSVGElementImpl;\r
62 \r
63 /*#########################################################################\r
64 ## SVGDocumentImpl\r
65 #########################################################################*/\r
66 \r
67 /**\r
68  *\r
69  */\r
70 class SVGDocumentImpl : virtual public SVGDocument, public DocumentImpl\r
71 {\r
72 public:\r
73 \r
74 \r
75     /**\r
76      *\r
77      */\r
78     virtual DOMString getTitle()\r
79         { return title; }\r
80 \r
81     /**\r
82      *\r
83      */\r
84     virtual DOMString getReferrer()\r
85         { return referrer; }\r
86 \r
87     /**\r
88      *\r
89      */\r
90     virtual DOMString getDomain()\r
91         { return domain; }\r
92 \r
93     /**\r
94      *\r
95      */\r
96     virtual DOMString getURL()\r
97         { return url; }\r
98 \r
99     /**\r
100      *\r
101      */\r
102     virtual SVGSVGElement *getRootElement()\r
103         { return rootElement; }\r
104 \r
105 \r
106     //####################################################\r
107     //# Overload some createXXX() methods from DocumentImpl,\r
108     //# To create our SVG-DOM types (in .cpp)\r
109     //####################################################\r
110 \r
111     /**\r
112      *\r
113      */\r
114     virtual Element *createElement(const DOMString& tagName)\r
115                            throw(DOMException);\r
116 \r
117 \r
118     /**\r
119      *\r
120      */\r
121     virtual Element *createElementNS(const DOMString& namespaceURI,\r
122                                      const DOMString& qualifiedName)\r
123                                      throw(DOMException);\r
124 \r
125     //##################\r
126     //# Non-API methods\r
127     //##################\r
128 \r
129     SVGDocumentImpl(const DOMImplementation *domImpl,\r
130                     const DOMString    &namespaceURI,\r
131                     const DOMString    &qualifiedName,\r
132                     const DocumentType *doctype)\r
133                     : DocumentImpl(domImpl, namespaceURI,\r
134                           qualifiedName, doctype)\r
135         {\r
136         init();\r
137         }\r
138 \r
139 \r
140     /**\r
141      *\r
142      */\r
143     virtual ~SVGDocumentImpl()\r
144         {\r
145         if (rootElement)\r
146             delete rootElement;\r
147         }\r
148 \r
149 protected:\r
150 \r
151 friend class SvgParser;\r
152 \r
153     void init()\r
154         {\r
155         title       = "";\r
156         referrer    = "";\r
157         domain      = "";\r
158         rootElement = NULL;\r
159         }\r
160 \r
161     DOMString title;\r
162     DOMString referrer;\r
163     DOMString domain;\r
164     DOMString url;\r
165     SVGSVGElement *rootElement;\r
166 };\r
167 \r
168 \r
169 \r
170 /*#########################################################################\r
171 ## SVGElementImpl\r
172 #########################################################################*/\r
173 \r
174 /**\r
175  *\r
176  */\r
177 class SVGElementImpl : virtual public SVGElement,\r
178                        public ElementImpl\r
179 {\r
180 public:\r
181 \r
182     /**\r
183      *\r
184      */\r
185     virtual DOMString getId()\r
186         { return id; }\r
187 \r
188     /**\r
189      *\r
190      */\r
191     virtual void setId(const DOMString &val)\r
192                        throw (DOMException)\r
193         { id = val; }\r
194 \r
195     /**\r
196      *\r
197      */\r
198     virtual DOMString getXmlBase()\r
199         { return xmlBase; }\r
200 \r
201     /**\r
202      *\r
203      */\r
204     virtual void setXmlBase(const DOMString &val)\r
205                             throw (DOMException)\r
206         { xmlBase = val; }\r
207 \r
208     /**\r
209      *\r
210      */\r
211     virtual SVGSVGElement *getOwnerSVGElement()\r
212         { return ownerSvgElement; }\r
213 \r
214     /**\r
215      *\r
216      */\r
217     virtual SVGElement *getViewportElement()\r
218         { return viewportElement; }\r
219 \r
220 \r
221     //##################\r
222     //# Non-API methods\r
223     //##################\r
224 \r
225 \r
226     /**\r
227      *\r
228      */\r
229     SVGElementImpl()\r
230         {}\r
231 \r
232     /**\r
233      *\r
234      */\r
235     SVGElementImpl(SVGDocumentImpl *owner, const DOMString &tagName)\r
236                     : ElementImpl(owner, tagName)\r
237         { init(); }\r
238 \r
239     /**\r
240      *\r
241      */\r
242     SVGElementImpl(SVGDocumentImpl *owner,\r
243                    const DOMString &namespaceURI,\r
244                    const DOMString &tagName)\r
245                    : ElementImpl(owner, namespaceURI, tagName)\r
246         { init(); }\r
247 \r
248 \r
249     /**\r
250      *\r
251      */\r
252     virtual ~SVGElementImpl()\r
253         {}\r
254 \r
255 protected:\r
256 \r
257     void init()\r
258         {\r
259         id              = "";\r
260         xmlBase         = "";\r
261         ownerSvgElement = NULL;\r
262         viewportElement = NULL;\r
263         }\r
264 \r
265     DOMString id;\r
266     DOMString xmlBase;\r
267     SVGSVGElement *ownerSvgElement;\r
268     SVGElement *viewportElement;\r
269 \r
270 };\r
271 \r
272 \r
273 \r
274 /*#########################################################################\r
275 ## SVGSVGElementImpl\r
276 #########################################################################*/\r
277 \r
278 /**\r
279  *\r
280  */\r
281 class SVGSVGElementImpl : virtual public SVGSVGElement,\r
282                           public SVGElementImpl\r
283 {\r
284 public:\r
285 \r
286     /**\r
287      *\r
288      */\r
289     virtual SVGAnimatedLength getX()\r
290         { return x; }\r
291 \r
292     /**\r
293      *\r
294      */\r
295     virtual SVGAnimatedLength getY()\r
296         { return y; }\r
297 \r
298     /**\r
299      *\r
300      */\r
301     virtual SVGAnimatedLength getWidth()\r
302         { return width; }\r
303 \r
304     /**\r
305      *\r
306      */\r
307     virtual SVGAnimatedLength getHeight()\r
308         { return height; }\r
309 \r
310     /**\r
311      *\r
312      */\r
313     virtual DOMString getContentScriptType()\r
314         { return contentScriptType; }\r
315 \r
316     /**\r
317      *\r
318      */\r
319     virtual void setContentScriptType(const DOMString &val)\r
320                                      throw (DOMException)\r
321         { contentScriptType = val; }\r
322 \r
323 \r
324     /**\r
325      *\r
326      */\r
327     virtual DOMString getContentStyleType()\r
328         { return contentStyleType; }\r
329 \r
330     /**\r
331      *\r
332      */\r
333     virtual void setContentStyleType(const DOMString &val)\r
334                                      throw (DOMException)\r
335         { contentStyleType = val; }\r
336 \r
337     /**\r
338      *\r
339      */\r
340     virtual SVGRect getViewport()\r
341         { return viewport; }\r
342 \r
343     /**\r
344      *\r
345      */\r
346     virtual double getPixelUnitToMillimeterX()\r
347         { return pixelUnitToMillimeterX; }\r
348 \r
349     /**\r
350      *\r
351      */\r
352     virtual double getPixelUnitToMillimeterY()\r
353         { return pixelUnitToMillimeterY; }\r
354 \r
355     /**\r
356      *\r
357      */\r
358     virtual double getScreenPixelToMillimeterX()\r
359         { return screenPixelToMillimeterX; }\r
360 \r
361     /**\r
362      *\r
363      */\r
364     virtual double getScreenPixelToMillimeterY()\r
365         { return screenPixelToMillimeterY; }\r
366 \r
367 \r
368     /**\r
369      *\r
370      */\r
371     virtual bool getUseCurrentView()\r
372         { return useCurrentView; }\r
373 \r
374     /**\r
375      *\r
376      */\r
377     virtual void setUseCurrentView(bool val) throw (DOMException)\r
378         { useCurrentView = val; }\r
379 \r
380     /**\r
381      *\r
382      */\r
383     virtual SVGViewSpec getCurrentView()\r
384         { return currentView; }\r
385 \r
386 \r
387     /**\r
388      *\r
389      */\r
390     virtual double getCurrentScale()\r
391         { return currentScale; }\r
392 \r
393     /**\r
394      *\r
395      */\r
396     virtual void setCurrentScale(double val) throw (DOMException)\r
397         { currentScale = val; }\r
398 \r
399 \r
400     /**\r
401      *\r
402      */\r
403     virtual SVGPoint getCurrentTranslate()\r
404         { return currentTranslate; }\r
405 \r
406 \r
407     /**\r
408      *\r
409      */\r
410     virtual unsigned long suspendRedraw (unsigned long max_wait_milliseconds );\r
411 \r
412     /**\r
413      *\r
414      */\r
415     virtual void unsuspendRedraw (unsigned long suspend_handle_id )\r
416                                   throw( DOMException );\r
417 \r
418     /**\r
419      *\r
420      */\r
421     virtual void unsuspendRedrawAll (  );\r
422 \r
423     /**\r
424      *\r
425      */\r
426     virtual void forceRedraw (  );\r
427 \r
428     /**\r
429      *\r
430      */\r
431     virtual void pauseAnimations (  );\r
432 \r
433     /**\r
434      *\r
435      */\r
436     virtual void unpauseAnimations (  );\r
437 \r
438     /**\r
439      *\r
440      */\r
441     virtual bool animationsPaused (  );\r
442 \r
443     /**\r
444      *\r
445      */\r
446     virtual double getCurrentTime (  )\r
447         { return currentTime; }\r
448 \r
449     /**\r
450      *\r
451      */\r
452     virtual void setCurrentTime (double seconds )\r
453         { currentTime = seconds; }\r
454 \r
455     /**\r
456      *\r
457      */\r
458     virtual NodeList getIntersectionList (const SVGRect &rect,\r
459                                           const SVGElement *referenceElement );\r
460 \r
461     /**\r
462      *\r
463      */\r
464     virtual NodeList getEnclosureList (const SVGRect &rect,\r
465                                        const SVGElement *referenceElement );\r
466 \r
467     /**\r
468      *\r
469      */\r
470     virtual bool checkIntersection (const SVGElement *element, const SVGRect &rect );\r
471 \r
472     /**\r
473      *\r
474      */\r
475     virtual bool checkEnclosure (const SVGElement *element, const SVGRect &rect );\r
476 \r
477     /**\r
478      *\r
479      */\r
480     virtual void deselectAll (  );\r
481 \r
482     /**\r
483      *\r
484      */\r
485     virtual SVGNumber createSVGNumber (  )\r
486         {\r
487         SVGNumber ret;\r
488         return ret;\r
489         }\r
490 \r
491     /**\r
492      *\r
493      */\r
494     virtual SVGLength createSVGLength (  )\r
495         {\r
496         SVGLength ret;\r
497         return ret;\r
498         }\r
499 \r
500     /**\r
501      *\r
502      */\r
503     virtual SVGAngle createSVGAngle (  )\r
504         {\r
505         SVGAngle ret;\r
506         return ret;\r
507         }\r
508 \r
509     /**\r
510      *\r
511      */\r
512     virtual SVGPoint createSVGPoint (  )\r
513         {\r
514         SVGPoint ret;\r
515         return ret;\r
516         }\r
517 \r
518     /**\r
519      *\r
520      */\r
521     virtual SVGMatrix createSVGMatrix (  )\r
522         {\r
523         SVGMatrix ret;\r
524         return ret;\r
525         }\r
526 \r
527     /**\r
528      *\r
529      */\r
530     virtual SVGRect createSVGRect (  )\r
531         {\r
532         SVGRect ret;\r
533         return ret;\r
534         }\r
535 \r
536     /**\r
537      *\r
538      */\r
539     virtual SVGTransform createSVGTransform (  )\r
540         {\r
541         SVGTransform ret;\r
542         return ret;\r
543         }\r
544 \r
545     /**\r
546      *\r
547      */\r
548     virtual SVGTransform createSVGTransformFromMatrix(const SVGMatrix &matrix )\r
549         {\r
550         SVGTransform ret;\r
551         ret.setMatrix(matrix);\r
552         return ret;\r
553         }\r
554 \r
555 \r
556     /**\r
557      *\r
558      */\r
559     virtual Element *getElementById (const DOMString& elementId );\r
560 \r
561 \r
562 \r
563     //##################\r
564     //# Non-API methods\r
565     //##################\r
566 \r
567     /**\r
568      *\r
569      */\r
570     SVGSVGElementImpl() : SVGElementImpl()\r
571         {}\r
572 \r
573 \r
574 \r
575     /**\r
576      *\r
577      */\r
578     virtual ~SVGSVGElementImpl() {}\r
579 \r
580 protected:\r
581 \r
582     SVGAnimatedLength x;\r
583     SVGAnimatedLength y;\r
584     SVGAnimatedLength width;\r
585     SVGAnimatedLength height;\r
586     DOMString         contentScriptType;\r
587     DOMString         contentStyleType;\r
588     SVGRect           viewport;\r
589     double            pixelUnitToMillimeterX;\r
590     double            pixelUnitToMillimeterY;\r
591     double            screenPixelToMillimeterX;\r
592     double            screenPixelToMillimeterY;\r
593     bool              useCurrentView;\r
594     SVGViewSpec       currentView;\r
595     double            currentScale;\r
596     SVGPoint          currentTranslate;\r
597 \r
598     double currentTime;\r
599 \r
600 };\r
601 \r
602 \r
603 \r
604 /*#########################################################################\r
605 ## SVGGElementImpl\r
606 #########################################################################*/\r
607 \r
608 /**\r
609  *\r
610  */\r
611 class SVGGElementImpl : virtual public SVGGElement, public SVGElementImpl\r
612 {\r
613 public:\r
614 \r
615     //##################\r
616     //# Non-API methods\r
617     //##################\r
618 \r
619     /**\r
620      *\r
621      */\r
622     SVGGElementImpl() {}\r
623 \r
624     /**\r
625      *\r
626      */\r
627     virtual ~SVGGElementImpl() {}\r
628 \r
629 protected:\r
630 \r
631 \r
632 };\r
633 \r
634 \r
635 \r
636 \r
637 /*#########################################################################\r
638 ## SVGDefsElementImpl\r
639 #########################################################################*/\r
640 \r
641 /**\r
642  *\r
643  */\r
644 class SVGDefsElementImpl : virtual public SVGDefsElement,\r
645                            public SVGElementImpl\r
646 {\r
647 public:\r
648 \r
649     //##################\r
650     //# Non-API methods\r
651     //##################\r
652 \r
653     /**\r
654      *\r
655      */\r
656     SVGDefsElementImpl() {}\r
657 \r
658     /**\r
659      *\r
660      */\r
661     virtual ~SVGDefsElementImpl() {}\r
662 \r
663 protected:\r
664 \r
665 \r
666 };\r
667 \r
668 \r
669 \r
670 \r
671 \r
672 /*#########################################################################\r
673 ## SVGDescElementImpl\r
674 #########################################################################*/\r
675 \r
676 /**\r
677  *\r
678  */\r
679 class SVGDescElementImpl :  virtual public SVGDescElement,\r
680                             public SVGElementImpl\r
681 {\r
682 public:\r
683 \r
684     //##################\r
685     //# Non-API methods\r
686     //##################\r
687 \r
688     /**\r
689      *\r
690      */\r
691     SVGDescElementImpl() {}\r
692 \r
693     /**\r
694      *\r
695      */\r
696     virtual ~SVGDescElementImpl() {}\r
697 \r
698 protected:\r
699 \r
700 \r
701 };\r
702 \r
703 \r
704 \r
705 \r
706 \r
707 /*#########################################################################\r
708 ## SVGTitleElementImpl\r
709 #########################################################################*/\r
710 \r
711 /**\r
712  *\r
713  */\r
714 class SVGTitleElementImpl : virtual public SVGTitleElement,\r
715                             public SVGElementImpl\r
716 {\r
717 public:\r
718 \r
719     //##################\r
720     //# Non-API methods\r
721     //##################\r
722 \r
723     /**\r
724      *\r
725      */\r
726     SVGTitleElementImpl() {}\r
727 \r
728     /**\r
729      *\r
730      */\r
731     virtual ~SVGTitleElementImpl() {}\r
732 \r
733 protected:\r
734 \r
735 \r
736 };\r
737 \r
738 \r
739 \r
740 \r
741 \r
742 /*#########################################################################\r
743 ## SVGSymbolElementImpl\r
744 #########################################################################*/\r
745 \r
746 /**\r
747  *\r
748  */\r
749 class SVGSymbolElementImpl : virtual public SVGSymbolElement,\r
750                              public SVGElementImpl\r
751 {\r
752 public:\r
753 \r
754     //##################\r
755     //# Non-API methods\r
756     //##################\r
757 \r
758     /**\r
759      *\r
760      */\r
761     SVGSymbolElementImpl() {}\r
762 \r
763     /**\r
764      *\r
765      */\r
766     virtual ~SVGSymbolElementImpl() {}\r
767 \r
768 protected:\r
769 \r
770 \r
771 };\r
772 \r
773 \r
774 \r
775 \r
776 \r
777 /*#########################################################################\r
778 ## SVGUseElementImpl\r
779 #########################################################################*/\r
780 \r
781 /**\r
782  *\r
783  */\r
784 class SVGUseElementImpl : public SVGElementImpl\r
785 {\r
786 public:\r
787 \r
788 \r
789     /**\r
790      *\r
791      */\r
792     virtual SVGAnimatedLength getX()\r
793         { return x; }\r
794 \r
795     /**\r
796      *\r
797      */\r
798     virtual SVGAnimatedLength getY()\r
799         { return y; }\r
800 \r
801     /**\r
802      *\r
803      */\r
804     virtual SVGAnimatedLength getWidth()\r
805         { return width; }\r
806 \r
807     /**\r
808      *\r
809      */\r
810     virtual SVGAnimatedLength getHeight()\r
811         { return height; }\r
812 \r
813     /**\r
814      *\r
815      */\r
816     virtual SVGElementInstance getInstanceRoot()\r
817         { return instanceRoot; }\r
818 \r
819     /**\r
820      *\r
821      */\r
822     virtual SVGElementInstance getAnimatedInstanceRoot()\r
823         { return animatedInstanceRoot; }\r
824 \r
825 \r
826 \r
827     //##################\r
828     //# Non-API methods\r
829     //##################\r
830 \r
831     /**\r
832      *\r
833      */\r
834     SVGUseElementImpl() {}\r
835 \r
836     /**\r
837      *\r
838      */\r
839     virtual ~SVGUseElementImpl() {}\r
840 \r
841 protected:\r
842 \r
843     SVGAnimatedLength x;\r
844     SVGAnimatedLength y;\r
845     SVGAnimatedLength width;\r
846     SVGAnimatedLength height;\r
847     SVGElementInstance instanceRoot;\r
848     SVGElementInstance animatedInstanceRoot;\r
849 };\r
850 \r
851 \r
852 \r
853 \r
854 \r
855 \r
856 \r
857 /*#########################################################################\r
858 ## SVGImageElementImpl\r
859 #########################################################################*/\r
860 \r
861 /**\r
862  *\r
863  */\r
864 class SVGImageElementImpl : virtual public SVGImageElement,\r
865                             public SVGElementImpl\r
866 {\r
867 public:\r
868 \r
869 \r
870     /**\r
871      *\r
872      */\r
873     virtual SVGAnimatedLength getX()\r
874         { return x; }\r
875 \r
876     /**\r
877      *\r
878      */\r
879     virtual SVGAnimatedLength getY()\r
880         { return y; }\r
881 \r
882     /**\r
883      *\r
884      */\r
885     virtual SVGAnimatedLength getWidth()\r
886         { return width; }\r
887 \r
888     /**\r
889      *\r
890      */\r
891     virtual SVGAnimatedLength getHeight()\r
892         { return height; }\r
893 \r
894 \r
895     /**\r
896      *\r
897      */\r
898     virtual SVGAnimatedPreserveAspectRatio getPreserveAspectRatio()\r
899         { return preserveAspectRatio; }\r
900 \r
901 \r
902 \r
903     //##################\r
904     //# Non-API methods\r
905     //##################\r
906 \r
907     /**\r
908      *\r
909      */\r
910     SVGImageElementImpl() {}\r
911 \r
912     /**\r
913      *\r
914      */\r
915     virtual ~SVGImageElementImpl() {}\r
916 \r
917 protected:\r
918 \r
919     SVGAnimatedLength x;\r
920     SVGAnimatedLength y;\r
921     SVGAnimatedLength width;\r
922     SVGAnimatedLength height;\r
923     SVGAnimatedPreserveAspectRatio preserveAspectRatio;\r
924 };\r
925 \r
926 \r
927 \r
928 \r
929 \r
930 \r
931 /*#########################################################################\r
932 ## SVGSwitchElementImpl\r
933 #########################################################################*/\r
934 \r
935 /**\r
936  *\r
937  */\r
938 class SVGSwitchElementImpl : virtual public SVGSwitchElement,\r
939                              public SVGElementImpl\r
940 {\r
941 public:\r
942 \r
943     //##################\r
944     //# Non-API methods\r
945     //##################\r
946 \r
947     /**\r
948      *\r
949      */\r
950     SVGSwitchElementImpl() {}\r
951 \r
952     /**\r
953      *\r
954      */\r
955     virtual ~SVGSwitchElementImpl() {}\r
956 \r
957 protected:\r
958 \r
959 \r
960 };\r
961 \r
962 \r
963 \r
964 \r
965 \r
966 /*#########################################################################\r
967 ## GetSVGDocumentImpl\r
968 #########################################################################*/\r
969 \r
970 /**\r
971  *\r
972  */\r
973 class GetSVGDocumentImpl : public virtual GetSVGDocument\r
974 {\r
975 public:\r
976 \r
977     /**\r
978      *\r
979      */\r
980     virtual SVGDocument *getSVGDocument (  )\r
981                     throw( DOMException );\r
982 \r
983     //##################\r
984     //# Non-API methods\r
985     //##################\r
986 \r
987     /**\r
988      *\r
989      */\r
990     GetSVGDocumentImpl() {}\r
991 \r
992     /**\r
993      *\r
994      */\r
995     virtual ~GetSVGDocumentImpl() {}\r
996 \r
997 protected:\r
998 \r
999 \r
1000 };\r
1001 \r
1002 \r
1003 \r
1004 \r
1005 \r
1006 \r
1007 \r
1008 /*#########################################################################\r
1009 ## SVGStyleElementImpl\r
1010 #########################################################################*/\r
1011 \r
1012 /**\r
1013  *\r
1014  */\r
1015 class SVGStyleElementImpl : virtual public SVGStyleElement,\r
1016                             public SVGElementImpl\r
1017 {\r
1018 public:\r
1019 \r
1020     /**\r
1021      *\r
1022      */\r
1023     virtual DOMString getXmlspace()\r
1024         { return xmlSpace; }\r
1025 \r
1026     /**\r
1027      *\r
1028      */\r
1029     virtual void setXmlspace(const DOMString &val)\r
1030                              throw (DOMException)\r
1031         { xmlSpace = val; }\r
1032 \r
1033     /**\r
1034      *\r
1035      */\r
1036     virtual DOMString getType()\r
1037         { return type; }\r
1038 \r
1039     /**\r
1040      *\r
1041      */\r
1042     virtual void setType(const DOMString &val)\r
1043                          throw (DOMException)\r
1044         { type = val; }\r
1045 \r
1046     /**\r
1047      *\r
1048      */\r
1049     virtual DOMString getMedia()\r
1050         { return media; }\r
1051 \r
1052     /**\r
1053      *\r
1054      */\r
1055     virtual void setMedia(const DOMString &val)\r
1056                           throw (DOMException)\r
1057         { media = val; }\r
1058 \r
1059     /**\r
1060      *\r
1061      */\r
1062     virtual DOMString getTitle()\r
1063         { return title; }\r
1064 \r
1065     /**\r
1066      *\r
1067      */\r
1068     virtual void setTitle(const DOMString &val)\r
1069                           throw (DOMException)\r
1070         { title = val; }\r
1071 \r
1072 \r
1073 \r
1074     //##################\r
1075     //# Non-API methods\r
1076     //##################\r
1077 \r
1078     /**\r
1079      *\r
1080      */\r
1081     SVGStyleElementImpl() {}\r
1082 \r
1083     /**\r
1084      *\r
1085      */\r
1086     virtual ~SVGStyleElementImpl() {}\r
1087 \r
1088 protected:\r
1089 \r
1090     DOMString xmlSpace;\r
1091     DOMString type;\r
1092     DOMString media;\r
1093     DOMString title;\r
1094 \r
1095 };\r
1096 \r
1097 \r
1098 \r
1099 \r
1100 \r
1101 \r
1102 /*#########################################################################\r
1103 ## SVGPathElementImpl\r
1104 #########################################################################*/\r
1105 \r
1106 /**\r
1107  *\r
1108  */\r
1109 class SVGPathElementImpl : virtual public SVGPathElement,\r
1110                            public SVGElementImpl\r
1111 {\r
1112 public:\r
1113 \r
1114     /**\r
1115      *\r
1116      */\r
1117     virtual SVGAnimatedNumber getPathLength();\r
1118 \r
1119     /**\r
1120      *\r
1121      */\r
1122     virtual double getTotalLength (  );\r
1123 \r
1124     /**\r
1125      *\r
1126      */\r
1127     virtual SVGPoint getPointAtLength (double distance );\r
1128 \r
1129     /**\r
1130      *\r
1131      */\r
1132     virtual unsigned long getPathSegAtLength (double distance );\r
1133 \r
1134     /**\r
1135      *\r
1136      */\r
1137     virtual SVGPathSegClosePath\r
1138               createSVGPathSegClosePath (  )\r
1139          {\r
1140          SVGPathSegClosePath ret;\r
1141          return ret;\r
1142          }\r
1143 \r
1144     /**\r
1145      *\r
1146      */\r
1147     virtual SVGPathSegMovetoAbs\r
1148               createSVGPathSegMovetoAbs (double x, double y )\r
1149          {\r
1150          SVGPathSegMovetoAbs ret(x, y);\r
1151          return ret;\r
1152          }\r
1153 \r
1154     /**\r
1155      *\r
1156      */\r
1157     virtual SVGPathSegMovetoRel\r
1158               createSVGPathSegMovetoRel (double x, double y )\r
1159          {\r
1160          SVGPathSegMovetoRel ret(x, y);\r
1161          return ret;\r
1162          }\r
1163 \r
1164     /**\r
1165      *\r
1166      */\r
1167     virtual SVGPathSegLinetoAbs\r
1168               createSVGPathSegLinetoAbs (double x, double y )\r
1169          {\r
1170          SVGPathSegLinetoAbs ret(x, y);\r
1171          return ret;\r
1172          }\r
1173 \r
1174     /**\r
1175      *\r
1176      */\r
1177     virtual SVGPathSegLinetoRel\r
1178               createSVGPathSegLinetoRel (double x, double y )\r
1179          {\r
1180          SVGPathSegLinetoRel ret(x, y);\r
1181          return ret;\r
1182          }\r
1183 \r
1184     /**\r
1185      *\r
1186      */\r
1187     virtual SVGPathSegCurvetoCubicAbs\r
1188               createSVGPathSegCurvetoCubicAbs (double x, double y,\r
1189                         double x1, double y1, double x2, double y2 )\r
1190          {\r
1191          SVGPathSegCurvetoCubicAbs ret(x, y, x1, y1, x2, y2);\r
1192          return ret;\r
1193          }\r
1194 \r
1195     /**\r
1196      *\r
1197      */\r
1198     virtual SVGPathSegCurvetoCubicRel\r
1199               createSVGPathSegCurvetoCubicRel (double x, double y,\r
1200                         double x1, double y1, double x2, double y2 )\r
1201          {\r
1202          SVGPathSegCurvetoCubicRel ret(x, y, x1, y1, x2, y2);\r
1203          return ret;\r
1204          }\r
1205 \r
1206     /**\r
1207      *\r
1208      */\r
1209     virtual SVGPathSegCurvetoQuadraticAbs\r
1210               createSVGPathSegCurvetoQuadraticAbs (double x, double y,\r
1211                          double x1, double y1 )\r
1212          {\r
1213          SVGPathSegCurvetoQuadraticAbs ret(x, y, x1, y1);\r
1214          return ret;\r
1215          }\r
1216 \r
1217     /**\r
1218      *\r
1219      */\r
1220     virtual SVGPathSegCurvetoQuadraticRel\r
1221               createSVGPathSegCurvetoQuadraticRel (double x, double y,\r
1222                          double x1, double y1 )\r
1223          {\r
1224          SVGPathSegCurvetoQuadraticRel ret(x, y, x1, y1);\r
1225          return ret;\r
1226          }\r
1227 \r
1228     /**\r
1229      *\r
1230      */\r
1231     virtual SVGPathSegArcAbs\r
1232               createSVGPathSegArcAbs (double x, double y,\r
1233                          double r1, double r2, double angle,\r
1234                          bool largeArcFlag, bool sweepFlag )\r
1235          {\r
1236          SVGPathSegArcAbs ret(x, y, r1, r2, angle, largeArcFlag, sweepFlag);\r
1237          return ret;\r
1238          }\r
1239 \r
1240     /**\r
1241      *\r
1242      */\r
1243     virtual SVGPathSegArcRel\r
1244               createSVGPathSegArcRel (double x, double y, double r1,\r
1245                          double r2, double angle, bool largeArcFlag,\r
1246                          bool sweepFlag )\r
1247          {\r
1248          SVGPathSegArcRel ret(x, y, r1, r2, angle, largeArcFlag, sweepFlag);\r
1249          return ret;\r
1250          }\r
1251 \r
1252     /**\r
1253      *\r
1254      */\r
1255     virtual SVGPathSegLinetoHorizontalAbs\r
1256               createSVGPathSegLinetoHorizontalAbs (double x )\r
1257          {\r
1258          SVGPathSegLinetoHorizontalAbs ret(x);\r
1259          return ret;\r
1260          }\r
1261 \r
1262     /**\r
1263      *\r
1264      */\r
1265     virtual SVGPathSegLinetoHorizontalRel\r
1266               createSVGPathSegLinetoHorizontalRel (double x )\r
1267          {\r
1268          SVGPathSegLinetoHorizontalRel ret(x);\r
1269          return ret;\r
1270          }\r
1271 \r
1272     /**\r
1273      *\r
1274      */\r
1275     virtual SVGPathSegLinetoVerticalAbs\r
1276               createSVGPathSegLinetoVerticalAbs (double y )\r
1277          {\r
1278          SVGPathSegLinetoVerticalAbs ret(y);\r
1279          return ret;\r
1280          }\r
1281 \r
1282     /**\r
1283      *\r
1284      */\r
1285     virtual SVGPathSegLinetoVerticalRel\r
1286               createSVGPathSegLinetoVerticalRel (double y )\r
1287          {\r
1288          SVGPathSegLinetoVerticalRel ret(y);\r
1289          return ret;\r
1290          }\r
1291 \r
1292     /**\r
1293      *\r
1294      */\r
1295     virtual SVGPathSegCurvetoCubicSmoothAbs\r
1296               createSVGPathSegCurvetoCubicSmoothAbs (double x, double y,\r
1297                                              double x2, double y2 )\r
1298          {\r
1299          SVGPathSegCurvetoCubicSmoothAbs ret(x, y, x2, y2);\r
1300          return ret;\r
1301          }\r
1302 \r
1303     /**\r
1304      *\r
1305      */\r
1306     virtual SVGPathSegCurvetoCubicSmoothRel\r
1307               createSVGPathSegCurvetoCubicSmoothRel (double x, double y,\r
1308                                                      double x2, double y2 )\r
1309          {\r
1310          SVGPathSegCurvetoCubicSmoothRel ret(x, y, x2, y2);\r
1311          return ret;\r
1312          }\r
1313 \r
1314     /**\r
1315      *\r
1316      */\r
1317     virtual SVGPathSegCurvetoQuadraticSmoothAbs\r
1318               createSVGPathSegCurvetoQuadraticSmoothAbs (double x, double y )\r
1319          {\r
1320          SVGPathSegCurvetoQuadraticSmoothAbs ret(x, y);\r
1321          return ret;\r
1322          }\r
1323 \r
1324     /**\r
1325      *\r
1326      */\r
1327     virtual SVGPathSegCurvetoQuadraticSmoothRel\r
1328               createSVGPathSegCurvetoQuadraticSmoothRel (double x, double y )\r
1329          {\r
1330          SVGPathSegCurvetoQuadraticSmoothRel ret(x, y);\r
1331          return ret;\r
1332          }\r
1333 \r
1334 \r
1335 \r
1336     //##################\r
1337     //# Non-API methods\r
1338     //##################\r
1339 \r
1340     /**\r
1341      *\r
1342      */\r
1343     SVGPathElementImpl() {}\r
1344 \r
1345 \r
1346     /**\r
1347      *\r
1348      */\r
1349     virtual ~SVGPathElementImpl() {}\r
1350 \r
1351 protected:\r
1352 \r
1353 \r
1354 };\r
1355 \r
1356 \r
1357 \r
1358 \r
1359 \r
1360 \r
1361 \r
1362 /*#########################################################################\r
1363 ## SVGRectElementImpl\r
1364 #########################################################################*/\r
1365 \r
1366 /**\r
1367  *\r
1368  */\r
1369 class SVGRectElementImpl : virtual public SVGRectElement,\r
1370                            public SVGElementImpl\r
1371 {\r
1372 public:\r
1373 \r
1374     /**\r
1375      *\r
1376      */\r
1377     virtual SVGAnimatedLength getX()\r
1378         { return x; }\r
1379 \r
1380     /**\r
1381      *\r
1382      */\r
1383     virtual SVGAnimatedLength getY()\r
1384         { return y; }\r
1385 \r
1386     /**\r
1387      *\r
1388      */\r
1389     virtual SVGAnimatedLength getWidth()\r
1390         { return width; }\r
1391 \r
1392     /**\r
1393      *\r
1394      */\r
1395     virtual SVGAnimatedLength getHeight()\r
1396         { return height; }\r
1397 \r
1398 \r
1399     /**\r
1400      *\r
1401      */\r
1402     virtual SVGAnimatedLength getRx()\r
1403         { return rx; }\r
1404 \r
1405     /**\r
1406      *\r
1407      */\r
1408     virtual SVGAnimatedLength getRy()\r
1409         { return ry; }\r
1410 \r
1411 \r
1412 \r
1413     //##################\r
1414     //# Non-API methods\r
1415     //##################\r
1416 \r
1417     /**\r
1418      *\r
1419      */\r
1420     SVGRectElementImpl() {}\r
1421 \r
1422     /**\r
1423      *\r
1424      */\r
1425     virtual ~SVGRectElementImpl() {}\r
1426 \r
1427 protected:\r
1428 \r
1429     SVGAnimatedLength x;\r
1430     SVGAnimatedLength y;\r
1431     SVGAnimatedLength width;\r
1432     SVGAnimatedLength height;\r
1433     SVGAnimatedLength rx;\r
1434     SVGAnimatedLength ry;\r
1435 \r
1436 };\r
1437 \r
1438 \r
1439 \r
1440 \r
1441 \r
1442 \r
1443 /*#########################################################################\r
1444 ## SVGCircleElementImpl\r
1445 #########################################################################*/\r
1446 \r
1447 /**\r
1448  *\r
1449  */\r
1450 class SVGCircleElementImpl : virtual public SVGCircleElement,\r
1451                              public SVGElementImpl\r
1452 {\r
1453 public:\r
1454 \r
1455     /**\r
1456      *\r
1457      */\r
1458     virtual SVGAnimatedLength getCx()\r
1459         { return cx; }\r
1460 \r
1461     /**\r
1462      *\r
1463      */\r
1464     virtual SVGAnimatedLength getCy()\r
1465         { return cy; }\r
1466 \r
1467     /**\r
1468      *\r
1469      */\r
1470     virtual SVGAnimatedLength getR()\r
1471         { return r; }\r
1472 \r
1473 \r
1474 \r
1475     //##################\r
1476     //# Non-API methods\r
1477     //##################\r
1478 \r
1479     /**\r
1480      *\r
1481      */\r
1482     SVGCircleElementImpl() {}\r
1483 \r
1484     /**\r
1485      *\r
1486      */\r
1487     virtual ~SVGCircleElementImpl() {}\r
1488 \r
1489 protected:\r
1490 \r
1491     SVGAnimatedLength cx;\r
1492     SVGAnimatedLength cy;\r
1493     SVGAnimatedLength r;\r
1494 };\r
1495 \r
1496 \r
1497 \r
1498 \r
1499 \r
1500 \r
1501 /*#########################################################################\r
1502 ## SVGEllipseElementImpl\r
1503 #########################################################################*/\r
1504 \r
1505 /**\r
1506  *\r
1507  */\r
1508 class SVGEllipseElementImpl : virtual public SVGEllipseElement,\r
1509                               public SVGElementImpl\r
1510 {\r
1511 public:\r
1512 \r
1513     /**\r
1514      *\r
1515      */\r
1516     virtual SVGAnimatedLength getCx()\r
1517         { return cx; }\r
1518 \r
1519     /**\r
1520      *\r
1521      */\r
1522     virtual SVGAnimatedLength getCy()\r
1523         { return cy; }\r
1524 \r
1525     /**\r
1526      *\r
1527      */\r
1528     virtual SVGAnimatedLength getRx()\r
1529         { return rx; }\r
1530 \r
1531     /**\r
1532      *\r
1533      */\r
1534     virtual SVGAnimatedLength getRy()\r
1535         { return ry; }\r
1536 \r
1537 \r
1538     //##################\r
1539     //# Non-API methods\r
1540     //##################\r
1541 \r
1542     /**\r
1543      *\r
1544      */\r
1545     SVGEllipseElementImpl() {}\r
1546 \r
1547     /**\r
1548      *\r
1549      */\r
1550     virtual ~SVGEllipseElementImpl() {}\r
1551 \r
1552 protected:\r
1553 \r
1554     SVGAnimatedLength cx;\r
1555     SVGAnimatedLength cy;\r
1556     SVGAnimatedLength rx;\r
1557     SVGAnimatedLength ry;\r
1558 };\r
1559 \r
1560 \r
1561 \r
1562 \r
1563 \r
1564 \r
1565 /*#########################################################################\r
1566 ## SVGLineElement\r
1567 #########################################################################*/\r
1568 \r
1569 /**\r
1570  *\r
1571  */\r
1572 class SVGLineElementImpl : virtual public SVGLineElement,\r
1573                            public SVGElementImpl\r
1574 {\r
1575 public:\r
1576 \r
1577     /**\r
1578      *\r
1579      */\r
1580     virtual SVGAnimatedLength getX1()\r
1581         { return x1; }\r
1582 \r
1583     /**\r
1584      *\r
1585      */\r
1586     virtual SVGAnimatedLength getY1()\r
1587         { return y1; }\r
1588 \r
1589     /**\r
1590      *\r
1591      */\r
1592     virtual SVGAnimatedLength getX2()\r
1593         { return x2; }\r
1594 \r
1595     /**\r
1596      *\r
1597      */\r
1598     virtual SVGAnimatedLength getY2()\r
1599         { return y2; }\r
1600 \r
1601     //##################\r
1602     //# Non-API methods\r
1603     //##################\r
1604 \r
1605     /**\r
1606      *\r
1607      */\r
1608     virtual ~SVGLineElementImpl() {}\r
1609 \r
1610 protected:\r
1611 \r
1612     SVGAnimatedLength x1;\r
1613     SVGAnimatedLength x2;\r
1614     SVGAnimatedLength y1;\r
1615     SVGAnimatedLength y2;\r
1616 };\r
1617 \r
1618 \r
1619 \r
1620 \r
1621 /*#########################################################################\r
1622 ## SVGPolylineElement\r
1623 #########################################################################*/\r
1624 \r
1625 /**\r
1626  *\r
1627  */\r
1628 class SVGPolylineElementImpl : virtual public SVGPolylineElement,\r
1629                                public SVGElementImpl\r
1630 {\r
1631 public:\r
1632 \r
1633     //##################\r
1634     //# Non-API methods\r
1635     //##################\r
1636 \r
1637     /**\r
1638      *\r
1639      */\r
1640     virtual ~SVGPolylineElementImpl() {}\r
1641 \r
1642 protected:\r
1643 \r
1644 \r
1645 };\r
1646 \r
1647 \r
1648 \r
1649 \r
1650 \r
1651 /*#########################################################################\r
1652 ## SVGPolygonElementImpl\r
1653 #########################################################################*/\r
1654 \r
1655 /**\r
1656  *\r
1657  */\r
1658 class SVGPolygonElementImpl : virtual public SVGPolygonElement,\r
1659                               public SVGElementImpl\r
1660 {\r
1661 public:\r
1662 \r
1663     //##################\r
1664     //# Non-API methods\r
1665     //##################\r
1666 \r
1667     /**\r
1668      *\r
1669      */\r
1670     virtual ~SVGPolygonElementImpl() {}\r
1671 \r
1672 protected:\r
1673 \r
1674 \r
1675 };\r
1676 \r
1677 \r
1678 \r
1679 \r
1680 \r
1681 /*#########################################################################\r
1682 ## SVGTextContentElement\r
1683 #########################################################################*/\r
1684 \r
1685 /**\r
1686  *\r
1687  */\r
1688 class SVGTextContentElementImpl : virtual public SVGTextContentElement,\r
1689                                   public SVGElementImpl\r
1690 {\r
1691 public:\r
1692 \r
1693     /**\r
1694      *\r
1695      */\r
1696     virtual SVGAnimatedLength getTextLength();\r
1697 \r
1698 \r
1699     /**\r
1700      *\r
1701      */\r
1702     virtual SVGAnimatedEnumeration getLengthAdjust();\r
1703 \r
1704 \r
1705     /**\r
1706      *\r
1707      */\r
1708     virtual long getNumberOfChars (  );\r
1709 \r
1710     /**\r
1711      *\r
1712      */\r
1713     virtual double getComputedTextLength (  );\r
1714 \r
1715     /**\r
1716      *\r
1717      */\r
1718     virtual double getSubStringLength (unsigned long charnum, unsigned long nchars )\r
1719                                      throw( DOMException );\r
1720 \r
1721     /**\r
1722      *\r
1723      */\r
1724     virtual SVGPoint getStartPositionOfChar (unsigned long charnum )\r
1725                                               throw( DOMException );\r
1726 \r
1727     /**\r
1728      *\r
1729      */\r
1730     virtual SVGPoint getEndPositionOfChar (unsigned long charnum )\r
1731                                            throw( DOMException );\r
1732 \r
1733     /**\r
1734      *\r
1735      */\r
1736     virtual SVGRect getExtentOfChar (unsigned long charnum )\r
1737                                       throw( DOMException );\r
1738 \r
1739     /**\r
1740      *\r
1741      */\r
1742     virtual double getRotationOfChar (unsigned long charnum )\r
1743                                      throw( DOMException );\r
1744 \r
1745     /**\r
1746      *\r
1747      */\r
1748     virtual long getCharNumAtPosition (const SVGPoint &point );\r
1749 \r
1750     /**\r
1751      *\r
1752      */\r
1753     virtual void selectSubString (unsigned long charnum, unsigned long nchars )\r
1754                                   throw( DOMException );\r
1755 \r
1756 \r
1757 \r
1758     //##################\r
1759     //# Non-API methods\r
1760     //##################\r
1761 \r
1762     /**\r
1763      *\r
1764      */\r
1765     virtual ~SVGTextContentElementImpl() {}\r
1766 \r
1767 protected:\r
1768 \r
1769 \r
1770 };\r
1771 \r
1772 \r
1773 \r
1774 \r
1775 \r
1776 \r
1777 /*#########################################################################\r
1778 ## SVGTextPositioningElementImpl\r
1779 #########################################################################*/\r
1780 \r
1781 /**\r
1782  *\r
1783  */\r
1784 class SVGTextPositioningElementImpl : virtual public SVGTextPositioningElement,\r
1785                                       public SVGTextContentElementImpl\r
1786 {\r
1787 public:\r
1788 \r
1789 \r
1790 \r
1791     /**\r
1792      *\r
1793      */\r
1794     virtual SVGAnimatedLength getX()\r
1795         { return x; }\r
1796 \r
1797     /**\r
1798      *\r
1799      */\r
1800     virtual SVGAnimatedLength getY()\r
1801         { return y; }\r
1802 \r
1803     /**\r
1804      *\r
1805      */\r
1806     virtual SVGAnimatedLength getDx()\r
1807         { return dx; }\r
1808 \r
1809     /**\r
1810      *\r
1811      */\r
1812     virtual SVGAnimatedLength getDy()\r
1813         { return dy; }\r
1814 \r
1815 \r
1816     /**\r
1817      *\r
1818      */\r
1819     virtual SVGAnimatedNumberList getRotate()\r
1820         { return rotate; }\r
1821 \r
1822 \r
1823 \r
1824     //##################\r
1825     //# Non-API methods\r
1826     //##################\r
1827 \r
1828     /**\r
1829      *\r
1830      */\r
1831     virtual ~SVGTextPositioningElementImpl() {}\r
1832 \r
1833 protected:\r
1834 \r
1835     SVGAnimatedLength x;\r
1836     SVGAnimatedLength y;\r
1837     SVGAnimatedLength dx;\r
1838     SVGAnimatedLength dy;\r
1839     SVGAnimatedNumberList rotate;\r
1840 \r
1841 };\r
1842 \r
1843 \r
1844 \r
1845 \r
1846 \r
1847 \r
1848 \r
1849 /*#########################################################################\r
1850 ## SVGTextElement\r
1851 #########################################################################*/\r
1852 \r
1853 /**\r
1854  *\r
1855  */\r
1856 class SVGTextElementImpl : virtual public SVGTextElement,\r
1857                            public SVGTextPositioningElementImpl\r
1858 {\r
1859 public:\r
1860 \r
1861     //##################\r
1862     //# Non-API methods\r
1863     //##################\r
1864 \r
1865     /**\r
1866      *\r
1867      */\r
1868     virtual ~SVGTextElementImpl() {}\r
1869 \r
1870 protected:\r
1871 \r
1872 \r
1873 };\r
1874 \r
1875 \r
1876 \r
1877 \r
1878 \r
1879 /*#########################################################################\r
1880 ## SVGTSpanElement\r
1881 #########################################################################*/\r
1882 \r
1883 /**\r
1884  *\r
1885  */\r
1886 class SVGTSpanElementImpl : virtual public SVGTSpanElement,\r
1887                             public SVGTextPositioningElementImpl\r
1888 {\r
1889 public:\r
1890 \r
1891     //##################\r
1892     //# Non-API methods\r
1893     //##################\r
1894 \r
1895     /**\r
1896      *\r
1897      */\r
1898     virtual ~SVGTSpanElementImpl() {}\r
1899 \r
1900 protected:\r
1901 \r
1902 \r
1903 };\r
1904 \r
1905 \r
1906 \r
1907 \r
1908 \r
1909 /*#########################################################################\r
1910 ## SVGTRefElement\r
1911 #########################################################################*/\r
1912 \r
1913 /**\r
1914  *\r
1915  */\r
1916 class SVGTRefElementImpl : virtual public SVGTRefElement,\r
1917                            public SVGTextPositioningElementImpl\r
1918 {\r
1919 public:\r
1920 \r
1921     //##################\r
1922     //# Non-API methods\r
1923     //##################\r
1924 \r
1925     /**\r
1926      *\r
1927      */\r
1928     virtual ~SVGTRefElementImpl() {}\r
1929 \r
1930 protected:\r
1931 \r
1932 \r
1933 };\r
1934 \r
1935 \r
1936 \r
1937 \r
1938 \r
1939 /*#########################################################################\r
1940 ## SVGTextPathElement\r
1941 #########################################################################*/\r
1942 \r
1943 /**\r
1944  *\r
1945  */\r
1946 class SVGTextPathElementImpl : virtual public SVGTextPathElement,\r
1947                                public SVGTextContentElementImpl\r
1948 {\r
1949 public:\r
1950 \r
1951     /**\r
1952      *\r
1953      */\r
1954     virtual SVGAnimatedLength getStartOffset()\r
1955         { return startOffset; }\r
1956 \r
1957     /**\r
1958      *\r
1959      */\r
1960     virtual SVGAnimatedEnumeration getMethod()\r
1961         { return method; }\r
1962 \r
1963     /**\r
1964      *\r
1965      */\r
1966     virtual SVGAnimatedEnumeration getSpacing()\r
1967         { return spacing; }\r
1968 \r
1969 \r
1970 \r
1971     //##################\r
1972     //# Non-API methods\r
1973     //##################\r
1974 \r
1975     /**\r
1976      *\r
1977      */\r
1978     virtual ~SVGTextPathElementImpl() {}\r
1979 \r
1980 protected:\r
1981 \r
1982     SVGAnimatedLength startOffset;\r
1983     SVGAnimatedEnumeration method;\r
1984     SVGAnimatedEnumeration spacing;\r
1985 };\r
1986 \r
1987 \r
1988 \r
1989 \r
1990 \r
1991 \r
1992 \r
1993 /*#########################################################################\r
1994 ## SVGAltGlyphElement\r
1995 #########################################################################*/\r
1996 \r
1997 /**\r
1998  *\r
1999  */\r
2000 class SVGAltGlyphElementImpl : virtual public SVGAltGlyphElement,\r
2001                                public SVGTextPositioningElementImpl\r
2002 {\r
2003 public:\r
2004 \r
2005     /**\r
2006      *\r
2007      */\r
2008     virtual DOMString getGlyphRef()\r
2009         { return glyphRef; }\r
2010 \r
2011     /**\r
2012      *\r
2013      */\r
2014     virtual void setGlyphRef(const DOMString &val)\r
2015                              throw (DOMException)\r
2016         { glyphRef = val; }\r
2017 \r
2018     /**\r
2019      *\r
2020      */\r
2021     virtual DOMString getFormat()\r
2022         { return format; }\r
2023 \r
2024     /**\r
2025      *\r
2026      */\r
2027     virtual void setFormat(const DOMString &val)\r
2028                            throw (DOMException)\r
2029         { format = val; }\r
2030 \r
2031 \r
2032 \r
2033 \r
2034     //##################\r
2035     //# Non-API methods\r
2036     //##################\r
2037 \r
2038     /**\r
2039      *\r
2040      */\r
2041     virtual ~SVGAltGlyphElementImpl() {}\r
2042 \r
2043 protected:\r
2044 \r
2045     DOMString glyphRef;\r
2046     DOMString format;\r
2047 \r
2048 };\r
2049 \r
2050 \r
2051 \r
2052 \r
2053 \r
2054 \r
2055 \r
2056 /*#########################################################################\r
2057 ## SVGAltGlyphDefElementImpl\r
2058 #########################################################################*/\r
2059 \r
2060 /**\r
2061  *\r
2062  */\r
2063 class SVGAltGlyphDefElementImpl : virtual public SVGAltGlyphDefElement,\r
2064                                   public SVGElementImpl\r
2065 {\r
2066 public:\r
2067 \r
2068     //##################\r
2069     //# Non-API methods\r
2070     //##################\r
2071 \r
2072     /**\r
2073      *\r
2074      */\r
2075     virtual ~SVGAltGlyphDefElementImpl() {}\r
2076 \r
2077 protected:\r
2078 \r
2079 \r
2080 };\r
2081 \r
2082 \r
2083 \r
2084 \r
2085 \r
2086 /*#########################################################################\r
2087 ## SVGAltGlyphItemElementImpl\r
2088 #########################################################################*/\r
2089 \r
2090 /**\r
2091  *\r
2092  */\r
2093 class SVGAltGlyphItemElementImpl : virtual public SVGAltGlyphItemElement,\r
2094                                    public SVGElementImpl\r
2095 {\r
2096 public:\r
2097 \r
2098     //##################\r
2099     //# Non-API methods\r
2100     //##################\r
2101 \r
2102     /**\r
2103      *\r
2104      */\r
2105     virtual ~SVGAltGlyphItemElementImpl() {}\r
2106 \r
2107 protected:\r
2108 \r
2109 \r
2110 };\r
2111 \r
2112 \r
2113 \r
2114 \r
2115 \r
2116 /*#########################################################################\r
2117 ## SVGGlyphRefElementImpl\r
2118 #########################################################################*/\r
2119 \r
2120 /**\r
2121  *\r
2122  */\r
2123 class SVGGlyphRefElementImpl : virtual public SVGGlyphRefElement,\r
2124                                public SVGElementImpl\r
2125 {\r
2126 public:\r
2127     /**\r
2128      *\r
2129      */\r
2130     virtual DOMString getGlyphRef()\r
2131         { return glyphRef; }\r
2132 \r
2133     /**\r
2134      *\r
2135      */\r
2136     virtual void setGlyphRef(const DOMString &val) throw (DOMException)\r
2137         { glyphRef = val; }\r
2138 \r
2139     /**\r
2140      *\r
2141      */\r
2142     virtual DOMString getFormat()\r
2143         { return format; }\r
2144 \r
2145     /**\r
2146      *\r
2147      */\r
2148     virtual void setFormat(const DOMString &val) throw (DOMException)\r
2149         { format = val; }\r
2150 \r
2151     /**\r
2152      *\r
2153      */\r
2154     virtual double getX()\r
2155         { return x; }\r
2156 \r
2157     /**\r
2158      *\r
2159      */\r
2160     virtual void setX(double val) throw (DOMException)\r
2161         { x = val; }\r
2162 \r
2163     /**\r
2164      *\r
2165      */\r
2166     virtual double getY()\r
2167         { return y; }\r
2168 \r
2169     /**\r
2170      *\r
2171      */\r
2172     virtual void setY(double val) throw (DOMException)\r
2173         { y = val; }\r
2174 \r
2175     /**\r
2176      *\r
2177      */\r
2178     virtual double getDx()\r
2179         { return dx; }\r
2180 \r
2181     /**\r
2182      *\r
2183      */\r
2184     virtual void setDx(double val) throw (DOMException)\r
2185         { dx = val; }\r
2186 \r
2187     /**\r
2188      *\r
2189      */\r
2190     virtual double getDy()\r
2191         { return dy; }\r
2192 \r
2193     /**\r
2194      *\r
2195      */\r
2196     virtual void setDy(double val) throw (DOMException)\r
2197         { dy = val; }\r
2198 \r
2199 \r
2200 \r
2201 \r
2202     //##################\r
2203     //# Non-API methods\r
2204     //##################\r
2205 \r
2206     /**\r
2207      *\r
2208      */\r
2209     virtual ~SVGGlyphRefElementImpl() {}\r
2210 \r
2211 protected:\r
2212 \r
2213     DOMString glyphRef;\r
2214     DOMString format;\r
2215     double x, y, dx, dy;\r
2216 \r
2217 };\r
2218 \r
2219 \r
2220 \r
2221 \r
2222 \r
2223 \r
2224 /*#########################################################################\r
2225 ## SVGMarkerElementImpl\r
2226 #########################################################################*/\r
2227 \r
2228 /**\r
2229  *\r
2230  */\r
2231 class SVGMarkerElementImpl : virtual public SVGMarkerElement,\r
2232                              public SVGElementImpl\r
2233 {\r
2234 public:\r
2235 \r
2236     /**\r
2237      *\r
2238      */\r
2239     virtual SVGAnimatedLength getRefX()\r
2240         { return refX; }\r
2241 \r
2242     /**\r
2243      *\r
2244      */\r
2245     virtual SVGAnimatedLength getRefY()\r
2246         { return refY; }\r
2247 \r
2248     /**\r
2249      *\r
2250      */\r
2251     virtual SVGAnimatedEnumeration getMarkerUnits()\r
2252         { return markerUnits; }\r
2253 \r
2254     /**\r
2255      *\r
2256      */\r
2257     virtual SVGAnimatedLength getMarkerWidth()\r
2258         { return markerWidth; }\r
2259 \r
2260     /**\r
2261      *\r
2262      */\r
2263     virtual SVGAnimatedLength getMarkerHeight()\r
2264         { return markerHeight; }\r
2265 \r
2266     /**\r
2267      *\r
2268      */\r
2269     virtual SVGAnimatedEnumeration getOrientType()\r
2270         { return orientType; }\r
2271 \r
2272     /**\r
2273      *\r
2274      */\r
2275     virtual SVGAnimatedAngle getOrientAngle()\r
2276         { return orientAngle; }\r
2277 \r
2278 \r
2279     /**\r
2280      *\r
2281      */\r
2282     virtual void setOrientToAuto (  )\r
2283         { orientAuto = true; }\r
2284 \r
2285     /**\r
2286      *\r
2287      */\r
2288     virtual void setOrientToAngle (const SVGAngle &angle)\r
2289         {\r
2290         orientAuto = false;\r
2291         orientAngle = SVGAnimatedAngle(angle);\r
2292         }\r
2293 \r
2294 \r
2295 \r
2296     //##################\r
2297     //# Non-API methods\r
2298     //##################\r
2299 \r
2300     /**\r
2301      *\r
2302      */\r
2303     virtual ~SVGMarkerElementImpl() {}\r
2304 \r
2305 protected:\r
2306 \r
2307     SVGAnimatedLength      refX;\r
2308     SVGAnimatedLength      refY;\r
2309     SVGAnimatedEnumeration markerUnits;\r
2310     SVGAnimatedLength      markerWidth;\r
2311     SVGAnimatedLength      markerHeight;\r
2312     SVGAnimatedEnumeration orientType;\r
2313     SVGAnimatedAngle       orientAngle;\r
2314     bool                   orientAuto;\r
2315 \r
2316 \r
2317 };\r
2318 \r
2319 \r
2320 \r
2321 \r
2322 \r
2323 \r
2324 \r
2325 /*#########################################################################\r
2326 ## SVGColorProfileElementImpl\r
2327 #########################################################################*/\r
2328 \r
2329 /**\r
2330  *\r
2331  */\r
2332 class SVGColorProfileElementImpl : virtual public SVGColorProfileElement,\r
2333                                    public SVGElementImpl\r
2334 {\r
2335 public:\r
2336     /**\r
2337      *\r
2338      */\r
2339     virtual DOMString getLocal()\r
2340         { return local; }\r
2341 \r
2342     /**\r
2343      *\r
2344      */\r
2345     virtual void setLocal(const DOMString &val) throw (DOMException)\r
2346         { local = val; }\r
2347 \r
2348     /**\r
2349      *\r
2350      */\r
2351     virtual DOMString getName()\r
2352         { return name; }\r
2353 \r
2354     /**\r
2355      *\r
2356      */\r
2357     virtual void setName(const DOMString &val) throw (DOMException)\r
2358        { name = val; }\r
2359 \r
2360     /**\r
2361      *\r
2362      */\r
2363     virtual unsigned short getRenderingIntent()\r
2364         { return renderingIntent; }\r
2365 \r
2366     /**\r
2367      *\r
2368      */\r
2369     virtual void setRenderingIntent(unsigned short val) throw (DOMException)\r
2370        { renderingIntent = val; }\r
2371 \r
2372 \r
2373 \r
2374     //##################\r
2375     //# Non-API methods\r
2376     //##################\r
2377 \r
2378     /**\r
2379      *\r
2380      */\r
2381     virtual ~SVGColorProfileElementImpl() {}\r
2382 \r
2383 protected:\r
2384 \r
2385     DOMString local;\r
2386     DOMString name;\r
2387     unsigned short renderingIntent;\r
2388 \r
2389 };\r
2390 \r
2391 \r
2392 \r
2393 \r
2394 \r
2395 /*#########################################################################\r
2396 ## SVGGradientElementImpl\r
2397 #########################################################################*/\r
2398 \r
2399 /**\r
2400  *\r
2401  */\r
2402 class SVGGradientElementImpl : virtual public SVGGradientElement,\r
2403                                public SVGElementImpl\r
2404 {\r
2405 public:\r
2406 \r
2407     /**\r
2408      *\r
2409      */\r
2410     virtual SVGAnimatedEnumeration getGradientUnits()\r
2411         { return gradientUnits; }\r
2412 \r
2413     /**\r
2414      *\r
2415      */\r
2416     virtual SVGAnimatedTransformList getGradientTransform()\r
2417         { return gradientTransform; }\r
2418 \r
2419     /**\r
2420      *\r
2421      */\r
2422     virtual SVGAnimatedEnumeration getSpreadMethod()\r
2423         { return spreadMethod; }\r
2424 \r
2425 \r
2426 \r
2427     //##################\r
2428     //# Non-API methods\r
2429     //##################\r
2430 \r
2431     /**\r
2432      *\r
2433      */\r
2434     virtual ~SVGGradientElementImpl() {}\r
2435 \r
2436 protected:\r
2437 \r
2438 \r
2439     SVGAnimatedEnumeration   gradientUnits;\r
2440     SVGAnimatedTransformList gradientTransform;\r
2441     SVGAnimatedEnumeration   spreadMethod;\r
2442 };\r
2443 \r
2444 \r
2445 \r
2446 \r
2447 \r
2448 \r
2449 \r
2450 /*#########################################################################\r
2451 ## SVGLinearGradientElementImpl\r
2452 #########################################################################*/\r
2453 \r
2454 /**\r
2455  *\r
2456  */\r
2457 class SVGLinearGradientElementImpl : virtual public SVGLinearGradientElement,\r
2458                                      public SVGGradientElementImpl\r
2459 {\r
2460 public:\r
2461 \r
2462 \r
2463     /**\r
2464      *\r
2465      */\r
2466     virtual SVGAnimatedLength getX1()\r
2467         { return x1; }\r
2468 \r
2469     /**\r
2470      *\r
2471      */\r
2472     virtual SVGAnimatedLength getY1()\r
2473         { return y1; }\r
2474 \r
2475     /**\r
2476      *\r
2477      */\r
2478     virtual SVGAnimatedLength getX2()\r
2479         { return x2; }\r
2480 \r
2481     /**\r
2482      *\r
2483      */\r
2484     virtual SVGAnimatedLength getY2()\r
2485         { return y2; }\r
2486 \r
2487 \r
2488     //##################\r
2489     //# Non-API methods\r
2490     //##################\r
2491 \r
2492     /**\r
2493      *\r
2494      */\r
2495     virtual ~SVGLinearGradientElementImpl() {}\r
2496 \r
2497 protected:\r
2498 \r
2499     SVGAnimatedLength x1, x2, y1, y2;\r
2500 \r
2501 };\r
2502 \r
2503 \r
2504 \r
2505 \r
2506 \r
2507 \r
2508 \r
2509 /*#########################################################################\r
2510 ## SVGRadialGradientElementImpl\r
2511 #########################################################################*/\r
2512 \r
2513 /**\r
2514  *\r
2515  */\r
2516 class SVGRadialGradientElementImpl : virtual public SVGRadialGradientElement,\r
2517                                      public SVGGradientElementImpl\r
2518 {\r
2519 public:\r
2520 \r
2521 \r
2522     /**\r
2523      *\r
2524      */\r
2525     virtual SVGAnimatedLength getCx()\r
2526         { return cx; }\r
2527 \r
2528 \r
2529     /**\r
2530      *\r
2531      */\r
2532     virtual SVGAnimatedLength getCy()\r
2533         { return cy; }\r
2534 \r
2535 \r
2536     /**\r
2537      *\r
2538      */\r
2539     virtual SVGAnimatedLength getR()\r
2540         { return r; }\r
2541 \r
2542 \r
2543     /**\r
2544      *\r
2545      */\r
2546     virtual SVGAnimatedLength getFx()\r
2547         { return fx; }\r
2548 \r
2549 \r
2550     /**\r
2551      *\r
2552      */\r
2553     virtual SVGAnimatedLength getFy()\r
2554         { return fy; }\r
2555 \r
2556 \r
2557 \r
2558 \r
2559     //##################\r
2560     //# Non-API methods\r
2561     //##################\r
2562 \r
2563     /**\r
2564      *\r
2565      */\r
2566     virtual ~SVGRadialGradientElementImpl() {}\r
2567 \r
2568 protected:\r
2569 \r
2570     SVGAnimatedLength cx, cy, r, fx, fy;\r
2571 \r
2572 };\r
2573 \r
2574 \r
2575 \r
2576 \r
2577 \r
2578 \r
2579 \r
2580 /*#########################################################################\r
2581 ## SVGStopElementImpl\r
2582 #########################################################################*/\r
2583 \r
2584 /**\r
2585  *\r
2586  */\r
2587 class SVGStopElementImpl : virtual public SVGStopElement,\r
2588                            public SVGElementImpl\r
2589 {\r
2590 public:\r
2591 \r
2592     /**\r
2593      *\r
2594      */\r
2595     virtual SVGAnimatedNumber getOffset()\r
2596         { return offset; }\r
2597 \r
2598 \r
2599 \r
2600     //##################\r
2601     //# Non-API methods\r
2602     //##################\r
2603 \r
2604     /**\r
2605      *\r
2606      */\r
2607     virtual ~SVGStopElementImpl() {}\r
2608 \r
2609 protected:\r
2610 \r
2611     SVGAnimatedNumber offset;\r
2612 \r
2613 };\r
2614 \r
2615 \r
2616 \r
2617 \r
2618 \r
2619 \r
2620 \r
2621 /*#########################################################################\r
2622 ## SVGPatternElementImpl\r
2623 #########################################################################*/\r
2624 \r
2625 /**\r
2626  *\r
2627  */\r
2628 class SVGPatternElementImpl : virtual public SVGPatternElement,\r
2629                               public SVGElementImpl\r
2630 {\r
2631 public:\r
2632 \r
2633     /**\r
2634      *\r
2635      */\r
2636     virtual SVGAnimatedEnumeration getPatternUnits()\r
2637         { return patternUnits; }\r
2638 \r
2639     /**\r
2640      *\r
2641      */\r
2642     virtual SVGAnimatedEnumeration getPatternContentUnits()\r
2643         { return patternContentUnits; }\r
2644 \r
2645     /**\r
2646      *\r
2647      */\r
2648     virtual SVGAnimatedTransformList getPatternTransform()\r
2649         { return patternTransform; }\r
2650 \r
2651     /**\r
2652      *\r
2653      */\r
2654     virtual SVGAnimatedLength getX()\r
2655         { return x; }\r
2656 \r
2657     /**\r
2658      *\r
2659      */\r
2660     virtual SVGAnimatedLength getY()\r
2661         { return y; }\r
2662 \r
2663     /**\r
2664      *\r
2665      */\r
2666     virtual SVGAnimatedLength getWidth()\r
2667         { return width; }\r
2668 \r
2669     /**\r
2670      *\r
2671      */\r
2672     virtual SVGAnimatedLength getHeight()\r
2673         { return height; }\r
2674 \r
2675 \r
2676 \r
2677     //##################\r
2678     //# Non-API methods\r
2679     //##################\r
2680 \r
2681     /**\r
2682      *\r
2683      */\r
2684     virtual ~SVGPatternElementImpl() {}\r
2685 \r
2686 protected:\r
2687 \r
2688 \r
2689     SVGAnimatedEnumeration   patternUnits;\r
2690     SVGAnimatedEnumeration   patternContentUnits;\r
2691     SVGAnimatedTransformList patternTransform;\r
2692     SVGAnimatedLength        x;\r
2693     SVGAnimatedLength        y;\r
2694     SVGAnimatedLength        width;\r
2695     SVGAnimatedLength        height;\r
2696 };\r
2697 \r
2698 \r
2699 \r
2700 \r
2701 \r
2702 \r
2703 \r
2704 /*#########################################################################\r
2705 ## SVGClipPathElementImpl\r
2706 #########################################################################*/\r
2707 \r
2708 /**\r
2709  *\r
2710  */\r
2711 class SVGClipPathElementImpl : virtual public SVGClipPathElement,\r
2712                                public SVGElementImpl\r
2713 {\r
2714 public:\r
2715 \r
2716     /**\r
2717      *\r
2718      */\r
2719     virtual SVGAnimatedEnumeration getClipPathUnits()\r
2720         { return clipPathUnits; }\r
2721 \r
2722     //##################\r
2723     //# Non-API methods\r
2724     //##################\r
2725 \r
2726     /**\r
2727      *\r
2728      */\r
2729     virtual ~SVGClipPathElementImpl() {}\r
2730 \r
2731 protected:\r
2732 \r
2733     SVGAnimatedEnumeration clipPathUnits;\r
2734 \r
2735 };\r
2736 \r
2737 \r
2738 \r
2739 \r
2740 \r
2741 \r
2742 \r
2743 /*#########################################################################\r
2744 ## SVGMaskElementImpl\r
2745 #########################################################################*/\r
2746 \r
2747 /**\r
2748  *\r
2749  */\r
2750 class SVGMaskElementImpl : virtual public SVGMaskElement,\r
2751                            public SVGElementImpl\r
2752 {\r
2753 public:\r
2754 \r
2755     /**\r
2756      *\r
2757      */\r
2758     virtual SVGAnimatedEnumeration getMaskUnits()\r
2759         { return maskUnits; }\r
2760 \r
2761     /**\r
2762      *\r
2763      */\r
2764     virtual SVGAnimatedEnumeration getMaskContentUnits()\r
2765         { return maskContentUnits; }\r
2766 \r
2767     /**\r
2768      *\r
2769      */\r
2770     virtual SVGAnimatedLength getX()\r
2771         { return x; }\r
2772 \r
2773     /**\r
2774      *\r
2775      */\r
2776     virtual SVGAnimatedLength getY()\r
2777         { return y; }\r
2778 \r
2779     /**\r
2780      *\r
2781      */\r
2782     virtual SVGAnimatedLength getWidth()\r
2783         { return width; }\r
2784 \r
2785     /**\r
2786      *\r
2787      */\r
2788     virtual SVGAnimatedLength getHeight()\r
2789         { return height; }\r
2790 \r
2791     //##################\r
2792     //# Non-API methods\r
2793     //##################\r
2794 \r
2795     /**\r
2796      *\r
2797      */\r
2798     virtual ~SVGMaskElementImpl() {}\r
2799 \r
2800 protected:\r
2801 \r
2802 \r
2803     SVGAnimatedEnumeration maskUnits;\r
2804     SVGAnimatedEnumeration maskContentUnits;\r
2805     SVGAnimatedLength      x;\r
2806     SVGAnimatedLength      y;\r
2807     SVGAnimatedLength      width;\r
2808     SVGAnimatedLength      height;\r
2809 };\r
2810 \r
2811 \r
2812 \r
2813 \r
2814 \r
2815 \r
2816 \r
2817 /*#########################################################################\r
2818 ## SVGFilterElementImpl\r
2819 #########################################################################*/\r
2820 \r
2821 /**\r
2822  *\r
2823  */\r
2824 class SVGFilterElementImpl : virtual public SVGFilterElement,\r
2825                              public SVGElementImpl\r
2826 {\r
2827 public:\r
2828 \r
2829     /**\r
2830      *\r
2831      */\r
2832     virtual SVGAnimatedEnumeration getFilterUnits()\r
2833         { return filterUnits; }\r
2834 \r
2835     /**\r
2836      *\r
2837      */\r
2838     virtual SVGAnimatedEnumeration getPrimitiveUnits()\r
2839         { return filterUnits; }\r
2840 \r
2841     /**\r
2842      *\r
2843      */\r
2844     virtual SVGAnimatedLength getX()\r
2845         { return x; }\r
2846 \r
2847     /**\r
2848      *\r
2849      */\r
2850     virtual SVGAnimatedLength getY()\r
2851         { return y; }\r
2852 \r
2853     /**\r
2854      *\r
2855      */\r
2856     virtual SVGAnimatedLength getWidth()\r
2857         { return width; }\r
2858 \r
2859     /**\r
2860      *\r
2861      */\r
2862     virtual SVGAnimatedLength getHeight()\r
2863         { return height; }\r
2864 \r
2865     /**\r
2866      *\r
2867      */\r
2868     virtual SVGAnimatedInteger getFilterResX()\r
2869         { return filterResX; }\r
2870 \r
2871     /**\r
2872      *\r
2873      */\r
2874     virtual SVGAnimatedInteger getFilterResY()\r
2875         { return filterResY; }\r
2876 \r
2877     /**\r
2878      *\r
2879      */\r
2880     virtual void setFilterRes (unsigned long filterResXArg,\r
2881                                unsigned long filterResYArg )\r
2882         {\r
2883         filterResX = filterResXArg;\r
2884         filterResY = filterResYArg;\r
2885         }\r
2886 \r
2887 \r
2888 \r
2889     //##################\r
2890     //# Non-API methods\r
2891     //##################\r
2892 \r
2893     /**\r
2894      *\r
2895      */\r
2896     virtual ~SVGFilterElementImpl() {}\r
2897 \r
2898 protected:\r
2899 \r
2900     SVGAnimatedEnumeration filterUnits;\r
2901     SVGAnimatedEnumeration primitiveUnits;\r
2902     SVGAnimatedLength      x;\r
2903     SVGAnimatedLength      y;\r
2904     SVGAnimatedLength      width;\r
2905     SVGAnimatedLength      height;\r
2906     SVGAnimatedInteger     filterResX;\r
2907     SVGAnimatedInteger     filterResY;\r
2908 \r
2909 };\r
2910 \r
2911 \r
2912 \r
2913 \r
2914 \r
2915 \r
2916 /*#########################################################################\r
2917 ## SVGFEBlendElementImpl\r
2918 #########################################################################*/\r
2919 \r
2920 /**\r
2921  *\r
2922  */\r
2923 class SVGFEBlendElementImpl : virtual public SVGFEBlendElement,\r
2924                               public SVGElementImpl\r
2925 {\r
2926 public:\r
2927 \r
2928     /**\r
2929      *\r
2930      */\r
2931     virtual SVGAnimatedString getIn1()\r
2932         { return in1; }\r
2933 \r
2934     /**\r
2935      *\r
2936      */\r
2937     virtual SVGAnimatedString getIn2()\r
2938         { return in2; }\r
2939 \r
2940     /**\r
2941      *\r
2942      */\r
2943     virtual SVGAnimatedEnumeration getMode()\r
2944         { return mode; }\r
2945 \r
2946 \r
2947     //##################\r
2948     //# Non-API methods\r
2949     //##################\r
2950 \r
2951     /**\r
2952      *\r
2953      */\r
2954     virtual ~SVGFEBlendElementImpl() {}\r
2955 \r
2956 protected:\r
2957 \r
2958     SVGAnimatedString in1, in2;\r
2959     SVGAnimatedEnumeration mode;\r
2960 };\r
2961 \r
2962 \r
2963 \r
2964 \r
2965 \r
2966 \r
2967 \r
2968 /*#########################################################################\r
2969 ## SVGFEColorMatrixElementImpl\r
2970 #########################################################################*/\r
2971 \r
2972 /**\r
2973  *\r
2974  */\r
2975 class SVGFEColorMatrixElementImpl : virtual public SVGFEColorMatrixElement,\r
2976                                     public SVGElementImpl\r
2977 {\r
2978 public:\r
2979 \r
2980     /**\r
2981      *\r
2982      */\r
2983     virtual SVGAnimatedString getIn1()\r
2984         { return in1; }\r
2985 \r
2986     /**\r
2987      *\r
2988      */\r
2989     virtual SVGAnimatedEnumeration getType()\r
2990         { return type; }\r
2991 \r
2992     /**\r
2993      *\r
2994      */\r
2995     virtual SVGAnimatedNumberList getValues()\r
2996         { return values; }\r
2997 \r
2998 \r
2999 \r
3000     //##################\r
3001     //# Non-API methods\r
3002     //##################\r
3003 \r
3004     /**\r
3005      *\r
3006      */\r
3007     virtual ~SVGFEColorMatrixElementImpl() {}\r
3008 \r
3009 protected:\r
3010 \r
3011     SVGAnimatedString in1;\r
3012     SVGAnimatedEnumeration type;\r
3013     SVGAnimatedNumberList values;\r
3014 \r
3015 };\r
3016 \r
3017 \r
3018 \r
3019 \r
3020 \r
3021 \r
3022 \r
3023 /*#########################################################################\r
3024 ## SVGFEComponentTransferElementImpl\r
3025 #########################################################################*/\r
3026 \r
3027 /**\r
3028  *\r
3029  */\r
3030 class SVGFEComponentTransferElementImpl :\r
3031                         virtual public SVGFEComponentTransferElement,\r
3032                         public SVGElementImpl\r
3033 {\r
3034 public:\r
3035     /**\r
3036      *\r
3037      */\r
3038     virtual SVGAnimatedString getIn1()\r
3039         { return in1; }\r
3040 \r
3041     //##################\r
3042     //# Non-API methods\r
3043     //##################\r
3044 \r
3045     /**\r
3046      *\r
3047      */\r
3048     virtual ~SVGFEComponentTransferElementImpl() {}\r
3049 \r
3050 protected:\r
3051 \r
3052     SVGAnimatedString in1;\r
3053 \r
3054 };\r
3055 \r
3056 \r
3057 \r
3058 \r
3059 \r
3060 \r
3061 \r
3062 /*#########################################################################\r
3063 ## SVGComponentTransferFunctionElementImpl\r
3064 #########################################################################*/\r
3065 \r
3066 /**\r
3067  *\r
3068  */\r
3069 class SVGComponentTransferFunctionElementImpl :\r
3070                             virtual public SVGComponentTransferFunctionElement,\r
3071                             public SVGElementImpl\r
3072 {\r
3073 public:\r
3074 \r
3075     /**\r
3076      *\r
3077      */\r
3078     virtual SVGAnimatedEnumeration getType()\r
3079         { return type; }\r
3080 \r
3081     /**\r
3082      *\r
3083      */\r
3084     virtual SVGAnimatedNumberList getTableValues()\r
3085         { return tableValues; }\r
3086 \r
3087     /**\r
3088      *\r
3089      */\r
3090     virtual SVGAnimatedNumber getSlope()\r
3091         { return slope; }\r
3092 \r
3093     /**\r
3094      *\r
3095      */\r
3096     virtual SVGAnimatedNumber getIntercept()\r
3097         { return intercept; }\r
3098 \r
3099     /**\r
3100      *\r
3101      */\r
3102     virtual SVGAnimatedNumber getAmplitude()\r
3103         { return amplitude; }\r
3104 \r
3105     /**\r
3106      *\r
3107      */\r
3108     virtual SVGAnimatedNumber getExponent()\r
3109         { return exponent; }\r
3110 \r
3111     /**\r
3112      *\r
3113      */\r
3114     virtual SVGAnimatedNumber getOffset()\r
3115         { return offset; }\r
3116 \r
3117 \r
3118     //##################\r
3119     //# Non-API methods\r
3120     //##################\r
3121 \r
3122     /**\r
3123      *\r
3124      */\r
3125     virtual ~SVGComponentTransferFunctionElementImpl() {}\r
3126 \r
3127 protected:\r
3128 \r
3129     SVGAnimatedEnumeration type;\r
3130     SVGAnimatedNumberList  tableValues;\r
3131     SVGAnimatedNumber      slope;\r
3132     SVGAnimatedNumber      intercept;\r
3133     SVGAnimatedNumber      amplitude;\r
3134     SVGAnimatedNumber      exponent;\r
3135     SVGAnimatedNumber      offset;\r
3136 \r
3137 };\r
3138 \r
3139 \r
3140 \r
3141 \r
3142 \r
3143 \r
3144 \r
3145 /*#########################################################################\r
3146 ## SVGFEFuncRElementImpl\r
3147 #########################################################################*/\r
3148 \r
3149 /**\r
3150  *\r
3151  */\r
3152 class SVGFEFuncRElementImpl :\r
3153                        virtual public SVGFEFuncRElement,\r
3154                        public SVGComponentTransferFunctionElementImpl\r
3155 {\r
3156 public:\r
3157 \r
3158     //##################\r
3159     //# Non-API methods\r
3160     //##################\r
3161 \r
3162     /**\r
3163      *\r
3164      */\r
3165     virtual ~SVGFEFuncRElementImpl() {}\r
3166 \r
3167 protected:\r
3168 \r
3169 \r
3170 };\r
3171 \r
3172 \r
3173 \r
3174 \r
3175 \r
3176 /*#########################################################################\r
3177 ## SVGFEFuncGElementImpl\r
3178 #########################################################################*/\r
3179 \r
3180 /**\r
3181  *\r
3182  */\r
3183 class SVGFEFuncGElementImpl : virtual public SVGFEFuncGElement,\r
3184                               public SVGComponentTransferFunctionElementImpl\r
3185 {\r
3186 public:\r
3187 \r
3188     //##################\r
3189     //# Non-API methods\r
3190     //##################\r
3191 \r
3192     /**\r
3193      *\r
3194      */\r
3195     virtual ~SVGFEFuncGElementImpl() {}\r
3196 \r
3197 protected:\r
3198 \r
3199 \r
3200 };\r
3201 \r
3202 \r
3203 \r
3204 \r
3205 \r
3206 /*#########################################################################\r
3207 ## SVGFEFuncBElementImpl\r
3208 #########################################################################*/\r
3209 \r
3210 /**\r
3211  *\r
3212  */\r
3213 class SVGFEFuncBElementImpl : virtual public SVGFEFuncBElement,\r
3214                               public SVGComponentTransferFunctionElementImpl\r
3215 {\r
3216 public:\r
3217 \r
3218     //##################\r
3219     //# Non-API methods\r
3220     //##################\r
3221 \r
3222     /**\r
3223      *\r
3224      */\r
3225     virtual ~SVGFEFuncBElementImpl() {}\r
3226 \r
3227 protected:\r
3228 \r
3229 \r
3230 };\r
3231 \r
3232 \r
3233 \r
3234 \r
3235 \r
3236 /*#########################################################################\r
3237 ## SVGFEFuncAElementImpl\r
3238 #########################################################################*/\r
3239 \r
3240 /**\r
3241  *\r
3242  */\r
3243 class SVGFEFuncAElementImpl : virtual public SVGFEFuncAElement,\r
3244                               public SVGComponentTransferFunctionElementImpl\r
3245 {\r
3246 public:\r
3247 \r
3248     //##################\r
3249     //# Non-API methods\r
3250     //##################\r
3251 \r
3252     /**\r
3253      *\r
3254      */\r
3255     virtual ~SVGFEFuncAElementImpl() {}\r
3256 \r
3257 protected:\r
3258 \r
3259 \r
3260 };\r
3261 \r
3262 \r
3263 \r
3264 \r
3265 \r
3266 /*#########################################################################\r
3267 ## SVGFECompositeElementImpl\r
3268 #########################################################################*/\r
3269 \r
3270 /**\r
3271  *\r
3272  */\r
3273 class SVGFECompositeElementImpl : virtual public SVGFECompositeElement,\r
3274                                   public SVGElementImpl\r
3275 {\r
3276 public:\r
3277 \r
3278 \r
3279     /**\r
3280      *\r
3281      */\r
3282     virtual SVGAnimatedString getIn1()\r
3283         { return in1; }\r
3284 \r
3285     /**\r
3286      *\r
3287      */\r
3288     virtual SVGAnimatedString getIn2()\r
3289         { return in2; }\r
3290 \r
3291     /**\r
3292      *\r
3293      */\r
3294     virtual SVGAnimatedEnumeration getOperator()\r
3295         { return ae_operator; }\r
3296 \r
3297     /**\r
3298      *\r
3299      */\r
3300     virtual SVGAnimatedNumber getK1()\r
3301         { return k1; }\r
3302 \r
3303     /**\r
3304      *\r
3305      */\r
3306     virtual SVGAnimatedNumber getK2()\r
3307         { return k2; }\r
3308 \r
3309     /**\r
3310      *\r
3311      */\r
3312     virtual SVGAnimatedNumber getK3()\r
3313         { return k3; }\r
3314 \r
3315     /**\r
3316      *\r
3317      */\r
3318     virtual SVGAnimatedNumber getK4()\r
3319         { return k4; }\r
3320 \r
3321 \r
3322 \r
3323     //##################\r
3324     //# Non-API methods\r
3325     //##################\r
3326 \r
3327     /**\r
3328      *\r
3329      */\r
3330     virtual ~SVGFECompositeElementImpl() {}\r
3331 \r
3332 protected:\r
3333 \r
3334 \r
3335     SVGAnimatedString      in1;\r
3336     SVGAnimatedString      in2;\r
3337     SVGAnimatedEnumeration ae_operator;\r
3338     SVGAnimatedNumber      k1;\r
3339     SVGAnimatedNumber      k2;\r
3340     SVGAnimatedNumber      k3;\r
3341     SVGAnimatedNumber      k4;\r
3342 \r
3343 };\r
3344 \r
3345 \r
3346 \r
3347 \r
3348 \r
3349 \r
3350 \r
3351 /*#########################################################################\r
3352 ## SVGFEConvolveMatrixElementImpl\r
3353 #########################################################################*/\r
3354 \r
3355 /**\r
3356  *\r
3357  */\r
3358 class SVGFEConvolveMatrixElementImpl : virtual public SVGFEConvolveMatrixElement,\r
3359                                        public SVGElementImpl\r
3360 {\r
3361 public:\r
3362 \r
3363     /**\r
3364      *\r
3365      */\r
3366     virtual SVGAnimatedInteger getOrderX()\r
3367         { return orderX; }\r
3368 \r
3369     /**\r
3370      *\r
3371      */\r
3372     virtual SVGAnimatedInteger getOrderY()\r
3373         { return orderY; }\r
3374 \r
3375     /**\r
3376      *\r
3377      */\r
3378     virtual SVGAnimatedNumberList getKernelMatrix()\r
3379         { return kernelMatrix; }\r
3380 \r
3381     /**\r
3382      *\r
3383      */\r
3384     virtual SVGAnimatedNumber getDivisor()\r
3385         { return divisor; }\r
3386 \r
3387     /**\r
3388      *\r
3389      */\r
3390     virtual SVGAnimatedNumber getBias()\r
3391         { return bias; }\r
3392 \r
3393     /**\r
3394      *\r
3395      */\r
3396     virtual SVGAnimatedInteger getTargetX()\r
3397         { return targetX; }\r
3398 \r
3399     /**\r
3400      *\r
3401      */\r
3402     virtual SVGAnimatedInteger getTargetY()\r
3403         { return targetY; }\r
3404 \r
3405     /**\r
3406      *\r
3407      */\r
3408     virtual SVGAnimatedEnumeration getEdgeMode()\r
3409         { return edgeMode; }\r
3410 \r
3411     /**\r
3412      *\r
3413      */\r
3414     virtual SVGAnimatedLength getKernelUnitLengthX()\r
3415         { return kernelUnitLengthX; }\r
3416 \r
3417     /**\r
3418      *\r
3419      */\r
3420     virtual SVGAnimatedLength getKernelUnitLengthY()\r
3421         { return kernelUnitLengthY; }\r
3422 \r
3423     /**\r
3424      *\r
3425      */\r
3426     virtual SVGAnimatedBoolean getPreserveAlpha()\r
3427         { return preserveAlpha; }\r
3428 \r
3429 \r
3430 \r
3431     //##################\r
3432     //# Non-API methods\r
3433     //##################\r
3434 \r
3435     /**\r
3436      *\r
3437      */\r
3438     virtual ~SVGFEConvolveMatrixElementImpl() {}\r
3439 \r
3440 protected:\r
3441 \r
3442     SVGAnimatedInteger     orderX;\r
3443     SVGAnimatedInteger     orderY;\r
3444     SVGAnimatedNumberList  kernelMatrix;\r
3445     SVGAnimatedNumber      divisor;\r
3446     SVGAnimatedNumber      bias;\r
3447     SVGAnimatedInteger     targetX;\r
3448     SVGAnimatedInteger     targetY;\r
3449     SVGAnimatedEnumeration edgeMode;\r
3450     SVGAnimatedLength      kernelUnitLengthX;\r
3451     SVGAnimatedLength      kernelUnitLengthY;\r
3452     SVGAnimatedBoolean     preserveAlpha;\r
3453 \r
3454 };\r
3455 \r
3456 \r
3457 \r
3458 \r
3459 \r
3460 \r
3461 \r
3462 /*#########################################################################\r
3463 ## SVGFEDiffuseLightingElementImpl\r
3464 #########################################################################*/\r
3465 \r
3466 /**\r
3467  *\r
3468  */\r
3469 class SVGFEDiffuseLightingElementImpl : virtual public SVGFEDiffuseLightingElement,\r
3470                                         public SVGElementImpl\r
3471 {\r
3472 public:\r
3473 \r
3474     /**\r
3475      *\r
3476      */\r
3477     virtual SVGAnimatedString getIn1()\r
3478         { return in1; }\r
3479 \r
3480     /**\r
3481      *\r
3482      */\r
3483     virtual SVGAnimatedNumber getSurfaceScale()\r
3484         { return surfaceScale; }\r
3485 \r
3486     /**\r
3487      *\r
3488      */\r
3489     virtual SVGAnimatedNumber getDiffuseConstant()\r
3490         { return diffuseConstant; }\r
3491 \r
3492 \r
3493 \r
3494     //##################\r
3495     //# Non-API methods\r
3496     //##################\r
3497 \r
3498     /**\r
3499      *\r
3500      */\r
3501     virtual ~SVGFEDiffuseLightingElementImpl() {}\r
3502 \r
3503 protected:\r
3504 \r
3505     SVGAnimatedString in1;\r
3506     SVGAnimatedNumber surfaceScale;\r
3507     SVGAnimatedNumber diffuseConstant;\r
3508 \r
3509 };\r
3510 \r
3511 \r
3512 \r
3513 \r
3514 \r
3515 \r
3516 \r
3517 /*#########################################################################\r
3518 ## SVGFEDistantLightElementImpl\r
3519 #########################################################################*/\r
3520 \r
3521 /**\r
3522  *\r
3523  */\r
3524 class SVGFEDistantLightElementImpl : virtual public SVGFEDistantLightElement,\r
3525                                      public SVGElementImpl\r
3526 {\r
3527 public:\r
3528 \r
3529     /**\r
3530      *\r
3531      */\r
3532     virtual SVGAnimatedNumber getAzimuth()\r
3533         { return azimuth; }\r
3534 \r
3535 \r
3536     /**\r
3537      *\r
3538      */\r
3539     virtual SVGAnimatedNumber getElevation()\r
3540         { return elevation; }\r
3541 \r
3542 \r
3543 \r
3544     //##################\r
3545     //# Non-API methods\r
3546     //##################\r
3547 \r
3548     /**\r
3549      *\r
3550      */\r
3551     virtual ~SVGFEDistantLightElementImpl() {}\r
3552 \r
3553 protected:\r
3554 \r
3555     SVGAnimatedNumber azimuth;\r
3556     SVGAnimatedNumber elevation;\r
3557 \r
3558 };\r
3559 \r
3560 \r
3561 \r
3562 \r
3563 \r
3564 \r
3565 \r
3566 /*#########################################################################\r
3567 ## SVGFEPointLightElementImpl\r
3568 #########################################################################*/\r
3569 \r
3570 /**\r
3571  *\r
3572  */\r
3573 class SVGFEPointLightElementImpl : public virtual SVGFEPointLightElement,\r
3574                                    public SVGElementImpl\r
3575 {\r
3576 public:\r
3577 \r
3578     /**\r
3579      *\r
3580      */\r
3581     virtual SVGAnimatedNumber getX()\r
3582         { return x; }\r
3583 \r
3584 \r
3585     /**\r
3586      *\r
3587      */\r
3588     virtual SVGAnimatedNumber getY()\r
3589         { return y; }\r
3590 \r
3591     /**\r
3592      *\r
3593      */\r
3594     virtual SVGAnimatedNumber getZ()\r
3595         { return z; }\r
3596 \r
3597     //##################\r
3598     //# Non-API methods\r
3599     //##################\r
3600 \r
3601     /**\r
3602      *\r
3603      */\r
3604     virtual ~SVGFEPointLightElementImpl() {}\r
3605 \r
3606 protected:\r
3607 \r
3608     SVGAnimatedNumber x, y, z;\r
3609 \r
3610 };\r
3611 \r
3612 \r
3613 \r
3614 \r
3615 \r
3616 \r
3617 \r
3618 /*#########################################################################\r
3619 ## SVGFESpotLightElementImpl\r
3620 #########################################################################*/\r
3621 \r
3622 /**\r
3623  *\r
3624  */\r
3625 class SVGFESpotLightElementImpl : virtual public SVGFESpotLightElement,\r
3626                                   public SVGElementImpl\r
3627 {\r
3628 public:\r
3629 \r
3630     /**\r
3631      *\r
3632      */\r
3633     virtual SVGAnimatedNumber getX()\r
3634         { return x; }\r
3635 \r
3636 \r
3637     /**\r
3638      *\r
3639      */\r
3640     virtual SVGAnimatedNumber getY()\r
3641         { return y; }\r
3642 \r
3643     /**\r
3644      *\r
3645      */\r
3646     virtual SVGAnimatedNumber getZ()\r
3647         { return z; }\r
3648 \r
3649     /**\r
3650      *\r
3651      */\r
3652     virtual SVGAnimatedNumber getPointsAtX()\r
3653         { return pointsAtX; }\r
3654 \r
3655     /**\r
3656      *\r
3657      */\r
3658     virtual SVGAnimatedNumber getPointsAtY()\r
3659         { return pointsAtY; }\r
3660 \r
3661     /**\r
3662      *\r
3663      */\r
3664     virtual SVGAnimatedNumber getPointsAtZ()\r
3665         { return pointsAtZ; }\r
3666 \r
3667     /**\r
3668      *\r
3669      */\r
3670     virtual SVGAnimatedNumber getSpecularExponent()\r
3671         { return specularExponent; }\r
3672 \r
3673     /**\r
3674      *\r
3675      */\r
3676     virtual SVGAnimatedNumber getLimitingConeAngle()\r
3677         { return limitingConeAngle; }\r
3678 \r
3679 \r
3680 \r
3681     //##################\r
3682     //# Non-API methods\r
3683     //##################\r
3684 \r
3685     /**\r
3686      *\r
3687      */\r
3688     virtual ~SVGFESpotLightElementImpl() {}\r
3689 \r
3690 protected:\r
3691 \r
3692     SVGAnimatedNumber x, y, z;\r
3693     SVGAnimatedNumber pointsAtX, pointsAtY, pointsAtZ;\r
3694     SVGAnimatedNumber specularExponent;\r
3695     SVGAnimatedNumber limitingConeAngle;\r
3696 };\r
3697 \r
3698 \r
3699 \r
3700 \r
3701 \r
3702 \r
3703 \r
3704 /*#########################################################################\r
3705 ## SVGFEDisplacementMapElementImpl\r
3706 #########################################################################*/\r
3707 \r
3708 /**\r
3709  *\r
3710  */\r
3711 class SVGFEDisplacementMapElementImpl : virtual public SVGFEDisplacementMapElement,\r
3712                                         public SVGElementImpl\r
3713 {\r
3714 public:\r
3715 \r
3716     /**\r
3717      *\r
3718      */\r
3719     virtual SVGAnimatedString getIn1()\r
3720         { return in1; }\r
3721 \r
3722     /**\r
3723      *\r
3724      */\r
3725     virtual SVGAnimatedString getIn2()\r
3726         { return in2; }\r
3727 \r
3728 \r
3729     /**\r
3730      *\r
3731      */\r
3732     virtual SVGAnimatedNumber getScale()\r
3733         { return scale; }\r
3734 \r
3735     /**\r
3736      *\r
3737      */\r
3738     virtual SVGAnimatedEnumeration getXChannelSelector()\r
3739         { return xChannelSelector; }\r
3740 \r
3741     /**\r
3742      *\r
3743      */\r
3744     virtual SVGAnimatedEnumeration getYChannelSelector()\r
3745         { return yChannelSelector; }\r
3746 \r
3747 \r
3748 \r
3749     //##################\r
3750     //# Non-API methods\r
3751     //##################\r
3752 \r
3753     /**\r
3754      *\r
3755      */\r
3756     virtual ~SVGFEDisplacementMapElementImpl() {}\r
3757 \r
3758 protected:\r
3759 \r
3760     SVGAnimatedString      in1;\r
3761     SVGAnimatedString      in2;\r
3762     SVGAnimatedNumber      scale;\r
3763     SVGAnimatedEnumeration xChannelSelector;\r
3764     SVGAnimatedEnumeration yChannelSelector;\r
3765 \r
3766 };\r
3767 \r
3768 \r
3769 \r
3770 \r
3771 \r
3772 \r
3773 \r
3774 /*#########################################################################\r
3775 ## SVGFEFloodElementImpl\r
3776 #########################################################################*/\r
3777 \r
3778 /**\r
3779  *\r
3780  */\r
3781 class SVGFEFloodElementImpl : virtual public SVGFEFloodElement,\r
3782                               public SVGElementImpl\r
3783 {\r
3784 public:\r
3785     /**\r
3786      *\r
3787      */\r
3788     virtual SVGAnimatedString getIn1()\r
3789         { return in1; }\r
3790 \r
3791 \r
3792     //##################\r
3793     //# Non-API methods\r
3794     //##################\r
3795 \r
3796     /**\r
3797      *\r
3798      */\r
3799     virtual ~SVGFEFloodElementImpl() {}\r
3800 \r
3801 protected:\r
3802 \r
3803     SVGAnimatedString in1;\r
3804 \r
3805 };\r
3806 \r
3807 \r
3808 \r
3809 \r
3810 \r
3811 \r
3812 \r
3813 /*#########################################################################\r
3814 ## SVGFEGaussianBlurElementImpl\r
3815 #########################################################################*/\r
3816 \r
3817 /**\r
3818  *\r
3819  */\r
3820 class SVGFEGaussianBlurElementImpl : virtual public SVGFEGaussianBlurElement,\r
3821                                      public SVGElementImpl\r
3822 {\r
3823 public:\r
3824     /**\r
3825      *\r
3826      */\r
3827     virtual SVGAnimatedString getIn1()\r
3828         { return in1; }\r
3829 \r
3830 \r
3831     /**\r
3832      *\r
3833      */\r
3834     virtual SVGAnimatedNumber getStdDeviationX()\r
3835         { return stdDeviationX; }\r
3836 \r
3837     /**\r
3838      *\r
3839      */\r
3840     virtual SVGAnimatedNumber getStdDeviationY()\r
3841         { return stdDeviationY; }\r
3842 \r
3843 \r
3844     /**\r
3845      *\r
3846      */\r
3847     virtual void setStdDeviation (double stdDeviationXArg, double stdDeviationYArg )\r
3848         {\r
3849         stdDeviationX = stdDeviationXArg;\r
3850         stdDeviationY = stdDeviationYArg;\r
3851         }\r
3852 \r
3853 \r
3854 \r
3855     //##################\r
3856     //# Non-API methods\r
3857     //##################\r
3858 \r
3859     /**\r
3860      *\r
3861      */\r
3862     virtual ~SVGFEGaussianBlurElementImpl() {}\r
3863 \r
3864 protected:\r
3865 \r
3866     SVGAnimatedString in1;\r
3867     SVGAnimatedNumber stdDeviationX, stdDeviationY;\r
3868 \r
3869 };\r
3870 \r
3871 \r
3872 \r
3873 \r
3874 \r
3875 \r
3876 \r
3877 /*#########################################################################\r
3878 ## SVGFEImageElementImpl\r
3879 #########################################################################*/\r
3880 \r
3881 /**\r
3882  *\r
3883  */\r
3884 class SVGFEImageElementImpl : virtual public SVGFEImageElement,\r
3885                               public SVGElementImpl\r
3886 {\r
3887 public:\r
3888 \r
3889     //##################\r
3890     //# Non-API methods\r
3891     //##################\r
3892 \r
3893     /**\r
3894      *\r
3895      */\r
3896     virtual ~SVGFEImageElementImpl() {}\r
3897 \r
3898 protected:\r
3899 \r
3900 \r
3901 };\r
3902 \r
3903 \r
3904 \r
3905 \r
3906 \r
3907 /*#########################################################################\r
3908 ## SVGFEMergeElementImpl\r
3909 #########################################################################*/\r
3910 \r
3911 /**\r
3912  *\r
3913  */\r
3914 class SVGFEMergeElementImpl : virtual public SVGFEMergeElement,\r
3915                               public SVGElementImpl\r
3916 {\r
3917 public:\r
3918 \r
3919     //##################\r
3920     //# Non-API methods\r
3921     //##################\r
3922 \r
3923     /**\r
3924      *\r
3925      */\r
3926     virtual ~SVGFEMergeElementImpl() {}\r
3927 \r
3928 protected:\r
3929 \r
3930 \r
3931 };\r
3932 \r
3933 \r
3934 \r
3935 \r
3936 \r
3937 /*#########################################################################\r
3938 ## SVGFEMergeNodeElementImpl\r
3939 #########################################################################*/\r
3940 \r
3941 /**\r
3942  *\r
3943  */\r
3944 class SVGFEMergeNodeElementImpl : virtual public SVGFEMergeNodeElement,\r
3945                                   public SVGElementImpl\r
3946 {\r
3947 public:\r
3948     /**\r
3949      *\r
3950      */\r
3951     virtual SVGAnimatedString getIn1()\r
3952         { return in1; }\r
3953 \r
3954 \r
3955     //##################\r
3956     //# Non-API methods\r
3957     //##################\r
3958 \r
3959     /**\r
3960      *\r
3961      */\r
3962     virtual ~SVGFEMergeNodeElementImpl() {}\r
3963 \r
3964 protected:\r
3965 \r
3966     SVGAnimatedString in1;\r
3967 \r
3968 };\r
3969 \r
3970 \r
3971 \r
3972 \r
3973 \r
3974 \r
3975 \r
3976 /*#########################################################################\r
3977 ## SVGFEMorphologyElementImpl\r
3978 #########################################################################*/\r
3979 \r
3980 /**\r
3981  *\r
3982  */\r
3983 class SVGFEMorphologyElementImpl : virtual public SVGFEMorphologyElement,\r
3984                                    public SVGElementImpl\r
3985 {\r
3986 public:\r
3987 \r
3988     /**\r
3989      *\r
3990      */\r
3991     virtual SVGAnimatedString getIn1()\r
3992         { return in1; }\r
3993 \r
3994 \r
3995     /**\r
3996      *\r
3997      */\r
3998     virtual SVGAnimatedEnumeration getOperator()\r
3999         { return me_operator; }\r
4000 \r
4001     /**\r
4002      *\r
4003      */\r
4004     virtual SVGAnimatedLength getRadiusX()\r
4005         { return radiusX; }\r
4006 \r
4007     /**\r
4008      *\r
4009      */\r
4010     virtual SVGAnimatedLength getRadiusY()\r
4011         { return radiusY; }\r
4012 \r
4013 \r
4014 \r
4015     //##################\r
4016     //# Non-API methods\r
4017     //##################\r
4018 \r
4019     /**\r
4020      *\r
4021      */\r
4022     virtual ~SVGFEMorphologyElementImpl() {}\r
4023 \r
4024 protected:\r
4025 \r
4026     SVGAnimatedString      in1;\r
4027     SVGAnimatedEnumeration me_operator;\r
4028     SVGAnimatedLength      radiusX;\r
4029     SVGAnimatedLength      radiusY;\r
4030 \r
4031 };\r
4032 \r
4033 \r
4034 \r
4035 \r
4036 \r
4037 \r
4038 \r
4039 /*#########################################################################\r
4040 ## SVGFEOffsetElementImpl\r
4041 #########################################################################*/\r
4042 \r
4043 /**\r
4044  *\r
4045  */\r
4046 class SVGFEOffsetElementImpl : virtual public SVGFEOffsetElement,\r
4047                                public SVGElementImpl\r
4048 {\r
4049 public:\r
4050 \r
4051 \r
4052 \r
4053     /**\r
4054      *\r
4055      */\r
4056     virtual SVGAnimatedString getIn1()\r
4057         { return in1; }\r
4058 \r
4059     /**\r
4060      *\r
4061      */\r
4062     virtual SVGAnimatedLength getDx()\r
4063         { return dx; }\r
4064 \r
4065     /**\r
4066      *\r
4067      */\r
4068     virtual SVGAnimatedLength getDy()\r
4069         { return dy; }\r
4070 \r
4071     //##################\r
4072     //# Non-API methods\r
4073     //##################\r
4074 \r
4075     /**\r
4076      *\r
4077      */\r
4078     virtual ~SVGFEOffsetElementImpl() {}\r
4079 \r
4080 protected:\r
4081 \r
4082     SVGAnimatedString in1;\r
4083     SVGAnimatedLength dx, dy;\r
4084 \r
4085 };\r
4086 \r
4087 \r
4088 \r
4089 \r
4090 \r
4091 \r
4092 \r
4093 /*#########################################################################\r
4094 ## SVGFESpecularLightingElementImpl\r
4095 #########################################################################*/\r
4096 \r
4097 /**\r
4098  *\r
4099  */\r
4100 class SVGFESpecularLightingElementImpl :\r
4101                        virtual public SVGFESpecularLightingElement,\r
4102                        public SVGElementImpl\r
4103 {\r
4104 public:\r
4105 \r
4106     /**\r
4107      *\r
4108      */\r
4109     virtual SVGAnimatedString getIn1()\r
4110         { return in1; }\r
4111 \r
4112     /**\r
4113      *\r
4114      */\r
4115     virtual SVGAnimatedNumber getSurfaceScale()\r
4116         { return surfaceScale; }\r
4117 \r
4118     /**\r
4119      *\r
4120      */\r
4121     virtual SVGAnimatedNumber getSpecularConstant()\r
4122         { return specularConstant; }\r
4123 \r
4124     /**\r
4125      *\r
4126      */\r
4127     virtual SVGAnimatedNumber getSpecularExponent()\r
4128         { return specularExponent; }\r
4129 \r
4130 \r
4131     //##################\r
4132     //# Non-API methods\r
4133     //##################\r
4134 \r
4135     /**\r
4136      *\r
4137      */\r
4138     virtual ~SVGFESpecularLightingElementImpl() {}\r
4139 \r
4140 protected:\r
4141 \r
4142     SVGAnimatedString in1;\r
4143     SVGAnimatedNumber surfaceScale;\r
4144     SVGAnimatedNumber specularConstant;\r
4145     SVGAnimatedNumber specularExponent;\r
4146 };\r
4147 \r
4148 \r
4149 \r
4150 \r
4151 \r
4152 \r
4153 \r
4154 /*#########################################################################\r
4155 ## SVGFETileElementImpl\r
4156 #########################################################################*/\r
4157 \r
4158 /**\r
4159  *\r
4160  */\r
4161 class SVGFETileElementImpl : virtual public SVGFETileElement,\r
4162                              public SVGElementImpl\r
4163 {\r
4164 public:\r
4165 \r
4166 \r
4167     /**\r
4168      *\r
4169      */\r
4170     virtual SVGAnimatedString getIn1()\r
4171         { return in1; }\r
4172 \r
4173 \r
4174 \r
4175     //##################\r
4176     //# Non-API methods\r
4177     //##################\r
4178 \r
4179     /**\r
4180      *\r
4181      */\r
4182     virtual ~SVGFETileElementImpl() {}\r
4183 \r
4184 protected:\r
4185 \r
4186     SVGAnimatedString in1;\r
4187 \r
4188 };\r
4189 \r
4190 \r
4191 \r
4192 \r
4193 \r
4194 \r
4195 \r
4196 /*#########################################################################\r
4197 ## SVGFETurbulenceElementImpl\r
4198 #########################################################################*/\r
4199 \r
4200 /**\r
4201  *\r
4202  */\r
4203 class SVGFETurbulenceElementImpl : virtual public SVGFETurbulenceElement,\r
4204                                    public SVGElementImpl\r
4205 {\r
4206 public:\r
4207 \r
4208     /**\r
4209      *\r
4210      */\r
4211     virtual SVGAnimatedNumber getBaseFrequencyX()\r
4212         { return baseFrequencyX; }\r
4213 \r
4214     /**\r
4215      *\r
4216      */\r
4217     virtual SVGAnimatedNumber getBaseFrequencyY()\r
4218         { return baseFrequencyY; }\r
4219 \r
4220     /**\r
4221      *\r
4222      */\r
4223     virtual SVGAnimatedInteger getNumOctaves()\r
4224         { return numOctaves; }\r
4225 \r
4226     /**\r
4227      *\r
4228      */\r
4229     virtual SVGAnimatedNumber getSeed()\r
4230         { return seed; }\r
4231 \r
4232     /**\r
4233      *\r
4234      */\r
4235     virtual SVGAnimatedEnumeration getStitchTiles()\r
4236         { return stitchTiles; }\r
4237 \r
4238     /**\r
4239      *\r
4240      */\r
4241     virtual SVGAnimatedEnumeration getType()\r
4242         { return type; }\r
4243 \r
4244 \r
4245 \r
4246     //##################\r
4247     //# Non-API methods\r
4248     //##################\r
4249 \r
4250     /**\r
4251      *\r
4252      */\r
4253     virtual ~SVGFETurbulenceElementImpl() {}\r
4254 \r
4255 protected:\r
4256 \r
4257     SVGAnimatedNumber      baseFrequencyX;\r
4258     SVGAnimatedNumber      baseFrequencyY;\r
4259     SVGAnimatedInteger     numOctaves;\r
4260     SVGAnimatedNumber      seed;\r
4261     SVGAnimatedEnumeration stitchTiles;\r
4262     SVGAnimatedEnumeration type;\r
4263 \r
4264 };\r
4265 \r
4266 \r
4267 \r
4268 \r
4269 \r
4270 \r
4271 \r
4272 /*#########################################################################\r
4273 ## SVGCursorElementImpl\r
4274 #########################################################################*/\r
4275 \r
4276 /**\r
4277  *\r
4278  */\r
4279 class SVGCursorElementImpl : virtual public SVGCursorElement,\r
4280                              public SVGElementImpl\r
4281 {\r
4282 public:\r
4283 \r
4284     /**\r
4285      *\r
4286      */\r
4287     virtual SVGAnimatedLength getX()\r
4288         { return x; }\r
4289 \r
4290     /**\r
4291      *\r
4292      */\r
4293     virtual SVGAnimatedLength getY()\r
4294         { return x; }\r
4295 \r
4296     //##################\r
4297     //# Non-API methods\r
4298     //##################\r
4299 \r
4300     /**\r
4301      *\r
4302      */\r
4303     virtual ~SVGCursorElementImpl() {}\r
4304 \r
4305 protected:\r
4306 \r
4307     SVGAnimatedLength x, y;\r
4308 };\r
4309 \r
4310 \r
4311 \r
4312 \r
4313 \r
4314 \r
4315 \r
4316 /*#########################################################################\r
4317 ## SVGAElementImpl\r
4318 #########################################################################*/\r
4319 \r
4320 /**\r
4321  *\r
4322  */\r
4323 class SVGAElementImpl : virtual public SVGAElement,\r
4324                         public SVGElementImpl\r
4325 {\r
4326 public:\r
4327 \r
4328     /**\r
4329      *\r
4330      */\r
4331     virtual SVGAnimatedString getTarget()\r
4332         { return target; }\r
4333 \r
4334 \r
4335 \r
4336     //##################\r
4337     //# Non-API methods\r
4338     //##################\r
4339 \r
4340     /**\r
4341      *\r
4342      */\r
4343     virtual ~SVGAElementImpl() {}\r
4344 \r
4345 protected:\r
4346 \r
4347     SVGAnimatedString target;\r
4348 };\r
4349 \r
4350 \r
4351 \r
4352 \r
4353 \r
4354 \r
4355 \r
4356 /*#########################################################################\r
4357 ## SVGViewElementImpl\r
4358 #########################################################################*/\r
4359 \r
4360 /**\r
4361  *\r
4362  */\r
4363 class SVGViewElementImpl : virtual public SVGViewElement,\r
4364                            public SVGElementImpl\r
4365 {\r
4366 public:\r
4367 \r
4368     /**\r
4369      *\r
4370      */\r
4371     virtual SVGStringList getViewTarget()\r
4372         { return viewTarget; }\r
4373 \r
4374 \r
4375 \r
4376     //##################\r
4377     //# Non-API methods\r
4378     //##################\r
4379 \r
4380     /**\r
4381      *\r
4382      */\r
4383     virtual ~SVGViewElementImpl() {}\r
4384 \r
4385 protected:\r
4386 \r
4387     SVGStringList viewTarget;\r
4388 };\r
4389 \r
4390 \r
4391 \r
4392 \r
4393 \r
4394 \r
4395 \r
4396 /*#########################################################################\r
4397 ## SVGScriptElementImpl\r
4398 #########################################################################*/\r
4399 \r
4400 /**\r
4401  *\r
4402  */\r
4403 class SVGScriptElementImpl : virtual public SVGScriptElement,\r
4404                              public SVGElementImpl\r
4405 {\r
4406 public:\r
4407 \r
4408     /**\r
4409      *\r
4410      */\r
4411     virtual DOMString getType()\r
4412         { return type; }\r
4413 \r
4414     /**\r
4415      *\r
4416      */\r
4417     virtual void setType(const DOMString &val) throw (DOMException)\r
4418         { type = val; }\r
4419 \r
4420 \r
4421     //##################\r
4422     //# Non-API methods\r
4423     //##################\r
4424 \r
4425     /**\r
4426      *\r
4427      */\r
4428     virtual ~SVGScriptElementImpl() {}\r
4429 \r
4430 protected:\r
4431 \r
4432     DOMString type;\r
4433 };\r
4434 \r
4435 \r
4436 \r
4437 \r
4438 \r
4439 \r
4440 /*#########################################################################\r
4441 ## SVGAnimationElementImpl\r
4442 #########################################################################*/\r
4443 \r
4444 /**\r
4445  *\r
4446  */\r
4447 class SVGAnimationElementImpl : virtual public SVGAnimationElement,\r
4448                                 public SVGElementImpl\r
4449 {\r
4450 public:\r
4451 \r
4452 \r
4453     /**\r
4454      *\r
4455      */\r
4456     virtual SVGElement *getTargetElement()\r
4457         { return targetElement; }\r
4458 \r
4459 \r
4460     /**\r
4461      *\r
4462      */\r
4463     virtual double getStartTime (  )\r
4464         { return startTime; }\r
4465 \r
4466     /**\r
4467      *\r
4468      */\r
4469     virtual double getCurrentTime (  )\r
4470         { return currentTime; }\r
4471 \r
4472     /**\r
4473      *\r
4474      */\r
4475     virtual double getSimpleDuration (  ) throw( DOMException )\r
4476         { return simpleDuration; }\r
4477 \r
4478 \r
4479 \r
4480     //##################\r
4481     //# Non-API methods\r
4482     //##################\r
4483 \r
4484     /**\r
4485      *\r
4486      */\r
4487     virtual ~SVGAnimationElementImpl() {}\r
4488 \r
4489 protected:\r
4490 \r
4491     SVGElement *targetElement;\r
4492     double startTime, currentTime, simpleDuration;\r
4493 };\r
4494 \r
4495 \r
4496 \r
4497 \r
4498 \r
4499 \r
4500 \r
4501 /*#########################################################################\r
4502 ## SVGAnimateElementImpl\r
4503 #########################################################################*/\r
4504 \r
4505 /**\r
4506  *\r
4507  */\r
4508 class SVGAnimateElementImpl : virtual public SVGAnimateElement,\r
4509                               public SVGAnimationElementImpl\r
4510 {\r
4511 public:\r
4512 \r
4513     //##################\r
4514     //# Non-API methods\r
4515     //##################\r
4516 \r
4517     /**\r
4518      *\r
4519      */\r
4520     virtual ~SVGAnimateElementImpl() {}\r
4521 \r
4522 protected:\r
4523 \r
4524 \r
4525 };\r
4526 \r
4527 \r
4528 \r
4529 \r
4530 \r
4531 /*#########################################################################\r
4532 ## SVGSetElementImpl\r
4533 #########################################################################*/\r
4534 \r
4535 /**\r
4536  *\r
4537  */\r
4538 class SVGSetElementImpl : virtual public SVGSetElement,\r
4539                           public SVGAnimationElementImpl\r
4540 {\r
4541 public:\r
4542 \r
4543     //##################\r
4544     //# Non-API methods\r
4545     //##################\r
4546 \r
4547     /**\r
4548      *\r
4549      */\r
4550     virtual ~SVGSetElementImpl() {}\r
4551 \r
4552 protected:\r
4553 \r
4554 \r
4555 };\r
4556 \r
4557 \r
4558 \r
4559 \r
4560 \r
4561 /*#########################################################################\r
4562 ## SVGAnimateMotionElementImpl\r
4563 #########################################################################*/\r
4564 \r
4565 /**\r
4566  *\r
4567  */\r
4568 class SVGAnimateMotionElementImpl : virtual public SVGAnimateMotionElement,\r
4569                                     public SVGAnimationElementImpl\r
4570 {\r
4571 public:\r
4572 \r
4573     //##################\r
4574     //# Non-API methods\r
4575     //##################\r
4576 \r
4577     /**\r
4578      *\r
4579      */\r
4580     virtual ~SVGAnimateMotionElementImpl() {}\r
4581 \r
4582 protected:\r
4583 \r
4584 \r
4585 };\r
4586 \r
4587 \r
4588 \r
4589 \r
4590 \r
4591 /*#########################################################################\r
4592 ## SVGMPathElementImpl\r
4593 #########################################################################*/\r
4594 \r
4595 /**\r
4596  *\r
4597  */\r
4598 class SVGMPathElementImpl : virtual public SVGMPathElement,\r
4599                             public SVGElementImpl\r
4600 {\r
4601 public:\r
4602 \r
4603     //##################\r
4604     //# Non-API methods\r
4605     //##################\r
4606 \r
4607     /**\r
4608      *\r
4609      */\r
4610     virtual ~SVGMPathElementImpl() {}\r
4611 \r
4612 protected:\r
4613 \r
4614 \r
4615 };\r
4616 \r
4617 \r
4618 \r
4619 \r
4620 \r
4621 /*#########################################################################\r
4622 ## SVGAnimateColorElementImpl\r
4623 #########################################################################*/\r
4624 \r
4625 /**\r
4626  *\r
4627  */\r
4628 class SVGAnimateColorElementImpl : virtual public SVGAnimateColorElement,\r
4629                                    public SVGAnimationElementImpl\r
4630 {\r
4631 public:\r
4632 \r
4633     //##################\r
4634     //# Non-API methods\r
4635     //##################\r
4636 \r
4637     /**\r
4638      *\r
4639      */\r
4640     virtual ~SVGAnimateColorElementImpl() {}\r
4641 \r
4642 protected:\r
4643 \r
4644 \r
4645 };\r
4646 \r
4647 \r
4648 \r
4649 \r
4650 \r
4651 /*#########################################################################\r
4652 ## SVGAnimateTransformElementImpl\r
4653 #########################################################################*/\r
4654 \r
4655 /**\r
4656  *\r
4657  */\r
4658 class SVGAnimateTransformElementImpl : virtual public SVGAnimateTransformElement,\r
4659                                        public SVGAnimationElementImpl\r
4660 {\r
4661 public:\r
4662 \r
4663     //##################\r
4664     //# Non-API methods\r
4665     //##################\r
4666 \r
4667     /**\r
4668      *\r
4669      */\r
4670     virtual ~SVGAnimateTransformElementImpl() {}\r
4671 \r
4672 protected:\r
4673 \r
4674 \r
4675 };\r
4676 \r
4677 \r
4678 \r
4679 \r
4680 \r
4681 /*#########################################################################\r
4682 ## SVGFontElementImpl\r
4683 #########################################################################*/\r
4684 \r
4685 /**\r
4686  *\r
4687  */\r
4688 class SVGFontElementImpl :  virtual public SVGFontElement,\r
4689                             public SVGElementImpl\r
4690 {\r
4691 public:\r
4692 \r
4693     //##################\r
4694     //# Non-API methods\r
4695     //##################\r
4696 \r
4697     /**\r
4698      *\r
4699      */\r
4700     virtual ~SVGFontElementImpl() {}\r
4701 \r
4702 protected:\r
4703 \r
4704 \r
4705 };\r
4706 \r
4707 \r
4708 \r
4709 \r
4710 \r
4711 /*#########################################################################\r
4712 ## SVGGlyphElementImpl\r
4713 #########################################################################*/\r
4714 \r
4715 /**\r
4716  *\r
4717  */\r
4718 class SVGGlyphElementImpl : virtual public SVGGlyphElement,\r
4719                             public SVGElementImpl\r
4720 {\r
4721 public:\r
4722 \r
4723     //##################\r
4724     //# Non-API methods\r
4725     //##################\r
4726 \r
4727     /**\r
4728      *\r
4729      */\r
4730     virtual ~SVGGlyphElementImpl() {}\r
4731 \r
4732 protected:\r
4733 \r
4734 \r
4735 };\r
4736 \r
4737 \r
4738 \r
4739 \r
4740 \r
4741 /*#########################################################################\r
4742 ## SVGMissingGlyphElementImpl\r
4743 #########################################################################*/\r
4744 \r
4745 /**\r
4746  *\r
4747  */\r
4748 class SVGMissingGlyphElementImpl : virtual public SVGMissingGlyphElement,\r
4749                                    public SVGElementImpl\r
4750 {\r
4751 public:\r
4752 \r
4753     //##################\r
4754     //# Non-API methods\r
4755     //##################\r
4756 \r
4757     /**\r
4758      *\r
4759      */\r
4760     virtual ~SVGMissingGlyphElementImpl() {}\r
4761 \r
4762 protected:\r
4763 \r
4764 \r
4765 };\r
4766 \r
4767 \r
4768 \r
4769 \r
4770 \r
4771 /*#########################################################################\r
4772 ## SVGHKernElementImpl\r
4773 #########################################################################*/\r
4774 \r
4775 /**\r
4776  *\r
4777  */\r
4778 class SVGHKernElementImpl : virtual public SVGHKernElement,\r
4779                             public SVGElementImpl\r
4780 {\r
4781 public:\r
4782 \r
4783     //##################\r
4784     //# Non-API methods\r
4785     //##################\r
4786 \r
4787     /**\r
4788      *\r
4789      */\r
4790     virtual ~SVGHKernElementImpl() {}\r
4791 \r
4792 protected:\r
4793 \r
4794 \r
4795 };\r
4796 \r
4797 \r
4798 \r
4799 \r
4800 \r
4801 /*#########################################################################\r
4802 ## SVGVKernElementImpl\r
4803 #########################################################################*/\r
4804 \r
4805 /**\r
4806  *\r
4807  */\r
4808 class SVGVKernElementImpl : virtual public SVGVKernElement,\r
4809                             public SVGElementImpl\r
4810 {\r
4811 public:\r
4812 \r
4813     //##################\r
4814     //# Non-API methods\r
4815     //##################\r
4816 \r
4817     /**\r
4818      *\r
4819      */\r
4820     virtual ~SVGVKernElementImpl() {}\r
4821 \r
4822 protected:\r
4823 \r
4824 \r
4825 };\r
4826 \r
4827 \r
4828 \r
4829 \r
4830 \r
4831 /*#########################################################################\r
4832 ## SVGFontFaceElementImpl\r
4833 #########################################################################*/\r
4834 \r
4835 /**\r
4836  *\r
4837  */\r
4838 class SVGFontFaceElementImpl : virtual public SVGFontFaceElement,\r
4839                                public SVGElementImpl\r
4840 {\r
4841 public:\r
4842 \r
4843     //##################\r
4844     //# Non-API methods\r
4845     //##################\r
4846 \r
4847     /**\r
4848      *\r
4849      */\r
4850     virtual ~SVGFontFaceElementImpl() {}\r
4851 \r
4852 protected:\r
4853 \r
4854 \r
4855 };\r
4856 \r
4857 \r
4858 \r
4859 \r
4860 \r
4861 /*#########################################################################\r
4862 ## SVGFontFaceSrcElementImpl\r
4863 #########################################################################*/\r
4864 \r
4865 /**\r
4866  *\r
4867  */\r
4868 class SVGFontFaceSrcElementImpl : virtual public SVGFontFaceSrcElement,\r
4869                                   public SVGElementImpl\r
4870 {\r
4871 public:\r
4872 \r
4873     //##################\r
4874     //# Non-API methods\r
4875     //##################\r
4876 \r
4877     /**\r
4878      *\r
4879      */\r
4880     virtual ~SVGFontFaceSrcElementImpl() {}\r
4881 \r
4882 protected:\r
4883 \r
4884 \r
4885 };\r
4886 \r
4887 \r
4888 \r
4889 \r
4890 \r
4891 /*#########################################################################\r
4892 ## SVGFontFaceUriElementImpl\r
4893 #########################################################################*/\r
4894 \r
4895 /**\r
4896  *\r
4897  */\r
4898 class SVGFontFaceUriElementImpl : virtual public SVGFontFaceUriElement,\r
4899                                   public SVGElementImpl\r
4900 {\r
4901 public:\r
4902 \r
4903     //##################\r
4904     //# Non-API methods\r
4905     //##################\r
4906 \r
4907     /**\r
4908      *\r
4909      */\r
4910     virtual ~SVGFontFaceUriElementImpl() {}\r
4911 \r
4912 protected:\r
4913 \r
4914 \r
4915 };\r
4916 \r
4917 \r
4918 \r
4919 \r
4920 \r
4921 /*#########################################################################\r
4922 ## SVGFontFaceFormatElementImpl\r
4923 #########################################################################*/\r
4924 \r
4925 /**\r
4926  *\r
4927  */\r
4928 class SVGFontFaceFormatElementImpl : virtual public SVGFontFaceFormatElement,\r
4929                                      public SVGElementImpl\r
4930 {\r
4931 public:\r
4932 \r
4933     //##################\r
4934     //# Non-API methods\r
4935     //##################\r
4936 \r
4937     /**\r
4938      *\r
4939      */\r
4940     virtual ~SVGFontFaceFormatElementImpl() {}\r
4941 \r
4942 protected:\r
4943 \r
4944 \r
4945 };\r
4946 \r
4947 \r
4948 \r
4949 \r
4950 \r
4951 /*#########################################################################\r
4952 ## SVGFontFaceNameElementImpl\r
4953 #########################################################################*/\r
4954 \r
4955 /**\r
4956  *\r
4957  */\r
4958 class SVGFontFaceNameElementImpl : virtual public SVGFontFaceNameElement,\r
4959                                    public SVGElementImpl\r
4960 {\r
4961 public:\r
4962 \r
4963     //##################\r
4964     //# Non-API methods\r
4965     //##################\r
4966 \r
4967     /**\r
4968      *\r
4969      */\r
4970     virtual ~SVGFontFaceNameElementImpl() {}\r
4971 \r
4972 protected:\r
4973 \r
4974 \r
4975 };\r
4976 \r
4977 \r
4978 \r
4979 \r
4980 \r
4981 /*#########################################################################\r
4982 ## SVGDefinitionSrcElementImpl\r
4983 #########################################################################*/\r
4984 \r
4985 /**\r
4986  *\r
4987  */\r
4988 class SVGDefinitionSrcElementImpl : virtual public SVGDefinitionSrcElement,\r
4989                                     public SVGElementImpl\r
4990 {\r
4991 public:\r
4992 \r
4993     //##################\r
4994     //# Non-API methods\r
4995     //##################\r
4996 \r
4997     /**\r
4998      *\r
4999      */\r
5000     virtual ~SVGDefinitionSrcElementImpl() {}\r
5001 \r
5002 protected:\r
5003 \r
5004 \r
5005 };\r
5006 \r
5007 \r
5008 \r
5009 \r
5010 \r
5011 /*#########################################################################\r
5012 ## SVGMetadataElementImpl\r
5013 #########################################################################*/\r
5014 \r
5015 /**\r
5016  *\r
5017  */\r
5018 class SVGMetadataElementImpl : virtual public SVGMetadataElement,\r
5019                                public SVGElementImpl\r
5020 {\r
5021 public:\r
5022 \r
5023     //##################\r
5024     //# Non-API methods\r
5025     //##################\r
5026 \r
5027     /**\r
5028      *\r
5029      */\r
5030     virtual ~SVGMetadataElementImpl() {}\r
5031 \r
5032 protected:\r
5033 \r
5034 \r
5035 };\r
5036 \r
5037 \r
5038 \r
5039 \r
5040 /*#########################################################################\r
5041 ## SVGForeignObjectElementImpl\r
5042 #########################################################################*/\r
5043 \r
5044 /**\r
5045  *\r
5046  */\r
5047 class SVGForeignObjectElementImpl :  virtual public SVGForeignObjectElement,\r
5048                                      public SVGElementImpl\r
5049 {\r
5050 public:\r
5051 \r
5052 \r
5053     /**\r
5054      *\r
5055      */\r
5056     virtual SVGAnimatedLength getX()\r
5057         { return x; }\r
5058 \r
5059     /**\r
5060      *\r
5061      */\r
5062     virtual SVGAnimatedLength getY()\r
5063         { return y; }\r
5064 \r
5065     /**\r
5066      *\r
5067      */\r
5068     virtual SVGAnimatedLength getWidth()\r
5069         { return width; }\r
5070 \r
5071     /**\r
5072      *\r
5073      */\r
5074     virtual SVGAnimatedLength getHeight()\r
5075         { return height; }\r
5076 \r
5077 \r
5078 \r
5079     //##################\r
5080     //# Non-API methods\r
5081     //##################\r
5082 \r
5083 \r
5084     /**\r
5085      *\r
5086      */\r
5087     virtual ~SVGForeignObjectElementImpl() {}\r
5088 \r
5089 protected:\r
5090 \r
5091     SVGAnimatedLength x, y, width, height;\r
5092 };\r
5093 \r
5094 \r
5095 \r
5096 \r
5097 \r
5098 \r
5099 }  //namespace svg\r
5100 }  //namespace dom\r
5101 }  //namespace w3c\r
5102 }  //namespace org\r
5103 \r
5104 #endif // __SVG_H__\r
5105 /*#########################################################################\r
5106 ## E N D    O F    F I L E\r
5107 #########################################################################*/\r
5108 \r