Skip to content
Snippets Groups Projects
Commit 5753e967 authored by srosse's avatar srosse
Browse files

OO-990: small fix

parent 8dcd82f5
No related branches found
No related tags found
No related merge requests found
...@@ -31,7 +31,7 @@ import org.olat.core.gui.components.form.flexible.FormItemContainer; ...@@ -31,7 +31,7 @@ import org.olat.core.gui.components.form.flexible.FormItemContainer;
import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement;
import org.olat.core.gui.components.form.flexible.impl.Form; import org.olat.core.gui.components.form.flexible.impl.Form;
import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer; import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer;
import org.olat.core.gui.components.form.flexible.impl.elements.table.CSSIconFlexiCellRenderer; import org.olat.core.gui.components.form.flexible.impl.elements.table.AbstractCSSIconFlexiCellRenderer;
import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel;
...@@ -186,7 +186,7 @@ class ImportStep01 extends BasicStep { ...@@ -186,7 +186,7 @@ class ImportStep01 extends BasicStep {
* Initial Date: 21.03.2008 <br> * Initial Date: 21.03.2008 <br>
* @author gnaegi * @author gnaegi
*/ */
class UserNewOldCustomFlexiCellRenderer extends CSSIconFlexiCellRenderer { class UserNewOldCustomFlexiCellRenderer extends AbstractCSSIconFlexiCellRenderer {
@Override @Override
protected String getCellValue(Object cellValue) { protected String getCellValue(Object cellValue) {
......
/**
* <a href="http://www.openolat.org">
* OpenOLAT - Online Learning and Training</a><br>
* <p>
* Licensed under the Apache License, Version 2.0 (the "License"); <br>
* you may not use this file except in compliance with the License.<br>
* You may obtain a copy of the License at the
* <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a>
* <p>
* Unless required by applicable law or agreed to in writing,<br>
* software distributed under the License is distributed on an "AS IS" BASIS, <br>
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
* See the License for the specific language governing permissions and <br>
* limitations under the License.
* <p>
* Initial code contributed and copyrighted by<br>
* frentix GmbH, http://www.frentix.com
* <p>
*/
package org.olat.core.gui.components.form.flexible.impl.elements.table;
import org.apache.commons.lang.StringEscapeUtils;
import org.olat.core.gui.render.StringOutput;
import org.olat.core.gui.render.URLBuilder;
import org.olat.core.gui.translator.Translator;
import org.olat.core.util.StringHelper;
/**
*
* Initial date: 28.05.2014<br>
* @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
*
*/
public abstract class AbstractCSSIconFlexiCellRenderer implements FlexiCellRenderer {
private final FlexiCellRenderer delegate;
public AbstractCSSIconFlexiCellRenderer() {
this(null);
}
public AbstractCSSIconFlexiCellRenderer(FlexiCellRenderer delegate) {
this.delegate = delegate;
}
/**
* Render Date type with Formatter depending on locale. Render all other types with toString.
* @param target
* @param cellValue
* @param translator
*/
@Override
public void render(StringOutput target, Object cellValue, int row, FlexiTableComponent source,
URLBuilder ubu, Translator translator) {
target.append("<span><i class=\"o_icon ")
.append(getCssClass(cellValue));
String hoverText = getHoverText(cellValue, translator);
if (StringHelper.containsNonWhitespace(hoverText)) {
target.append("\" title=\"");
target.append(StringEscapeUtils.escapeHtml(hoverText));
}
target.append("\"> </i>");
if(delegate == null) {
target.append(getCellValue(cellValue));
} else {
delegate.render(target, cellValue, row, source, ubu, translator);
}
target.append("</span>");
}
protected abstract String getCssClass(Object val);
protected abstract String getCellValue(Object val);
protected abstract String getHoverText(Object val, Translator translator);
}
...@@ -75,7 +75,7 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere ...@@ -75,7 +75,7 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
renderBody(renderer, sb, ftC, ubu, translator, renderResult); renderBody(renderer, sb, ftC, ubu, translator, renderResult);
sb.append("</tbody></table>"); sb.append("</tbody></table>");
renderFooterButtons(renderer, sb, ftC, ubu, translator, renderResult, args); renderFooterButtons(sb, ftC, translator);
sb.append("</div>"); sb.append("</div>");
//source //source
...@@ -256,8 +256,7 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere ...@@ -256,8 +256,7 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere
} }
} }
protected void renderFooterButtons(Renderer renderer, StringOutput sb, FlexiTableComponent ftC, URLBuilder ubu, Translator translator, protected void renderFooterButtons(StringOutput sb, FlexiTableComponent ftC, Translator translator) {
RenderResult renderResult, String[] args) {
FlexiTableElementImpl ftE = ftC.getFlexiTableElement(); FlexiTableElementImpl ftE = ftC.getFlexiTableElement();
if(ftE.isSelectAllEnable()) { if(ftE.isSelectAllEnable()) {
......
...@@ -43,11 +43,7 @@ package org.olat.core.gui.components.form.flexible.impl.elements.table;/** ...@@ -43,11 +43,7 @@ package org.olat.core.gui.components.form.flexible.impl.elements.table;/**
* <p> * <p>
*/ */
import org.apache.commons.lang.StringEscapeUtils;
import org.olat.core.gui.render.StringOutput;
import org.olat.core.gui.render.URLBuilder;
import org.olat.core.gui.translator.Translator; import org.olat.core.gui.translator.Translator;
import org.olat.core.util.StringHelper;
/** /**
* <h3>Description:</h3> * <h3>Description:</h3>
...@@ -57,10 +53,9 @@ import org.olat.core.util.StringHelper; ...@@ -57,10 +53,9 @@ import org.olat.core.util.StringHelper;
* *
* @author Florian Gnaegi, frentix GmbH, http://www.frentix.com * @author Florian Gnaegi, frentix GmbH, http://www.frentix.com
*/ */
public class CSSIconFlexiCellRenderer implements FlexiCellRenderer { public class CSSIconFlexiCellRenderer extends AbstractCSSIconFlexiCellRenderer {
private final String cssClass; private final String cssClass;
private final FlexiCellRenderer delegate;
public CSSIconFlexiCellRenderer() { public CSSIconFlexiCellRenderer() {
this(null, null); this(null, null);
...@@ -75,43 +70,21 @@ public class CSSIconFlexiCellRenderer implements FlexiCellRenderer { ...@@ -75,43 +70,21 @@ public class CSSIconFlexiCellRenderer implements FlexiCellRenderer {
} }
public CSSIconFlexiCellRenderer(String cssClass, FlexiCellRenderer delegate) { public CSSIconFlexiCellRenderer(String cssClass, FlexiCellRenderer delegate) {
super(delegate);
this.cssClass = cssClass; this.cssClass = cssClass;
this.delegate = delegate;
}
/**
* Render Date type with Formatter depending on locale. Render all other types with toString.
* @param target
* @param cellValue
* @param translator
*/
@Override
public void render(StringOutput target, Object cellValue, int row, FlexiTableComponent source,
URLBuilder ubu, Translator translator) {
target.append("<span><i class=\"o_icon ")
.append(getCssClass(cellValue));
String hoverText = getHoverText(cellValue, translator);
if (StringHelper.containsNonWhitespace(hoverText)) {
target.append("\" title=\"");
target.append(StringEscapeUtils.escapeHtml(hoverText));
}
target.append("\"> </i>");
if(delegate == null) {
target.append(getCellValue(cellValue));
} else {
delegate.render(target, cellValue, row, source, ubu, translator);
}
target.append("</span>");
} }
@Override
protected String getCssClass(Object val) { protected String getCssClass(Object val) {
return cssClass; return cssClass;
} }
@Override
protected String getCellValue(Object val) { protected String getCellValue(Object val) {
return " "; return " ";
} }
@Override
protected String getHoverText(Object val, Translator translator) { protected String getHoverText(Object val, Translator translator) {
return null; return null;
} }
......
...@@ -62,7 +62,7 @@ class FlexiTableCustomRenderer extends AbstractFlexiTableRenderer implements Com ...@@ -62,7 +62,7 @@ class FlexiTableCustomRenderer extends AbstractFlexiTableRenderer implements Com
renderBody(renderer, sb, ftC, ubu, translator, renderResult); renderBody(renderer, sb, ftC, ubu, translator, renderResult);
sb.append("</div>"); sb.append("</div>");
renderFooterButtons(renderer, sb, ftC, ubu, translator, renderResult, args); renderFooterButtons(sb, ftC, translator);
sb.append("</div>"); sb.append("</div>");
//source //source
......
...@@ -267,12 +267,12 @@ public class TableController extends BasicController { ...@@ -267,12 +267,12 @@ public class TableController extends BasicController {
//preference + download links //preference + download links
preferenceLink = LinkFactory.createCustomLink("prefLink", "cmd.changecols", "", Link.BUTTON | Link.NONTRANSLATED, contentVc, this); preferenceLink = LinkFactory.createCustomLink("prefLink", "cmd.changecols", "", Link.BUTTON | Link.NONTRANSLATED, contentVc, this);
preferenceLink.setCustomEnabledLinkCSS("o_icon o_icon-lg o_icon_customize"); preferenceLink.setIconLeftCSS("o_icon o_icon_customize");
preferenceLink.setTooltip(translate("command.changecols")); preferenceLink.setTooltip(translate("command.changecols"));
downloadLink = LinkFactory.createCustomLink("downloadLink", "cmd.download", "", Link.BUTTON | Link.NONTRANSLATED, contentVc, this); downloadLink = LinkFactory.createCustomLink("downloadLink", "cmd.download", "", Link.BUTTON | Link.NONTRANSLATED, contentVc, this);
downloadLink.setTooltip(translate("table.export.title")); downloadLink.setTooltip(translate("table.export.title"));
downloadLink.setCustomEnabledLinkCSS("o_icon o_icon-lg o_icon_download"); downloadLink.setIconLeftCSS("o_icon o_icon_download");
putInitialPanel(contentVc); putInitialPanel(contentVc);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment