Package com.baulsupp.kolja.util.colours

Examples of com.baulsupp.kolja.util.colours.MultiColourString


  protected Line readLine(int i) {
    return reportContext.readLine(i);
  }

  public void println(String string) {
    reportPrinter.println(new MultiColourString(string));
  }
View Full Code Here


*/
public class SqlHighlighter {
  private Pattern keywords = Pattern.compile("(?i)(?:select|from|delete|update|where|having|count|group|by)");

  public MultiColourString highlight(String string) {
    MultiColourString result = new MultiColourString(string);

    Matcher m = keywords.matcher(string);
    while (m.find()) {
      result.setColour(ColourPair.BLUE_ON_WHITE, m.start(), m.end());
    }

    return result;
  }
View Full Code Here

  protected Line readLine(int i) {
    return reportContext.readLine(i);
  }

  public void println(String string) {
    reportPrinter.println(new MultiColourString(string));
  }
View Full Code Here

  protected Line line;

  public OutputRow(Line viewRow) {
    this.line = viewRow;
    text.add(new MultiColourString());
  }
View Full Code Here

    this.line = viewRow;
    text.add(new MultiColourString());
  }

  public void newLine() {
    text.add(new MultiColourString());
  }
View Full Code Here

  public void newLine() {
    text.add(new MultiColourString());
  }

  public void append(ColouredString string) {
    MultiColourString s = text.get(text.size() - 1);
    s.append(string);
  }
View Full Code Here

  public void append(ColourPair columnColour, String string) {
    append(new ColouredString(columnColour, string));
  }

  public void append(MultiColourString string) {
    MultiColourString s = text.get(text.size() - 1);
    s.append(string);
  }
View Full Code Here

    if (viewRow.isFailed()) {
      row.append(new ColouredString(rowColour, viewRow.toString()));
      return row;
    }

    MultiColourString gridRow = new MultiColourString();
    boolean firstColumn = true;
    for (int i = 0; i < l; i++) {
      String currentColumn = columns.get(i);

      ColourPair columnColour = rowColour;
      if (highlightResults != null) {
        ColourPair newPair = highlightResults.getColumnHighlight(currentColumn);
        if (newPair != null) {
          columnColour = newPair;
        }
      }

      int itemWidth = widths.get(i);

      if (itemWidth > 0) {
        if (!firstColumn) {
          gridRow.append(seperator);
        } else {
          firstColumn = false;
        }

        Object value = viewRow.getValue(currentColumn);
        String display = formats.get(i).format(value);

        if (display == null) {
          display = "";
        }

        MultiColourString msc = applyHighlights(display, columnColour, highlightResults);

        if (i == l - 1) {
          gridRow.append(msc);
        } else {
          gridRow.append(fixedWidth(msc, itemWidth, rowColour));
        }
      }
    }

    row.appendColouredLines(wrappingMode.wrap(gridRow, screenWidth));

    if (additional != null) {
      String value = (String) viewRow.getValue(additional);

      if (value != null && value.length() > 0) {
        row.newLine();
        MultiColourString colouredValue = new MultiColourString(rowColour, value);
        row.appendColouredLines(wrappingMode.wrap(colouredValue, screenWidth));
      }
    }

    return row;
View Full Code Here

    return row;
  }

  // TODO word highlighting
  private MultiColourString applyHighlights(String display, ColourPair columnColour, HighlightResult highlightResults) {
    MultiColourString result = new MultiColourString(columnColour, display);

    if (highlightResults != null) {
      for (Entry<String, ColourPair> highlight : highlightResults.getWords().entrySet()) {
        highlightWord(result, highlight.getKey(), highlight.getValue());
      }
View Full Code Here

  public MultiColourString fixedWidth(MultiColourString string, int itemWidth, ColourPair rowColour) {
    if (string.length() < itemWidth) {
      int extra = itemWidth - string.length();

      string = new MultiColourString(string);
      string.append(new ColouredString(rowColour, TextUtil.blank(extra)));

      return string;
    } else if (string.length() > itemWidth) {
      return string.part(0, itemWidth);
View Full Code Here

TOP

Related Classes of com.baulsupp.kolja.util.colours.MultiColourString

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.