From ab9e1281ca1ccb3e5d01eb24934f81c1072114f2 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Thu, 12 Sep 2019 21:14:10 -0400
Subject: [PATCH] Four new presets + sort option.
---
timeflow/format/file/HtmlFormat.java | 264 +++++++++++++++++++++++++++-------------------------
1 files changed, 137 insertions(+), 127 deletions(-)
diff --git a/timeflow/format/file/HtmlFormat.java b/timeflow/format/file/HtmlFormat.java
index cf50499..b431001 100755
--- a/timeflow/format/file/HtmlFormat.java
+++ b/timeflow/format/file/HtmlFormat.java
@@ -9,135 +9,145 @@
public class HtmlFormat implements Export
{
- TFModel model;
- java.util.List<Field> fields;
- Field title;
-
- public HtmlFormat() {}
-
- public HtmlFormat(TFModel model)
- {
- setModel(model);
- }
-
- public void setModel(TFModel model)
- {
- this.model=model;
- fields=model.getDB().getFields();
- title=model.getDB().getField(VirtualField.LABEL);
- }
-
- @Override
- public void export(TFModel model, BufferedWriter out) throws Exception {
- setModel(model);
- out.write(makeHeader());
- for (Act a: model.getDB())
- out.write(makeItem(a));
- out.write(makeFooter());
- out.flush();
- }
-
- public void append(ActList acts, int start, int end, StringBuffer b)
- {
- for (int i=start; i<end; i++)
- {
- Act a=acts.get(i);
- b.append(makeItem(a,i));
- }
- }
-
- private String makeItem(Act act)
- {
- return makeItem(act, -1);
- }
-
- public String makeItem(Act act, int id)
- {
- StringBuffer page=new StringBuffer();
-
-
- page.append("<tr><td valign=top align=left width=200><b>");
- if (title!=null)
- {
- Field f=model.getColorField();
- Color c=Color.black;
- if (f!=null)
- {
- if (f.getType()==String.class)
- c=model.getDisplay().makeColor(act.getString(f));
- else
- {
- String[] tags=act.getTextList(f);
- if (tags.length==0)
- c=Color.gray;
- else
- c=model.getDisplay().makeColor(tags[0]);
- }
- }
-
- page.append("<font size=+1 color="+htmlColor(c)+">"+act.getString(title)+"</font><br>");
- }
-
- Field startField=model.getDB().getField(VirtualField.START);
-
- if (startField!=null)
- {
- page.append("<font color=#999999>"+model.getDisplay().format(
- act.getTime(startField))+"</font>");
- }
- page.append("</b><br>");
- if (id>=0)
- page.append("<a href=\"e"+id+"\">EDIT</a>");
- page.append("<br></td><td valign=top>");
- for (Field f: fields)
- {
- page.append("<b><font color=#003399>"+f.getName()+"</font></b> ");
- Object val=act.get(f);
- if (val instanceof URL)
- {
- page.append("<a href=\""+val+"\">"+val+"</a>");
- }
- else
- page.append(model.getDisplay().toString(val));
- page.append("<br>");
+ TimeflowModel model;
+ java.util.List<Field> fields;
+ Field title;
- }
- page.append("<br></td></tr>");
+ public HtmlFormat()
+ {
+ }
- return page.toString();
- }
-
- public String makeHeader()
- {
- StringBuffer page=new StringBuffer();
- page.append("<html><body><blockquote>");
- page.append("<br>File: "+model.getDbFile()+"<br>");
- page.append("Source: "+model.getDB().getSource()+"<br><br>");
- page.append("<br><br>");
- page.append("<table border=0>");
+ public HtmlFormat(TimeflowModel model)
+ {
+ setModel(model);
+ }
- return page.toString();
- }
-
- public String makeFooter()
- {
- return "</table></blockquote></body></html>";
- }
-
-
- static String htmlColor(Color c)
- {
- return '#'+hex2(c.getRed())+hex2(c.getGreen())+hex2(c.getBlue());
- }
-
- private static final String hexDigits="0123456789ABCDEF";
- private static String hex2(int n)
- {
- return hexDigits.charAt((n/16)%16)+""+hexDigits.charAt(n%16);
- }
- @Override
- public String getName() {
- return "HTML List";
- }
+ public void setModel(TimeflowModel model)
+ {
+ this.model = model;
+ fields = model.getDB().getFields();
+ title = model.getDB().getField(VirtualField.LABEL);
+ }
+ @Override
+ public void export(TimeflowModel model, BufferedWriter out) throws Exception
+ {
+ setModel(model);
+ out.write(makeHeader());
+ for (Act a : model.getDB())
+ {
+ out.write(makeItem(a));
+ }
+ out.write(makeFooter());
+ out.flush();
+ }
+
+ public void append(ActList acts, int start, int end, StringBuffer b)
+ {
+ for (int i = start; i < end; i++)
+ {
+ Act a = acts.get(i);
+ b.append(makeItem(a, i));
+ }
+ }
+
+ private String makeItem(Act act)
+ {
+ return makeItem(act, -1);
+ }
+
+ public String makeItem(Act act, int id)
+ {
+ StringBuffer page = new StringBuffer();
+
+ page.append("<tr><td valign=top align=left width=200><b>");
+ if (title != null)
+ {
+ Field f = model.getColorField();
+ Color c = Color.black;
+ if (f != null)
+ {
+ if (f.getType() == String.class)
+ {
+ c = model.getDisplay().makeColor(act.getString(f));
+ } else
+ {
+ String[] tags = act.getTextList(f);
+ if (tags.length == 0)
+ {
+ c = Color.gray;
+ } else
+ {
+ c = model.getDisplay().makeColor(tags[0]);
+ }
+ }
+ }
+
+ page.append("<font size=+1 color=" + htmlColor(c) + ">" + act.getString(title) + "</font><br>");
+ }
+
+ Field startField = model.getDB().getField(VirtualField.START);
+
+ if (startField != null)
+ {
+ page.append("<font color=#999999>" + model.getDisplay().format(act.getTime(startField)) + "</font>");
+ }
+ page.append("</b><br>");
+ if (id >= 0)
+ {
+ page.append("<a href=\"e" + id + "\">EDIT</a>");
+ }
+ page.append("<br></td><td valign=top>");
+ for (Field f : fields)
+ {
+ page.append("<b><font color=#003399>" + f.getName() + "</font></b> ");
+ Object val = act.get(f);
+ if (val instanceof URL)
+ {
+ page.append("<a href=\"" + val + "\">" + val + "</a>");
+ } else
+ {
+ page.append(model.getDisplay().toString(val));
+ }
+ page.append("<br>");
+
+ }
+ page.append("<br></td></tr>");
+
+ return page.toString();
+ }
+
+ public String makeHeader()
+ {
+ StringBuffer page = new StringBuffer();
+ page.append("<html><body><blockquote>");
+ page.append("<br>File: " + model.getDbFile() + "<br>");
+ page.append("Source: " + model.getDB().getSource() + "<br><br>");
+ page.append("<br><br>");
+ page.append("<table border=0>");
+
+ return page.toString();
+ }
+
+ public String makeFooter()
+ {
+ return "</table></blockquote></body></html>";
+ }
+
+ static String htmlColor(Color c)
+ {
+ return '#' + hex2(c.getRed()) + hex2(c.getGreen()) + hex2(c.getBlue());
+ }
+ private static final String hexDigits = "0123456789ABCDEF";
+
+ private static String hex2(int n)
+ {
+ return hexDigits.charAt((n / 16) % 16) + "" + hexDigits.charAt(n % 16);
+ }
+
+ @Override
+ public String getName()
+ {
+ return "HTML List";
+ }
}
--
Gitblit v1.6.2