Skip to content

Commit 32ba0bf

Browse files
committed
Merge pull request #160 from torbjoernk/feature/pimp-my-docu
Improve documentation all over the place
2 parents 264cda3 + f411632 commit 32ba0bf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+5624
-1649
lines changed

Doxyfile

Lines changed: 1532 additions & 957 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ Doxygen generated documentation can be found [on the PinT server][documentation]
3333
Currently, it features the following content:
3434

3535
* \subpage #page_building_installing
36-
* \subpage #page_examples
36+
* \ref Examples
3737
* \subpage #page_contributing
3838
* \subpage #page_style_guide
3939
* \subpage #page_troubleshooting
4040

41-
[documentation]: https://pint.fz-juelich.de/ci/view/PFASST/job/PFASST_LATEST_STABLE_DOCU/doxygen
41+
[documentation]: https://pint.fz-juelich.de/ci/view/PFASST/job/PFASST_LATEST_STABLE_DOCU/doxygen
4242

4343

4444
Releases
@@ -47,29 +47,29 @@ Releases
4747
* **v0.3.0** The Big Cleanup Release (2014/12/12)
4848

4949
A lot of internal cleanup and usability enhancements.
50-
DOI: [10.5281/zenodo.13221][DOI_v030]
51-
See \subpage #page_changelog "the Changelog" for details.
50+
DOI: [10.5281/zenodo.13221][DOI_v030].
51+
See [the Changelog](#page_changelog) for details.
5252

5353
* **v0.2.0** MPI-PFASST Release (2014/08/29)
5454

5555
Implementation of PFASST with MPI.
56-
DOI: [10.5281/zenodo.11517][DOI_v020]
57-
See \subpage #page_changelog "the Changelog" for details.
56+
DOI: [10.5281/zenodo.11517][DOI_v020].
57+
See [the Changelog](#page_changelog) for details.
5858

5959
* **v0.1.0** First Release (2014/07/25)
6060

6161
Initial release with basic implementations of SDC and MLSDC.
62-
DOI: [10.5281/zenodo.11047][DOI_v010]
63-
See \subpage #page_changelog "the Changelog" for details.
62+
DOI: [10.5281/zenodo.11047][DOI_v010].
63+
See [the Changelog](#page_changelog) for details.
6464

6565
[DOI_v010]: http://dx.doi.org/10.5281/zenodo.11047
6666
[DOI_v020]: http://dx.doi.org/10.5281/zenodo.11517
6767
[DOI_v030]: http://dx.doi.org/10.5281/zenodo.13221
6868

6969
Release tags will be signed by one of the following PGP keys:
7070

71-
0x9CF9601F 2011-07-28 Torbjörn Klatt <[email protected]>
72-
Fingerprint DB8D EA65 F6A7 3DE0 E7EA F607 6CE8 B4B1 9CF9 601F
71+
0xAD9F8DC6 2014-12-12 Torbjörn Klatt <[email protected]>
72+
Fingerprint 6277 E9D9 7AA2 DBBE 5DE7 7498 756B F4D7 AD9F 8DC6
7373

7474

7575
Build status

doc/source/customized/custom.css

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#nav-tree img {
2+
box-sizing: content-box;
3+
}
4+
5+
ul.meta-info-block {
6+
font-size: 0.8em;
7+
color: gray;
8+
padding: 0;
9+
}
10+
11+
ul.meta-info-block > li {
12+
display: block;
13+
margin: -3px;
14+
}
15+
16+
p.lead {
17+
font-size: 1.15em;
18+
font-style: italic;
19+
}
20+
21+
code {
22+
border: 1px solid #C4CFE5;
23+
background-color: #FBFCFD;
24+
padding: 1px;
25+
}
26+
27+
.memdoc .panel {
28+
margin-bottom: 5px !important;
29+
}
30+
31+
.memdoc .panel .panel-heading,
32+
.memdoc .panel .panel-body,
33+
.memdoc .panel .list-group-item,
34+
.reflist .panel .panel-heading,
35+
.reflist .panel .panel-body,
36+
.textblock .panel .panel-heading,
37+
.textblock .panel .panel-body {
38+
padding: 5px;
39+
padding-left: 10px;
40+
}
41+
.memdoc .section.see {
42+
font-size: 90%;
43+
}
44+
45+
.panel-footer ul {
46+
margin-top: 0;
47+
margin-bottom: 0;
48+
}
49+
50+
/* width of all text blocks */
51+
.textblock,
52+
.memdoc.panel-body > *,
53+
.memdoc > .panel,
54+
.memdoc > .panel > .panel-body > *,
55+
.memitem > .panel,
56+
.memitem > .panel > .panel-body > * {
57+
width: 750px;
58+
}
59+
60+
61+
table.directory .badge {
62+
margin-right: 3px;
63+
}
64+
65+
dl.citelist > dd > p {
66+
padding-left: 50px;
67+
}
Lines changed: 231 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,231 @@
1+
$(document).ready(function() {
2+
var MakeFirstParagraphLead = function(elem) {
3+
var lead = $(elem).children("p:first");
4+
lead.addClass("lead");
5+
if (lead.html()) {
6+
lead.html(lead.html().charAt(0).toUpperCase() + lead.html().slice(1));
7+
}
8+
return elem;
9+
};
10+
11+
var RemoveEmptyParagraphs = function(parent) {
12+
$(parent).find("p").each(
13+
function() {
14+
if ($(this).html() == "") {
15+
$(this).detach();
16+
}
17+
}
18+
);
19+
return parent;
20+
};
21+
22+
var GetMetablock = function(elem) {
23+
if ($(elem).hasClass("memdoc")) {
24+
return $(elem).parent().find(".meta-info-block");
25+
} else {
26+
return $(elem).find(".meta-info-block");
27+
}
28+
};
29+
30+
var AddToMetablock = function(elem, css) {
31+
var parent = $(elem).parent();
32+
var metablock = GetMetablock(parent);
33+
34+
if (metablock.length == 0) {
35+
if (parent.hasClass("memdoc")) {
36+
parent.after("<div class='panel-footer'><ul class='meta-info-block'></ul></div>");
37+
} else {
38+
// we are in a details textblock
39+
$(elem).before("<ul class='meta-info-block'></ul>");
40+
}
41+
}
42+
metablock = GetMetablock(parent);
43+
44+
$(elem).detach();
45+
metablock.append("<li class='" + css + "'>" + $(elem).html() + "</li>");
46+
};
47+
48+
var TweakMemberDocStyle = function(elem) {
49+
var definition = $(elem).find("p").filter(function() {
50+
return ($(this).text()).match('^Definition at line.*\.$');
51+
});
52+
var overloaded = $(elem).find("p").filter(function() {
53+
return ($(this).text()).match('^This is an overloaded.*\.$');
54+
});
55+
var referenced = $(elem).find("p").filter(function() {
56+
return ($(this).text()).match('^Referenced by.*\.$');
57+
});
58+
var references = $(elem).find("p").filter(function() {
59+
return ($(this).text()).match('^References.*\.$');
60+
});
61+
var reimpl = $(elem).find("p").filter(function() {
62+
return ($(this).text()).match('^Reimplemented (in|from).*\.$');
63+
});
64+
var impl = $(elem).find("p").filter(function() {
65+
return ($(this).text()).match('^Implement(ed in|s).*\.$');
66+
});
67+
68+
AddToMetablock(definition, 'meta-definition');
69+
AddToMetablock(overloaded, 'meta-overload');
70+
AddToMetablock(referenced, 'meta-referenced');
71+
AddToMetablock(references, 'meta-references');
72+
AddToMetablock(reimpl, 'meta-reimplemented');
73+
AddToMetablock(impl, 'meta-implemented');
74+
75+
var metablock = GetMetablock($(elem));
76+
77+
metablock.find("li a.el").addClass("code").removeClass("el");
78+
79+
// make the first paragraph stand out
80+
MakeFirstParagraphLead($(elem));
81+
82+
// remove empty paragraphs
83+
RemoveEmptyParagraphs($(elem));
84+
};
85+
86+
var MakePanel = function(container, title, content, footer) {
87+
$(container).addClass("panel panel-default");
88+
$(container).find(title).addClass("panel-heading");
89+
$(container).find(content).addClass("panel-body");
90+
if (typeof(footer) !== 'undefined') {
91+
$(container).find(footer).addClass("panel-footer");
92+
if ($(container).find(content).text() === ""
93+
&& $(container).find(footer).text() === "") {
94+
$(container).detach();
95+
}
96+
} else {
97+
if ($(container).find(content).text() == "") {
98+
$(container).detach();
99+
}
100+
}
101+
};
102+
103+
var TweakMemberSections = function(dl) {
104+
MakePanel($(dl), 'dt', 'dd');
105+
dl.addClass("member-section").removeClass("panel-default");
106+
var dt = dl.find("dt");
107+
switch (dt.text()) {
108+
case "Template Parameters":
109+
dl.addClass("panel-primary");
110+
break;
111+
case "Parameters":
112+
dl.addClass("panel-primary");
113+
break;
114+
case "Returns":
115+
dl.addClass("panel-success");
116+
break;
117+
case "Precondition":
118+
dl.addClass("panel-info");
119+
break;
120+
case "Note":
121+
dl.addClass("panel-info");
122+
break;
123+
case "Exceptions":
124+
dl.addClass("panel-danger");
125+
break;
126+
case "Todo:":
127+
dl.addClass("panel-warning");
128+
break;
129+
default: // 'See also', 'Since'
130+
dl.addClass("panel-default");
131+
break;
132+
}
133+
134+
var param_table = dl.find("table.params, table.tparams, table.exception");
135+
if (param_table.length > 0) {
136+
param_table.addClass("table");
137+
param_table.unwrap();
138+
}
139+
140+
var dds = dl.find("dd");
141+
if (dds.length > 1) {
142+
dt.after("<ul class='list-group'></ul>");
143+
var new_dds = dt.next();
144+
dds.each(function() {
145+
new_dds.append("<li class='list-group-item'>" + $(this).html() + "</li>");
146+
$(this).detach();
147+
});
148+
} else {
149+
dds.replaceWith(function() { return "<div class='" + $(this).attr('class') + "'>" + $(this).html() + "</div>"; });
150+
}
151+
dt.replaceWith("<div class='" + dt.attr('class') + "'>" + dt.html() + "</div>");
152+
dl.replaceWith("<div class='" + dl.attr('class') + "'>" + dl.html() + "</div>");
153+
};
154+
155+
// detailed description text
156+
$("h2.groupheader:contains('Detailed Description')").each(
157+
function() {
158+
TweakMemberDocStyle($(this).next());
159+
}
160+
);
161+
162+
// member details doc
163+
$(".memdoc").each(function() {
164+
TweakMemberDocStyle($(this));
165+
$(this).find("dl").each(function() {
166+
TweakMemberSections($(this));
167+
});
168+
});
169+
170+
$(".memitem").each(function() {
171+
MakePanel($(this), '.memproto', '.memdoc');
172+
});
173+
174+
$(".memitem").each(function() {
175+
var header = $(this).children(".panel-heading");
176+
var footer = $(this).children(".panel-footer").find(".meta-info-block");
177+
if (footer.find(".meta-overload").is(".meta-overload")) {
178+
header.find(".mlabels td.mlabels-right > .mlabels").prepend("<span class='mlabel label label-default'>overload</span>");
179+
}
180+
});
181+
182+
$(".mlabel").each(function() {
183+
switch ($(this).text()) {
184+
case "delete":
185+
$(this).addClass("label label-danger");
186+
break;
187+
case "private":
188+
$(this).addClass("label label-warning");
189+
break;
190+
case "protected":
191+
$(this).addClass("label label-primary");
192+
break;
193+
case "static":
194+
$(this).addClass("label label-success");
195+
break;
196+
case "virtual":
197+
$(this).addClass("label label-info");
198+
break;
199+
default: // 'override', 'inline'
200+
$(this).addClass("label label-default");
201+
}
202+
});
203+
204+
// directory tables
205+
$(".directory table.directory").each(function() {
206+
$(this).addClass("table");
207+
$(this).find("span.icon").unwrap().addClass("badge").removeClass("icon");
208+
});
209+
210+
$("table.doxtable").addClass("table");
211+
212+
// reflists (i.e. ToDos)
213+
$("div.textblock dl.reflist").each(function() {
214+
$(this).find("dt").each(function() {
215+
$(this).wrap("<div class='panel panel-default'></div>");
216+
$(this).replaceWith("<div class='panel-heading'>" + $(this).html() + "</div>");
217+
});
218+
$(this).find("dd").each(function() {
219+
$(this).prev().append($(this));
220+
$(this).replaceWith("<div class='panel-body'>" + $(this).html() + "</div>");
221+
});
222+
$(this).find(".panel-body p").removeClass();
223+
});
224+
225+
// panels/blocks in detailed descriptions
226+
$("div.textblock").each(function() {
227+
$(this).find("dl").each(function() {
228+
TweakMemberSections($(this));
229+
});
230+
});
231+
});

0 commit comments

Comments
 (0)