public void testCosmeticWithBorder() throws Exception { TableElement table = new TableElement(); table.withColumnLayout(Layout.flow()); RowElement row = new RowElement().add(new LabelElement("foo", 5), new LabelElement("This text is larger to be displayed in a cell of 32", 5)); table.separator(BorderStyle.DASHED); table.border(BorderStyle.DASHED); table.add(row); assertRender(table, 32, " ------------------------------ ", "|foo|This text is larger to be |", "| |displayed in a cell of 32 |", " ------------------------------ "); }
TableLineRenderer(TableElement table) { this.rowLayout = table.getRowLayout(); this.columnLayout = table.getColumnLayout(); this.border = table.getBorder(); this.style = table.getStyle(); this.separator = table.getSeparator(); this.overflow = table.getOverflow(); this.leftCellPadding = table.getLeftCellPadding(); this.rightCellPadding = table.getRightCellPadding(); // for (RowElement row : table.getRows()) { if (head == null) { head = tail = new TableRowLineRenderer(this, row); } else { tail = tail.add(new TableRowLineRenderer(this, row)); } } }
TableElement table = new TableElement().overflow(Overflow.WRAP).rightCellPadding(1); SimpleDateFormat format = new SimpleDateFormat("MMM dd HH:mm"); Date date = new Date(); date.setTime(file.lastModified()); String lastModified = format.format(date); table.row( mode, length, return table.renderer();
@Override public LineRenderer renderer(Iterator<Logger> stream) { TableElement table = new TableElement(); table.add(new RowElement().style(Decoration.bold.fg(Color.black).bg(Color.white)).add("NAME", "LEVEL")); table.row(logger.getName(), level); return table.renderer();
element = new LabelElement(value); } else if ("table".equals(name)) { element = new TableElement(); } else if ("row".equals(name)) { element = new RowElement(); weights[i] = list.get(i); table.withColumnLayout(Layout.weighted(weights)); weights[i] = list.get(i); table.withRowLayout(Layout.weighted(weights)); border = null; table.border(border); separator = null; table.separator(separator); table.overflow(overflow); table.setLeftCellPadding(leftCellPadding); table.setRightCellPadding(rightCellPadding);
TableElement table = new TableElement(); table.setRightCellPadding(1); if (table.getRows().size() == 0) { RowElement header = new RowElement(true); header.add("NAME", "TYPE"); table.add(header); table.add(row); } else { table.setColumnLayout(Layout.weighted(1)); RowElement name = new RowElement(); name.add("Name : " + entityTypeData.name); table.add(name); RowElement type = new RowElement(); type.add("Type : " + entityTypeData.type); table.add(type); RowElement mapping = new RowElement(); mapping.add("Mapping : " + entityTypeData.mapping); table.add(mapping); table.add(attributesLabel); TableElement attributeTable = new TableElement(); attributeTable.setRightCellPadding(1); RowElement attributeRowHeader = new RowElement(true); attributeRowHeader.add("NAME", "TYPE", "ASSOCIATION", "COLLECTION", "MAPPING"); attributeTable.add(attributeRowHeader);
@Override public LineRenderer renderer(Iterator<Map<?, ?>> stream) { TableElement table = new TableElement(); LinkedHashSet<String> current = new LinkedHashSet<String>(); LinkedHashSet<String> bilto = new LinkedHashSet<String>(); if (table.getRows().size() > 0) { renderers.add(table.renderer()); table = new TableElement().rightCellPadding(1); RowElement header = new RowElement(true); header.style(Decoration.bold.fg(Color.black).bg(Color.white)); header.add(s); table.add(header); current = bilto; r.add(String.valueOf(row.get(s))); table.add(r); if (table.getRows().size() > 0) { renderers.add(table.renderer());
TableElement descriptor = new TableElement(). overflow(Overflow.HIDDEN). rightCellPadding(1); Descriptor descriptorInfo = info.getDescriptor(); if (descriptorInfo != null) { for (String fieldName : descriptorInfo.getFieldNames()) { String fieldValue = String.valueOf(descriptorInfo.getFieldValue(fieldName)); descriptor.row(fieldName, fieldValue); TableElement attributes = new TableElement(). overflow(Overflow.HIDDEN). rightCellPadding(1). add(new RowElement().style(Decoration.bold.fg(Color.black).bg(Color.white)).add("NAME", "TYPE", "DESCRIPTION")); for (MBeanAttributeInfo attributeInfo : info.getAttributes()) { attributes.row(attributeInfo.getName(), attributeInfo.getType(), attributeInfo.getDescription()); TableElement signature = new TableElement(). overflow(Overflow.HIDDEN). rightCellPadding(1); MBeanParameterInfo[] parameterInfos = operationInfo.getSignature(); for (MBeanParameterInfo parameterInfo : parameterInfos) { signature.row(parameterInfo.getName(), parameterInfo.getType(), parameterInfo.getDescription()); operation.addChild(new TableElement(). add( new RowElement().add("Type: ", operationInfo.getReturnType()), new RowElement().add("Description: ", operationInfo.getDescription()), new TableElement().leftCellPadding(1).overflow(Overflow.HIDDEN).
public void testRowLayoutWithBorder() { TableElement table = new TableElement().border(BorderStyle.DASHED); table.add(new RowElement().add(new LabelElement("foo"))); table.add(new RowElement().add(new LabelElement("bar"))); // assertRender(table, 5, 4, " --- ", "|foo|", "|bar|", " --- "); assertRender(table, 5, 3, " --- ", "|foo|", " --- "); assertNoRender(table, 5, 2); // assertRender(table, 4, 6, " -- ", "|fo|", "|o |", "|ba|", "|r |", " -- "); assertRender(table, 4, 5, " -- ", "|fo|", "|o |", "| |", " -- "); assertRender(table, 4, 4, " -- ", "|fo|", "|o |", " -- "); }
@Override public LineRenderer renderer(Iterator<BindingData> stream) { TableElement table = new TableElement(); table.setRightCellPadding(1); RowElement header = new RowElement(true); header.add("NAME"); table.add(header); while (stream.hasNext()) { BindingData binding = stream.next(); RowElement row = new RowElement(); row.add(binding.name); if (binding.verbose) { row.add(new LabelElement(binding.type)); if (header.getSize() == 1) { header.add("CLASS"); } } table.add(row); } return table.renderer(); }
public void testCellPadding() { TableElement table = new TableElement().leftCellPadding(1).rightCellPadding(2); table.add(new RowElement().add(new LabelElement("foo"), new LabelElement("bar"))); // assertEquals(12, table.renderer().getActualWidth()); assertEquals(8, table.renderer().getMinWidth()); // assertRender(table, 12, " foo bar "); assertRender(table, 11, " foo ba ", " r "); assertRender(table, 10, " foo b ", " a ", " r "); assertRender(table, 9, " foo "); assertRender(table, 8, " foo "); assertRender(table, 7, " foo "); assertRender(table, 6, " foo "); assertRender(table, 5, " fo ", " o "); assertRender(table, 4, " f ", " o ", " o "); // IT SHOULD BE NO RENDER assertRender(table, 3); }
public void testNullLabelInTable() { TableElement tableElement = new TableElement(); tableElement.add(new RowElement().add(new LabelElement("a\nb"))); assertNoRender(tableElement, 1, 1); } }
TableElement table = new TableElement().rightCellPadding(1); table.row( new LabelElement("NAME").style(Style.style(Decoration.bold)), new LabelElement("DESCRIPTION") desc = ""; table.row( new LabelElement(command.getKey()).style(Style.style(Color.red)), new LabelElement(desc));
public void testCosmetic() throws Exception { TableElement table = new TableElement(); table.withColumnLayout(Layout.flow()); RowElement row = new RowElement().add(new LabelElement("foo", 5), new LabelElement("This text is larger to be displayed in a cell of 32", 5)); table.add(row); assertRender(table, 32, "fooThis text is larger to be dis", " played in a cell of 32 "); }
public TableElement add(RowElement... rows) { for (RowElement row : rows) { add(row); } return this; }
@Override public Renderer renderer(Iterator<Logger> stream) { TableElement table = new TableElement(); header.add(new LabelElement("NAME")); header.add(new LabelElement("LEVEL")); table.add(header); row.add(new LabelElement(logger.getName())); row.add(new LabelElement(level)); table.add(row); return table.renderer();
TableElement table = new TableElement().style(Style.style(Decoration.bold)).add( row().style(Color.red.fg()).add(custom)); assertRender(table, 32, "\033[1;31mfoo\033[22mbar\033[1mjuu\033[0m ");
public void testTable() { GroovyShell shell = new GroovyShell(); UIBuilder res = (UIBuilder)shell.evaluate( "import org.crsh.text.ui.UIBuilder;\n" + "def builder = new UIBuilder();\n" + "builder.table { };\n" + "return builder;\n" ); assertEquals(1, res.getElements().size()); assertTrue(res.getElements().get(0) instanceof TableElement); assertEquals(0, ((TableElement)res.getElements().get(0)).getRows().size()); }
public void testTableCols() { GroovyShell shell = new GroovyShell(); UIBuilder res = (UIBuilder)shell.evaluate( "import org.crsh.text.ui.UIBuilder;\n" + "def builder = new UIBuilder();\n" + "builder.table(columns: [1,1]) {\n" + "row {\n" + "}\n" + "};\n" + "return builder;\n" ); assertEquals(1, res.getElements().size()); TableElement table = assertInstance(TableElement.class, res.getElements().get(0)); Layout.Weighted layout = assertInstance(Layout.Weighted.class, table.getColumnLayout()); assertTrue(Arrays.equals(new int[]{1,1}, layout.getWeights())); }
element = new LabelElement(value); } else if ("table".equals(name)) { element = new TableElement(); } else if ("row".equals(name)) { element = new RowElement(); weights[i] = list.get(i); table.withColumnLayout(Layout.weighted(weights)); weights[i] = list.get(i); table.withRowLayout(Layout.weighted(weights)); border = null; table.border(border); separator = null; table.separator(separator); table.overflow(overflow); table.setLeftCellPadding(leftCellPadding); table.setRightCellPadding(rightCellPadding);