Skip to content

Commit 8ed5db5

Browse files
Varunramfelixmulder
authored andcommitted
Add expand/collapse to all sections of dottydoc (#2489)
* Prelimary Fix for #2211:add expand/collapse all to sections of dottydoc * Remove all instances of comment.short from dottydoc codebase * Remove backup file
1 parent a147797 commit 8ed5db5

File tree

6 files changed

+39
-17
lines changed

6 files changed

+39
-17
lines changed

doc-tool/resources/_layouts/api-page.html

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767
{% endif %}
6868

6969
<h1 class="section {% if entity.constructors == null or entity.constructors.size == 0 %}empty{% endif %}">
70+
<span class="expand-button visible{% if entity.constructors == null or entity.constructors.size == 0 %}invisible{% endif %}" onclick="toggleMembersBody(this, 'constructors');">[-]</span>
7071
Constructors
7172
</h1>
7273

@@ -97,14 +98,15 @@ <h1 class="section {% if entity.constructors == null or entity.constructors.size
9798
</div>
9899

99100
<h1 class="section {% if entity.hasVisibleMembers == false %}empty{% endif %}">
101+
<span class="expand-button visible" onclick="toggleMembersBody(this, 'members');">[-]</span>
100102
Members
101103
</h1>
102104

103105
<div id="entity-members" class="entity-section {% if entity.hasVisibleMembers == false %}empty{% endif %}">
104106
{% for member in entity.members %}
105107
<div id="{{ member.signature }}" class="member {% if member.isPrivate %}private{% elsif member.isProtected %}protected{% endif %}">
106108
<div class="member-title">
107-
<span class="expand-button {% if member.hasShortenedDocstring == false %}invisible{% endif %}" onclick="toggleMemberBody(this, '{{ member.signature }}');">[+]</span>
109+
<span class="expand-button {% if member.comment.body %}visible{% endif %}" onclick="toggleMemberBody(this, '{{ member.signature }}');">[+]</span>
108110
<span class="member-annotations">
109111
{% for annot in member.annotations %}@{{ annot | split: '.' | last }} {% endfor %}
110112
</span>
@@ -169,21 +171,21 @@ <h1 class="section {% if entity.hasVisibleMembers == false %}empty{% endif %}">
169171
</div><!-- end member-title -->
170172

171173
<div class="member-body">
172-
<div class="member-body-short" id="short-body-{{ member.signature }}">
173-
{{ member.comment.short }}
174-
</div>
175174
<div class="member-body-long" id ="long-body-{{ member.signature }}">
176175
{{ member.comment.body }}
177176
</div>
178177
</div>
179178
<script>
179+
180+
function toggleMembersBody(span, arg){
181+
var members = document.getElementById("entity-" + arg);
182+
members.classList.toggle("toggled");
183+
span.innerHTML = (span.innerHTML == "[-]") ? "[+]" : "[-]";
184+
}
185+
180186
function toggleMemberBody(span, sig) {
181-
var shortBody = document.getElementById("short-body-" + sig);
182187
var longBody = document.getElementById("long-body-" + sig);
183-
184-
shortBody.classList.toggle("toggled")
185188
longBody.classList.toggle("toggled")
186-
187189
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
188190
}
189191
</script>

doc-tool/resources/_layouts/rand.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
currdate=$(date "+%Y-%m-%d\ %H:%M:%S")
2+
currDateComment="<!-- Docs Last Generated On "$currdate"-->"
3+
sed -i '.original' "1s/^/$currDateComment\\
4+
/" main.html

doc-tool/resources/css/api-page.css

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,23 @@ h1.section {
6666
margin: 30px 0;
6767
}
6868

69+
h1.section > span.expand-button.visible {
70+
color: rgba(167, 161, 161, 0.5);
71+
font-family: "Source Code Pro", sans-serif;
72+
font-size: 25px;
73+
}
74+
75+
h1.section > span.expand-button.visible:hover {
76+
color: rgb(167, 161, 161);
77+
cursor: pointer;
78+
user-select: none;
79+
}
80+
81+
h1.section > span.expand-button,
82+
h1.section > span.expand-button.hover {
83+
color: transparent;
84+
}
85+
6986
.empty {
7087
display: none;
7188
}
@@ -112,18 +129,18 @@ div.entity-section > div.member > div.member-title span.no-right {
112129
margin-right: -11px;
113130
}
114131

115-
div.entity-section > div.member > div.member-title > span.expand-button {
132+
div.entity-section > div.member > div.member-title > span.expand-button.visible {
116133
color: rgba(167, 161, 161, 0.5);
117134
}
118135

119-
div.entity-section > div.member > div.member-title > span.expand-button:hover {
136+
div.entity-section > div.member > div.member-title > span.expand-button.visible:hover {
120137
color: rgb(167, 161, 161);
121138
cursor: pointer;
122139
user-select: none;
123140
}
124141

125-
div.entity-section > div.member > div.member-title > span.expand-button.invisible,
126-
div.entity-section > div.member > div.member-title > span.expand-button.invisible:hover {
142+
div.entity-section > div.member > div.member-title > span.expand-button,
143+
div.entity-section > div.member > div.member-title > span.expand-button:hover {
127144
color: transparent;
128145
}
129146

@@ -142,3 +159,7 @@ div.entity-section > div.member > div.member-body > div.member-body-long {
142159
div.entity-section > div.member > div.member-body > div.member-body-long.toggled {
143160
display: block;
144161
}
162+
163+
div.entity-section.toggled {
164+
display: none;
165+
}

doc-tool/src/dotty/tools/dottydoc/model/JavaConverters.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,6 @@ object JavaConverters {
151151
"path" -> ent.path.asJava,
152152
"children" -> ent.children.map(_.asJava()).asJava,
153153
"comment" -> ent.comment.map(_.asJava).asJava,
154-
"hasShortenedDocstring" -> ent.hasShortenedDocstring,
155154
"signature" -> ent.signature
156155
)
157156
val members = ent match {

doc-tool/src/dotty/tools/dottydoc/model/entities.scala

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ trait Entity { entity =>
2121

2222
def annotations: List[String]
2323

24-
def hasShortenedDocstring: Boolean =
25-
comment.map(d => d.body.length > d.short.length).getOrElse(false)
26-
2724
def signature: String =
2825
entity.name + (entity match {
2926
case o: Object => "$"

doc-tool/test/JavaConverterTest.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,6 @@ class JavaConverterTest {
230230
assertEquals(expected.kind, actual.get("kind"))
231231
assertSameSeq(expected.annotations, actual.get("annotations"))
232232
assertSameSeq(expected.path, actual.get("path"))
233-
assertEquals(expected.hasShortenedDocstring, actual.get("hasShortenedDocstring"))
234233
// Only test if a comment is present
235234
expected.comment match {
236235
case Some(c) => assertNotEquals(null, actual.get("comment"))

0 commit comments

Comments
 (0)