From ec2378bfad45e04ccc7f166277051611f0621409 Mon Sep 17 00:00:00 2001 From: drbrain Date: Sun, 13 Jan 2008 03:13:37 +0000 Subject: Complete RDoc namespace change git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rdoc/generator/html/hefss.rb | 414 ++++++++++++++++++ lib/rdoc/generator/html/html.rb | 704 +++++++++++++++++++++++++++++++ lib/rdoc/generator/html/kilmer.rb | 418 ++++++++++++++++++ lib/rdoc/generator/html/one_page_html.rb | 121 ++++++ 4 files changed, 1657 insertions(+) create mode 100644 lib/rdoc/generator/html/hefss.rb create mode 100644 lib/rdoc/generator/html/html.rb create mode 100644 lib/rdoc/generator/html/kilmer.rb create mode 100644 lib/rdoc/generator/html/one_page_html.rb (limited to 'lib/rdoc/generator/html') diff --git a/lib/rdoc/generator/html/hefss.rb b/lib/rdoc/generator/html/hefss.rb new file mode 100644 index 000000000..294d5b62f --- /dev/null +++ b/lib/rdoc/generator/html/hefss.rb @@ -0,0 +1,414 @@ +require 'rdoc/generator/html' +require 'rdoc/generator/html/html' + +module RDoc::Generator::HTML::HEFSS + + FONTS = "Verdana, Arial, Helvetica, sans-serif" + +STYLE = <<-EOF +body,p { font-family: Verdana, Arial, Helvetica, sans-serif; + color: #000040; background: #BBBBBB; +} + +td { font-family: Verdana, Arial, Helvetica, sans-serif; + color: #000040; +} + +.attr-rw { font-size: small; color: #444488 } + +.title-row {color: #eeeeff; + background: #BBBBDD; +} + +.big-title-font { color: white; + font-family: Verdana, Arial, Helvetica, sans-serif; + font-size: large; + height: 50px} + +.small-title-font { color: purple; + font-family: Verdana, Arial, Helvetica, sans-serif; + font-size: small; } + +.aqua { color: purple } + +.method-name, attr-name { + font-family: monospace; font-weight: bold; +} + +.tablesubtitle { + width: 100%; + margin-top: 1ex; + margin-bottom: .5ex; + padding: 5px 0px 5px 20px; + font-size: large; + color: purple; + background: #BBBBCC; +} + +.tablesubsubtitle { + width: 100%; + margin-top: 1ex; + margin-bottom: .5ex; + padding: 5px 0px 5px 20px; + font-size: medium; + color: white; + background: #BBBBCC; +} + +.name-list { + font-family: monospace; + margin-left: 40px; + margin-bottom: 2ex; + line-height: 140%; +} + +.description { + margin-left: 40px; + margin-bottom: 2ex; + line-height: 140%; +} + +.methodtitle { + font-size: medium; + text_decoration: none; + padding: 3px 3px 3px 20px; + color: #0000AA; +} + +.column-title { + font-size: medium; + font-weight: bold; + text_decoration: none; + padding: 3px 3px 3px 20px; + color: #3333CC; + } + +.variable-name { + font-family: monospace; + font-size: medium; + text_decoration: none; + padding: 3px 3px 3px 20px; + color: #0000AA; +} + +.row-name { + font-size: medium; + font-weight: medium; + font-family: monospace; + text_decoration: none; + padding: 3px 3px 3px 20px; +} + +.paramsig { + font-size: small; +} + +.srcbut { float: right } + + EOF + + BODY = <<-EOF + + <%= values["title"] %> + "> + " type="text/css" media="screen" /> + + + + +<%= template_include %> + +<% if values["diagram"] then %> +
+<%= values["diagram"] %> +
+<% end %> + +<% if values["description"] then %> +
<%= values["description"] %>
+<% end %> + +<% if values["requires"] then %> + + +
Required files

+
+<% values["requires"].each do |requires| %> +<%= href requires["aref"], requires["name"] %> +<% end # values["requires"] %> +<% end %> +
+ +<% if values["sections"] then %> +<% values["sections"].each do |sections| %> +<% if sections["method_list"] then %> +<% sections["method_list"].each do |method_list| %> +<% if method_list["methods"] then %> + + +
Subroutines and Functions

+
+<% method_list["methods"].each do |methods| %> +" target="source"><%= methods["name"] %> +<% end # values["methods"] %> +
+<% end %> +<% end # values["method_list"] %> +<% end %> + +<% if sections["attributes"] then %> + + +
Arguments

+ +<% sections["attributes"].each do |attributes| %> + +<% if attributes["rw"] then %> + +<% end %> +<% unless attributes["rw"] then %> + +<% end %> + + + +<% end # values["attributes"] %> +
 [<%= attributes["rw"] %>] <%= attributes["name"] %><%= attributes["a_desc"] %>
+<% end %> +<% end # values["sections"] %> +<% end %> + +<% if values["classlist"] then %> + + +
Modules

+<%= values["classlist"] %>
+<% end %> + + <%= template_include %> + + + + EOF + + FILE_PAGE = <<-EOF + + + + +
+ +
File
<%= values["short_name"] %>
+ + + + + + + + +
Path:<%= values["full_path"] %> +<% if values["cvsurl"] then %> +  (">CVS) +<% end %> +
Modified:<%= values["dtm_modified"] %>
+

+ EOF + + CLASS_PAGE = <<-EOF + + + + + +
+ <%= values["classmod"] %>
<%= values["full_name"] %> +
+ + + + + +<% if values["parent"] then %> + + + + +<% end %> +
In: +<% values["infiles"].each do |infiles| %> +<%= href infiles["full_path_url"], infiles["full_path"] %> +<% if infiles["cvsurl"] then %> + (">CVS) +<% end %> +<% end # values["infiles"] %> +
Parent: +<% if values["par_url"] then %> + " class="cyan"> +<% end %> +<%= values["parent"] %> +<% if values["par_url"] then %> + +<% end %> +
+

+ EOF + + METHOD_LIST = <<-EOF +<% if values["includes"] then %> +
Uses

+
+<% values["includes"].each do |includes| %> + <%= href includes["aref"], includes["name"] %> +<% end # values["includes"] %> +
+<% end %> + +<% if values["sections"] then %> +<% values["sections"].each do |sections| %> +<% if sections["method_list"] then %> +<% sections["method_list"].each do |method_list| %> +<% if method_list["methods"] then %> + + +
<%= method_list["type"] %> <%= method_list["category"] %> methods
+<% method_list["methods"].each do |methods| %> + + +
+"> +<%= methods["name"] %><%= methods["params"] %> +<% if methods["codeurl"] then %> +" target="source" class="srclink">src +<% end %> +
+<% if method_list["m_desc"] then %> +
+<%= method_list["m_desc"] %> +
+<% end %> +<% end # method_list["methods"] %> +<% end %> +<% end # sections["method_list"] %> +<% end %> +<% end # values["sections"] %> +<% end %> + EOF + + SRC_PAGE = <<-EOF + +<%= values["title"] %> +"> + + + +
<%= values["code"] %>
+ + + EOF + + FR_INDEX_BODY = %{ +<%= template_include %> +} + + FILE_INDEX = <<-EOF + + +"> + + + + + +<% values["entries"].each do |entries| %> +"><%= entries["name"] %>
+<% end # values["entries"] %> + + EOF + + CLASS_INDEX = FILE_INDEX + METHOD_INDEX = FILE_INDEX + + INDEX = <<-EOF + + + <%= values["title"] %> + "> + + + + + + + + + + " name="docwin"> + + + + <body bgcolor="#BBBBBB"> + Click <a href="html/index.html">here</a> for a non-frames + version of this page. + </body> + + + + + EOF + + # Blank page to use as a target + BLANK = %{ + +} + + def write_extra_pages + template = TemplatePage.new(BLANK) + File.open("blank.html", "w") { |f| template.write_html_on(f, {}) } + end + +end + diff --git a/lib/rdoc/generator/html/html.rb b/lib/rdoc/generator/html/html.rb new file mode 100644 index 000000000..0a0b75491 --- /dev/null +++ b/lib/rdoc/generator/html/html.rb @@ -0,0 +1,704 @@ +require 'rdoc/generator/html' +require 'rdoc/generator/html/one_page_html' + +## +# = CSS2 RDoc HTML template +# +# This is a template for RDoc that uses XHTML 1.0 Transitional and dictates a +# bit more of the appearance of the output to cascading stylesheets than the +# default. It was designed for clean inline code display, and uses DHTMl to +# toggle the visbility of each method's source with each click on the '[source]' +# link. +# +# == Authors +# +# * Michael Granger +# +# Copyright (c) 2002, 2003 The FaerieMUD Consortium. Some rights reserved. +# +# This work is licensed under the Creative Commons Attribution License. To view +# a copy of this license, visit http://creativecommons.org/licenses/by/1.0/ or +# send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California +# 94305, USA. + +module RDoc::Generator::HTML::HTML + + FONTS = "Verdana,Arial,Helvetica,sans-serif" + + STYLE = <<-EOF +body { + font-family: Verdana,Arial,Helvetica,sans-serif; + font-size: 90%; + margin: 0; + margin-left: 40px; + padding: 0; + background: white; +} + +h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; } +h1 { font-size: 150%; } +h2,h3,h4 { margin-top: 1em; } + +a { background: #eef; color: #039; text-decoration: none; } +a:hover { background: #039; color: #eef; } + +/* Override the base stylesheet's Anchor inside a table cell */ +td > a { + background: transparent; + color: #039; + text-decoration: none; +} + +/* and inside a section title */ +.section-title > a { + background: transparent; + color: #eee; + text-decoration: none; +} + +/* === Structural elements =================================== */ + +div#index { + margin: 0; + margin-left: -40px; + padding: 0; + font-size: 90%; +} + + +div#index a { + margin-left: 0.7em; +} + +div#index .section-bar { + margin-left: 0px; + padding-left: 0.7em; + background: #ccc; + font-size: small; +} + + +div#classHeader, div#fileHeader { + width: auto; + color: white; + padding: 0.5em 1.5em 0.5em 1.5em; + margin: 0; + margin-left: -40px; + border-bottom: 3px solid #006; +} + +div#classHeader a, div#fileHeader a { + background: inherit; + color: white; +} + +div#classHeader td, div#fileHeader td { + background: inherit; + color: white; +} + + +div#fileHeader { + background: #057; +} + +div#classHeader { + background: #048; +} + + +.class-name-in-header { + font-size: 180%; + font-weight: bold; +} + + +div#bodyContent { + padding: 0 1.5em 0 1.5em; +} + +div#description { + padding: 0.5em 1.5em; + background: #efefef; + border: 1px dotted #999; +} + +div#description h1,h2,h3,h4,h5,h6 { + color: #125;; + background: transparent; +} + +div#validator-badges { + text-align: center; +} +div#validator-badges img { border: 0; } + +div#copyright { + color: #333; + background: #efefef; + font: 0.75em sans-serif; + margin-top: 5em; + margin-bottom: 0; + padding: 0.5em 2em; +} + + +/* === Classes =================================== */ + +table.header-table { + color: white; + font-size: small; +} + +.type-note { + font-size: small; + color: #DEDEDE; +} + +.xxsection-bar { + background: #eee; + color: #333; + padding: 3px; +} + +.section-bar { + color: #333; + border-bottom: 1px solid #999; + margin-left: -20px; +} + + +.section-title { + background: #79a; + color: #eee; + padding: 3px; + margin-top: 2em; + margin-left: -30px; + border: 1px solid #999; +} + +.top-aligned-row { vertical-align: top } +.bottom-aligned-row { vertical-align: bottom } + +/* --- Context section classes ----------------------- */ + +.context-row { } +.context-item-name { font-family: monospace; font-weight: bold; color: black; } +.context-item-value { font-size: small; color: #448; } +.context-item-desc { color: #333; padding-left: 2em; } + +/* --- Method classes -------------------------- */ +.method-detail { + background: #efefef; + padding: 0; + margin-top: 0.5em; + margin-bottom: 1em; + border: 1px dotted #ccc; +} +.method-heading { + color: black; + background: #ccc; + border-bottom: 1px solid #666; + padding: 0.2em 0.5em 0 0.5em; +} +.method-signature { color: black; background: inherit; } +.method-name { font-weight: bold; } +.method-args { font-style: italic; } +.method-description { padding: 0 0.5em 0 0.5em; } + +/* --- Source code sections -------------------- */ + +a.source-toggle { font-size: 90%; } +div.method-source-code { + background: #262626; + color: #ffdead; + margin: 1em; + padding: 0.5em; + border: 1px dashed #999; + overflow: hidden; +} + +div.method-source-code pre { color: #ffdead; overflow: hidden; } + +/* --- Ruby keyword styles --------------------- */ + +.standalone-code { background: #221111; color: #ffdead; overflow: hidden; } + +.ruby-constant { color: #7fffd4; background: transparent; } +.ruby-keyword { color: #00ffff; background: transparent; } +.ruby-ivar { color: #eedd82; background: transparent; } +.ruby-operator { color: #00ffee; background: transparent; } +.ruby-identifier { color: #ffdead; background: transparent; } +.ruby-node { color: #ffa07a; background: transparent; } +.ruby-comment { color: #b22222; font-weight: bold; background: transparent; } +.ruby-regexp { color: #ffa07a; background: transparent; } +.ruby-value { color: #7fffd4; background: transparent; } +EOF + + +##################################################################### +### H E A D E R T E M P L A T E +##################################################################### + + XHTML_PREAMBLE = <<-EOF +"?> + + EOF + + HEADER = XHTML_PREAMBLE + <<-EOF + + + <%= values["title"] %> + " /> + + " type="text/css" media="screen" /> + + + + +EOF + +##################################################################### +### C O N T E X T C O N T E N T T E M P L A T E +##################################################################### + + CONTEXT_CONTENT = %{ +} + +##################################################################### +### F O O T E R T E M P L A T E +##################################################################### + + FOOTER = <<-EOF + + + + + EOF + + +##################################################################### +### F I L E P A G E H E A D E R T E M P L A T E +##################################################################### + + FILE_PAGE = <<-EOF +
+

<%= values["short_name"] %>

+ + + + + + + + + +
Path:<%= values["full_path"] %> +<% if values["cvsurl"] then %> +  (">CVS) +<% end %> +
Last Update:<%= values["dtm_modified"] %>
+
+ EOF + +##################################################################### +### C L A S S P A G E H E A D E R T E M P L A T E +##################################################################### + + CLASS_PAGE = <<-EOF +
+ + + + + + + + + + +<% if values["parent"] then %> + + + + +<% end %> +
<%= values["classmod"] %><%= values["full_name"] %>
In: +<% values["infiles"].each do |infiles| %> +<% if infiles["full_path_url"] then %> + "> +<% end %> + <%= infiles["full_path"] %> +<% if infiles["full_path_url"] then %> + +<% end %> +<% if infiles["cvsurl"] then %> +  (">CVS) +<% end %> +
+<% end # values["infiles"] %> +
Parent: +<% if values["par_url"] then %> + "> +<% end %> + <%= values["parent"] %> +<% if values["par_url"] then %> + +<% end %> +
+
+ EOF + +##################################################################### +### M E T H O D L I S T T E M P L A T E +##################################################################### + + METHOD_LIST = <<-EOF + +
+<% if values["diagram"] then %> +
+ <%= values["diagram"] %> +
+<% end %> + +<% if values["description"] then %> +
+ <%= values["description"] %> +
+<% end %> + +<% if values["requires"] then %> +
+

Required files

+ +
+<% values["requires"].each do |requires| %> + <%= href requires["aref"], requires["name"] %>   +<% end # values["requires"] %> +
+
+<% end %> + +<% if values["toc"] then %> +
+

Contents

+ +<% end %> +
+ +<% if values["methods"] then %> +
+

Methods

+ +
+<% values["methods"].each do |methods| %> + <%= href methods["aref"], methods["name"] %>   +<% end # values["methods"] %> +
+
+<% end %> + +
+ + + +<% if values["includes"] then %> +
+

Included Modules

+ +
+<% values["includes"].each do |includes| %> + <%= href includes["aref"], includes["name"] %> +<% end # values["includes"] %> +
+
+<% end %> + +<% values["sections"].each do |sections| %> +
+<% if sections["sectitle"] then %> +

"><%= sections["sectitle"] %>

+<% if sections["seccomment"] then %> +
+ <%= sections["seccomment"] %> +
+<% end %> +<% end %> + +<% if values["classlist"] then %> +
+

Classes and Modules

+ + <%= values["classlist"] %> +
+<% end %> + +<% if values["constants"] then %> +
+

Constants

+ +
+ +<% values["constants"].each do |constants| $stderr.puts({ :constants => constants }.inspect) %> + + + + +<% if values["desc"] then %> + + +<% end %> + +<% end # values["constants"] %> +
<%= values["name"] %>=<%= values["value"] %> <%= values["desc"] %>
+
+
+<% end %> + +<% if values["aliases"] then %> +
+

External Aliases

+ +
+ +<% values["aliases"].each do |aliases| $stderr.puts({ :aliases => aliases }.inspect) %> + + + + + +<% if values["desc"] then %> + + + + +<% end %> +<% end # values["aliases"] %> +
<%= values["old_name"] %>-><%= values["new_name"] %>
 <%= values["desc"] %>
+
+
+<% end %> + + +<% if values["attributes"] then %> +
+

Attributes

+ +
+ +<% values["attributes"].each do |attributes| $stderr.puts({ :attributes => attributes }.inspect) %> + + +<% if values["rw"] then %> + +<% end %> +<% unless values["rw"] then %> + +<% end %> + + +<% end # values["attributes"] %> +
<%= values["name"] %> [<%= values["rw"] %>]   <%= values["a_desc"] %>
+
+
+<% end %> + + + + +<% if sections["method_list"] then %> +
+<% sections["method_list"].each do |method_list| %> +<% if method_list["methods"] then %> +

<%= method_list["type"] %> <%= method_list["category"] %> methods

+ +<% method_list["methods"].each do |methods| %> +
" class="method-detail"> + "> + + + +
+<% if methods["m_desc"] then %> + <%= methods["m_desc"] %> +<% end %> +<% if methods["sourcecode"] then %> +

-source');return false;">[Source]

+
-source"> +
+<%= methods["sourcecode"] %>
+
+
+<% end %> +
+
+ +<% end # method_list["methods"] %> +<% end %> +<% end # sections["method_list"] %> + +
+<% end %> +<% end # values["sections"] %> + EOF + +##################################################################### +### B O D Y T E M P L A T E +##################################################################### + + BODY = HEADER + %{ + +<%= template_include %> + +
+ +} + METHOD_LIST + %{ + +
+ +} + FOOTER + +##################################################################### +### S O U R C E C O D E T E M P L A T E +##################################################################### + + SRC_PAGE = XHTML_PREAMBLE + <<-EOF + + + <%= values["title"] %> + " /> + " type="text/css" media="screen" /> + + +
<%= values["code"] %>
+ + + EOF + + +##################################################################### +### I N D E X F I L E T E M P L A T E S +##################################################################### + + FR_INDEX_BODY = %{ +<%= template_include %> +} + + FILE_INDEX = XHTML_PREAMBLE + <<-EOF + + + + <%= values["list_title"] %> + " /> + " type="text/css" /> + + + +
+

<%= values["list_title"] %>

+
+<% values["entries"].each do |entries| %> + "><%= entries["name"] %>
+<% end # values["entries"] %> +
+
+ + + EOF + + CLASS_INDEX = FILE_INDEX + METHOD_INDEX = FILE_INDEX + + INDEX = <<-EOF +"?> + + + + + + <%= values["title"] %> + " /> + + + + + + + + " name="docwin" /> + + + EOF + +end + diff --git a/lib/rdoc/generator/html/kilmer.rb b/lib/rdoc/generator/html/kilmer.rb new file mode 100644 index 000000000..b6c9c4e33 --- /dev/null +++ b/lib/rdoc/generator/html/kilmer.rb @@ -0,0 +1,418 @@ +require 'rdoc/generator/html' + +module RDoc::Generator::HTML::KILMER + + FONTS = "Verdana, Arial, Helvetica, sans-serif" + + STYLE = <<-EOF +body,td,p { font-family: <%= values["fonts"] %>; + color: #000040; +} + +.attr-rw { font-size: xx-small; color: #444488 } + +.title-row { background-color: #CCCCFF; + color: #000010; +} + +.big-title-font { + color: black; + font-weight: bold; + font-family: <%= values["fonts"] %>; + font-size: large; + height: 60px; + padding: 10px 3px 10px 3px; +} + +.small-title-font { color: black; + font-family: <%= values["fonts"] %>; + font-size:10; } + +.aqua { color: black } + +.method-name, .attr-name { + font-family: font-family: <%= values["fonts"] %>; + font-weight: bold; + font-size: small; + margin-left: 20px; + color: #000033; +} + +.tablesubtitle, .tablesubsubtitle { + width: 100%; + margin-top: 1ex; + margin-bottom: .5ex; + padding: 5px 0px 5px 3px; + font-size: large; + color: black; + background-color: #CCCCFF; + border: thin; +} + +.name-list { + margin-left: 5px; + margin-bottom: 2ex; + line-height: 105%; +} + +.description { + margin-left: 5px; + margin-bottom: 2ex; + line-height: 105%; + font-size: small; +} + +.methodtitle { + font-size: small; + font-weight: bold; + text-decoration: none; + color: #000033; + background-color: white; +} + +.srclink { + font-size: small; + font-weight: bold; + text-decoration: none; + color: #0000DD; + background-color: white; +} + +.paramsig { + font-size: small; +} + +.srcbut { float: right } + EOF + + BODY = <<-EOF + + <%= values["title"] %> + "> + " type="text/css" media="screen" /> + + + + +<%= template_include %> + +<% if values["diagram"] then %> +
+<%= values["diagram"] %> +
+<% end %> + +<% if values["description"] then %> +
<%= values["description"] %>
+<% end %> + +<% if values["requires"] then %> + + +
Required files

+
+<% values["requires"].each do |requires| %> +<%= href requires["aref"], requires["name"] %> +<% end # values["requires"] %> +<% end %> +
+ +<% if values["methods"] then %> + + +
Methods

+
+<% values["methods"].each do |methods| %> +<%= href methods["aref"], methods["name"] %>, +<% end # values["methods"] %> +
+<% end %> + + +<% values["sections"].each do |sections| %> +
+<% if sections["sectitle"] then %> +

"><%= sections["sectitle"] %>

+<% if sections["seccomment"] then %> +
+ <%= sections["seccomment"] %> +
+<% end %> +<% end %> + +<% if sections["attributes"] then %> + + +
Attributes

+ +<% sections["attributes"].each do |attributes| %> + +<% if attributes["rw"] then %> + +<% end %> +<% unless attributes["rw"] then %> + +<% end %> + + + +<% end # sections["attributes"] %> +
 [<%= attributes["rw"] %>] <%= attributes["name"] %><%= attributes["a_desc"] %>
+<% end %> + +<% if sections["classlist"] then %> + + +
Classes and Modules

+<%= sections["classlist"] %>
+<% end %> + + <%= template_include %> + +<% end # values["sections"] %> + + + + EOF + + FILE_PAGE = <<-EOF + + + + +
+ +
File
<%= values["short_name"] %>
+ + + + + + + + +
Path:<%= values["full_path"] %> +<% if values["cvsurl"] then %> +  (">CVS) +<% end %> +
Modified:<%= values["dtm_modified"] %>
+

+ EOF + + CLASS_PAGE = <<-EOF + + + + + +
+ <%= values["classmod"] %>
<%= values["full_name"] %> +
+ + + + + +<% if values["parent"] then %> + + + + +<% end %> +
In: +<% values["infiles"].each do |infiles| %> +<%= href infiles["full_path_url"], infiles["full_path"] %> +<% if infiles["cvsurl"] then %> + (">CVS) +<% end %> +<% end # values["infiles"] %> +
Parent: +<% if values["par_url"] then %> + " class="cyan"> +<% end %> +<%= values["parent"] %> +<% if values["par_url"] then %> + +<% end %> +
+

+ EOF + + METHOD_LIST = <<-EOF +<% if values["includes"] then %> +
Included modules

+
+<% values["includes"].each do |includes| %> + <%= href includes["aref"], includes["name"] %> +<% end # values["includes"] %> +
+<% end %> + +<% if values["method_list"] then %> +<% values["method_list"].each do |method_list| $stderr.puts({ :method_list => method_list }.inspect) %> +<% if values["methods"] then %> + + +
<%= values["type"] %> <%= values["category"] %> methods
+<% values["methods"].each do |methods| $stderr.puts({ :methods => methods }.inspect) %> + + +
+"> +<% if values["callseq"] then %> +<%= values["callseq"] %> +<% end %> +<% unless values["callseq"] then %> + <%= values["name"] %><%= values["params"] %> +<% end %> +<% if values["codeurl"] then %> +" target="source" class="srclink">src +<% end %> +
+<% if values["m_desc"] then %> +
+<%= values["m_desc"] %> +
+<% end %> +<% if values["aka"] then %> +
+This method is also aliased as +<% values["aka"].each do |aka| $stderr.puts({ :aka => aka }.inspect) %> +"><%= values["name"] %> +<% end # values["aka"] %> +
+<% end %> +<% if values["sourcecode"] then %> +
+<%= values["sourcecode"] %>
+
+<% end %> +<% end # values["methods"] %> +<% end %> +<% end # values["method_list"] %> +<% end %> + EOF + + SRC_PAGE = <<-EOF + +<%= values["title"] %> +"> + + + +
<%= values["code"] %>
+ + + EOF + + FR_INDEX_BODY = %{ +<%= template_include %> +} + + FILE_INDEX = <<-EOF + + +"> + + + + + +<% values["entries"].each do |entries| %> +"><%= entries["name"] %>
+<% end # values["entries"] %> + + EOF + + CLASS_INDEX = FILE_INDEX + METHOD_INDEX = FILE_INDEX + + INDEX = <<-EOF + + + <%= values["title"] %> + "> + + + + + + + + +<% if values["inline_source"] then %> + " name="docwin"> +<% end %> +<% unless values["inline_source"] then %> + + " name="docwin"> + + +<% end %> + + <body bgcolor="white"> + Click <a href="html/index.html">here</a> for a non-frames + version of this page. + </body> + + + + + EOF + + # A blank page to use as a target + BLANK = %{ + +} + + def write_extra_pages + template = TemplatePage.new(BLANK) + File.open("blank.html", "w") { |f| template.write_html_on(f, {}) } + end + +end + diff --git a/lib/rdoc/generator/html/one_page_html.rb b/lib/rdoc/generator/html/one_page_html.rb new file mode 100644 index 000000000..885d0dcf6 --- /dev/null +++ b/lib/rdoc/generator/html/one_page_html.rb @@ -0,0 +1,121 @@ +require 'rdoc/generator/html' + +module RDoc::Generator::HTML::ONE_PAGE_HTML + + CONTENTS_XML = <<-EOF +<% if defined? classes and classes["description"] then %> +<%= classes["description"] %> +<% end %> + +<% if defined? files and files["requires"] then %> +

Requires:

+
    +<% files["requires"].each do |requires| %> +<% if requires["aref"] then %> +
  • "><%= requires["name"] %>
  • +<% end %> +<% unless requires["aref"] then %> +
  • <%= requires["name"] %>
  • +<% end %> +<% end # files["requires"] %> +
+<% end %> + +<% if defined? classes and classes["includes"] then %> +

Includes

+
    +<% classes["includes"].each do |includes| %> +<% if includes["aref"] then %> +
  • "><%= includes["name"] %>
  • +<% end %> +<% unless includes["aref"] then %> +
  • <%= includes["name"] %>
  • +<% end %> +<% end # classes["includes"] %> +
+<% end %> + +<% if defined? classes and classes["sections"] then %> +<% classes["sections"].each do |sections| %> +<% if sections["attributes"] then %> +

Attributes

+ +<% sections["attributes"].each do |attributes| %> + +<% end # sections["attributes"] %> +
<%= attributes["name"] %><%= attributes["rw"] %><%= attributes["a_desc"] %>
+<% end %> + +<% if sections["method_list"] then %> +

Methods

+<% sections["method_list"].each do |method_list| %> +<% if method_list["methods"] then %> +<% method_list["methods"].each do |methods| %> +

<%= methods["type"] %> <%= methods["category"] %> method: +<% if methods["callseq"] then %> +"><%= methods["callseq"] %> +<% end %> +<% unless methods["callseq"] then %> +"><%= methods["name"] %><%= methods["params"] %>

+<% end %> + +<% if methods["m_desc"] then %> +<%= methods["m_desc"] %> +<% end %> + +<% if methods["sourcecode"] then %> +
+<%= methods["sourcecode"] %>
+
+<% end %> +<% end # method_list["methods"] %> +<% end %> +<% end # sections["method_list"] %> +<% end %> +<% end # classes["sections"] %> +<% end %> + EOF + + ONE_PAGE = %{ + + + + <%= values["title"] %> + " /> + + +<% values["files"].each do |files| %> +

File: <%= files["short_name"] %>

+ + + +
Path:<%= files["full_path"] %>
Modified:<%= files["dtm_modified"] %>
+} + CONTENTS_XML + %{ +<% end # values["files"] %> + +<% if values["classes"] then %> +

Classes

+<% values["classes"].each do |classes| %> +<% if classes["parent"] then %> +

<%= classes["classmod"] %> <%= classes["full_name"] %> < <%= href classes["par_url"], classes["parent"] %>

+<% end %> +<% unless classes["parent"] then %> +

<%= classes["classmod"] %> <%= classes["full_name"] %>

+<% end %> + +<% if classes["infiles"] then %> +(in files +<% classes["infiles"].each do |infiles| %> +<%= href infiles["full_path_url"], infiles["full_path"] %> +<% end # classes["infiles"] %> +) +<% end %> +} + CONTENTS_XML + %{ +<% end # values["classes"] %> +<% end %> + + +} + +end + -- cgit