summaryrefslogtreecommitdiff
path: root/portato/gui/windows
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--portato/gui/windows/main.py16
-rw-r--r--portato/gui/windows/preference.py34
2 files changed, 37 insertions, 13 deletions
diff --git a/portato/gui/windows/main.py b/portato/gui/windows/main.py
index 761f6f3..ee51703 100644
--- a/portato/gui/windows/main.py
+++ b/portato/gui/windows/main.py
@@ -76,8 +76,7 @@ class PackageTable:
self.maskedLabel = self.tree.get_widget("maskedLabel")
# labels
- generalVB = self.tree.get_widget("generalVB")
- generalVB.modify_bg(gtk.STATE_NORMAL, get_color(self.main.cfg, "packagetable"))
+ self.main.set_color(get_color(self.main.cfg, "packagetable"))
self.nameLabel = self.tree.get_widget("nameLabel")
self.descLabel = self.tree.get_widget("descLabel")
@@ -1259,6 +1258,17 @@ class MainWindow (Window):
self.catList.get_selection().select_path(pos)
self.catList.scroll_to_cell(pos)
+ def set_color (self, color):
+ """
+ Sets the color of the general VB (i.e. the thing that displays the package details)
+
+ @param color: color to set it to
+ @type color: gtk.gdk.Color
+ """
+
+ generalVB = self.tree.get_widget("generalVB")
+ generalVB.modify_bg(gtk.STATE_NORMAL, color)
+
def set_uri_hook (self, browser):
"""
Sets the browser command which is called when a URL is going to be opened.
@@ -1678,7 +1688,7 @@ class MainWindow (Window):
"""
User wants to open preferences.
"""
- PreferenceWindow(self.window, self.cfg, self.console.set_font_from_string, self.set_uri_hook, self.set_notebook_tabpos, self.fill_cat_store)
+ PreferenceWindow(self.window, self.cfg, self.console.set_font_from_string, self.set_uri_hook, self.set_notebook_tabpos, self.fill_cat_store, self.set_color)
return True
def cb_about_clicked (self, *args):
diff --git a/portato/gui/windows/preference.py b/portato/gui/windows/preference.py
index a7661c5..4d3493f 100644
--- a/portato/gui/windows/preference.py
+++ b/portato/gui/windows/preference.py
@@ -61,7 +61,7 @@ class PreferenceWindow (AbstractDialog):
4 : gtk.POS_RIGHT
}
- def __init__ (self, parent, cfg, console_fn, linkbtn_fn, tabpos_fn, catmodel_fn):
+ def __init__ (self, parent, cfg, console_fn, linkbtn_fn, tabpos_fn, catmodel_fn, labelcolor_fn):
"""Constructor.
@param parent: parent window
@@ -75,7 +75,9 @@ class PreferenceWindow (AbstractDialog):
@param tabpos_fn: function to call to set the tabposition of the notebooks
@type tabpos_fn: function(gtk.ComboBox,int)
@param catmodel_fn: function to call to set the model of the cat list (collapsed/not collapsed)
- @type catmodel_fn: function()"""
+ @type catmodel_fn: function()
+ @param labelcolor_fn: function to call to set the color of the label
+ @type labelcolor_fn: function(gtk.gdk.Color)"""
AbstractDialog.__init__(self, parent)
@@ -102,6 +104,7 @@ class PreferenceWindow (AbstractDialog):
self.linkbtn_fn = linkbtn_fn
self.tabpos_fn = tabpos_fn
self.catmodel_fn = catmodel_fn
+ self.labelcolor_fn = labelcolor_fn
# set the bg-color of the hint
hintEB = self.tree.get_widget("hintEB")
@@ -110,20 +113,16 @@ class PreferenceWindow (AbstractDialog):
# the checkboxes
for box, val in self.checkboxes.iteritems():
if isinstance(val, tuple):
- self.tree.get_widget(box).\
- set_active(self.cfg.get_boolean(val[0], section = val[1]))
+ self.tree.get_widget(box).set_active(self.cfg.get_boolean(val[0], section = val[1]))
else:
- self.tree.get_widget(box).\
- set_active(self.cfg.get_boolean(val))
+ self.tree.get_widget(box).set_active(self.cfg.get_boolean(val))
# the edits
for edit, val in self.edits.iteritems():
if isinstance(val,tuple):
- self.tree.get_widget(edit).\
- set_text(self.cfg.get(val[0], section = val[1]))
+ self.tree.get_widget(edit).set_text(self.cfg.get(val[0], section = val[1]))
else:
- self.tree.get_widget(edit).\
- set_text(self.cfg.get(val))
+ self.tree.get_widget(edit).set_text(self.cfg.get(val))
# the set list
self.setList = self.tree.get_widget("setList")
@@ -139,6 +138,13 @@ class PreferenceWindow (AbstractDialog):
self.titleLengthSpinBtn = self.tree.get_widget("titleLengthSpinBtn")
self.titleLengthSpinBtn.set_value(int(self.cfg.get("titlelength", section = "GUI")))
+ # the color buttons
+ self.pkgTableColorBtn = self.tree.get_widget("pkgTableColorBtn")
+ self.pkgTableColorBtn.set_color(get_color(self.cfg, "packagetable"))
+
+ self.prefColorBtn = self.tree.get_widget("prefColorBtn")
+ self.prefColorBtn.set_color(get_color(self.cfg, "prefhint"))
+
# the comboboxes
self.systemTabCombo = self.tree.get_widget("systemTabCombo")
self.pkgTabCombo = self.tree.get_widget("packageTabCombo")
@@ -209,6 +215,14 @@ class PreferenceWindow (AbstractDialog):
self.catmodel_fn()
+ # colors
+ c = self.pkgTableColorBtn.get_color()
+ self.cfg.set("packagetable", str(c)[1:], section = "COLORS")
+ self.labelcolor_fn(c)
+
+ c = self.prefColorBtn.get_color()
+ self.cfg.set("prefhint", str(c)[1:], section = "COLORS")
+
def fill_setlist (self):
store = gtk.ListStore(bool, str, str, str)