1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE Definitions SYSTEM "widlprocxml.dtd"> 3<Definitions> 4 <Module name="gfx" id="::gfx"> 5 <webidl>module gfx { 6 7 module geom { 8 interface Shape { }; 9 interface Rectangle : <ref>Shape</ref> { }; 10 interface Path : <ref>Shape</ref> { }; 11 }; 12 13 interface GraphicsContext { 14 void fillShape(<ref>geom::Shape</ref> s); 15 void strokeShape(<ref>geom::Shape</ref> s); 16 }; 17};</webidl> 18 <Module name="geom" id="::gfx::geom"> 19 <webidl> module geom { 20 interface Shape { }; 21 interface Rectangle : <ref>Shape</ref> { }; 22 interface Path : <ref>Shape</ref> { }; 23 };</webidl> 24 <Interface name="Shape" id="::gfx::geom::Shape"> 25 <webidl> interface Shape { };</webidl> 26 </Interface> 27 <Interface name="Rectangle" id="::gfx::geom::Rectangle"> 28 <webidl> interface Rectangle : <ref>Shape</ref> { };</webidl> 29 <InterfaceInheritance> 30 <Name name="Shape"/> 31 </InterfaceInheritance> 32 </Interface> 33 <Interface name="Path" id="::gfx::geom::Path"> 34 <webidl> interface Path : <ref>Shape</ref> { };</webidl> 35 <InterfaceInheritance> 36 <Name name="Shape"/> 37 </InterfaceInheritance> 38 </Interface> 39 </Module> 40 <Interface name="GraphicsContext" id="::gfx::GraphicsContext"> 41 <webidl> interface GraphicsContext { 42 void fillShape(<ref>geom::Shape</ref> s); 43 void strokeShape(<ref>geom::Shape</ref> s); 44 };</webidl> 45 <Operation name="fillShape" id="::gfx::GraphicsContext::fillShape"> 46 <webidl> void fillShape(<ref>geom::Shape</ref> s);</webidl> 47 <Type type="void"/> 48 <ArgumentList> 49 <Argument name="s"> 50 <Type name="geom::Shape"/> 51 </Argument> 52 </ArgumentList> 53 </Operation> 54 <Operation name="strokeShape" id="::gfx::GraphicsContext::strokeShape"> 55 <webidl> void strokeShape(<ref>geom::Shape</ref> s);</webidl> 56 <Type type="void"/> 57 <ArgumentList> 58 <Argument name="s"> 59 <Type name="geom::Shape"/> 60 </Argument> 61 </ArgumentList> 62 </Operation> 63 </Interface> 64 </Module> 65 <Module name="gui" id="::gui"> 66 <webidl>module gui { 67 68 interface Widget { }; 69 70 interface Window : <ref>Widget</ref> { 71 <ref>gfx::GraphicsContext</ref> getGraphicsContext(); 72 }; 73 74 interface Button : <ref>Widget</ref> { }; 75};</webidl> 76 <Interface name="Widget" id="::gui::Widget"> 77 <webidl> interface Widget { };</webidl> 78 </Interface> 79 <Interface name="Window" id="::gui::Window"> 80 <webidl> interface Window : <ref>Widget</ref> { 81 <ref>gfx::GraphicsContext</ref> getGraphicsContext(); 82 };</webidl> 83 <InterfaceInheritance> 84 <Name name="Widget"/> 85 </InterfaceInheritance> 86 <Operation name="getGraphicsContext" id="::gui::Window::getGraphicsContext"> 87 <webidl> <ref>gfx::GraphicsContext</ref> getGraphicsContext();</webidl> 88 <Type name="gfx::GraphicsContext"/> 89 <ArgumentList/> 90 </Operation> 91 </Interface> 92 <Interface name="Button" id="::gui::Button"> 93 <webidl> interface Button : <ref>Widget</ref> { };</webidl> 94 <InterfaceInheritance> 95 <Name name="Widget"/> 96 </InterfaceInheritance> 97 </Interface> 98 </Module> 99</Definitions> 100