[Telepathy-commits] [telepathy-spec/master] Support tp:deprecated

Davyd Madeley davyd at madeley.id.au
Mon Mar 23 12:29:26 PDT 2009


---
 doc/spec/style.css           |   11 +++++++++++
 doc/templates/interface.html |   13 +++++++++++--
 tools/specparser.py          |   17 +++++++++++++++++
 3 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/doc/spec/style.css b/doc/spec/style.css
index a19d757..1198398 100644
--- a/doc/spec/style.css
+++ b/doc/spec/style.css
@@ -99,6 +99,17 @@ div.added span.version {
 	font-weight: bold;
 }
 
+div.deprecated {
+	border-left: 2px solid #a40000;
+	margin: 1ex;
+	padding-left: 1ex;
+}
+
+div.deprecated span.version {
+	color: #a40000;
+	font-weight: bold;
+}
+
 div.rationale {
 	border-left: 2px solid gray;
 	margin: 1ex;
diff --git a/doc/templates/interface.html b/doc/templates/interface.html
index e66d3ab..d8491a3 100644
--- a/doc/templates/interface.html
+++ b/doc/templates/interface.html
@@ -16,6 +16,7 @@
   </div>
   <div class="main">
     $interface.get_added_html()
+    $interface.get_deprecated_html()
     $interface.get_docstring()
 
    #if $interface.methods
@@ -27,6 +28,7 @@
      <h2>$method.short_name ($method.get_in_args()) &#8594; $method.get_out_args()</h2>
 
      $method.get_added_html()
+     $method.get_deprecated_html()
 
      #if $method.in_args
      <div class="indent">
@@ -38,6 +40,7 @@
         #if $arg.get_type(): (<a href="$arg.get_url()" title="$arg.get_title()">$arg.get_type().short_name</a>)
        </li>
        $arg.get_added_html()
+       $arg.get_deprecated_html()
        $arg.get_docstring()
       #end for
       </ul>
@@ -54,6 +57,7 @@
         #if $arg.get_type(): (<a href="$arg.get_url()" title="$arg.get_title()">$arg.get_type().short_name</a>)
        </li>
        $arg.get_added_html()
+       $arg.get_deprecated_html()
        $arg.get_docstring()
       #end for
       </ul>
@@ -67,6 +71,7 @@
       #for $error in $method.possible_errors
        <li><a href="$error.get_url()" title="$error.get_title()">$error.get_error().short_name</a></li>
        $error.get_added_html()
+       $error.get_deprecated_html()
        $error.get_docstring()
       #end for
       </ul>
@@ -86,9 +91,10 @@
     <div id="$signal.name" class="inset signal">
      <span class="permalink">(<a href="$signal.get_url()">Permalink</a>)</span>
      <h2>$signal.short_name ($signal.get_args())</h2>
-     
+
      $signal.get_added_html()
-     
+     $signal.get_deprecated_html()
+
      #if $signal.args
      <div class="indent">
       <h3>Parameters</h3>
@@ -99,6 +105,7 @@
        #if $arg.get_type(): (<a href="$arg.get_url()" title="$arg.get_title()">$arg.get_type().short_name</a>)
        </li>
        $arg.get_added_html()
+       $arg.get_deprecated_html()
        $arg.get_docstring()
       #end for
       </ul>
@@ -126,6 +133,7 @@
      </h2>
 
      $property.get_added_html()
+     $property.get_deprecated_html()
      $property.get_docstring()
     </div>
     #end for
@@ -143,6 +151,7 @@
       </h2>
 
       $type.get_added_html()
+      $type.get_deprecated_html()
       $type.get_docstring()
       $type.get_breakdown()
      </div>
diff --git a/tools/specparser.py b/tools/specparser.py
index bed0c83..c2fc7d7 100644
--- a/tools/specparser.py
+++ b/tools/specparser.py
@@ -53,6 +53,11 @@ class base (object):
             self.added = getChildrenByName (dom, XMLNS_TP, 'added')[0]
         except IndexError:
             self.added = None
+        
+        try:
+            self.deprecated = getChildrenByName (dom, XMLNS_TP, 'deprecated')[0]
+        except IndexError:
+            self.deprecated = None
 
     def get_spec (self):
         return self.parent.get_spec ()
@@ -72,11 +77,23 @@ class base (object):
         else:
             return ''
 
+    def get_deprecated (self):
+        if self.deprecated:
+            return (self.deprecated.getAttribute ('version'), getText (self.deprecated))
+        else:
+            return ''
+
     def get_added_html (self):
         if self.added:
             return '<div class="added"><span class="version">Added in %s.</span>\n%s</div>' % self.get_added ()
         else:
             return ''
+    
+    def get_deprecated_html (self):
+        if self.deprecated:
+            return '<div class="deprecated"><span class="version">Deprecated in %s.</span>\n%s</div>' % self.get_deprecated ()
+        else:
+            return ''
 
     def get_docstring (self):
         """Get the docstring for this node, but do node substitution to
-- 
1.5.6.5




More information about the telepathy-commits mailing list