From ac75f7f4418a8ca304dc030695465fab8ef02f6d Mon Sep 17 00:00:00 2001 From: "gman@google.com" Date: Tue, 14 Jul 2009 20:15:54 +0000 Subject: Lots more docs changes. *) added stylesheet.css, tabs.css, tab_?.gif back in *) refactored so classtree.html splits names that are too long. *) removed constructor docs and source link from o3d docs (vs o3djs docs) *) fixed paths in header.html. They used to be statically included but now that they are used by both o3d and o3djs they needed to have certain paths fixed dynamically. *) Pull in new nixysa. Review URL: http://codereview.chromium.org/155526 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20645 0039d316-1c4b-4281-b951-d872f2087c98 --- o3d/DEPS | 2 +- o3d/DEPS_gyp | 2 +- o3d/documentation/build_docs.py | 52 +++-- .../jsdoc-toolkit-templates/annotated.tmpl | 2 +- .../jsdoc-toolkit-templates/class.tmpl | 14 +- .../jsdoc-toolkit-templates/classtree.tmpl | 4 +- .../jsdoc-toolkit-templates/members.tmpl | 2 +- .../jsdoc-toolkit-templates/namespaces.tmpl | 3 +- .../jsdoc-toolkit-templates/publish.js | 100 ++++++++- .../jsdoc-toolkit-templates/static/header.html | 4 +- .../jsdoc-toolkit-templates/static/stylesheet.css | 233 +++++++++++++++++++++ .../jsdoc-toolkit-templates/static/tab_b.gif | Bin 0 -> 35 bytes .../jsdoc-toolkit-templates/static/tab_l.gif | Bin 0 -> 706 bytes .../jsdoc-toolkit-templates/static/tab_r.gif | Bin 0 -> 2585 bytes .../jsdoc-toolkit-templates/static/tabs.css | 102 +++++++++ o3d/documentation/stylesheet.css | 233 --------------------- 16 files changed, 475 insertions(+), 278 deletions(-) create mode 100644 o3d/documentation/jsdoc-toolkit-templates/static/stylesheet.css create mode 100644 o3d/documentation/jsdoc-toolkit-templates/static/tab_b.gif create mode 100644 o3d/documentation/jsdoc-toolkit-templates/static/tab_l.gif create mode 100644 o3d/documentation/jsdoc-toolkit-templates/static/tab_r.gif create mode 100644 o3d/documentation/jsdoc-toolkit-templates/static/tabs.css delete mode 100644 o3d/documentation/stylesheet.css (limited to 'o3d') diff --git a/o3d/DEPS b/o3d/DEPS index 002cc4a..c33e0d6 100644 --- a/o3d/DEPS +++ b/o3d/DEPS @@ -1,7 +1,7 @@ vars = { "chromium_trunk": "http://src.chromium.org/svn/trunk", - "nixysa_rev": "25", + "nixysa_rev": "26", "o3d_code_rev": "93", } diff --git a/o3d/DEPS_gyp b/o3d/DEPS_gyp index 20479c1..1a70021 100644 --- a/o3d/DEPS_gyp +++ b/o3d/DEPS_gyp @@ -1,7 +1,7 @@ vars = { "chromium_trunk": "http://src.chromium.org/svn/trunk", - "nixysa_rev": "25", + "nixysa_rev": "26", "chromium_rev": "19644", "o3d_code_rev": "93", } diff --git a/o3d/documentation/build_docs.py b/o3d/documentation/build_docs.py index 43344fe..72669a3 100755 --- a/o3d/documentation/build_docs.py +++ b/o3d/documentation/build_docs.py @@ -39,6 +39,8 @@ import imp import types import glob import subprocess +import shutil + _java_exe = '' _script_path = os.path.dirname(os.path.realpath(__file__)) @@ -137,15 +139,16 @@ def RunNixysa(idl_files, generate, output_dir, nixysa_options): idl_files) -def RunJSDocToolkit(js_files, ezt_output_dir, html_output_dir, prefix, o3djs, - baseURL): +def RunJSDocToolkit(js_files, ezt_output_dir, html_output_dir, prefix, mode, + baseURL, topURL): """Executes the JSDocToolkit.""" list_filename = MakePath('../scons-out/docs/obj/doclist.conf') f = open(list_filename, 'w') f.write('{\nD:{\n') f.write('prefix: "%s",\n' % prefix) f.write('baseURL: "%s",\n' % baseURL) - f.write('o3djs: "%s",\n' % o3djs) + f.write('topURL: "%s",\n' % topURL) + f.write('mode: "%s",\n' % mode) f.write('htmlOutDir: "%s",\n' % html_output_dir.replace('\\', '/')) f.write('endMarker: ""\n') f.write('},\n') @@ -180,12 +183,12 @@ def BuildJavaScriptForExternsFromIDLs(idl_files, output_dir): def BuildO3DDocsFromJavaScript(js_files, ezt_output_dir, html_output_dir): RunJSDocToolkit(js_files, ezt_output_dir, html_output_dir, - 'classo3d_1_1_', '', '') + 'classo3d_1_1_', 'o3d', '', '') def BuildO3DJSDocs(js_files, ezt_output_dir, html_output_dir): - RunJSDocToolkit(js_files, ezt_output_dir, html_output_dir, 'js_0_1_', 'true', - 'jsdocs/') + RunJSDocToolkit(js_files, ezt_output_dir, html_output_dir, 'js_0_1_', 'o3djs', + 'jsdocs/', '../') def BuildO3DExternsFile(js_files_dir, extra_externs_file, externs_file): @@ -229,6 +232,19 @@ def BuildCompiledO3DJS(o3djs_files, ['-js=%s' % (x, ) for x in o3djs_files]); +def CopyStaticFiles(o3d_docs_ezt_outpath, o3d_docs_html_outpath): + files = ['stylesheet.css', + 'tabs.css', + 'tab_l.gif', + 'tab_r.gif', + 'tab_b.gif'] + for file in files: + shutil.copyfile(MakePath('jsdoc-toolkit-templates/static/' + file), + MakePath(os.path.join(o3d_docs_ezt_outpath, file))) + shutil.copyfile(MakePath('jsdoc-toolkit-templates/static/' + file), + MakePath(os.path.join(o3d_docs_html_outpath, file))) + + def main(): """Builds the O3D API docs and externs and the o3djs docs.""" global _java_exe @@ -239,19 +255,16 @@ def main(): js_list_basepath = os.path.dirname(js_list_filename) idl_list_basepath = os.path.dirname(idl_list_filename) - docs_js_outpath = MakePath('../scons-out/docs/obj/documentation/apijs') - externs_js_outpath = MakePath('../scons-out/docs/obj/externs') - o3d_docs_ezt_outpath = MakePath( - '../scons-out/docs/obj/documentation/reference') - o3d_docs_html_outpath = MakePath( - '../scons-out/docs/obj/documentation/local_html') - o3djs_docs_ezt_outpath = MakePath( - '../scons-out/docs/obj/documentation/reference/jsdocs') - o3djs_docs_html_outpath = MakePath( - '../scons-out/docs/obj/documentation/local_html/jsdocs') - o3d_externs_path = MakePath('../scons-out/docs/obj/o3d-externs.js') - compiled_o3djs_outpath = MakePath( - '../scons-out/docs/obj/documentation/base.js') + outpath = '../scons-out/docs/obj/' + docs_outpath = '../scons-out/docs/obj/documentation/' + docs_js_outpath = MakePath(docs_outpath + 'apijs') + externs_js_outpath = MakePath(outpath + '/externs') + o3d_docs_ezt_outpath = MakePath(docs_outpath + 'reference') + o3d_docs_html_outpath = MakePath(docs_outpath + 'local_html') + o3djs_docs_ezt_outpath = MakePath(docs_outpath + 'reference/jsdocs') + o3djs_docs_html_outpath = MakePath(docs_outpath + 'local_html/jsdocs') + o3d_externs_path = MakePath(outpath + 'o3d-externs.js') + compiled_o3djs_outpath = MakePath(docs_outpath + 'base.js') externs_path = MakePath('externs/externs.js') o3d_extra_externs_path = MakePath('externs/o3d-extra-externs.js') @@ -280,6 +293,7 @@ def main(): o3d_externs_path) BuildO3DJSDocs(o3djs_files + [o3d_externs_path], o3djs_docs_ezt_outpath, o3djs_docs_html_outpath) + CopyStaticFiles(o3d_docs_ezt_outpath, o3d_docs_html_outpath) BuildCompiledO3DJS(o3djs_files, externs_path, o3d_externs_path, diff --git a/o3d/documentation/jsdoc-toolkit-templates/annotated.tmpl b/o3d/documentation/jsdoc-toolkit-templates/annotated.tmpl index 1388e67..7f87e49 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/annotated.tmpl +++ b/o3d/documentation/jsdoc-toolkit-templates/annotated.tmpl @@ -7,7 +7,7 @@ - +

Class List

Here are the classes, structs, unions and interfaces with brief descriptions: diff --git a/o3d/documentation/jsdoc-toolkit-templates/class.tmpl b/o3d/documentation/jsdoc-toolkit-templates/class.tmpl index 0520705..77a8b4f 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/class.tmpl +++ b/o3d/documentation/jsdoc-toolkit-templates/class.tmpl @@ -28,7 +28,7 @@ thisClass = data; {+sanitizeForEZT(thisClass.classDesc)+} {+sanitizeForEZT(thisClass.desc)+} - +

Source

{+getSourcePath(thisClass)+}
@@ -48,7 +48,7 @@ thisClass = data; - +

Constructor

  • {+data.alias+}{+ makeSignature(data.params) +}
  • @@ -65,10 +65,10 @@ thisClass = data;
  • - <static> + <Global> {+linkifyTypeSpec(makeName('[Method Summary]', thisClass.alias, method.name), method.type)+}  - - {+getQualifiedName(method)+}{+makeSignature(method.params)+} + + {+getQualifiedName(method)+}{+makeSignature(method.params)+}
    @@ -86,7 +86,7 @@ thisClass = data;
  • - <static>  + <Global>  {+linkifyTypeSpec(makeName('[Property Summary]', thisClass.alias, property.name), getPropertyType(property))+} {+getQualifiedName(property)+} @@ -100,7 +100,7 @@ thisClass = data; - +

    Constructor

    diff --git a/o3d/documentation/jsdoc-toolkit-templates/classtree.tmpl b/o3d/documentation/jsdoc-toolkit-templates/classtree.tmpl index eddd37a..5080519 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/classtree.tmpl +++ b/o3d/documentation/jsdoc-toolkit-templates/classtree.tmpl @@ -3,7 +3,7 @@ @@ -11,7 +11,7 @@ diff --git a/o3d/documentation/jsdoc-toolkit-templates/members.tmpl b/o3d/documentation/jsdoc-toolkit-templates/members.tmpl index 8a37abf..0d5946b 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/members.tmpl +++ b/o3d/documentation/jsdoc-toolkit-templates/members.tmpl @@ -20,7 +20,7 @@ This is the complete list of members for - + diff --git a/o3d/documentation/jsdoc-toolkit-templates/namespaces.tmpl b/o3d/documentation/jsdoc-toolkit-templates/namespaces.tmpl index c7d5891..13ccfe4 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/namespaces.tmpl +++ b/o3d/documentation/jsdoc-toolkit-templates/namespaces.tmpl @@ -7,7 +7,7 @@ - +

    Module List

    Here are the modules with brief descriptions: @@ -20,7 +20,6 @@ Here are the modules with brief descriptions:
    - {+include("static/footer.html")+} diff --git a/o3d/documentation/jsdoc-toolkit-templates/publish.js b/o3d/documentation/jsdoc-toolkit-templates/publish.js index 1040137..41bdf93 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/publish.js +++ b/o3d/documentation/jsdoc-toolkit-templates/publish.js @@ -52,7 +52,10 @@ var g_validJSDOCTypes = { var g_unknownTypes = { }; var g_numErrors = 0; var g_o3djsMode = false; +var g_outputMode; var g_baseURL; +var g_topURL; +var g_templates = []; /** * Called automatically by JsDoc Toolkit. @@ -65,12 +68,14 @@ function publish(symbolSet) { templatesDir: JSDOC.opt.t, symbolsDir: '', prefix: JSDOC.opt.D.prefix, - o3djs: JSDOC.opt.D.o3djs}; + mode: JSDOC.opt.D.mode}; publish.conf.srcDir = publish.conf.outDir + 'src/'; publish.conf.htmlDir = JSDOC.opt.D.htmlOutDir; g_baseURL = JSDOC.opt.D.baseURL; + g_topURL = JSDOC.opt.D.topURL; + g_outputMode = JSDOC.opt.D.mode; - if (publish.conf.o3djs) { + if (publish.conf.mode == 'o3djs') { g_o3djsMode = true; } @@ -112,7 +117,7 @@ function publish(symbolSet) { System.exit(1); } - // some ustility filters + // some utility filters function hasNoParent($) {return ($.memberOf == '')} function isaFile($) {return ($.is('FILE'))} function isaClass($) {return ($.is('CONSTRUCTOR') || $.isNamespace)} @@ -131,6 +136,7 @@ function publish(symbolSet) { // get a list of all the classes in the symbolset var classes = symbols.filter(isaClass).sort(makeSortby('alias')); + var filteredClasses = []; // create each of the class pages for (var i = 0, l = classes.length; i < l; i++) { @@ -146,6 +152,9 @@ function publish(symbolSet) { } print('Generating docs for: ' + symbol.alias); + + filteredClasses.push(symbol); + // Comment these lines in to see what data is available to the templates. //print('----------------------------------------------------------------'); //dumpObject(symbol, 5); @@ -178,7 +187,7 @@ function publish(symbolSet) { output); } - var classTree = classTreeTemplate.process(classes); + var classTree = classTreeTemplate.process(filteredClasses); IO.saveFile(publish.conf.outDir, 'classtree.html', classTree); IO.saveFile(publish.conf.htmlDir, 'classtree.html', classTree); @@ -186,11 +195,11 @@ function publish(symbolSet) { IO.saveFile(publish.conf.outDir, 'filelist.html', fileList); IO.saveFile(publish.conf.htmlDir, 'filelist.html', fileList); - var annotated = annotatedTemplate.process(classes); + var annotated = annotatedTemplate.process(filteredClasses); IO.saveFile(publish.conf.outDir, 'annotated' + publish.conf.ext, annotated); IO.saveFile(publish.conf.htmlDir, 'annotated.html', annotated); - var namespaces = namespacesTemplate.process(classes); + var namespaces = namespacesTemplate.process(filteredClasses); IO.saveFile(publish.conf.outDir, 'namespaces' + publish.conf.ext, namespaces); IO.saveFile(publish.conf.htmlDir, 'namespaces.html', namespaces); @@ -234,8 +243,18 @@ function makeSortby(attribute) { * @return {string} contents of file. */ function include(path) { - var path = publish.conf.templatesDir + path; - return IO.readFile(path); + var template = g_templates[path]; + if (!template) { + try { + template = new JSDOC.JsPlate(JSDOC.opt.t + path); + } catch (e) { + generateError('Could not include: ' + path + '\n' + e); + template = ''; + } + g_templates[path] = template; + } + var output = template.process({}); + return output; } /** @@ -786,8 +805,71 @@ function getQualifiedName(method) { } /** - * Get the base URL for links. + * Gets the base URL for links. */ function getBaseURL() { return g_baseURL; } + +/** + * Gets the top URL for links. + */ +function getTopURL() { + return g_topURL; +} + +/** + * Returns the output mode. + * @return {string} The output mode. + */ +function getOutputMode() { + return g_outputMode; +} + +/** + * Returns true if we should write constructor docs. + * @param {!Symbol} symbol The symbol that might have a constructor. + * @return {boolean} true if we should write a constructor. + */ +function shouldWriteConstructor(symbol) { + return g_outputMode != 'o3d' && + !symbol.isPrivate && + !symbol.isBuiltin() && + !symbol.isNamespace && + symbol.is('CONSTRUCTOR'); +} + +/** + * Splits a camelCase word into an array of word parts. + * @param {string} word camelCase word. + * @return {!Array.} The word split into word parts. + */ +function splitCamelCase(word) { + var spacesAdded = word.replace(/([A-Z])/g, ' $1'); + return spacesAdded.split(' '); +} + +/** + * Breaks a word at max_length with hyphens. Assumes word is camelCase + * @param {string} word Word to break. + * @param {number} maxLength word will continue to be split until no part is + * this longer than this if possible. + * @param {string} string to use to join split parts. + * @return {string} The word split then joined with joinString. + */ +function hyphenateWord(word, maxLength, joinString) { + var words = splitCamelCase(word); + var hyphenated = ''; + var newWord = ''; + for (var ii = 0; ii < words.length; ++ii) { + var part = words[ii]; + var temp = newWord + part; + if (temp.length > maxLength) { + hyphenated += newWord + joinString; + newWord = ''; + } + newWord += part; + } + hyphenated += newWord; + return hyphenated; +} diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/header.html b/o3d/documentation/jsdoc-toolkit-templates/static/header.html index e1b67bc..b5d9bd6 100644 --- a/o3d/documentation/jsdoc-toolkit-templates/static/header.html +++ b/o3d/documentation/jsdoc-toolkit-templates/static/header.html @@ -8,8 +8,8 @@ [#] [#] [include "/apis/_common_head_elements.ezt"] [#] -[#] -[#] +[#] +[#] [#] [#] [#] diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/stylesheet.css b/o3d/documentation/jsdoc-toolkit-templates/static/stylesheet.css new file mode 100644 index 0000000..be09224 --- /dev/null +++ b/o3d/documentation/jsdoc-toolkit-templates/static/stylesheet.css @@ -0,0 +1,233 @@ +/* + * Based off the Doxygen generated template stylesheet and trimmed/edited to + * remove items that would conflict with codesite or other overlying + * stylesheets while maintaining the desired look and feel. + * + * The #doxygen-ref is an id tag which encompasses code generated by doxygen + * and allows override of standard html tags while not affecting the rest + * of the page such as sidebars. + */ + +A.qindex { + text-decoration: none; + font-weight: bold; + color: #1A419D; +} +A.qindex:visited { + text-decoration: none; + font-weight: bold; + color: #1A419D +} +A.qindex:hover { + text-decoration: none; + background-color: #ddf; +} +A.qindexHL { + text-decoration: none; + font-weight: bold; + background-color: #66c; + color: #fff; + border: 1px double #9295C2; +} +A.qindexHL:hover, +A.qindexHL:visited { + text-decoration: none; + background-color: #66c; + color: #fff; +} +A.el { + text-decoration: none; + font-weight: bold; +} +A.elRef { + font-weight: bold; +} +A.code:link, +A.code:visited { + text-decoration: none; + font-weight: normal; + color: #00F; +} +A.codeRef:link, +A.codeRef:visited { + font-weight: normal; + color: #00F; +} +A:hover { + text-decoration: none; + background-color: #f2f2ff; +} +DL.el { + margin-left: -1cm; +} +.fragment { + font-family: Fixed, monospace; + font-size: 95%; +} +PRE.fragment { + border: 1px solid #CCC; + background-color: #f5f5f5; + margin: 4px 8px 4px 2px + padding: 4px 6px; +} +DIV.ah { + background-color: black; + font-weight: bold; + color: #fff; + margin-bottom: 3px; + margin-top: 3px +} +TD.md { + background-color: #e1e1e4; + font-weight: bold; + border: none; +} +TD.mdPrefix { + background-color: #e1e1e4; + color: #606060; + font-size: 80%; + border: none; +} +TD.mdname1 { + background-color: #e1e1e4; + font-weight: bold; + color: #602020; + border: none; +} +.memitem { + padding: 4px; + background-color: #ffff; +} +.memname { + background-color: #e1e1e4; + white-space: nowrap; + font-weight: bold; +} +.memdoc{ + padding-left: 10px; +} +#doxygen-ref div.memproto td { + background-color: #e1e1e4; +} +.memproto { + background-color: #e1e1e4; + width: 100%; + border-width: 1px; + border-style: solid; + border-color: #e1e1f4; + font-weight: bold; + -moz-border-radius: 8px 8px 8px 8px; +} +.paramkey { + text-align: right; +} +.paramtype { + white-space: nowrap; +} +.paramname { + color: #602020; + font-style: italic; + white-space: nowrap; +} +DIV.groupHeader { + margin: 12px 16px 6px auto; + font-weight: bold; +} +DIV.groupText { + margin-left: 16px; + font-style: italic; + font-size: 90%; +} +TR.memlist { + background-color: #f0f0f0; +} +P.formulaDsp { + text-align: center; +} +IMG.formulaInl { + vertical-align: middle; +} +SPAN.keyword, +SPAN.keywordflow { + color: #008000; +} +SPAN.keywordtyp { + color: #604020; +} +SPAN.comment { + color: #800000; +} +SPAN.preprocessor { + color: #806020; +} +SPAN.stringliteral { + color: #002080; +} +SPAN.charliteral { + color: #008080; +} +.mdTable { + background-color: #e1e1e4; + border: none; + padding: 0; +} +.mdRow { + padding: 8px 10px; + border: none; +} +.mdescLeft, +.mdescRight { + padding: 0 8px 4px 8px; + font-size: 80%; + font-style: italic; + background-color: #FAFAFA; + border: 1px none #E0E0E0; + margin: 0; +} +.search { + color: #039; + font-weight: bold; +} +FORM.search { + margin: 0 auto; +} +INPUT.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +TD.tiny{ + font-size: 75%; +} +#doxygen-ref HR { + height: 1px; + border: none; + border-top: 1px solid black; +} +#doxygen-ref table, +#doxygen-ref td, +#doxygen-ref tr { + border:none; +} +#doxygen-ref .contents H1 { + text-align: center; + background-color: #ffffff; + border: 0; +} +#doxygen-ref H2 { + margin-left: 0; + margin-bottom: 5px; +} +#doxygen-ref CAPTION { + font-weight: bold; +} +.memdoc { + padding-left: 30px; +} +.memitem { + border-top:1px solid #E5ECF9; +} +.doxygen-global { + background-color: #ffcc66; +} \ No newline at end of file diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/tab_b.gif b/o3d/documentation/jsdoc-toolkit-templates/static/tab_b.gif new file mode 100644 index 0000000..0d62348 Binary files /dev/null and b/o3d/documentation/jsdoc-toolkit-templates/static/tab_b.gif differ diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/tab_l.gif b/o3d/documentation/jsdoc-toolkit-templates/static/tab_l.gif new file mode 100644 index 0000000..9b1e633 Binary files /dev/null and b/o3d/documentation/jsdoc-toolkit-templates/static/tab_l.gif differ diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/tab_r.gif b/o3d/documentation/jsdoc-toolkit-templates/static/tab_r.gif new file mode 100644 index 0000000..ce9dd9f Binary files /dev/null and b/o3d/documentation/jsdoc-toolkit-templates/static/tab_r.gif differ diff --git a/o3d/documentation/jsdoc-toolkit-templates/static/tabs.css b/o3d/documentation/jsdoc-toolkit-templates/static/tabs.css new file mode 100644 index 0000000..16b1be0 --- /dev/null +++ b/o3d/documentation/jsdoc-toolkit-templates/static/tabs.css @@ -0,0 +1,102 @@ +/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ + +DIV.tabs +{ + float : left; + width : 100%; + background : url("tab_b.gif") repeat-x bottom; + margin-bottom : 4px; +} + +DIV.tabs UL +{ + margin : 0px; + padding-left : 10px; + list-style : none; +} + +DIV.tabs LI, DIV.tabs FORM +{ + display : inline; + margin : 0px; + padding : 0px; +} + +DIV.tabs FORM +{ + float : right; +} + +DIV.tabs A +{ + float : left; + background : url("tab_r.gif") no-repeat right top; + border-bottom : 1px solid #84B0C7; + font-size : 8px; + font-weight : bold; + text-decoration : none; +} + +DIV.tabs A:hover +{ + background-position: 100% -150px; +} + +DIV.tabs A:link, DIV.tabs A:visited, +DIV.tabs A:active, DIV.tabs A:hover +{ + color: #1A419D; +} + +DIV.tabs SPAN +{ + float : left; + display : block; + background : url("tab_l.gif") no-repeat left top; + padding : 5px 9px; + white-space : nowrap; +} + +DIV.tabs INPUT +{ + float : right; + display : inline; + font-size : 1em; +} + +DIV.tabs TD +{ + font-size : 8px; + font-weight : bold; + text-decoration : none; +} + + + +/* Commented Backslash Hack hides rule from IE5-Mac \*/ +DIV.tabs SPAN {float : none;} +/* End IE5-Mac hack */ + +DIV.tabs A:hover SPAN +{ + background-position: 0% -150px; +} + +DIV.tabs LI.current A +{ + background-position: 100% -150px; + border-width : 0px; +} + +DIV.tabs LI.current SPAN +{ + background-position: 0% -150px; + padding-bottom : 6px; +} + +DIV.navpath +{ + background : none; + border : none; + border-bottom : 1px solid #84B0C7; +} diff --git a/o3d/documentation/stylesheet.css b/o3d/documentation/stylesheet.css deleted file mode 100644 index be09224..0000000 --- a/o3d/documentation/stylesheet.css +++ /dev/null @@ -1,233 +0,0 @@ -/* - * Based off the Doxygen generated template stylesheet and trimmed/edited to - * remove items that would conflict with codesite or other overlying - * stylesheets while maintaining the desired look and feel. - * - * The #doxygen-ref is an id tag which encompasses code generated by doxygen - * and allows override of standard html tags while not affecting the rest - * of the page such as sidebars. - */ - -A.qindex { - text-decoration: none; - font-weight: bold; - color: #1A419D; -} -A.qindex:visited { - text-decoration: none; - font-weight: bold; - color: #1A419D -} -A.qindex:hover { - text-decoration: none; - background-color: #ddf; -} -A.qindexHL { - text-decoration: none; - font-weight: bold; - background-color: #66c; - color: #fff; - border: 1px double #9295C2; -} -A.qindexHL:hover, -A.qindexHL:visited { - text-decoration: none; - background-color: #66c; - color: #fff; -} -A.el { - text-decoration: none; - font-weight: bold; -} -A.elRef { - font-weight: bold; -} -A.code:link, -A.code:visited { - text-decoration: none; - font-weight: normal; - color: #00F; -} -A.codeRef:link, -A.codeRef:visited { - font-weight: normal; - color: #00F; -} -A:hover { - text-decoration: none; - background-color: #f2f2ff; -} -DL.el { - margin-left: -1cm; -} -.fragment { - font-family: Fixed, monospace; - font-size: 95%; -} -PRE.fragment { - border: 1px solid #CCC; - background-color: #f5f5f5; - margin: 4px 8px 4px 2px - padding: 4px 6px; -} -DIV.ah { - background-color: black; - font-weight: bold; - color: #fff; - margin-bottom: 3px; - margin-top: 3px -} -TD.md { - background-color: #e1e1e4; - font-weight: bold; - border: none; -} -TD.mdPrefix { - background-color: #e1e1e4; - color: #606060; - font-size: 80%; - border: none; -} -TD.mdname1 { - background-color: #e1e1e4; - font-weight: bold; - color: #602020; - border: none; -} -.memitem { - padding: 4px; - background-color: #ffff; -} -.memname { - background-color: #e1e1e4; - white-space: nowrap; - font-weight: bold; -} -.memdoc{ - padding-left: 10px; -} -#doxygen-ref div.memproto td { - background-color: #e1e1e4; -} -.memproto { - background-color: #e1e1e4; - width: 100%; - border-width: 1px; - border-style: solid; - border-color: #e1e1f4; - font-weight: bold; - -moz-border-radius: 8px 8px 8px 8px; -} -.paramkey { - text-align: right; -} -.paramtype { - white-space: nowrap; -} -.paramname { - color: #602020; - font-style: italic; - white-space: nowrap; -} -DIV.groupHeader { - margin: 12px 16px 6px auto; - font-weight: bold; -} -DIV.groupText { - margin-left: 16px; - font-style: italic; - font-size: 90%; -} -TR.memlist { - background-color: #f0f0f0; -} -P.formulaDsp { - text-align: center; -} -IMG.formulaInl { - vertical-align: middle; -} -SPAN.keyword, -SPAN.keywordflow { - color: #008000; -} -SPAN.keywordtyp { - color: #604020; -} -SPAN.comment { - color: #800000; -} -SPAN.preprocessor { - color: #806020; -} -SPAN.stringliteral { - color: #002080; -} -SPAN.charliteral { - color: #008080; -} -.mdTable { - background-color: #e1e1e4; - border: none; - padding: 0; -} -.mdRow { - padding: 8px 10px; - border: none; -} -.mdescLeft, -.mdescRight { - padding: 0 8px 4px 8px; - font-size: 80%; - font-style: italic; - background-color: #FAFAFA; - border: 1px none #E0E0E0; - margin: 0; -} -.search { - color: #039; - font-weight: bold; -} -FORM.search { - margin: 0 auto; -} -INPUT.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -TD.tiny{ - font-size: 75%; -} -#doxygen-ref HR { - height: 1px; - border: none; - border-top: 1px solid black; -} -#doxygen-ref table, -#doxygen-ref td, -#doxygen-ref tr { - border:none; -} -#doxygen-ref .contents H1 { - text-align: center; - background-color: #ffffff; - border: 0; -} -#doxygen-ref H2 { - margin-left: 0; - margin-bottom: 5px; -} -#doxygen-ref CAPTION { - font-weight: bold; -} -.memdoc { - padding-left: 30px; -} -.memitem { - border-top:1px solid #E5ECF9; -} -.doxygen-global { - background-color: #ffcc66; -} \ No newline at end of file -- cgit v1.1
    {+data.alias+}{+ makeSignature(data.params) +}{+thisClass.memberOf+}