bigboard r7366 - in trunk/bigboard: . stocks/apps
- From: marco svn gnome org
- To: svn-commits-list gnome org
- Subject: bigboard r7366 - in trunk/bigboard: . stocks/apps
- Date: Wed, 18 Jun 2008 16:54:47 +0000 (UTC)
Author: marco
Date: Wed Jun 18 16:54:47 2008
New Revision: 7366
URL: http://svn.gnome.org/viewvc/bigboard?rev=7366&view=rev
Log:
Add application stylesheet support to BigWindow and use it to remove all hardcoded font sizes from the apps stock.
Modified:
trunk/bigboard/Makefile.am
trunk/bigboard/big_widgets.py
trunk/bigboard/stock.py
trunk/bigboard/stocks/apps/AppsStock.py
trunk/bigboard/stocks/apps/appbrowser.py
Modified: trunk/bigboard/Makefile.am
==============================================================================
--- trunk/bigboard/Makefile.am (original)
+++ trunk/bigboard/Makefile.am Wed Jun 18 16:54:47 2008
@@ -36,7 +36,7 @@
EXTRA_DIST += $(stocks_DATA)
appstockdir=$(stocksdir)/apps
-appstock_PYTHON = stocks/apps/*.py stocks/apps/*.png stocks/apps/stock.css
+appstock_PYTHON = stocks/apps/*.py stocks/apps/*.png stocks/apps/*.css
calendarstockdir=$(stocksdir)/google_calendar
calendarstock_PYTHON = stocks/google_calendar/*.py stocks/google_calendar/*.png
Modified: trunk/bigboard/big_widgets.py
==============================================================================
--- trunk/bigboard/big_widgets.py (original)
+++ trunk/bigboard/big_widgets.py Wed Jun 18 16:54:47 2008
@@ -81,9 +81,14 @@
return theme
- def make_stock_theme(self, application_stylesheet):
- return hippo.CanvasTheme(theme_engine = self.__theme.props.theme_engine,
- theme_stylesheet = self.__theme.props.theme_stylesheet,
+ def make_stock_theme(self, application_stylesheet, default=False):
+ if default:
+ theme = self.get_default_theme()
+ else:
+ theme = self.get_theme()
+
+ return hippo.CanvasTheme(theme_engine = theme.props.theme_engine,
+ theme_stylesheet = theme.props.theme_stylesheet,
application_stylesheet = application_stylesheet)
def get_theme(self):
@@ -105,18 +110,35 @@
'destroy' : 'override',
}
- def __init__(self, themed=True, **kwargs):
+ def __init__(self, stylesheet=None, themed=True, **kwargs):
super(BigWindow, self).__init__(**kwargs)
+ self.__stylesheet = stylesheet
+
+ theme_mgr = ThemeManager.getInstance()
+
if themed:
- self.__connection = ThemeManager.getInstance().connect('theme-changed', self.__sync_theme)
+ self.__connection = theme_mgr.connect('theme-changed', self.__sync_theme)
self.__sync_theme()
else:
self.__connection = None
- self.set_theme(ThemeManager.getInstance().get_default_theme())
+
+ if self.__stylesheet:
+ theme = theme_mgr.make_stock_theme(self.__stylesheet, default=True)
+ else:
+ theme = theme_mgr.get_default_theme()
+
+ self.set_theme(theme)
def __sync_theme(self, *args):
- self.set_theme(ThemeManager.getInstance().get_theme())
+ theme_mgr = ThemeManager.getInstance()
+
+ if self.__stylesheet:
+ theme = theme_mgr.make_stock_theme(self.__stylesheet)
+ else:
+ theme = theme_mgr.get_theme()
+
+ self.set_theme(theme)
def do_destroy(self):
if self.__connection:
Modified: trunk/bigboard/stock.py
==============================================================================
--- trunk/bigboard/stock.py (original)
+++ trunk/bigboard/stock.py Wed Jun 18 16:54:47 2008
@@ -1,4 +1,4 @@
-import os, logging, xml.dom.minidom
+import os, logging, xml.dom.minidom, urlparse
import gobject
@@ -60,6 +60,12 @@
self._logger = logging.getLogger('bigboard.stocks.' + self._id)
_logger.debug("initializing")
+ def get_path(self, relative_path=None):
+ path = urlparse.urlparse(self._metainfo.get_base_url()).path
+ if relative_path:
+ path = os.path.join(path, relative_path)
+ return path
+
def on_delisted(self):
"""Called when stock is shut down (removed)"""
_logger.debug("on_delisted stock %s" % (self._id))
Modified: trunk/bigboard/stocks/apps/AppsStock.py
==============================================================================
--- trunk/bigboard/stocks/apps/AppsStock.py (original)
+++ trunk/bigboard/stocks/apps/AppsStock.py Wed Jun 18 16:54:47 2008
@@ -104,7 +104,7 @@
def __on_more_button(self):
_logger.debug("more!")
if self.__app_browser is None:
- self.__app_browser = appbrowser.AppBrowser()
+ self.__app_browser = appbrowser.AppBrowser(self.get_path("browser.css"))
if self.__app_browser.get_property('is-active'):
self.__app_browser.hide()
else:
Modified: trunk/bigboard/stocks/apps/appbrowser.py
==============================================================================
--- trunk/bigboard/stocks/apps/appbrowser.py (original)
+++ trunk/bigboard/stocks/apps/appbrowser.py Wed Jun 18 16:54:47 2008
@@ -41,7 +41,7 @@
self.__header = apps_widgets.AppDisplay(apps_widgets.AppLocation.DESCRIPTION_HEADER)
- self.__description = hippo.CanvasText(font="12px",size_mode=hippo.CANVAS_SIZE_WRAP_WORD)
+ self.__description = hippo.CanvasText(id="app-description",size_mode=hippo.CANVAS_SIZE_WRAP_WORD)
self.__controls_box = CanvasVBox(xalign=hippo.ALIGNMENT_START, yalign=hippo.ALIGNMENT_END)
@@ -188,8 +188,8 @@
self.remove_all()
- self.add(hippo.CanvasText(text="Category", font="Bold 12px", color=0x3F3F3FFF, xalign=hippo.ALIGNMENT_START), left=0, top=0)
- self.add(hippo.CanvasText(text="Your Usage", font="Bold 12px", color=0x3F3F3FFF, xalign=hippo.ALIGNMENT_START), left=1, top=0)
+ self.add(hippo.CanvasText(text="Category", classes="title", xalign=hippo.ALIGNMENT_START), left=0, top=0)
+ self.add(hippo.CanvasText(text="Your Usage", classes="title", color=0x3F3F3FFF, xalign=hippo.ALIGNMENT_START), left=1, top=0)
categories = categorize(used_apps)
cat_usage = {}
@@ -243,12 +243,12 @@
thing = self.__get_section_name()
self.__left_title = hippo.CanvasText(text="New Popular %s" % (thing,),
- font="12px Bold",
+ classes="title",
xalign=hippo.ALIGNMENT_START)
self.__headerbox.append(self.__left_title)
# TODO this won't underline properly until ActionLink->set_underline listens for text changes
# underline=pango.UNDERLINE_LOW
- self.__right_title = ActionLink(font="12px",
+ self.__right_title = ActionLink(id="more-popular-link",
xalign=hippo.ALIGNMENT_END)
self.__right_title.connect("activated", self.__on_more_popular)
self.__headerbox.append(self.__right_title, hippo.PACK_EXPAND)
@@ -491,8 +491,8 @@
self.emit("launch")
class AppBrowser(BigWindow):
- def __init__(self):
- super(AppBrowser, self).__init__(themed=False)
+ def __init__(self, stylesheet):
+ super(AppBrowser, self).__init__(stylesheet=stylesheet, themed=False)
self.__repo = apps.get_apps_repo()
@@ -508,8 +508,8 @@
self.__left_box.set_property('background-color', 0xEEEEEEFF)
self.__box.append(self.__left_box)
- self.__search_text = hippo.CanvasText(text="Search All Applications:", font="Bold 12px",
- color=0x3F3F3FFF, xalign=hippo.ALIGNMENT_START)
+ self.__search_text = hippo.CanvasText(text="Search All Applications:", classes="title",
+ xalign=hippo.ALIGNMENT_START)
self.__left_box.append(self.__search_text)
self.__search_input = hippo.CanvasEntry()
#self.__search_input.set_property('border-color', 0xAAAAAAFF)
@@ -529,8 +529,7 @@
self.__cat_usage = AppCategoryUsage()
self.__left_box.append(self.__cat_usage)
- self.__left_box.append(hippo.CanvasText(text="Tools", font="Bold 12px",
- color=0x3F3F3FFF, xalign=hippo.ALIGNMENT_START))
+ self.__left_box.append(hippo.CanvasText(text="Tools", classes="title", xalign=hippo.ALIGNMENT_START))
browse_link = ActionLink(text="Find New Applications", underline=pango.UNDERLINE_LOW, xalign=hippo.ALIGNMENT_START)
browse_link.connect("button-press-event", lambda l,e: self.__on_browse_popular_apps())
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]