[chronojump] treeview person can paint in red cells that are selected
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] treeview person can paint in red cells that are selected
- Date: Tue, 15 Nov 2016 15:39:54 +0000 (UTC)
commit 052ee8ea14c9a4fe0a479a3607e94f5c87b6cf60
Author: Xavier de Blas <xaviblas gmail com>
Date: Tue Nov 15 16:38:59 2016 +0100
treeview person can paint in red cells that are selected
src/treeViewPerson.cs | 34 ++++++++++++++++++++++++++++++++--
1 files changed, 32 insertions(+), 2 deletions(-)
---
diff --git a/src/treeViewPerson.cs b/src/treeViewPerson.cs
index e777265..eaa54c8 100644
--- a/src/treeViewPerson.cs
+++ b/src/treeViewPerson.cs
@@ -93,14 +93,44 @@ public class TreeViewPersons
private void RenderRestTime (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model,
Gtk.TreeIter iter)
{
string restTime = (string) model.GetValue(iter, 2);
+
+ if(RestSecondsMark > 0 && LastTestTime.GetSeconds(restTime) >= RestSecondsMark)
+ {
+ Gtk.TreeModel model2;
+ Gtk.TreeIter iter2;
+ bool selected = false;
+ if (treeview.Selection.GetSelected (out model2, out iter2))
+ if(model.GetValue(iter, 0).ToString() == model2.GetValue(iter2, 0).ToString())
+ selected = true;
+
+ if(selected) {
+ //based on http://stackoverflow.com/a/9548415
+ (cell as Gtk.CellRendererText).Markup = "<span foreground=\"red\"
background=\"white\">"+restTime+"</span>";
+ }
+ else {
+ (cell as Gtk.CellRendererText).Foreground = UtilGtk.ColorBad;
+ (cell as Gtk.CellRendererText).Text = restTime;
+ }
+ } else {
+ (cell as Gtk.CellRendererText).Foreground = null; //will show default color
+ (cell as Gtk.CellRendererText).Text = restTime;
+ }
+ }
+
+ /*
+ * this method works fine but does not show foreground in color when cell is selected
+ * above method solves this
+ private void RenderRestTime (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model,
Gtk.TreeIter iter)
+ {
+ string restTime = (string) model.GetValue(iter, 2);
(cell as Gtk.CellRendererText).Text = restTime;
if(RestMinutesMark > 0 && LastTestTime.GetMinutes(restTime) >= RestMinutesMark)
(cell as Gtk.CellRendererText).Foreground = UtilGtk.ColorBad;
else
- (cell as Gtk.CellRendererText).Foreground = null; //will show default color
+ (cell as Gtk.CellRendererText).Foreground = null; //will show default color
}
-
+ */
public void RemoveColumns() {
Gtk.TreeViewColumn [] myColumns = treeview.Columns;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]