Hello,

This is my first patch for Jokosher, and actually the first time I've
contributed code to an open source project. I'm a guitar player, and have
been looking for a decent, lightweight recording app, and I'm very pleased
with Jokosher so far. Since my day gig is coding, I thought I might as well
try to give something back to the project as well.
Anyways, hope you agree with what I've done. It was mostly just to
familiarize myself with the codebase and the tools you use.

First, I've fixed bug #87850, changed tooltip "Edit this mixdown step
settings" to "Edit settings for this mixdown step".

Second, I've added a textview box with the description in it for the
ExtensionManagerDialog. I found that nearly all the descriptions didn't fit
in the treeView, so I think it is better this way. Now even longer
descriptions are also possible.

That's all for now, but expect to hear more from me:)

Regards,
Knut Erik Teigen
Index: Jokosher/Jokosher.glade
===================================================================
--- Jokosher/Jokosher.glade	(revision 1417)
+++ Jokosher/Jokosher.glade	(working copy)
@@ -677,8 +677,8 @@
 		  <property name="is_important">True</property>
 		  <accessibility>
 		    <atkproperty name="AtkObject::accessible_name" translatable="yes">Add Audio File</atkproperty>
+		    <atkrelation target="Rewind" type="flows-to"/>
 		    <atkrelation target="AddInstrument" type="flows-from"/>
-		    <atkrelation target="Rewind" type="flows-to"/>
 		  </accessibility>
 		  <signal name="clicked" handler="on_project_add_audio" last_modification_time="Mon, 22 Jan 2007 19:04:35 GMT"/>
 		</widget>
@@ -767,8 +767,8 @@
 		  <property name="is_important">True</property>
 		  <accessibility>
 		    <atkproperty name="AtkObject::accessible_name" translatable="yes">FastForward</atkproperty>
+		    <atkrelation target="Stop" type="flows-from"/>
 		    <atkrelation target="Record" type="flows-to"/>
-		    <atkrelation target="Stop" type="flows-from"/>
 		  </accessibility>
 		  <signal name="clicked" handler="on_Forward_clicked"/>
 		</widget>
@@ -789,8 +789,8 @@
 		  <property name="active">False</property>
 		  <accessibility>
 		    <atkproperty name="AtkObject::accessible_name" translatable="yes">Record</atkproperty>
+		    <atkrelation target="Forward" type="flows-from"/>
 		    <atkrelation target="Recording" type="flows-to"/>
-		    <atkrelation target="Forward" type="flows-from"/>
 		  </accessibility>
 		  <signal name="toggled" handler="on_Record_toggled"/>
 		</widget>
@@ -894,8 +894,8 @@
 			  <property name="inconsistent">False</property>
 			  <accessibility>
 			    <atkproperty name="AtkObject::accessible_name" translatable="yes">Recording Workspace</atkproperty>
+			    <atkrelation target="CompactMix" type="flows-to"/>
 			    <atkrelation target="Record" type="flows-from"/>
-			    <atkrelation target="CompactMix" type="flows-to"/>
 			  </accessibility>
 			  <signal name="toggled" handler="on_Recording_toggled"/>
 			</widget>
@@ -4571,7 +4571,7 @@
   <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
   <property name="modal">True</property>
   <property name="default_width">400</property>
-  <property name="default_height">300</property>
+  <property name="default_height">400</property>
   <property name="resizable">True</property>
   <property name="destroy_with_parent">False</property>
   <property name="decorated">True</property>
@@ -4599,16 +4599,148 @@
 	  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
 
 	  <child>
-	    <widget class="GtkTreeView" id="treeviewExtensions">
+	    <widget class="GtkViewport" id="viewport1">
 	      <property name="visible">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="cursor_changed" handler="on_Treeview_selected" last_modification_time="Tue, 31 Oct 2006 22:38:54 GMT"/>
+	      <property name="shadow_type">GTK_SHADOW_IN</property>
+
+	      <child>
+		<widget class="GtkHBox" id="hbox37">
+		  <property name="visible">True</property>
+		  <property name="homogeneous">False</property>
+		  <property name="spacing">0</property>
+
+		  <child>
+		    <widget class="GtkVBox" id="vbox36">
+		      <property name="visible">True</property>
+		      <property name="homogeneous">False</property>
+		      <property name="spacing">0</property>
+
+		      <child>
+			<widget class="GtkTreeView" id="treeviewExtensions">
+			  <property name="width_request">150</property>
+			  <property name="visible">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="cursor_changed" handler="on_Treeview_selected" last_modification_time="Tue, 31 Oct 2006 22:38:54 GMT"/>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+
+		      <child>
+			<widget class="GtkVBox" id="vbox37">
+			  <property name="visible">True</property>
+			  <property name="homogeneous">False</property>
+			  <property name="spacing">0</property>
+
+			  <child>
+			    <widget class="GtkVBox" id="vbox38">
+			      <property name="visible">True</property>
+			      <property name="homogeneous">False</property>
+			      <property name="spacing">0</property>
+
+			      <child>
+				<widget class="GtkHSeparator" id="hseparator3">
+				  <property name="visible">True</property>
+				</widget>
+				<packing>
+				  <property name="padding">0</property>
+				  <property name="expand">True</property>
+				  <property name="fill">True</property>
+				</packing>
+			      </child>
+
+			      <child>
+				<widget class="GtkLabel" id="labelDescription">
+				  <property name="visible">True</property>
+				  <property name="label" translatable="yes">Description</property>
+				  <property name="use_underline">False</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</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>
+
+			      <child>
+				<widget class="GtkScrolledWindow" id="scrolledwindow10">
+				  <property name="visible">True</property>
+				  <property name="can_focus">True</property>
+				  <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
+				  <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
+				  <property name="shadow_type">GTK_SHADOW_IN</property>
+				  <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
+
+				  <child>
+				    <widget class="GtkTextView" id="textviewExtensionDescription">
+				      <property name="visible">True</property>
+				      <property name="can_focus">True</property>
+				      <property name="editable">False</property>
+				      <property name="overwrite">False</property>
+				      <property name="accepts_tab">True</property>
+				      <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">0</property>
+				      <property name="pixels_below_lines">0</property>
+				      <property name="pixels_inside_wrap">0</property>
+				      <property name="left_margin">0</property>
+				      <property name="right_margin">0</property>
+				      <property name="indent">0</property>
+				      <property name="text" translatable="yes"></property>
+				    </widget>
+				  </child>
+				</widget>
+				<packing>
+				  <property name="padding">0</property>
+				  <property name="expand">True</property>
+				  <property name="fill">True</property>
+				</packing>
+			      </child>
+			    </widget>
+			    <packing>
+			      <property name="padding">0</property>
+			      <property name="expand">True</property>
+			      <property name="fill">True</property>
+			    </packing>
+			  </child>
+			</widget>
+			<packing>
+			  <property name="padding">0</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
+			</packing>
+		      </child>
+		    </widget>
+		    <packing>
+		      <property name="padding">0</property>
+		      <property name="expand">True</property>
+		      <property name="fill">True</property>
+		    </packing>
+		  </child>
+		</widget>
+	      </child>
 	    </widget>
 	  </child>
 	</widget>
@@ -5828,4 +5960,25 @@
   </child>
 </widget>
 
+<widget class="GtkWindow" id="window1">
+  <property name="visible">True</property>
+  <property name="title" translatable="yes">window1</property>
+  <property name="type">GTK_WINDOW_TOPLEVEL</property>
+  <property name="window_position">GTK_WIN_POS_NONE</property>
+  <property name="modal">False</property>
+  <property name="resizable">True</property>
+  <property name="destroy_with_parent">False</property>
+  <property name="decorated">True</property>
+  <property name="skip_taskbar_hint">False</property>
+  <property name="skip_pager_hint">False</property>
+  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+  <property name="focus_on_map">True</property>
+  <property name="urgency_hint">False</property>
+
+  <child>
+    <placeholder/>
+  </child>
+</widget>
+
 </glade-interface>
Index: Jokosher/MixdownProfileDialog.py
===================================================================
--- Jokosher/MixdownProfileDialog.py	(revision 1417)
+++ Jokosher/MixdownProfileDialog.py	(working copy)
@@ -119,7 +119,7 @@
 		button.mixdownaction = action
 		action.button = button
 		action.update_button()
-		tooltips.set_tip(button, _("Edit this mixdown step settings"))
+		tooltips.set_tip(button, _("Edit settings for this mixdown step"))
 		button.connect("clicked", self.ConfigureButton)
 		self.actionstable.attach(button, 0, 1, rows-1, rows, xoptions=gtk.FILL|gtk.EXPAND, yoptions=gtk.FILL|gtk.SHRINK)
 		
Index: Jokosher/ExtensionManagerDialog.py
===================================================================
--- Jokosher/ExtensionManagerDialog.py	(revision 1417)
+++ Jokosher/ExtensionManagerDialog.py	(working copy)
@@ -41,18 +41,18 @@
 		
 		self.dlg = self.wTree.get_widget("ExtensionManagerDialog")
 		self.tree = self.wTree.get_widget("treeviewExtensions")
+		self.descriptionViewer = self.wTree.get_widget("textviewExtensionDescription")
 		self.prefs_button = self.wTree.get_widget("buttonPreferences")
 		
 		self.AddColumn("Enabled", 0, 'toggle')
 		self.AddColumn("Name", 1, 'text', 25)
-		self.AddColumn("Description", 2, 'text', 25)
-		self.AddColumn("Version", 3, 'text', 7)
+		self.AddColumn("Version", 2, 'text', 7)
 
 		self.model = gtk.ListStore(bool, str, str, str, str, bool)
 		self.tree.set_model(self.model)
 
 		for extension in self.parent.extensionManager.GetExtensions():
-			self.model.append((extension["enabled"], extension["name"], extension["description"], extension["version"], extension["filename"], extension["preferences"]))
+			self.model.append((extension["enabled"], extension["name"],  extension["version"], extension["description"], extension["filename"], extension["preferences"]))
 
 		self.dlg.set_transient_for(self.parent.window)
 		self.dlg.show()
@@ -137,12 +137,19 @@
 	def OnSelect(self, tree):
 		"""
 		When an Extension is selected, enables/disables the preferences button
-		according to the reported Extension capabilities.
+		according to the reported Extension capabilities, and updates
+                the description.
 		
 		Parameters:
 			tree -- GTKTreeView holding the Extensions's representation.
 		"""
 		selection = self.tree.get_selection().get_selected()[1]
+
+                description = self.model.get_value(selection, 3)
+                buf = gtk.TextBuffer()
+                buf.set_text(description)
+                self.descriptionViewer.set_buffer(buf)
+
 		preferences = self.model.get_value(selection, 5)
 		if preferences:
 			self.prefs_button.set_sensitive(True)
_______________________________________________
jokosher-devel-list mailing list
jokosher-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/jokosher-devel-list

Reply via email to