Use image buttons for ordering summary bar sections (images courtesy of dr|z3d)

This commit is contained in:
str4d
2012-07-10 11:42:20 +00:00
parent 8d9909acfb
commit 42565f19fc
20 changed files with 43 additions and 27 deletions

View File

@ -26,10 +26,7 @@ public class ConfigSummaryHandler extends FormHandler {
boolean deleting = _action.equals(_("Delete selected"));
boolean adding = _action.equals(_("Add item"));
boolean saving = _action.equals(_("Save order"));
boolean movingTop = _action.substring(_action.indexOf(' ') + 1).equals(_("Top"));
boolean movingUp = _action.substring(_action.indexOf(' ') + 1).equals(_("Up"));
boolean movingDown = _action.substring(_action.indexOf(' ') + 1).equals(_("Down"));
boolean movingBottom = _action.substring(_action.indexOf(' ') + 1).equals(_("Bottom"));
boolean moving = _action.startsWith("move_");
if (_action.equals(_("Save")) && "0".equals(group)) {
try {
int refreshInterval = Integer.parseInt(getJettyString("refreshInterval"));
@ -50,8 +47,7 @@ public class ConfigSummaryHandler extends FormHandler {
_context.router().saveConfig(SummaryHelper.PROP_SUMMARYBAR + "default", SummaryHelper.DEFAULT_MINIMAL);
addFormNotice(_("Minimal summary bar default restored.") + " " +
_("Summary bar will refresh shortly."));
} else if (adding || deleting || saving ||
movingTop || movingUp || movingDown || movingBottom) {
} else if (adding || deleting || saving || moving) {
Map<Integer, String> sections = new TreeMap<Integer, String>();
for (Object o : _settings.keySet()) {
if (!(o instanceof String))
@ -115,21 +111,19 @@ public class ConfigSummaryHandler extends FormHandler {
addFormNotice(_("Removed") + ": " + removedName);
}
}
} else if (movingTop || movingUp || movingDown || movingBottom) {
int start = _action.indexOf('[');
int end = _action.indexOf(']');
String fromStr = _action.substring(start + 1, end - start);
} else if (moving) {
String parts[] = _action.split("_");
try {
int from = Integer.parseInt(fromStr);
int from = Integer.parseInt(parts[1]);
int to = 0;
if (movingUp)
if ("up".equals(parts[2]))
to = from - 1;
if (movingDown)
if ("down".equals(parts[2]))
to = from + 1;
if (movingBottom)
if ("bottom".equals(parts[2]))
to = sections.size() - 1;
int n = -1;
if (movingDown || movingBottom)
if ("down".equals(parts[2]) || "bottom".equals(parts[2]))
n = 1;
for (int i = from; n * i < n * to; i += n) {
String temp = sections.get(i + n);
@ -159,4 +153,16 @@ public class ConfigSummaryHandler extends FormHandler {
return null;
return arr[0].trim();
}
public void setMovingAction() {
for (Object o : _settings.keySet()) {
if (!(o instanceof String))
continue;
String k = (String) o;
if (k.startsWith("move_") && k.endsWith(".x") && _settings.get(k) != null) {
_action = k.substring(0, k.length() - 2);
break;
}
}
}
}

View File

@ -799,6 +799,9 @@ public class SummaryHelper extends HelperBase {
sortedSections.add(section);
}
String theme = _context.getProperty(CSSHelper.PROP_THEME_NAME, CSSHelper.DEFAULT_THEME);
String imgPath = CSSHelper.BASE_THEME_PATH + theme + "/images/";
StringBuilder buf = new StringBuilder(2048);
buf.append("<table><tr><th>")
.append(_("Remove"))
@ -817,28 +820,28 @@ public class SummaryHelper extends HelperBase {
.append(i)
.append("\">");
if (i > 0) {
buf.append("<input type=\"submit\" class=\"buttonTop\" name=\"action\" value=\"[")
buf.append("<input type=\"image\" class=\"buttonTop\" name=\"move_")
.append(i)
.append("] ")
.append("_top\" alt=\"")
.append(_("Top"))
.append("\">");
buf.append("<input type=\"submit\" class=\"buttonUp\" name=\"action\" value=\"[")
.append("\" src=\"" + imgPath + "move_top.png\">");
buf.append("<input type=\"image\" class=\"buttonUp\" name=\"move_")
.append(i)
.append("] ")
.append("_up\" alt=\"")
.append(_("Up"))
.append("\">");
.append("\" src=\"" + imgPath + "move_up.png\">");
}
if (i < sections.size() - 1) {
buf.append("<input type=\"submit\" class=\"buttonDown\" name=\"action\" value=\"[")
buf.append("<input type=\"image\" class=\"buttonDown\" name=\"move_")
.append(i)
.append("] ")
.append("_down\" alt=\"")
.append(_("Down"))
.append("\">");
buf.append("<input type=\"submit\" class=\"buttonBottom\" name=\"action\" value=\"[")
.append("\" src=\"" + imgPath + "move_down.png\">");
buf.append("<input type=\"image\" class=\"buttonBottom\" name=\"move_")
.append(i)
.append("] ")
.append("_bottom\" alt=\"")
.append(_("Bottom"))
.append("\">");
.append("\" src=\"" + imgPath + "move_bottom.png\">");
}
buf.append("</td><td align=\"left\">")
.append(section)