summaryrefslogtreecommitdiff
path: root/portato/gui
diff options
context:
space:
mode:
Diffstat (limited to 'portato/gui')
-rw-r--r--portato/gui/templates/PreferenceWindow.ui35
-rw-r--r--portato/gui/windows/main.py2
-rw-r--r--portato/gui/windows/preference.py18
3 files changed, 53 insertions, 2 deletions
diff --git a/portato/gui/templates/PreferenceWindow.ui b/portato/gui/templates/PreferenceWindow.ui
index 3b0edb8..0642e02 100644
--- a/portato/gui/templates/PreferenceWindow.ui
+++ b/portato/gui/templates/PreferenceWindow.ui
@@ -142,6 +142,7 @@
<property name="label" translatable="yes">Used database type</property>
</object>
<packing>
+ <property name="expand">False</property>
<property name="position">0</property>
</packing>
</child>
@@ -149,6 +150,7 @@
<object class="GtkComboBox" id="databaseCombo">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+ <signal name="changed" handler="cb_db_combo_changed"/>
</object>
<packing>
<property name="position">1</property>
@@ -159,6 +161,39 @@
<property name="position">0</property>
</packing>
</child>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkAlignment" id="alignment13">
+ <property name="visible">True</property>
+ <property name="top_padding">5</property>
+ <property name="bottom_padding">5</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkLabel" id="dbDescriptionLabel">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">label</property>
+ <property name="use_markup">True</property>
+ <property name="wrap">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label25">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">&lt;b&gt;Description&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
</child>
</object>
diff --git a/portato/gui/windows/main.py b/portato/gui/windows/main.py
index ee51703..04a9995 100644
--- a/portato/gui/windows/main.py
+++ b/portato/gui/windows/main.py
@@ -471,7 +471,7 @@ class MainWindow (Window):
# package db
splash(_("Creating Database"))
- self.db = Database()
+ self.db = Database(self.cfg.get("type", section = "DATABASE"))
# set plugins and plugin-menu
splash(_("Loading Plugins"))
diff --git a/portato/gui/windows/preference.py b/portato/gui/windows/preference.py
index 4d3493f..5b88b22 100644
--- a/portato/gui/windows/preference.py
+++ b/portato/gui/windows/preference.py
@@ -164,19 +164,28 @@ class PreferenceWindow (AbstractDialog):
self.pkgTabCombo.set_active(int(self.cfg.get("packageTabPos", section = "GUI"))-1)
# the database combo
+ dbtype = self.cfg.get("type", section = "DATABASE")
self.databaseCombo = self.tree.get_widget("databaseCombo")
model = gtk.ListStore(str, str, str)
+ ctr = 0
+ active = 0
for k, (name, desc) in db.types.iteritems():
+ if k == dbtype:
+ active = ctr
+
model.append([name, desc, k])
+ ctr += 1
self.databaseCombo.set_model(model)
- self.databaseCombo.set_active(0) # XXX: just set one thing active - no meaning yet
+ self.databaseCombo.set_active(active)
cell = gtk.CellRendererText()
self.databaseCombo.pack_start(cell)
self.databaseCombo.set_attributes(cell, text = 0)
+ self.cb_db_combo_changed()
+
self.window.show_all()
def _save(self):
@@ -246,6 +255,13 @@ class PreferenceWindow (AbstractDialog):
self.setList.set_model(store)
+ def cb_db_combo_changed (self, *args):
+ model = self.databaseCombo.get_model()
+ active = self.databaseCombo.get_active()
+
+ descr = self.tree.get_widget("dbDescriptionLabel")
+ descr.set_markup("<i>%s</i>" % model[active][1])
+
def cb_ok_clicked(self, button):
"""Saves, writes to config-file and closes the window."""
self._save()