Module: deluge
Branch: multiuser
Commit: fd8f5d69f1dbbfa101ddf9ab6095d9f550884d1c

Author: Andrew Resch <[email protected]>
Date:   Wed Feb 23 15:05:54 2011 -0800

Add some missing code

---

 deluge/ui/gtkui/preferences.py |   97 ++++++++++++++++++++++++++++------------
 1 files changed, 68 insertions(+), 29 deletions(-)

diff --git a/deluge/ui/gtkui/preferences.py b/deluge/ui/gtkui/preferences.py
index 154434d..9304b58 100644
--- a/deluge/ui/gtkui/preferences.py
+++ b/deluge/ui/gtkui/preferences.py
@@ -34,10 +34,8 @@
 #
 
 import os
-import pygtk
-pygtk.require('2.0')
 import gtk
-import gtk.glade
+
 import logging
 import pkg_resources
 from twisted.internet.defer import maybeDeferred
@@ -88,7 +86,47 @@ class PreferencePage(object):
         :type widget: gtk.Widget
 
         """
+        # Create a header and scrolled window for the preferences tab
+        parent = widget.get_parent()
+        if parent:
+            parent.remove(widget)
+        vbox = gtk.VBox()
+        label = gtk.Label()
+        label.set_use_markup(True)
+        label.set_markup("<b><i><big>" + self.name + "</big></i></b>")
+        label.set_alignment(0.00, 0.50)
+        label.set_padding(10, 10)
+        vbox.pack_start(label, False, True, 0)
+        sep = gtk.HSeparator()
+        vbox.pack_start(sep, False, True, 0)
+        align = gtk.Alignment()
+        align.set_padding(5, 0, 0, 0)
+        align.set(0, 0, 1, 1)
+        align.add(widget)
+        vbox.pack_start(align, True, True, 0)
+        scrolled = gtk.ScrolledWindow()
+        viewport = gtk.Viewport()
+        viewport.set_shadow_type(gtk.SHADOW_NONE)
+        viewport.add(vbox)
+        scrolled.add(viewport)
+        scrolled.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+        self.widget = scrolled
+
+    def set_widget_from_file(self, xmlfile, obj):
+        """
+        Sets the widget from an object in a gtkBuilder xml file.
 
+        :param xmlfile: the path to the xml file
+        :type xmlfile: string
+        :param obj: the object name to use
+        :type obj: string
+
+        """
+        builder = gtk.Builder()
+        builder.add_from_file(xmlfile)
+        self.set_widget(builder.get_object(obj))
+        
+        
 class GtkUIPreferencePage(PreferencePage):
     def __init__(self, name, xml, widget):
         super(GtkUIPreferencePage, self).__init__()
@@ -331,7 +369,7 @@ class Preferences(component.Component):
         if page:
             index = self.get_page_index(page)
             if index:
-                self.pages[index].update()
+                self.pages[index].show()
                 self.listview.get_selection().select_path(index)
         else:
             self.listview.get_selection().select_path(0)
@@ -349,10 +387,10 @@ class Preferences(component.Component):
         if index is None:
             return
 
-        def on_page_update(result):
+        def on_page_show(result):
             self.notebook.set_current_page(index)
         try:
-            maybeDeferred(self.pages[index].update).addCallback(on_page_update)
+            maybeDeferred(self.pages[index].show).addCallback(on_page_show)
         except Exception, e:
             dialogs.ErrorDialog(
                 _("Error with preference page"),
@@ -360,26 +398,27 @@ class Preferences(component.Component):
                 self.dialog,
                 traceback=True).run()
 
-#p = Preferences()
-##d = DownloadsPreferencePage(_("Downloads"), 
"glade/preferences/downloads.glade", "downloads_prefs_page")
-##p.add_page(d)
-##d2 = NetworkPreferencePage(_("Network"), "glade/preferences/network.glade", 
"network_prefs_page")
-##p.add_page(d2)
-##d3 = BandwidthPreferencePage()
-##p.add_page(d3)
-##d4 = InterfacePreferencePage()
-##p.add_page(d4)
-##d5 = OtherPreferencePage()
-##p.add_page(d5)
-##d6 = DaemonPreferencePage()
-##p.add_page(d6)
-##d7 = QueuePreferencePage()
-##p.add_page(d7)
-##d8 = ProxyPreferencePage()
-##p.add_page(d8)
-##d9 = CachePreferencePage()
-##p.add_page(d9)
-##d10 = PluginsPreferencePage()
-##p.add_page(d10)
-#p.show()
-#gtk.main()
+if __name__ == "__main__":
+    p = Preferences()
+    d = DownloadsPreferencePage(_("Downloads"), 
"glade/preferences/downloads.glade", "downloads_prefs_page")
+    p.add_page(d)
+    #d2 = NetworkPreferencePage(_("Network"), 
"glade/preferences/network.glade", "network_prefs_page")
+    #p.add_page(d2)
+    ##d3 = BandwidthPreferencePage()
+    ##p.add_page(d3)
+    ##d4 = InterfacePreferencePage()
+    ##p.add_page(d4)
+    ##d5 = OtherPreferencePage()
+    ##p.add_page(d5)
+    ##d6 = DaemonPreferencePage()
+    ##p.add_page(d6)
+    ##d7 = QueuePreferencePage()
+    ##p.add_page(d7)
+    ##d8 = ProxyPreferencePage()
+    ##p.add_page(d8)
+    ##d9 = CachePreferencePage()
+    ##p.add_page(d9)
+    ##d10 = PluginsPreferencePage()
+    ##p.add_page(d10)
+    p.show()
+    gtk.main()

-- 
You received this message because you are subscribed to the Google Groups 
"deluge-commit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/deluge-commit?hl=en.

Reply via email to