summaryrefslogtreecommitdiff
path: root/src/de/blinkt/openvpn/LogWindow.java
diff options
context:
space:
mode:
authorArne Schwabe <arne@rfc2549.org>2013-09-21 21:48:59 +0200
committerArne Schwabe <arne@rfc2549.org>2013-09-21 21:48:59 +0200
commit9659077eb333fba01ce73d91a669b39383ec38e9 (patch)
treef97e3c0990226f0d7d8c5d6c605d8990a5be2905 /src/de/blinkt/openvpn/LogWindow.java
parent06fdf1246640258beba930ab9dd825e9ee48fbfe (diff)
Add ability to add icon to log messages indicating the log severity (disabled for now)
--HG-- extra : rebase_source : 8cf05112d0c781a03d1d45d5b10607290bcb6c6b
Diffstat (limited to 'src/de/blinkt/openvpn/LogWindow.java')
-rw-r--r--src/de/blinkt/openvpn/LogWindow.java49
1 files changed, 44 insertions, 5 deletions
diff --git a/src/de/blinkt/openvpn/LogWindow.java b/src/de/blinkt/openvpn/LogWindow.java
index f19e53d4..ba6e79a1 100644
--- a/src/de/blinkt/openvpn/LogWindow.java
+++ b/src/de/blinkt/openvpn/LogWindow.java
@@ -4,12 +4,16 @@ import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.*;
import android.database.DataSetObserver;
+import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Handler;
import android.os.Handler.Callback;
import android.os.IBinder;
import android.os.Message;
+import android.text.SpannableString;
+import android.text.Spanned;
import android.text.format.DateFormat;
+import android.text.style.ImageSpan;
import android.view.*;
import android.widget.*;
import android.widget.AdapterView.OnItemLongClickListener;
@@ -72,7 +76,6 @@ public class LogWindow extends ListActivity implements StateListener {
public LogWindowListAdapter() {
initLogBuffer();
-
if (mHandler == null) {
mHandler = new Handler(this);
}
@@ -145,6 +148,7 @@ public class LogWindow extends ListActivity implements StateListener {
LogItem le = myEntries.get(position);
String msg = le.getString(LogWindow.this);
+ String time ="";
if (mTimeFormat != 0) {
Date d = new Date(le.getLogtime());
java.text.DateFormat timeformat;
@@ -152,14 +156,49 @@ public class LogWindow extends ListActivity implements StateListener {
timeformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",Locale.getDefault());
else
timeformat = DateFormat.getTimeFormat(LogWindow.this);
- String time = timeformat.format(d);
- msg = time + " " + msg;
+ time = timeformat.format(d);
+
}
- v.setText(msg);
+ msg = time + " " + msg;
+
+ int spanStart = time.length();
+
+ SpannableString t = new SpannableString(msg);
+
+ //t.setSpan(getSpanImage(le,(int)v.getTextSize()),spanStart,spanStart+1, Spanned.SPAN_INCLUSIVE_INCLUSIVE);
+ v.setText(t);
return v;
}
- @Override
+ private ImageSpan getSpanImage(LogItem li, int imageSize) {
+ int imageRes = android.R.drawable.ic_menu_call;
+
+ switch (li.getLogLevel()) {
+ case ERROR:
+ imageRes = android.R.drawable.ic_notification_clear_all;
+ break;
+ case INFO:
+ imageRes = android.R.drawable.ic_menu_compass;
+ break;
+ case VERBOSE:
+ imageRes = android.R.drawable.ic_menu_info_details;
+ break;
+ case WARNING:
+ imageRes = android.R.drawable.ic_menu_camera;
+ break;
+ }
+
+ Drawable d = getResources().getDrawable(imageRes);
+
+
+ //d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
+ d.setBounds(0, 0, imageSize, imageSize);
+ ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BOTTOM);
+
+ return span;
+ }
+
+ @Override
public int getItemViewType(int position) {
return 0;
}