Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGary Martin <gary@garycmartin.com>2012-10-08 03:15:12 (GMT)
committer Gary Martin <gary@garycmartin.com>2012-10-08 03:15:12 (GMT)
commit1abf99a0b0b9a2121ec7ea71bab9725a2314db45 (patch)
tree73fcbd58f89c69574be71e545cb58753bdab707a
parent98fa9117e097498f43ad41023137984d003a2090 (diff)
Use user fill and stroke colours for main answer output, using black or white text based on fill intensity to keep text contrast.
-rw-r--r--layout.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/layout.py b/layout.py
index e5463db..e0c120d 100644
--- a/layout.py
+++ b/layout.py
@@ -6,6 +6,7 @@ pygtk.require('2.0')
import gtk
import pango
from sugar.activity import activity
+import sugar.profile
from sugar.graphics.roundbox import CanvasRoundBox
from sugar.graphics.combobox import ComboBox
from toolbars import *
@@ -232,8 +233,23 @@ class CalcLayout:
self.last_eq.set_editable(False)
self.last_eq.set_wrap_mode(gtk.WRAP_WORD_CHAR)
self.last_eq.connect('realize', self._textview_realize_cb)
- self.last_eq.set_border_width(2)
- self.last_eq.modify_bg(gtk.STATE_NORMAL, self.col_gray1)
+ self.last_eq.modify_base(gtk.STATE_NORMAL, gtk.gdk.color_parse(
+ sugar.profile.get_color().get_fill_color()))
+ self.last_eq.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse(
+ sugar.profile.get_color().get_stroke_color()))
+ self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_LEFT, 4)
+ self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_RIGHT, 4)
+ self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_TOP, 4)
+ self.last_eq.set_border_window_size(gtk.TEXT_WINDOW_BOTTOM, 4)
+
+ bright = (gtk.gdk.color_parse(sugar.profile.get_color().get_fill_color()).red_float +
+ gtk.gdk.color_parse(sugar.profile.get_color().get_fill_color()).green_float +
+ gtk.gdk.color_parse(sugar.profile.get_color().get_fill_color()).blue_float) / 3.0
+ if bright < 0.5:
+ self.last_eq.modify_text(gtk.STATE_NORMAL, self.col_white)
+ else:
+ self.last_eq.modify_text(gtk.STATE_NORMAL, self.col_black)
+
self.grid.attach(self.last_eq, 7, 11, 2, 7)
# Right part: history