Hello!

On Fri, 2008-02-01 at 21:04 -0500, nikosapi wrote:
> On February 1, 2008 20:46:10 Rafael Proença wrote:
> > I forgot to tell, I've added a "Patchs" section on the wiki created by
> > Thomas:
> > http://gpodderwiki.jottit.com/gui-proposal-discussion
> >
> > One more thing: as you can see, I did not assigned an icon for the View
> > menu, this is because I do not think that that menu bars should have icons,
> > it does not follow the Gnome HIG. So my suggestion is to remove the icons
> > from the menu bar, like in this screenshot
> > http://img107.imageshack.us/img107/7442/gpoddermockupviewmenumm1.png
> >
> > Let me know if we can move on to the episodes treeview.

Your patch looks okay, I did a modified version of your patch and merged
it with my episode description patch I did some days ago (also posted
here on the mailing list).

The patch applies to a clean r556 checkout of our svn trunk (you might
want to do "svn update && svn revert -R ." to get a clean working dir
state).

Here are the changes included in the patch:
 * "View menu"
    -> "show toolbar" (ctrl+t) and "show descriptions" (ctrl+d)
 * Improved episode list columns (better space handling, etc..)
 * Removed resizable columns in episode list and description column
 * Add "Ctrl+L" as a shortcut for "add channel"
 * Move widgets around, like you suggested
 * Remove "update feeds" toolbar button and add new button in window

You can now dynamically switch the toolbar and the descriptions on and
off in the main window with "Ctrl+T" and "Ctrl+D".

> I think the little icons look good, they help the user distinguish between 
> between the various menus. Does the gnome HIG explicitly say not to include 
> little icons? (sorry, I'm not very familiar with the guidelines)

I think the HIG already mentioned it somewhere and I read some usability
document about how the icons should only be placed on important menu
items and not on all items - that reverts the effect of icons in menus
being a visual hint or something like that.

I left it the way it is, because I liked the look and I think the icons
in the menubar (not in its submenu) are a good visual guide on where the
single menu items start and end. It's very clear that there are
(currently) four menus that can be popped up, it's not so clear with
text-only menu bars. But that's my opinion ;)

What do other people think about icons in the main menu? Should we think
about removing the icons on some items?

> From what I can see on [1] I don't think it would be much of an issue. In 
> fact 
> if we really were to comply with the gnome HIG, the "Podcasts" menu would 
> have to be renamed to "File", but once again I think "Podcasts" is a better 
> choice.

Yes, I agree here. But on the other hand, when talking about the menu,
maybe we should rename "Channel" to "Episodes", as the items in this
menu are all related to doing something with the currently selected
episodes.

> [1] http://library.gnome.org/devel/hig-book/stable/menus-menubar.html.en


Thomas
Index: src/gpodder/config.py
===================================================================
--- src/gpodder/config.py	(revision 556)
+++ src/gpodder/config.py	(working copy)
@@ -64,6 +64,8 @@
     'auto_remove_old_episodes': ( bool, False ),
     'auto_update_feeds': (bool, False),
     'auto_update_frequency': (int, 20),
+    'episode_list_descriptions': (bool, True),
+    'show_toolbar': (bool, True),
     
     # Tray icon and notification settings
     'display_tray_icon': (bool, False),
Index: src/gpodder/libpodcasts.py
===================================================================
--- src/gpodder/libpodcasts.py	(revision 556)
+++ src/gpodder/libpodcasts.py	(working copy)
@@ -406,24 +406,30 @@
         local_filename = model.get_value( iter, 8)
         played = not libgpodder.gPodderLib().history_is_played( url)
         locked = libgpodder.gPodderLib().history_is_locked(url)
+        gl = libgpodder.gPodderLib()
 
+        if gl.config.episode_list_descriptions:
+            icon_size = 32
+        else:
+            icon_size = 16
+
         if os.path.exists( local_filename):
-            file_type = util.file_type_by_extension( util.file_extension_from_url( url))
+            file_type = util.file_type_by_extension( util.file_extension_from_url(url))
             if file_type == 'audio':
-                status_icon = util.get_tree_icon('audio-x-generic', played, locked, self.icon_cache)
+                status_icon = util.get_tree_icon('audio-x-generic', played, locked, self.icon_cache, icon_size)
             elif file_type == 'video':
-                status_icon = util.get_tree_icon('video-x-generic', played, locked, self.icon_cache)
+                status_icon = util.get_tree_icon('video-x-generic', played, locked, self.icon_cache, icon_size)
             elif file_type == 'torrent':
-                status_icon = util.get_tree_icon('applications-internet', played, locked, self.icon_cache)
+                status_icon = util.get_tree_icon('applications-internet', played, locked, self.icon_cache, icon_size)
             else:
-                status_icon = util.get_tree_icon('unknown', played, locked, self.icon_cache)
+                status_icon = util.get_tree_icon('unknown', played, locked, self.icon_cache, icon_size)
             
-        elif services.download_status_manager.is_download_in_progress( url):
-            status_icon = util.get_tree_icon( gtk.STOCK_GO_DOWN, icon_cache = self.icon_cache)
-        elif libgpodder.gPodderLib().history_is_downloaded( url):
-            status_icon = util.get_tree_icon( gtk.STOCK_DELETE, icon_cache = self.icon_cache)
-        elif url in [ e.url for e in new_episodes ]:
-            status_icon = util.get_tree_icon( gtk.STOCK_NEW, icon_cache = self.icon_cache)
+        elif services.download_status_manager.is_download_in_progress(url):
+            status_icon = util.get_tree_icon(gtk.STOCK_GO_DOWN, icon_cache=self.icon_cache, icon_size=icon_size)
+        elif gl.history_is_downloaded(url):
+            status_icon = util.get_tree_icon(gtk.STOCK_DELETE, icon_cache=self.icon_cache, icon_size=icon_size)
+        elif url in [e.url for e in new_episodes]:
+            status_icon = util.get_tree_icon(gtk.STOCK_NEW, icon_cache=self.icon_cache, icon_size=icon_size)
         else:
             status_icon = None
 
@@ -435,9 +441,14 @@
         """
         new_model = gtk.ListStore( gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_BOOLEAN, gtk.gdk.Pixbuf, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING)
         new_episodes = self.get_new_episodes()
+        gl = libgpodder.gPodderLib()
 
         for item in self.get_all_episodes():
-            new_iter = new_model.append( ( item.url, item.title, libgpodder.gPodderLib().format_filesize( item.length), True, None, item.cute_pubdate(), item.one_line_description(), item.description, item.local_filename() ))
+            if gl.config.episode_list_descriptions:
+                description = '%s\n<small>%s</small>' % (saxutils.escape(item.title), saxutils.escape(item.one_line_description()))
+            else:
+                description = saxutils.escape(item.title)
+            new_iter = new_model.append((item.url, item.title, libgpodder.gPodderLib().format_filesize(item.length, 1), True, None, item.cute_pubdate(), description, item.description, item.local_filename()))
             self.iter_set_downloading_columns( new_model, new_iter, new_episodes)
         
         self.update_save_dir_size()
Index: src/gpodder/libgpodder.py
===================================================================
--- src/gpodder/libgpodder.py	(revision 556)
+++ src/gpodder/libgpodder.py	(working copy)
@@ -129,8 +129,8 @@
             log( 'Warning: Called get_device_name() when no device was selected.', sender = self)
             return '(unknown device)'
 
-    def format_filesize( self, bytesize):
-        return util.format_filesize( bytesize, self.config.use_si_units)
+    def format_filesize(self, bytesize, digits=2):
+        return util.format_filesize(bytesize, self.config.use_si_units, digits)
 
     def clean_up_downloads( self, delete_partial = False):
         # Clean up temporary files left behind by old gPodder versions
Index: src/gpodder/util.py
===================================================================
--- src/gpodder/util.py	(revision 556)
+++ src/gpodder/util.py	(working copy)
@@ -236,7 +236,7 @@
     return s.f_bavail * s.f_bsize
 
 
-def format_filesize( bytesize, use_si_units = False):
+def format_filesize(bytesize, use_si_units=False, digits=2):
     """
     Formats the given size in bytes to be human-readable, 
 
@@ -275,7 +275,7 @@
             used_value = bytesize / float(value)
             used_unit = unit
 
-    return '%.2f %s' % ( used_value, used_unit )
+    return ('%.'+str(digits)+'f %s') % (used_value, used_unit)
 
 
 def delete_file( path):
@@ -403,7 +403,7 @@
     return None
 
 
-def get_tree_icon(icon_name, add_bullet=False, add_padlock=False, icon_cache=None):
+def get_tree_icon(icon_name, add_bullet=False, add_padlock=False, icon_cache=None, icon_size=32):
     """
     Loads an icon from the current icon theme at the specified
     size, suitable for display in a gtk.TreeView.
@@ -419,23 +419,23 @@
     the cache.
     """
 
-    if icon_cache != None and (icon_name,add_bullet,add_padlock) in icon_cache:
-        return icon_cache[(icon_name,add_bullet,add_padlock)]
+    if icon_cache != None and (icon_name,add_bullet,add_padlock,icon_size) in icon_cache:
+        return icon_cache[(icon_name,add_bullet,add_padlock,icon_size)]
     
     icon_theme = gtk.icon_theme_get_default()
 
     try:
-        icon = icon_theme.load_icon( icon_name, 16, 0)
+        icon = icon_theme.load_icon(icon_name, icon_size, 0)
     except:
         log( '(get_tree_icon) Warning: Cannot load icon with name "%s", will use  default icon.', icon_name)
-        icon = icon_theme.load_icon( gtk.STOCK_DIALOG_QUESTION, 16, 0)
+        icon = icon_theme.load_icon(gtk.STOCK_DIALOG_QUESTION, icon_size, 0)
 
     if icon and (add_bullet or add_padlock):
         # We'll modify the icon, so use .copy()
         if add_bullet:
             try:
                 icon = icon.copy()
-                emblem = icon_theme.load_icon(gtk.STOCK_YES, 10, 0)
+                emblem = icon_theme.load_icon(gtk.STOCK_YES, int(float(icon_size)*1.2/3.0), 0)
                 size = emblem.get_width()
                 pos = icon.get_width() - size
                 emblem.composite(icon, pos, pos, size, size, pos, pos, 1, 1, gtk.gdk.INTERP_BILINEAR, 255)
@@ -444,14 +444,14 @@
         if add_padlock:
             try:
                 icon = icon.copy()
-                emblem = icon_theme.load_icon('emblem-nowrite', 8, 0)
+                emblem = icon_theme.load_icon('emblem-nowrite', int(float(icon_size)/2.0), 0)
                 size = emblem.get_width()
                 emblem.composite(icon, 0, 0, size, size, 0, 0, 1, 1, gtk.gdk.INTERP_BILINEAR, 255)
             except:
                 log('(get_tree_icon) Error adding emblem to icon "%s".', icon_name)
 
     if icon_cache != None:
-        icon_cache[(icon_name,add_bullet,add_padlock)] = icon
+        icon_cache[(icon_name,add_bullet,add_padlock,icon_size)] = icon
 
     return icon
 
Index: src/gpodder/gui.py
===================================================================
--- src/gpodder/gui.py	(revision 556)
+++ src/gpodder/gui.py	(working copy)
@@ -174,6 +174,11 @@
         
         self.tray_icon = None
         self.show_hide_tray_icon()
+
+        self.episode_description_shown = gl.config.episode_list_descriptions
+        self.itemShowToolbar.set_active(gl.config.show_toolbar)
+        self.itemShowDescription.set_active(gl.config.episode_list_descriptions)
+        self.update_view_settings()
                    
         if self.tray_icon:
             if gl.config.start_iconified: 
@@ -231,9 +236,10 @@
         iconcolumn = gtk.TreeViewColumn( _("Status"), iconcell, pixbuf = 4)
 
         namecell = gtk.CellRendererText()
-        #namecell.set_property('ellipsize', pango.ELLIPSIZE_END)
-        namecolumn = gtk.TreeViewColumn( _("Episode"), namecell, text = 1)
-        namecolumn.set_sizing( gtk.TREE_VIEW_COLUMN_AUTOSIZE)
+        namecell.set_property('ellipsize', pango.ELLIPSIZE_END)
+        namecolumn = gtk.TreeViewColumn(_("Episode"), namecell, markup=6)
+        namecolumn.set_sizing(gtk.TREE_VIEW_COLUMN_AUTOSIZE)
+        namecolumn.set_expand(True)
 
         sizecell = gtk.CellRendererText()
         sizecolumn = gtk.TreeViewColumn( _("Size"), sizecell, text=2)
@@ -241,15 +247,10 @@
         releasecell = gtk.CellRendererText()
         releasecolumn = gtk.TreeViewColumn( _("Released"), releasecell, text=5)
         
-        desccell = gtk.CellRendererText()
-        desccell.set_property('ellipsize', pango.ELLIPSIZE_END)
-        desccolumn = gtk.TreeViewColumn( _("Description"), desccell, text=6)
+        for itemcolumn in (iconcolumn, namecolumn, sizecolumn, releasecolumn):
+            itemcolumn.set_reorderable(True)
+            self.treeAvailable.append_column(itemcolumn)
 
-        for itemcolumn in ( iconcolumn, namecolumn, sizecolumn, releasecolumn, desccolumn ):
-            itemcolumn.set_resizable( True)
-            itemcolumn.set_reorderable( True)
-            self.treeAvailable.append_column( itemcolumn)
-
         # enable search in treeavailable
         self.treeAvailable.set_search_equal_func( self.treeAvailable_search_equal)
 
@@ -1203,6 +1204,30 @@
         elif self.tray_icon:
             self.tray_icon.set_visible(True)
 
+    def update_view_settings(self):
+        gl = gPodderLib()
+
+        if gl.config.show_toolbar:
+            self.toolbar.show_all()
+        else:
+            self.toolbar.hide_all()
+
+        if self.episode_description_shown != gl.config.episode_list_descriptions:
+            for channel in self.channels:
+                channel.force_update_tree_model()
+            self.updateTreeView()
+            self.episode_description_shown = gl.config.episode_list_descriptions
+    
+    def on_itemShowToolbar_activate(self, widget):
+        gl = gPodderLib()
+        gl.config.show_toolbar = self.itemShowToolbar.get_active()
+        self.update_view_settings()
+
+    def on_itemShowDescription_activate(self, widget):
+        gl = gPodderLib()
+        gl.config.episode_list_descriptions = self.itemShowDescription.get_active()
+        self.update_view_settings()
+
     def update_item_device( self):
         gl = gPodderLib()
 
@@ -1819,7 +1844,7 @@
         self.show_message( '\n\n'.join( info), _('Custom format strings'))
 
     def on_gPodderProperties_destroy(self, widget, *args):
-        self.on_btnOK_clicked( widget, *args)
+        pass
 
     def on_comboAudioPlayerApp_changed(self, widget, *args):
         # find out which one
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 556)
+++ ChangeLog	(working copy)
@@ -1,3 +1,19 @@
+Wed, 30 Jan 2008 19:16:27 +0100 <[EMAIL PROTECTED]>
+
+
+####- Show feed description in seperate line (by narf at inode dot at)
+In feeds where the description is crucial to decide whether to watch an
+episode or not, it find it cumbersome to always scroll between the feed
+details and the description. It would be nice if the description would be
+shown directly beneath episode/size/published.
+
+	* data/gpodder.glade: 
+	* src/gpodder/gui.py: 
+	* src/gpodder/libgpodder.py: 
+	* src/gpodder/libpodcasts.py: 
+	* src/gpodder/util.py: 
+
+
 Sat, 02 Feb 2008 11:36:35 +0100 <[EMAIL PROTECTED]>
 Make feed update display "Loading" titles, only run auto update when minimized
 
Index: data/gpodder.glade
===================================================================
--- data/gpodder.glade	(revision 556)
+++ data/gpodder.glade	(working copy)
@@ -152,9 +152,10 @@
 			      <property name="label" translatable="yes">_Subscribe to new channel</property>
 			      <property name="use_underline">True</property>
 			      <signal name="activate" handler="on_itemAddChannel_activate" last_modification_time="Sat, 29 Oct 2005 11:33:59 GMT"/>
+			      <accelerator key="L" modifiers="GDK_CONTROL_MASK" signal="activate"/>
 
 			      <child internal-child="image">
-				<widget class="GtkImage" id="image2850">
+				<widget class="GtkImage" id="image3014">
 				  <property name="visible">True</property>
 				  <property name="stock">gtk-add</property>
 				  <property name="icon_size">1</property>
@@ -617,13 +618,61 @@
 	  </child>
 
 	  <child>
+	    <widget class="GtkImageMenuItem" id="menuView">
+	      <property name="visible">True</property>
+	      <property name="label" translatable="yes">_View</property>
+	      <property name="use_underline">True</property>
+	      <signal name="activate" handler="on_menuView_activate" last_modification_time="Sat, 02 Feb 2008 13:03:07 GMT"/>
+
+	      <child internal-child="image">
+		<widget class="GtkImage" id="image3031">
+		  <property name="visible">True</property>
+		  <property name="stock">gtk-zoom-fit</property>
+		  <property name="icon_size">1</property>
+		  <property name="xalign">0.5</property>
+		  <property name="yalign">0.5</property>
+		  <property name="xpad">0</property>
+		  <property name="ypad">0</property>
+		</widget>
+	      </child>
+
+	      <child>
+		<widget class="GtkMenu" id="menuView_menu">
+
+		  <child>
+		    <widget class="GtkCheckMenuItem" id="itemShowToolbar">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Show toolbar</property>
+		      <property name="use_underline">True</property>
+		      <property name="active">True</property>
+		      <signal name="activate" handler="on_itemShowToolbar_activate" last_modification_time="Sat, 02 Feb 2008 13:03:07 GMT"/>
+		      <accelerator key="T" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+		    </widget>
+		  </child>
+
+		  <child>
+		    <widget class="GtkCheckMenuItem" id="itemShowDescription">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Show episode description</property>
+		      <property name="use_underline">True</property>
+		      <property name="active">True</property>
+		      <signal name="activate" handler="on_itemShowDescription_activate" last_modification_time="Sat, 02 Feb 2008 13:03:07 GMT"/>
+		      <accelerator key="D" modifiers="GDK_CONTROL_MASK" signal="activate"/>
+		    </widget>
+		  </child>
+		</widget>
+	      </child>
+	    </widget>
+	  </child>
+
+	  <child>
 	    <widget class="GtkImageMenuItem" id="menuHelp">
 	      <property name="visible">True</property>
 	      <property name="label" translatable="yes">_Help</property>
 	      <property name="use_underline">True</property>
 
 	      <child internal-child="image">
-		<widget class="GtkImage" id="image2868">
+		<widget class="GtkImage" id="image3032">
 		  <property name="visible">True</property>
 		  <property name="stock">gtk-help</property>
 		  <property name="icon_size">1</property>
@@ -754,7 +803,7 @@
       </child>
 
       <child>
-	<widget class="GtkToolbar" id="toolbar1">
+	<widget class="GtkToolbar" id="toolbar">
 	  <property name="visible">True</property>
 	  <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
 	  <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
@@ -762,36 +811,6 @@
 	  <property name="show_arrow">True</property>
 
 	  <child>
-	    <widget class="GtkToolButton" id="toolUpdate">
-	      <property name="visible">True</property>
-	      <property name="label" translatable="yes">Update feeds</property>
-	      <property name="use_underline">True</property>
-	      <property name="stock_id">gtk-refresh</property>
-	      <property name="visible_horizontal">True</property>
-	      <property name="visible_vertical">True</property>
-	      <property name="is_important">False</property>
-	      <signal name="clicked" handler="on_itemUpdate_activate"/>
-	    </widget>
-	    <packing>
-	      <property name="expand">False</property>
-	      <property name="homogeneous">True</property>
-	    </packing>
-	  </child>
-
-	  <child>
-	    <widget class="GtkSeparatorToolItem" id="toolbutton1">
-	      <property name="visible">True</property>
-	      <property name="draw">True</property>
-	      <property name="visible_horizontal">True</property>
-	      <property name="visible_vertical">True</property>
-	    </widget>
-	    <packing>
-	      <property name="expand">False</property>
-	      <property name="homogeneous">False</property>
-	    </packing>
-	  </child>
-
-	  <child>
 	    <widget class="GtkToolButton" id="toolDownload">
 	      <property name="visible">True</property>
 	      <property name="label" translatable="yes">Download</property>
@@ -952,38 +971,6 @@
 		      <property name="spacing">5</property>
 
 		      <child>
-			<widget class="GtkScrolledWindow" id="scrolledwindow6">
-			  <property name="visible">True</property>
-			  <property name="can_focus">True</property>
-			  <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-			  <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-			  <property name="shadow_type">GTK_SHADOW_IN</property>
-			  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
-			  <child>
-			    <widget class="GtkTreeView" id="treeChannels">
-			      <property name="visible">True</property>
-			      <property name="can_focus">True</property>
-			      <property name="headers_visible">True</property>
-			      <property name="rules_hint">False</property>
-			      <property name="reorderable">False</property>
-			      <property name="enable_search">True</property>
-			      <property name="fixed_height_mode">False</property>
-			      <property name="hover_selection">False</property>
-			      <property name="hover_expand">False</property>
-			      <signal name="row_activated" handler="on_treeChannels_row_activated" last_modification_time="Wed, 04 Jul 2007 13:23:55 GMT"/>
-			      <signal name="cursor_changed" handler="on_treeChannels_cursor_changed" last_modification_time="Wed, 04 Jul 2007 13:25:12 GMT"/>
-			    </widget>
-			  </child>
-			</widget>
-			<packing>
-			  <property name="padding">0</property>
-			  <property name="expand">True</property>
-			  <property name="fill">True</property>
-			</packing>
-		      </child>
-
-		      <child>
 			<widget class="GtkHBox" id="hbox24">
 			  <property name="visible">True</property>
 			  <property name="homogeneous">False</property>
@@ -1034,6 +1021,117 @@
 			  <property name="fill">True</property>
 			</packing>
 		      </child>
+
+		      <child>
+			<widget class="GtkScrolledWindow" id="scrolledwindow6">
+			  <property name="visible">True</property>
+			  <property name="can_focus">True</property>
+			  <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+			  <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+			  <property name="shadow_type">GTK_SHADOW_IN</property>
+			  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+			  <child>
+			    <widget class="GtkTreeView" id="treeChannels">
+			      <property name="visible">True</property>
+			      <property name="can_focus">True</property>
+			      <property name="headers_visible">True</property>
+			      <property name="rules_hint">False</property>
+			      <property name="reorderable">False</property>
+			      <property name="enable_search">True</property>
+			      <property name="fixed_height_mode">False</property>
+			      <property name="hover_selection">False</property>
+			      <property name="hover_expand">False</property>
+			      <signal name="row_activated" handler="on_treeChannels_row_activated" last_modification_time="Wed, 04 Jul 2007 13:23:55 GMT"/>
+			      <signal name="cursor_changed" handler="on_treeChannels_cursor_changed" last_modification_time="Wed, 04 Jul 2007 13:25:12 GMT"/>
+			    </widget>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkButton" id="btnUpdateFeeds">
+			  <property name="visible">True</property>
+			  <property name="can_focus">True</property>
+			  <property name="relief">GTK_RELIEF_NORMAL</property>
+			  <property name="focus_on_click">True</property>
+			  <signal name="clicked" handler="on_itemUpdate_activate" last_modification_time="Sat, 02 Feb 2008 13:24:51 GMT"/>
+
+			  <child>
+			    <widget class="GtkAlignment" id="alignment24">
+			      <property name="visible">True</property>
+			      <property name="xalign">0.5</property>
+			      <property name="yalign">0.5</property>
+			      <property name="xscale">0</property>
+			      <property name="yscale">0</property>
+			      <property name="top_padding">0</property>
+			      <property name="bottom_padding">0</property>
+			      <property name="left_padding">0</property>
+			      <property name="right_padding">0</property>
+
+			      <child>
+				<widget class="GtkHBox" id="hbox37">
+				  <property name="visible">True</property>
+				  <property name="homogeneous">False</property>
+				  <property name="spacing">2</property>
+
+				  <child>
+				    <widget class="GtkImage" id="image2982">
+				      <property name="visible">True</property>
+				      <property name="stock">gtk-refresh</property>
+				      <property name="icon_size">4</property>
+				      <property name="xalign">0.5</property>
+				      <property name="yalign">0.5</property>
+				      <property name="xpad">0</property>
+				      <property name="ypad">0</property>
+				    </widget>
+				    <packing>
+				      <property name="padding">0</property>
+				      <property name="expand">False</property>
+				      <property name="fill">False</property>
+				    </packing>
+				  </child>
+
+				  <child>
+				    <widget class="GtkLabel" id="label120">
+				      <property name="visible">True</property>
+				      <property name="label" translatable="yes">Check for Updates</property>
+				      <property name="use_underline">True</property>
+				      <property name="use_markup">False</property>
+				      <property name="justify">GTK_JUSTIFY_LEFT</property>
+				      <property name="wrap">False</property>
+				      <property name="selectable">False</property>
+				      <property name="xalign">0.5</property>
+				      <property name="yalign">0.5</property>
+				      <property name="xpad">0</property>
+				      <property name="ypad">0</property>
+				      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+				      <property name="width_chars">-1</property>
+				      <property name="single_line_mode">False</property>
+				      <property name="angle">0</property>
+				    </widget>
+				    <packing>
+				      <property name="padding">0</property>
+				      <property name="expand">False</property>
+				      <property name="fill">False</property>
+				    </packing>
+				  </child>
+				</widget>
+			      </child>
+			    </widget>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">False</property>
+			  <property name="fill">False</property>
+			</packing>
+		      </child>
 		    </widget>
 		    <packing>
 		      <property name="shrink">False</property>
@@ -5274,11 +5372,11 @@
 	      <property name="justification">GTK_JUSTIFY_LEFT</property>
 	      <property name="wrap_mode">GTK_WRAP_WORD</property>
 	      <property name="cursor_visible">True</property>
-	      <property name="pixels_above_lines">5</property>
-	      <property name="pixels_below_lines">5</property>
+	      <property name="pixels_above_lines">1</property>
+	      <property name="pixels_below_lines">1</property>
 	      <property name="pixels_inside_wrap">0</property>
-	      <property name="left_margin">5</property>
-	      <property name="right_margin">5</property>
+	      <property name="left_margin">2</property>
+	      <property name="right_margin">2</property>
 	      <property name="indent">0</property>
 	      <property name="text">Description of the episode currently selected in gPodder</property>
 	    </widget>
_______________________________________________
gpodder-devel mailing list
gpodder-devel@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/gpodder-devel

Reply via email to