Skip to content

Commit 2117b59

Browse files
committed
Improve a tooltip on an issue node #13
1 parent 44a9cd0 commit 2117b59

1 file changed

Lines changed: 42 additions & 2 deletions

File tree

  • src/main/java/com/junichi11/netbeans/modules/github/issues/issue

src/main/java/com/junichi11/netbeans/modules/github/issues/issue/GitHubIssue.java

Lines changed: 42 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343

4444
import com.junichi11.netbeans.modules.github.issues.GitHubIssueState;
4545
import com.junichi11.netbeans.modules.github.issues.repository.GitHubRepository;
46+
import com.junichi11.netbeans.modules.github.issues.utils.DateUtils;
4647
import com.junichi11.netbeans.modules.github.issues.utils.UiUtils;
4748
import java.beans.PropertyChangeListener;
4849
import java.beans.PropertyChangeSupport;
@@ -119,11 +120,50 @@ public String getDisplayName() {
119120
if (isNew()) {
120121
return Bundle.GitHubIssue_new_issue_displayName();
121122
}
122-
return String.format("%s - %s", issue.getNumber(), issue.getTitle());
123+
return String.format("%s - %s", issue.getNumber(), issue.getTitle()); // NOI18N
123124
}
124125

126+
@NbBundle.Messages({
127+
"GitHubIssue.LBL.assignee=Assignee",
128+
"GitHubIssue.LBL.created=Created",
129+
"GitHubIssue.LBL.createdBy=Created by",
130+
"GitHubIssue.LBL.dueDate=Due date",
131+
"GitHubIssue.LBL.milestone=Milestone"
132+
})
125133
public String getTooltip() {
126-
return String.format("%s [%s/%s]", getDisplayName(), repository.getRepositoryAuthor(), repository.getRepositoryName()); // NOI18N
134+
// XXX improve
135+
StringBuilder sb = new StringBuilder();
136+
String title = String.format("%s [%s]", getDisplayName(), repository.getFullName()); // NOI18N
137+
sb.append("<html>"); // NOI18N
138+
sb.append("<b>").append(title).append("</b>"); // NOI18N
139+
sb.append("<hr>"); // NOI18N
140+
Date created = getCreated();
141+
Date dueDate = getDueDate();
142+
User assignee = getAssignee();
143+
User createdUser = getCreatedUser();
144+
Milestone milestone = getMilestone();
145+
if (created != null) {
146+
sb.append(Bundle.GitHubIssue_LBL_created()).append(" : ") // NOI18N
147+
.append(DateUtils.DEFAULT_DATE_FORMAT.format(created)).append("<br>"); // NOI18N
148+
}
149+
if (dueDate != null) {
150+
sb.append(Bundle.GitHubIssue_LBL_dueDate()).append(" : ") // NOI18N
151+
.append(DateUtils.DEFAULT_DATE_FORMAT.format(dueDate)).append("<br>"); // NOI18N
152+
}
153+
if (createdUser != null) {
154+
sb.append(Bundle.GitHubIssue_LBL_createdBy()).append(" : ") // NOI18N
155+
.append(createdUser.getLogin()).append("<br>"); // NOI18N
156+
}
157+
if (assignee != null) {
158+
sb.append(Bundle.GitHubIssue_LBL_assignee()).append(" : ") // NOI18N
159+
.append(assignee.getLogin()).append("<br>"); // NOI18N
160+
}
161+
if (milestone != null) {
162+
sb.append(Bundle.GitHubIssue_LBL_milestone()).append(" : ") // NOI18N
163+
.append(milestone.getTitle()).append("<br>"); // NOI18N
164+
}
165+
sb.append("</html>"); // NOI18N
166+
return sb.toString();
127167
}
128168

129169
public boolean isNew() {

0 commit comments

Comments
 (0)