diff options
author | Marco Pesenti Gritti <mpg@redhat.com> | 2007-02-15 17:48:58 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <mpg@redhat.com> | 2007-02-15 17:48:58 (GMT) |
commit | 2e8bd12f8bcf9da314d853078ee29f35a381c537 (patch) | |
tree | 3f0922b2484b1a3d9194919fccdb69b5bee587a6 /sugar/graphics/style.py | |
parent | 32c89a1fcb7a536455343b87dc799b800da66380 (diff) |
Rework color and fonts to be more pytonish. Add units conversions.
Diffstat (limited to 'sugar/graphics/style.py')
-rw-r--r-- | sugar/graphics/style.py | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/sugar/graphics/style.py b/sugar/graphics/style.py index 81f2961..3bfcb4a 100644 --- a/sugar/graphics/style.py +++ b/sugar/graphics/style.py @@ -16,119 +16,8 @@ # Boston, MA 02111-1307, USA. import logging -import math import gtk -import pango - -import _sugar - -_screen_factor = gtk.gdk.screen_width() / 1200.0 -_dpi_factor = _sugar.get_screen_dpi() / 201.0 -_default_font_size = math.ceil(9 / _dpi_factor * _screen_factor) -print _default_font_size - -_system_colors = { - 'toolbar-background' : '#414141', - 'frame-border' : '#D1D1D2', - 'entry-background-focused' : '#FFFFFF', - 'entry-background-unfocused' : '#414141', - 'entry-selection-focused' : '#D1D1D2', - 'entry-selection-unfocused' : '#00FF00', - 'entry-text-focused' : '#000000', - 'entry-text-unfocused' : '#FFFFFF', - 'entry-border' : '#D1D1D2', - 'label-text' : '#FFFFFF', - 'desktop-background' : '#E2E2E3', - 'menu-background' : '#414141', - 'menu-separator' : '#D1D1D2', - 'menu-border' : '#D1D1D2' -} - -def _html_to_rgb(html_color): - """ #RRGGBB -> (r, g, b) tuple (in float format) """ - - html_color = html_color.strip() - if html_color[0] == '#': - html_color = html_color[1:] - if len(html_color) != 6: - raise ValueError, "input #%s is not in #RRGGBB format" % html_color - - r, g, b = html_color[:2], html_color[2:4], html_color[4:] - r, g, b = [int(n, 16) for n in (r, g, b)] - r, g, b = (r / 255.0, g / 255.0, b / 255.0) - - return (r, g, b) - -def _rgba_to_int(r, g, b, a): - color = int(a * 255) + (int(b * 255) << 8) + \ - (int(g * 255) << 16) + (int(r * 255) << 24) - return color - -class RGBColor(object): - def __init__(self, r, g, b, a=1.0): - self._r = r - self._g = g - self._b = b - self._a = a - - def get_rgba(self): - return (self._r, self._g, self._b, self._a) - - def get_int(self): - return _rgba_to_int(self._r, self._g, self._b, self._a) - - def get_gdk_color(self): - return gtk.gdk.Color(int(self._r * 65535), int(self._g * 65535), - int(self._b * 65535)) - -class SystemColor(RGBColor): - def __init__(self, color_id): - rgb = _html_to_rgb(_system_colors[color_id]) - RGBColor.__init__(self, *rgb) - -class Color(object): - RED = RGBColor(1.0, 0.0, 0.0) - GREEN = RGBColor(0.0, 1.0, 0.0) - BLUE = RGBColor(0.0, 0.0, 1.0) - WHITE = RGBColor(1.0, 1.0, 1.0) - BLACK = RGBColor(0.0, 0.0, 0.0) - - TOOLBAR_BACKGROUND = SystemColor('toolbar-background') - FRAME_BORDER = SystemColor('frame-border') - ENTRY_BACKGROUND_FOCUSED = SystemColor('entry-background-focused') - ENTRY_BACKGROUND_UNFOCUSED = SystemColor('entry-background-unfocused') - ENTRY_SELECTION_FOCUSED = SystemColor('entry-selection-focused') - ENTRY_SELECTION_UNFOCUSED = SystemColor('entry-selection-unfocused') - ENTRY_TEXT_FOCUSED = SystemColor('entry-text-focused') - ENTRY_TEXT_UNFOCUSED = SystemColor('entry-text-unfocused') - ENTRY_BORDER = SystemColor('entry-border') - LABEL_TEXT = SystemColor('label-text') - DESKTOP_BACKGROUND = SystemColor('desktop-background') - MENU_BACKGROUND = SystemColor('menu-background') - MENU_SEPARATOR = SystemColor('menu-separator') - MENU_BORDER = SystemColor('menu-border') - -_system_fonts = { - 'default' : 'Bitstream Vera Sans %d' % _default_font_size -} - -class BaseFont(object): - def __init__(self, desc): - self._desc = desc - - def get_desc(self): - return self._desc - - def get_pango_desc(self): - return pango.FontDescription(self._desc) - -class SystemFont(BaseFont): - def __init__(self, font_id): - BaseFont.__init__(self, _system_fonts[font_id]) - -class Font(object): - DEFAULT = SystemFont('default') ### Deprecated: we should drop this once we removed stylesheets ### |