2008-11-06 Julien Chaffraix <jchaffraix@pleyo.com>
authorjchaffraix@webkit.org <jchaffraix@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 7 Nov 2008 00:47:12 +0000 (00:47 +0000)
committerjchaffraix@webkit.org <jchaffraix@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 7 Nov 2008 00:47:12 +0000 (00:47 +0000)
        Reviewed by Maciej Stachowiak.

        Bug 21106: .in format discussed changes
        https://bugs.webkit.org/show_bug.cgi?id=21106

        Include the namespace into the interfaceName.

        * dom/make_names.pl: Do not append the namespace when
        using the interfaceName.
        * html/HTMLTagNames.in: Added namespace prefix for custom
        interfaceName.
        * svg/svgtags.in: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@38206 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/dom/make_names.pl
WebCore/html/HTMLTagNames.in
WebCore/svg/svgtags.in

index 861adcb..745e3c6 100644 (file)
@@ -1,3 +1,18 @@
+2008-11-06  Julien Chaffraix  <jchaffraix@pleyo.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Bug 21106: .in format discussed changes
+        https://bugs.webkit.org/show_bug.cgi?id=21106
+
+        Include the namespace into the interfaceName.
+
+        * dom/make_names.pl: Do not append the namespace when
+        using the interfaceName.
+        * html/HTMLTagNames.in: Added namespace prefix for custom
+        interfaceName.
+        * svg/svgtags.in: Ditto.
+
 2008-11-06  Cameron Zwarich  <zwarich@apple.com>
 
         Reviewed by Geoff Garen.
 2008-11-06  Cameron Zwarich  <zwarich@apple.com>
 
         Reviewed by Geoff Garen.
index c0d0d86..f0c82bd 100755 (executable)
@@ -88,7 +88,7 @@ if ($printWrapperFactory) {
 
 sub initializeTagPropertyHash
 {
 
 sub initializeTagPropertyHash
 {
-    return ('interfaceName' => upperCaseName($_[0])."Element",
+    return ('interfaceName' => defaultInterfaceName($_[0]),
             'applyAudioHack' => 0,
             'exportString' => 0);
 }
             'applyAudioHack' => 0,
             'exportString' => 0);
 }
@@ -210,11 +210,11 @@ sub printConstructors
 
     print F "#if $parameters{'guardFactoryWith'}\n" if $parameters{'guardFactoryWith'};
     for my $name (sort keys %names) {
 
     print F "#if $parameters{'guardFactoryWith'}\n" if $parameters{'guardFactoryWith'};
     for my $name (sort keys %names) {
-        my $ucName = $names{$name}{"interfaceName"};
+        my $ucName = $names{$name}{'interfaceName'};
 
         print F "$parameters{'namespace'}Element* ${name}Constructor(Document* doc, bool createdByParser)\n";
         print F "{\n";
 
         print F "$parameters{'namespace'}Element* ${name}Constructor(Document* doc, bool createdByParser)\n";
         print F "{\n";
-        print F "    return new $parameters{'namespace'}${ucName}($parameters{'namespace'}Names::${name}Tag, doc);\n";
+        print F "    return new ${ucName}($parameters{'namespace'}Names::${name}Tag, doc);\n";
         print F "}\n\n";
     }
     print F "#endif\n" if $parameters{'guardFactoryWith'};
         print F "}\n\n";
     }
     print F "#endif\n" if $parameters{'guardFactoryWith'};
@@ -431,7 +431,7 @@ sub printJSElementIncludes
         next if (hasCustomMapping($name));
 
         my $ucName = $names{$name}{"interfaceName"};
         next if (hasCustomMapping($name));
 
         my $ucName = $names{$name}{"interfaceName"};
-        print F "#include \"JS$parameters{'namespace'}${ucName}.h\"\n";
+        print F "#include \"JS${ucName}.h\"\n";
     }
 }
 
     }
 }
 
@@ -443,7 +443,7 @@ sub printElementIncludes
         next if ($shouldSkipCustomMappings && hasCustomMapping($name));
 
         my $ucName = $names{$name}{"interfaceName"};
         next if ($shouldSkipCustomMappings && hasCustomMapping($name));
 
         my $ucName = $names{$name}{"interfaceName"};
-        print F "#include \"$parameters{'namespace'}${ucName}.h\"\n";
+        print F "#include \"${ucName}.h\"\n";
     }
 }
 
     }
 }
 
@@ -595,7 +595,7 @@ END
 print F <<END
 }
 
 print F <<END
 }
 
-} // namespace
+} // namespace WebCore
 
 END
 ;
 
 END
 ;
@@ -645,6 +645,12 @@ namespace WebCore {
 
 ## Wrapper Factory routines
 
 
 ## Wrapper Factory routines
 
+sub defaultInterfaceName
+{
+    die "No namespace found" if !$parameters{'namespace'};
+    return $parameters{'namespace'} . upperCaseName($_[0]) . "Element"
+}
+
 sub initializeCustomMappings
 {
     if (!keys %svgCustomMappings) {
 sub initializeCustomMappings
 {
     if (!keys %svgCustomMappings) {
@@ -730,7 +736,7 @@ static JSNode* create${ucName}Wrapper(ExecState* exec, PassRefPtr<$parameters{'n
 {
     if (!MediaPlayer::isAvailable())
         return CREATE_DOM_NODE_WRAPPER(exec, $parameters{'namespace'}Element, element.get());
 {
     if (!MediaPlayer::isAvailable())
         return CREATE_DOM_NODE_WRAPPER(exec, $parameters{'namespace'}Element, element.get());
-    return CREATE_DOM_NODE_WRAPPER(exec, $parameters{'namespace'}${ucName}, element.get());
+    return CREATE_DOM_NODE_WRAPPER(exec, ${ucName}, element.get());
 }
 
 END
 }
 
 END
@@ -739,7 +745,7 @@ END
             print F <<END
 static JSNode* create${ucName}Wrapper(ExecState* exec, PassRefPtr<$parameters{'namespace'}Element> element)
 {
             print F <<END
 static JSNode* create${ucName}Wrapper(ExecState* exec, PassRefPtr<$parameters{'namespace'}Element> element)
 {
-    return CREATE_DOM_NODE_WRAPPER(exec, $parameters{'namespace'}${ucName}, element.get());
+    return CREATE_DOM_NODE_WRAPPER(exec, ${ucName}, element.get());
 }
 
 END
 }
 
 END
index 6493c39..360adaf 100644 (file)
@@ -2,7 +2,7 @@ namespace="HTML"
 namespacePrefix="xhtml"
 namespaceURI="http://www.w3.org/1999/xhtml"
 
 namespacePrefix="xhtml"
 namespaceURI="http://www.w3.org/1999/xhtml"
 
-a interfaceName=AnchorElement
+a interfaceName=HTMLAnchorElement
 abbr
 acronym
 address
 abbr
 acronym
 address
@@ -13,56 +13,56 @@ audio applyAudioHack=1
 #endif
 b
 base
 #endif
 b
 base
-basefont interfaceName=BaseFontElement
+basefont interfaceName=HTMLBaseFontElement
 bdo
 big
 blockquote
 body
 bdo
 big
 blockquote
 body
-br interfaceName=BRElement
+br interfaceName=HTMLBRElement
 button
 canvas
 button
 canvas
-caption interfaceName=TableCaptionElement
+caption interfaceName=HTMLTableCaptionElement
 center
 cite
 code
 center
 cite
 code
-col interfaceName=TableColElement
+col interfaceName=HTMLTableColElement
 colgroup
 dd
 colgroup
 dd
-del interfaceName=ModElement
+del interfaceName=HTMLModElement
 dfn
 dfn
-dir interfaceName=DirectoryElement
+dir interfaceName=HTMLDirectoryElement
 div
 div
-dl interfaceName=DListElement
+dl interfaceName=HTMLDListElement
 dt
 em
 embed
 dt
 em
 embed
-fieldset interfaceName=FieldSetElement
+fieldset interfaceName=HTMLFieldSetElement
 font
 form
 frame
 font
 form
 frame
-frameset interfaceName=FrameSetElement
+frameset interfaceName=HTMLFrameSetElement
 head
 head
-h1 interfaceName=HeadingElement
+h1 interfaceName=HTMLHeadingElement
 h2
 h3
 h4
 h5
 h6
 h2
 h3
 h4
 h5
 h6
-hr interfaceName=HRElement
+hr interfaceName=HTMLHRElement
 html
 i
 html
 i
-iframe interfaceName=IFrameElement
+iframe interfaceName=HTMLIFrameElement
 image
 image
-img interfaceName=ImageElement
+img interfaceName=HTMLImageElement
 input
 ins
 input
 ins
-isindex interfaceName=IsIndexElement
+isindex interfaceName=HTMLIsIndexElement
 kbd
 keygen
 label
 layer
 legend
 kbd
 keygen
 label
 layer
 legend
-li interfaceName=LIElement
+li interfaceName=HTMLLIElement
 link
 listing
 map
 link
 listing
 map
@@ -75,14 +75,14 @@ noframes
 nolayer
 noscript
 object
 nolayer
 noscript
 object
-ol interfaceName=OListElement
-optgroup interfaceName=OptGroupElement
+ol interfaceName=HTMLOListElement
+optgroup interfaceName=HTMLOptGroupElement
 option
 option
-p interfaceName=ParagraphElement
+p interfaceName=HTMLParagraphElement
 param
 plaintext
 pre
 param
 plaintext
 pre
-q interfaceName=QuoteElement
+q interfaceName=HTMLQuoteElement
 s
 samp
 script
 s
 samp
 script
@@ -98,17 +98,17 @@ style
 sub
 sup
 table
 sub
 sup
 table
-tbody interfaceName=TableSectionElement
-td interfaceName=TableCellElement
-textarea interfaceName=TextAreaElement
+tbody interfaceName=HTMLTableSectionElement
+td interfaceName=HTMLTableCellElement
+textarea interfaceName=HTMLTextAreaElement
 tfoot
 th
 thead
 title
 tfoot
 th
 thead
 title
-tr interfaceName=TableRowElement
+tr interfaceName=HTMLTableRowElement
 tt
 u
 tt
 u
-ul interfaceName=UListElement
+ul interfaceName=HTMLUListElement
 var
 #if ENABLE_VIDEO
 video applyAudioHack=1
 var
 #if ENABLE_VIDEO
 video applyAudioHack=1
index c9c4fbc..c4b205d 100644 (file)
@@ -80,7 +80,7 @@ glyph
 glyphRef
 #endif
 #if ENABLE_SVG_FONTS
 glyphRef
 #endif
 #if ENABLE_SVG_FONTS
-hkern interfaceName=HKernElement
+hkern interfaceName=SVGHKernElement
 #endif
 image
 line
 #endif
 image
 line
@@ -91,7 +91,7 @@ metadata
 #if ENABLE_SVG_FONTS
 missing_glyph
 #endif
 #if ENABLE_SVG_FONTS
 missing_glyph
 #endif
-mpath interfaceName=MPathElement
+mpath interfaceName=SVGMPathElement
 path
 pattern
 polygon
 path
 pattern
 polygon
@@ -101,16 +101,16 @@ rect
 script
 stop
 style
 script
 stop
 style
-svg interfaceName=SVGElement
+svg interfaceName=SVGSVGElement
 switch
 symbol
 text
 textPath
 title
 switch
 symbol
 text
 textPath
 title
-tref interfaceName=TRefElement
-tspan interfaceName=TSpanElement
+tref interfaceName=SVGTRefElement
+tspan interfaceName=SVGTSpanElement
 use
 view
 #if 0
 use
 view
 #if 0
-vkern interfaceName=VKernElement
+vkern interfaceName=SVGVKernElement
 #endif
 #endif