Skip to content

Commit d245640

Browse files
frauzufallctrueden
authored andcommitted
searchbar: layout updates
1 parent 6949a32 commit d245640

File tree

6 files changed

+186
-68
lines changed

6 files changed

+186
-68
lines changed

src/main/java/org/scijava/search/SearchResult.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
public interface SearchResult {
4343

4444
String name();
45+
String identifier();
4546
String iconPath();
4647
Map<String, String> properties();
4748
}

src/main/java/org/scijava/search/module/ModuleSearchResult.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public ModuleSearchResult(final ModuleInfo info, final String baseDir) {
5757
this.baseDir = baseDir;
5858

5959
props = new LinkedHashMap<>();
60-
props.put("Title", info.getTitle());
60+
// props.put("Title", info.getTitle());
6161
final MenuPath menuPath = info.getMenuPath();
6262
if (menuPath != null) {
6363
props.put("Menu path", menuPath.getMenuString(false));
@@ -79,12 +79,21 @@ public ModuleSearchResult(final ModuleInfo info, final String baseDir) {
7979
public String name() {
8080
return info.getTitle();
8181
}
82+
83+
@Override
84+
public String identifier() {
85+
String menuPath = info.getMenuPath().getMenuString().replace(">", "›");
86+
return menuPath.isEmpty() ? info.getTitle() : menuPath;
87+
}
8288

8389
@Override
8490
public String iconPath() {
8591
final String iconPath = info.getIconPath();
86-
return iconPath != null ? iconPath : //
87-
info.getMenuPath().getLeaf().getIconPath();
92+
if(iconPath != null) return iconPath;
93+
if(info.getMenuPath() != null && info.getMenuPath().getLeaf() != null){
94+
return info.getMenuPath().getLeaf().getIconPath();
95+
}
96+
return null;
8897
}
8998

9099
@Override

src/main/java/org/scijava/search/snippet/SnippetSearchResult.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,11 @@ public String snippet() {
7474
public String name() {
7575
return language.getLanguageName() + ": " + snippet;
7676
}
77+
78+
@Override
79+
public String identifier() {
80+
return name();
81+
}
7782

7883
@Override
7984
public String iconPath() {

src/main/java/org/scijava/search/web/ImageJForumSearcher.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,10 @@ public List<SearchResult> search(final String text, final boolean fuzzy) {
8181
final String forumPostUrl = "http://forum.imagej.net/t/" + metaInfo.get(
8282
"slug") + "/" + metaInfo.get("id") + "/";
8383

84-
final String details = "Url: " + forumPostUrl + "\n" + "Tags: " +
85-
metaInfo.get("tags") + "\n" + "Created: " + metaInfo.get(
86-
"created_at") + "\n" + "Last posted: " + metaInfo.get(
87-
"last_posted_at") + "\n";
84+
final String details = "Tags: " +
85+
metaInfo.get("tags") + "<br />" + "Created: " + metaInfo.get(
86+
"created_at") + "<br />" + "Last posted: " + metaInfo.get(
87+
"last_posted_at");
8888

8989
addResult(metaInfo.get("title"), "", forumPostUrl, details);
9090
}
@@ -102,6 +102,7 @@ HashMap<String, String> parseForumSearchResult(String content) {
102102
String currentValue = "";
103103
boolean readString = false;
104104
boolean readKey = true;
105+
boolean tagParentheses = false;
105106
String currentChar = " ";
106107
String previousChar = " ";
107108
for (int i = 0; i < content.length(); i++) {
@@ -119,7 +120,7 @@ HashMap<String, String> parseForumSearchResult(String content) {
119120
readKey = false;
120121
continue;
121122
}
122-
if (currentChar.equals(",")) {
123+
if (currentChar.equals(",") && !tagParentheses) {
123124
readKey = true;
124125
map.put(currentKey, currentValue);
125126
currentKey = "";
@@ -134,6 +135,12 @@ HashMap<String, String> parseForumSearchResult(String content) {
134135
continue;
135136
}
136137
}
138+
if(currentChar.equals("[")){
139+
tagParentheses = true;
140+
}
141+
if(currentChar.equals("]") && tagParentheses){
142+
tagParentheses = false;
143+
}
137144
currentValue = currentValue + currentChar;
138145

139146
}

src/main/java/org/scijava/search/web/WebSearchResult.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,19 +61,28 @@ public WebSearchResult(final String name, final String iconPath,
6161
public String name() {
6262
return name;
6363
}
64+
65+
@Override
66+
public String identifier() {
67+
return name();
68+
}
6469

6570
@Override
6671
public String iconPath() {
6772
return iconPath;
6873
}
74+
75+
public String details() {
76+
return details;
77+
}
6978

7079
@Override
7180
public Map<String, String> properties() {
7281
final HashMap<String, String> properties = new HashMap<>();
73-
properties.put("name", name);
82+
// properties.put("name", name);
7483
// properties.put("iconpath", iconPath);
7584
properties.put("url", url);
76-
properties.put(null, "<body style='font-size: 11pt; font-family: Arial; background-color: #f4f4f7; padding: 10px 5px;'>.. " + details + " ..</body>");
85+
properties.put(null, details);
7786
return properties;
7887
}
7988
}

0 commit comments

Comments
 (0)