diff --git a/ehr/api-src/org/labkey/api/ehr/table/DurationColumn.java b/ehr/api-src/org/labkey/api/ehr/table/DurationColumn.java index a6f5c62ea..2ee621c6c 100644 --- a/ehr/api-src/org/labkey/api/ehr/table/DurationColumn.java +++ b/ehr/api-src/org/labkey/api/ehr/table/DurationColumn.java @@ -60,7 +60,7 @@ public void setDropTime(boolean dropTime) } @Override - public Class getDisplayValueClass() + public Class getDisplayValueClass() { //NOTE: this is required in order to get excel to output correctly //the raw value is numeric, but the displayValue is text diff --git a/ehr/api-src/org/labkey/api/ehr/table/FixedWidthDisplayColumn.java b/ehr/api-src/org/labkey/api/ehr/table/FixedWidthDisplayColumn.java index 285374b43..c27c47c4f 100644 --- a/ehr/api-src/org/labkey/api/ehr/table/FixedWidthDisplayColumn.java +++ b/ehr/api-src/org/labkey/api/ehr/table/FixedWidthDisplayColumn.java @@ -3,13 +3,16 @@ import org.labkey.api.data.ColumnInfo; import org.labkey.api.data.DataColumn; import org.labkey.api.data.RenderContext; +import org.labkey.api.util.DOM; +import org.labkey.api.writer.HtmlWriter; -import java.io.IOException; -import java.io.Writer; +import static org.labkey.api.util.DOM.Attribute.style; +import static org.labkey.api.util.DOM.DIV; +import static org.labkey.api.util.DOM.at; public class FixedWidthDisplayColumn extends DataColumn { - private int _maxWidth; + private final int _maxWidth; public FixedWidthDisplayColumn(ColumnInfo col, int maxWidth) { @@ -18,10 +21,14 @@ public FixedWidthDisplayColumn(ColumnInfo col, int maxWidth) } @Override - public void renderGridCellContents(RenderContext ctx, Writer out) throws IOException + public void renderGridCellContents(RenderContext ctx, HtmlWriter out) { - out.write("
"); - super.renderGridCellContents(ctx, out); - out.write("
"); + DIV( + at(style, "max-width:" + _maxWidth + ";"), + (DOM.Renderable) ret -> { + super.renderGridCellContents(ctx, out); + return ret; + } + ).appendTo(out); } } diff --git a/ehr/api-src/org/labkey/api/ehr/table/VetReviewDisplayColumn.java b/ehr/api-src/org/labkey/api/ehr/table/VetReviewDisplayColumn.java index ef9773e8c..3b24f4df7 100644 --- a/ehr/api-src/org/labkey/api/ehr/table/VetReviewDisplayColumn.java +++ b/ehr/api-src/org/labkey/api/ehr/table/VetReviewDisplayColumn.java @@ -8,6 +8,7 @@ import org.labkey.api.util.PageFlowUtil; import org.labkey.api.view.HttpView; import org.labkey.api.view.template.ClientDependency; +import org.labkey.api.writer.HtmlWriter; import java.io.IOException; import java.io.Writer; @@ -24,7 +25,7 @@ public VetReviewDisplayColumn(ColumnInfo col) } @Override - public void renderGridCellContents(RenderContext ctx, Writer out) throws IOException + public void renderGridCellContents(RenderContext ctx, Writer oldWriter, HtmlWriter out) throws IOException { Object o = getValue(ctx); if (o != null) @@ -37,7 +38,7 @@ public void renderGridCellContents(RenderContext ctx, Writer out) throws IOExcep part = StringUtils.trimToNull(part); String[] tokens = part.split("<>"); - out.write(delim); + oldWriter.write(delim); delim = "

"; //String key = StringUtils.trimToNull(tokens[0]); String text = StringUtils.trimToNull(tokens[1]); @@ -47,15 +48,15 @@ public void renderGridCellContents(RenderContext ctx, Writer out) throws IOExcep text = text.replaceAll("\\*\\*", "\\*\\*"); } - out.write(""); + oldWriter.write(""); if (!_clickHandlerRegistered) { HttpView.currentPageConfig().addHandlerForQuerySelector("a.vrdc-row", "click", "EHR.panel.ClinicalManagementPanel.replaceSoap({objectid: this.attributes.getNamedItem('data-objectid').value, scope: this, callback: function(){EHR.panel.ClinicalManagementPanel.updateVetColumn(this, arguments[0], arguments[1]);}});" ); _clickHandlerRegistered = true; } - out.write(text); - out.write(""); + oldWriter.write(text); + oldWriter.write(""); } } } diff --git a/ehr/src/org/labkey/ehr/table/DefaultEHRCustomizer.java b/ehr/src/org/labkey/ehr/table/DefaultEHRCustomizer.java index b15e8d90b..c35686706 100644 --- a/ehr/src/org/labkey/ehr/table/DefaultEHRCustomizer.java +++ b/ehr/src/org/labkey/ehr/table/DefaultEHRCustomizer.java @@ -69,6 +69,7 @@ import org.labkey.api.view.HttpView; import org.labkey.api.view.NavTree; import org.labkey.api.view.template.ClientDependency; +import org.labkey.api.writer.HtmlWriter; import org.labkey.ehr.EHRModule; import org.labkey.ehr.EHRSchema; @@ -824,13 +825,13 @@ public DisplayColumn createRenderer(final ColumnInfo colInfo) return new DataColumn(colInfo) { @Override - public void renderGridCellContents(RenderContext ctx, Writer out) throws IOException + public void renderGridCellContents(RenderContext ctx, Writer oldWriter, HtmlWriter out) throws IOException { Object objectid = ctx.get("objectid"); Date date = (Date) ctx.get("date"); Object id = ctx.get(ID_COL); - out.write("[Show Hx]"); + oldWriter.write("[Show Hx]"); if (!_clickHandlerAdded) { HttpView.currentPageConfig().addHandlerForQuerySelector("a.anm-history", "click", "EHR.window.ClinicalHistoryWindow.showClinicalHistory(null , this.attributes.getNamedItem('data-id').value, null, this);"); diff --git a/ehr/src/org/labkey/ehr/table/SNOMEDCodesDisplayColumn.java b/ehr/src/org/labkey/ehr/table/SNOMEDCodesDisplayColumn.java index ff944a7a1..74ea79c3c 100644 --- a/ehr/src/org/labkey/ehr/table/SNOMEDCodesDisplayColumn.java +++ b/ehr/src/org/labkey/ehr/table/SNOMEDCodesDisplayColumn.java @@ -24,6 +24,7 @@ import org.labkey.api.data.RenderContext; import org.labkey.api.query.FieldKey; import org.labkey.api.view.template.ClientDependency; +import org.labkey.api.writer.HtmlWriter; import java.io.IOException; import java.io.Writer; @@ -47,7 +48,7 @@ public SNOMEDCodesDisplayColumn(ColumnInfo col) } @Override - public void renderGridCellContents(RenderContext ctx, Writer out) throws IOException + public void renderGridCellContents(RenderContext ctx, Writer oldWriter, HtmlWriter out) throws IOException { Object o = getValue(ctx); if (o != null) @@ -85,9 +86,9 @@ public void renderGridCellContents(RenderContext ctx, Writer out) throws IOExcep for (Integer sort : ret.keySet()) { text = ret.get(sort).replaceAll("\\r?\\n", "
"); - out.write(delim); + oldWriter.write(delim); delim = "
"; - out.write(text); + oldWriter.write(text); } } } diff --git a/snd/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java b/snd/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java index 9f4687ac2..9aac5c58c 100644 --- a/snd/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java +++ b/snd/api-src/org/labkey/api/snd/PlainTextNarrativeDisplayColumn.java @@ -15,6 +15,7 @@ */ package org.labkey.api.snd; +import org.jetbrains.annotations.NotNull; import org.labkey.api.data.ColumnInfo; import org.labkey.api.data.DataColumn; import org.labkey.api.data.RenderContext; @@ -28,7 +29,7 @@ public PlainTextNarrativeDisplayColumn(ColumnInfo col) } @Override - public HtmlString getFormattedHtml(RenderContext ctx) + public @NotNull HtmlString getFormattedHtml(RenderContext ctx) { String htmlNarrative = (String)ctx.get(getColumnInfo().getFieldKey()); return HtmlString.of(removeHtmlTagsFromNarrative(htmlNarrative));