[Gnucash-changes] r14141 - gnucash/branches/deprecated-cleanup - Second cleanup pass. Conversions from GtkOptionMenu to

David Hampton hampton at cvs.gnucash.org
Sat May 20 01:54:21 EDT 2006


Author: hampton
Date: 2006-05-20 01:54:17 -0400 (Sat, 20 May 2006)
New Revision: 14141
Trac: http://svn.gnucash.org/trac/changeset/14141

Modified:
   gnucash/branches/deprecated-cleanup/ChangeLog
   gnucash/branches/deprecated-cleanup/src/gnome-utils/dialog-options.c
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.c
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.h
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.c
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.h
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.c
   gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.h
   gnucash/branches/deprecated-cleanup/src/gnome/glade/sched-xact.glade
   gnucash/branches/deprecated-cleanup/src/gnome/gnc-plugin-page-account-tree.c
Log:
Second cleanup pass.  Conversions from GtkOptionMenu to
GtkComboBoxEntry.


Modified: gnucash/branches/deprecated-cleanup/ChangeLog
===================================================================
--- gnucash/branches/deprecated-cleanup/ChangeLog	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/ChangeLog	2006-05-20 05:54:17 UTC (rev 14141)
@@ -1,3 +1,23 @@
+2006-05-20  David Hampton  <hampton at employees.org>
+
+	* src/gnome-utils/dialog-options.c:
+	* src/gnome-utils/gnc-account-sel.[ch]:
+	* src/gnome-utils/gnc-date-delta.[ch]:
+	* src/gnome-utils/gnc-frequency.[ch]:
+	* src/gnome/gnc-plugin-page-account-tree.c:
+	* src/gnome/glade/sched-xact.glade: Second cleanup pass.
+	Conversions from GtkOptionMenu to GtkComboBoxEntry.
+
+	* src/register/register-gnome/gnucash-color.c:
+	* src/gnome/dialog-tax-info.c: Simple cleanups.
+
+	* src/gnome-utils/gnc-currency-edit.c:
+	* src/core-utils/gnc-gtk-utils.[ch]:
+	* src/core-utils/Makefile.am: Extract functions that can be
+	applied to a GtkComboBoxEntry to require that all user typed
+	entries exist in the embedded GtkTreeModel or else they are
+	rejected.
+
 2006-05-06  David Hampton  <hampton at employees.org>
 
 	* src/import-export/qif-import/dialog-account-picker.c:

Modified: gnucash/branches/deprecated-cleanup/src/gnome/glade/sched-xact.glade
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome/glade/sched-xact.glade	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome/glade/sched-xact.glade	2006-05-20 05:54:17 UTC (rev 14141)
@@ -1069,119 +1069,28 @@
 	  </child>
 
 	  <child>
-	    <widget class="GtkOptionMenu" id="freq_option">
+	    <widget class="GtkComboBox" id="freq_combobox">
 	      <property name="visible">True</property>
-	      <property name="can_focus">True</property>
-	      <property name="history">0</property>
-
-	      <child internal-child="menu">
-		<widget class="GtkMenu" id="convertwidget1">
-		  <property name="visible">True</property>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget2">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">None</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget3">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Once</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget4">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Daily</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget5">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Daily [M-F]</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget6">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Weekly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget7">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Bi-Weekly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget8">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Semi-Monthly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget9">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Monthly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget10">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Quarterly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget11">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Tri-Yearly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget12">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Semi-Yearly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-
-		  <child>
-		    <widget class="GtkMenuItem" id="convertwidget13">
-		      <property name="visible">True</property>
-		      <property name="label" translatable="yes">Yearly</property>
-		      <property name="use_underline">True</property>
-		    </widget>
-		  </child>
-		</widget>
-	      </child>
+	      <property name="items" translatable="yes">None
+Once
+Daily
+Daily [M-F]
+Weekly
+Bi-Weekly
+Semi-Monthly
+Monthly
+Quarterly
+Tri-Yearly
+Semi-Yearly
+Yearly</property>
+	      <property name="focus_on_click">True</property>
 	    </widget>
 	    <packing>
 	      <property name="left_attach">1</property>
 	      <property name="right_attach">2</property>
 	      <property name="top_attach">0</property>
 	      <property name="bottom_attach">1</property>
-	      <property name="y_options"></property>
+	      <property name="y_options">fill</property>
 	    </packing>
 	  </child>
 	</widget>
@@ -1988,269 +1897,45 @@
 		      </child>
 
 		      <child>
-			<widget class="GtkOptionMenu" id="semimonthly_first">
+			<widget class="GtkComboBox" id="semimonthly_first">
 			  <property name="visible">True</property>
-			  <property name="can_focus">True</property>
-			  <property name="history">0</property>
-
-			  <child internal-child="menu">
-			    <widget class="GtkMenu" id="convertwidget14">
-			      <property name="visible">True</property>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget15">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">1st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget16">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">2nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget17">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">3rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget18">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">4th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget19">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">5th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget20">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">6th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget21">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">7th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget22">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">8th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget23">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">9th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget24">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">10th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget25">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">11th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget26">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">12th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget27">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">13th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget28">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">14th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget29">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">15th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget30">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">16th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget31">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">17th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget32">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">18th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget33">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">19th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget34">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">20th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget35">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">21st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget36">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">22nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget37">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">23rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget38">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">24th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget39">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">25th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget40">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">26th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget41">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">27th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget42">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">28th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget43">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[29th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget44">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[30th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget45">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[31st/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-			    </widget>
-			  </child>
+			  <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+			  <property name="focus_on_click">True</property>
 			</widget>
 			<packing>
 			  <property name="padding">0</property>
-			  <property name="expand">False</property>
-			  <property name="fill">False</property>
+			  <property name="expand">True</property>
+			  <property name="fill">True</property>
 			</packing>
 		      </child>
 		    </widget>
@@ -2289,264 +1974,40 @@
 		      </child>
 
 		      <child>
-			<widget class="GtkOptionMenu" id="semimonthly_second">
+			<widget class="GtkComboBox" id="semimonthly_second">
 			  <property name="visible">True</property>
-			  <property name="can_focus">True</property>
-			  <property name="history">0</property>
-
-			  <child internal-child="menu">
-			    <widget class="GtkMenu" id="convertwidget46">
-			      <property name="visible">True</property>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget47">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">1st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget48">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">2nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget49">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">3rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget50">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">4th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget51">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">5th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget52">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">6th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget53">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">7th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget54">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">8th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget55">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">9th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget56">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">10th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget57">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">11th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget58">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">12th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget59">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">13th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget60">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">14th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget61">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">15th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget62">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">16th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget63">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">17th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget64">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">18th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget65">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">19th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget66">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">20th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget67">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">21st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget68">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">22nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget69">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">23rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget70">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">24th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget71">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">25th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget72">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">26th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget73">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">27th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget74">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">28th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget75">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[29th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget76">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[30th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget77">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[31st/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-			    </widget>
-			  </child>
+			  <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+			  <property name="focus_on_click">True</property>
 			</widget>
 			<packing>
 			  <property name="padding">0</property>
@@ -2708,264 +2169,40 @@
 		      </child>
 
 		      <child>
-			<widget class="GtkOptionMenu" id="monthly_day">
+			<widget class="GtkComboBox" id="monthly_day">
 			  <property name="visible">True</property>
-			  <property name="can_focus">True</property>
-			  <property name="history">0</property>
-
-			  <child internal-child="menu">
-			    <widget class="GtkMenu" id="convertwidget78">
-			      <property name="visible">True</property>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget79">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">1st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget80">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">2nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget81">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">3rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget82">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">4th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget83">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">5th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget84">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">6th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget85">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">7th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget86">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">8th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget87">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">9th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget88">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">10th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget89">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">11th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget90">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">12th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget91">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">13th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget92">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">14th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget93">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">15th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget94">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">16th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget95">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">17th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget96">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">18th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget97">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">19th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget98">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">20th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget99">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">21st</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget100">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">22nd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget101">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">23rd</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget102">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">24th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget103">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">25th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget104">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">26th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget105">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">27th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget106">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">28th</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget107">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[29th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget108">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[30th/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-
-			      <child>
-				<widget class="GtkMenuItem" id="convertwidget109">
-				  <property name="visible">True</property>
-				  <property name="label" translatable="yes">[31st/last]</property>
-				  <property name="use_underline">True</property>
-				</widget>
-			      </child>
-			    </widget>
-			  </child>
+			  <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+			  <property name="focus_on_click">True</property>
 			</widget>
 			<packing>
 			  <property name="padding">0</property>
@@ -3048,40 +2285,12 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="quarterly_occur">
+		    <widget class="GtkComboBox" id="quarterly_occur">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget110">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget111">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Jan, Apr, Jul, Oct</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget112">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Feb, May, Aug, Nov</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget113">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Mar, Jun, Sep, Dec</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">Jan, Apr, Jul, Oct
+Feb, May, Aug, Nov
+Mar, Jun, Sep, Dec</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -3126,264 +2335,40 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="quarterly_day">
+		    <widget class="GtkComboBox" id="quarterly_day">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget114">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget115">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">1st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget116">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">2nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget117">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">3rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget118">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">4th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget119">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">5th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget120">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">6th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget121">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">7th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget122">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">8th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget123">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">9th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget124">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">10th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget125">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">11th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget126">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">12th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget127">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">13th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget128">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">14th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget129">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">15th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget130">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">16th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget131">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">17th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget132">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">18th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget133">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">19th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget134">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">20th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget135">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">21st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget136">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">22nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget137">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">23rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget138">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">24th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget139">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">25th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget140">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">26th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget141">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">27th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget142">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">28th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget143">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[29th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget144">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[30th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget145">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[31st/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -3459,48 +2444,12 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="triyearly_occur">
+		    <widget class="GtkComboBox" id="triyearly_occur">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget146">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget147">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Jan, May, Sep</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget148">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Feb, Jun, Oct</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget149">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Mar, Jul, Nov</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget150">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Apr, Aug, Dec</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">Jan, May, Sep
+Feb, Jun, Oct
+Mar, Jul, Nov</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -3545,264 +2494,40 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="triyearly_day">
+		    <widget class="GtkComboBox" id="triyearly_day">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget151">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget152">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">1st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget153">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">2nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget154">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">3rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget155">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">4th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget156">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">5th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget157">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">6th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget158">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">7th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget159">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">8th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget160">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">9th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget161">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">10th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget162">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">11th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget163">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">12th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget164">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">13th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget165">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">14th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget166">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">15th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget167">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">16th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget168">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">17th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget169">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">18th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget170">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">19th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget171">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">20th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget172">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">21st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget173">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">22nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget174">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">23rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget175">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">24th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget176">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">25th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget177">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">26th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget178">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">27th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget179">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">28th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget180">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[29th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget181">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[30th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget182">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[31st/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -3878,64 +2603,15 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="semiyearly_occur">
+		    <widget class="GtkComboBox" id="semiyearly_occur">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget183">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget184">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Jan, Jul</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget185">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Feb, Aug</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget186">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Mar, Sep</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget187">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Apr, Oct</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget188">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">May, Nov</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget189">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">Jun, Dec</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">Jan, Jul
+Feb, Aug
+Mar, Sep
+Apr, Oct
+May, Nov
+Jun, Dec</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -3980,264 +2656,40 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="semiyearly_day">
+		    <widget class="GtkComboBox" id="semiyearly_day">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget190">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget191">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">1st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget192">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">2nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget193">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">3rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget194">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">4th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget195">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">5th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget196">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">6th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget197">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">7th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget198">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">8th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget199">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">9th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget200">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">10th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget201">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">11th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget202">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">12th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget203">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">13th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget204">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">14th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget205">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">15th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget206">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">16th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget207">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">17th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget208">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">18th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget209">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">19th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget210">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">20th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget211">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">21st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget212">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">22nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget213">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">23rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget214">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">24th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget215">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">25th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget216">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">26th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget217">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">27th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget218">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">28th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget219">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[29th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget220">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[30th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget221">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[31st/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -4388,112 +2840,21 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="yearly_month">
+		    <widget class="GtkComboBox" id="yearly_month">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget222">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget223">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">January</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget224">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">February</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget225">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">March</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget226">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">April</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget227">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">May</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget228">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">June</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget229">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">July</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget230">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">August</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget231">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">September</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget232">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">October</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget233">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">November</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget234">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">December</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">January
+February
+March
+April
+May
+June
+July
+August
+September
+October
+November
+December</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -4538,264 +2899,40 @@
 		  </child>
 
 		  <child>
-		    <widget class="GtkOptionMenu" id="yearly_day">
+		    <widget class="GtkComboBox" id="yearly_day">
 		      <property name="visible">True</property>
-		      <property name="can_focus">True</property>
-		      <property name="history">0</property>
-
-		      <child internal-child="menu">
-			<widget class="GtkMenu" id="convertwidget235">
-			  <property name="visible">True</property>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget236">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">1st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget237">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">2nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget238">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">3rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget239">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">4th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget240">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">5th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget241">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">6th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget242">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">7th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget243">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">8th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget244">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">9th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget245">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">10th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget246">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">11th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget247">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">12th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget248">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">13th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget249">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">14th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget250">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">15th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget251">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">16th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget252">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">17th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget253">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">18th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget254">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">19th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget255">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">20th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget256">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">21st</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget257">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">22nd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget258">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">23rd</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget259">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">24th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget260">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">25th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget261">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">26th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget262">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">27th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget263">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">28th</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget264">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[29th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget265">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[30th/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-
-			  <child>
-			    <widget class="GtkMenuItem" id="convertwidget266">
-			      <property name="visible">True</property>
-			      <property name="label" translatable="yes">[31st/last]</property>
-			      <property name="use_underline">True</property>
-			    </widget>
-			  </child>
-			</widget>
-		      </child>
+		      <property name="items" translatable="yes">1st
+2nd
+3rd
+4th
+5th
+6th
+7th
+8th
+9th
+10th
+11th
+12th
+13th
+14th
+15th
+16th
+17th
+18th
+19th
+20th
+21st
+22nd
+23rd
+24th
+25th
+26th
+27th
+28th
+[29th/last]
+[30th/last]
+[31st/last]</property>
+		      <property name="focus_on_click">True</property>
 		    </widget>
 		    <packing>
 		      <property name="padding">0</property>
@@ -8644,6 +6781,7 @@
 		  <property name="rules_hint">False</property>
 		  <property name="reorderable">False</property>
 		  <property name="enable_search">False</property>
+		  <property name="fixed_height_mode">False</property>
 		</widget>
 	      </child>
 	    </widget>

Modified: gnucash/branches/deprecated-cleanup/src/gnome/gnc-plugin-page-account-tree.c
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome/gnc-plugin-page-account-tree.c	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome/gnc-plugin-page-account-tree.c	2006-05-20 05:54:17 UTC (rev 14141)
@@ -72,6 +72,9 @@
 #define PLUGIN_PAGE_ACCT_TREE_CM_CLASS "plugin-page-acct-tree"
 #define GCONF_SECTION "window/pages/account_tree"
 
+#define DELETE_DIALOG_FILTER  "filter"
+#define DELETE_DIALOG_ACCOUNT "account"
+
 enum {
   ACCOUNT_SELECTED,
   LAST_SIGNAL
@@ -764,93 +767,43 @@
 {
   GtkWidget *button;
   gpointer dmas, tmas;
+  gint dmas_cnt, tmas_cnt;
   gboolean sensitive;
 
   dmas = g_object_get_data(G_OBJECT(dialog), "dmas");
   tmas = g_object_get_data(G_OBJECT(dialog), "tmas");
+  dmas_cnt = gnc_account_sel_get_num_account(GNC_ACCOUNT_SEL(dmas));
+  tmas_cnt = gnc_account_sel_get_num_account(GNC_ACCOUNT_SEL(tmas));
+
   sensitive = (((NULL == dmas) ||
-		(!GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET(dmas)) ||
-		 GTK_LIST(GNC_ACCOUNT_SEL(dmas)->combo->list)->children)) &&
+		(!GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET(dmas)) || dmas_cnt)) &&
 	       ((NULL == tmas) ||
-		(!GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET(tmas)) ||
-		 GTK_LIST(GNC_ACCOUNT_SEL(tmas)->combo->list)->children)));
+		(!GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET(tmas)) || tmas_cnt)));
 
   button = gnc_glade_lookup_widget(dialog, "deletebutton");
   gtk_widget_set_sensitive(button, sensitive);
 }
 
-/***
- *** GNCAccountSel has an odd habit of adding a
- *** blank item when its list is otherwise empty.
- ***/
-
 static void
-exclude_account(GtkWidget *item,
-		gpointer name)
-{
-  char *text;
-
-  gtk_label_get(GTK_LABEL(GTK_BIN(item)->child), &text);
-  if ((0 == strlen(text)) || (0 == strcmp(text, name))) {
-    gtk_widget_destroy(GTK_WIDGET(item));
-  }
-}
-
-static void
-exclude_account_subtree(GtkWidget *item,
-			gpointer prefix)
-{
-  char *text;
-
-  gtk_label_get(GTK_LABEL(GTK_BIN(item)->child), &text);
-  if ((0 == strlen(text)) || 0 == strncmp(text, prefix, strlen(prefix))) {
-    gtk_widget_destroy(GTK_WIDGET(item));
-  }
-}
-
-static gint
-compare_listitem_text(gconstpointer item,
-		      gconstpointer entrytext)
-{
-  char *text;
-
-  gtk_label_get(GTK_LABEL(GTK_BIN(item)->child), &text);
-  return strcmp(text, entrytext);
-}
-
-static void
 gppat_populate_gas_list(GtkWidget *dialog,
 			GNCAccountSel *gas,
 			gboolean exclude_subaccounts)
 {
-  GtkList *list;
-  GtkEntry *entry;
-  gpointer name, filter;
+  Account *account;
+  GList *filter;
 
   g_return_if_fail(GTK_IS_DIALOG(dialog));
   if (gas == NULL)
     return;
-  list = GTK_LIST(gas->combo->list);
-  entry = GTK_ENTRY(gas->combo->entry);
-  name = g_object_get_data(G_OBJECT(dialog), "name");
-  filter = g_object_get_data(G_OBJECT(dialog), "filter");
+  account = g_object_get_data(G_OBJECT(dialog), DELETE_DIALOG_ACCOUNT);
+  filter = g_object_get_data(G_OBJECT(dialog), DELETE_DIALOG_FILTER);
 
   /* Setting the account type filter triggers GNCAccountSel population. */
   gnc_account_sel_set_acct_filters (gas, filter);
 
   /* Accounts to be deleted must be removed. */
-  gtk_container_foreach(GTK_CONTAINER(list), (exclude_subaccounts ?
-					      exclude_account_subtree :
-					      exclude_account), name);
+  gnc_account_sel_purge_account( gas, account, exclude_subaccounts);
 
-  /* The entry widget may need to be reset. */
-  if (NULL == g_list_find_custom(list->children, 
-				 gtk_entry_get_text(entry),
-				 compare_listitem_text)) {
-    gtk_entry_set_text(entry, "");
-    gtk_list_select_item(list, 0);
-  }
-
   /* The sensitivity of the OK button needs to be reevaluated. */
   set_ok_sensitivity(GTK_WIDGET(dialog));
 }
@@ -929,8 +882,8 @@
      * type as the one being deleted.
      */
     filter = g_list_prepend(NULL, (gpointer)xaccAccountGetType(account));
-    g_object_set_data(G_OBJECT(dialog), "filter", filter);
-    g_object_set_data(G_OBJECT(dialog), "name", acct_name);
+    g_object_set_data(G_OBJECT(dialog), DELETE_DIALOG_FILTER, filter);
+    g_object_set_data(G_OBJECT(dialog), DELETE_DIALOG_ACCOUNT, account);
 
     /*
      * Adjust the dialog based on whether the account has

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/dialog-options.c
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/dialog-options.c	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/dialog-options.c	2006-05-20 05:54:17 UTC (rev 14141)
@@ -1815,8 +1815,7 @@
   value = gnc_account_sel_new();
   gnc_account_sel_set_acct_filters(GNC_ACCOUNT_SEL(value), acct_type_list);
 
-  g_signal_connect(G_OBJECT(gnc_account_sel_gtk_entry(GNC_ACCOUNT_SEL(value))),
-		   "changed",
+  g_signal_connect(value, "changed",
 		   G_CALLBACK(gnc_option_changed_widget_cb), option);
 
   gnc_option_set_widget (option, value);

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.c
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.c	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.c	2006-05-20 05:54:17 UTC (rev 14141)
@@ -3,6 +3,7 @@
  *
  * Copyright (C) 2002 Joshua Sled <jsled at asynchronous.org>
  * All rights reserved.
+ * Copyright (C) 2006 David Hampton <hampton at employees.org>
  *
  * Gnucash is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public License
@@ -31,6 +32,7 @@
 #include "GNCId.h"
 #include "gnc-account-sel.h"
 #include "gnc-exp-parser.h"
+#include "gnc-gtk-utils.h"
 #include "gnc-ui-util.h"
 #include "qof.h"
 
@@ -43,6 +45,9 @@
         LAST_SIGNAL
 };
 
+#define COLUMN_ACCT_NAME 0
+#define COLUMN_ACCT_PTR  1
+
 static guint account_sel_signals [LAST_SIGNAL] = { 0 };
 
 static void gnc_account_sel_init (GNCAccountSel *gas);
@@ -50,20 +55,12 @@
 static void gnc_account_sel_finalize (GObject *object);
 static void gnc_account_sel_dispose (GObject *object);
 
-static void gas_accounts_to_names (gpointer data, gpointer user_data);
+static void gas_filter_accounts (gpointer data, gpointer user_data);
 
 static void gas_populate_list (GNCAccountSel *gas);
-static void gas_strcmp_adapter (gpointer a, gpointer b);
 
 static void gas_new_account_click (GtkButton *b, gpointer ud);
 
-#if 0 /* completion not implemented */
-static void gnc_account_sel_changed( GtkEditable *entry, gpointer ud );
-static void gnc_account_sel_list_clicked( GtkButton *b, gpointer ud );
-static gint gnc_account_sel_key_press( GtkWidget          *widget,
-                                       GdkEventKey        *event );
-#endif /* 0 -- completion not implemented */
-
 static GtkHBox *parent_class;
 
 GType
@@ -134,23 +131,31 @@
 static void
 gnc_account_sel_init (GNCAccountSel *gas)
 {
+	GtkWidget *widget;
+	GtkEntry *entry;
+	GtkEntryCompletion *completion;
+
         gas->initDone = FALSE;
         gas->acctTypeFilters = FALSE;
         gas->newAccountButton = NULL;
 
-        gas->combo = GTK_COMBO(gtk_combo_new());
-        gtk_combo_set_value_in_list( gas->combo, TRUE, TRUE );
-        gtk_container_add( GTK_CONTAINER(gas), GTK_WIDGET(gas->combo) );
+	gas->store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_POINTER);
+        widget =
+	  gtk_combo_box_entry_new_with_model(GTK_TREE_MODEL(gas->store), COLUMN_ACCT_NAME);
+        gas->combo = GTK_COMBO_BOX_ENTRY(widget);
+	gtk_combo_box_set_model(GTK_COMBO_BOX(widget),
+				GTK_TREE_MODEL(gas->store));
+        gtk_container_add( GTK_CONTAINER(gas), widget );
 
-        /* This is only because completion cannot be implemented. */
-        gtk_editable_set_editable( GTK_EDITABLE(gas->combo->entry), FALSE );
+        /* Add completion. */
+	entry = GTK_ENTRY(gtk_bin_get_child(GTK_BIN(widget)));
+	completion = gtk_entry_completion_new();
+        gtk_entry_completion_set_model(completion, GTK_TREE_MODEL(gas->store));
+	gtk_entry_completion_set_text_column(completion, COLUMN_ACCT_NAME);
+	//	gtk_entry_completion_set_inline_completion(completion, TRUE);
+	gtk_entry_set_completion(entry, completion);
+	gnc_cbe_require_list_item(GTK_COMBO_BOX_ENTRY(widget));
 
-#if 0 /* completion not implemented. */
-        g_signal_connect( gas->combo->entry, "changed",
-			  G_CALLBACK( gnc_account_sel_changed ),
-			  gas );
-#endif /* 0 -- completion not implemented. */
-
         /* Get the accounts, place into combo list */
         gas_populate_list( gas );
 
@@ -163,92 +168,68 @@
 typedef struct {
         GNCAccountSel *gas;
         GList **outList;
-} accounts_to_names_data;
+} account_filter_data;
 
-/**
- * Used in the g_list_foreach call in gas_populate_list to see if the given
- * string is in [via strcmp] the list, and to set the flag as necessary.
- **/
-typedef struct {
-        char *str;
-        gboolean flag;
-} findData;
-
 static
 void
-gas_strcmp_adapter( gpointer listElt, gpointer ud )
-{
-        findData *fd = (findData*)ud;
-        fd->flag |= ( strcmp( (char*)listElt, (char*)fd->str ) == 0 );
-}
-
-static
-void
 gas_populate_list( GNCAccountSel *gas )
 {
-        accounts_to_names_data atnd;
+        account_filter_data atnd;
         AccountGroup *ag;
-        GList *accts, *nameList;
-        gchar *currentSel;
+	Account *acc;
+	GtkTreeIter iter;
+	GtkEntry *entry;
+	gint i, active = 0;
+        GList *accts, *ptr, *filteredAccts;
+        gchar *currentSel, *name;
 
+	entry = GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gas->combo)));
         currentSel = gtk_editable_get_chars(
-                GTK_EDITABLE(gas->combo->entry), 0, -1 );
+                GTK_EDITABLE(entry), 0, -1 );
 
         ag = gnc_book_get_group( gnc_get_current_book() );
         accts = (GList*)xaccGroupGetSubAccountsSorted( ag );
 
-        nameList        = NULL;
+        filteredAccts   = NULL;
         atnd.gas        = gas;
-        atnd.outList    = &nameList;
+        atnd.outList    = &filteredAccts;
 
-        g_list_foreach( accts, gas_accounts_to_names,
-                        (gpointer)&atnd );
+        g_list_foreach( accts, gas_filter_accounts, (gpointer)&atnd );
         g_list_free( accts );
 
-	/* Make sure we have a list of something... */
-	if ( nameList == NULL )
-		nameList = g_list_prepend( NULL, "" );
+	gtk_list_store_clear(gas->store);
+	for (ptr = filteredAccts, i = 0; ptr; ptr = g_list_next(ptr), i++) {
+	  acc = ptr->data;
+	  name = xaccAccountGetFullName(acc);
+	  gtk_list_store_append(gas->store, &iter);
+	  gtk_list_store_set(gas->store, &iter,
+			     COLUMN_ACCT_NAME, name,
+			     COLUMN_ACCT_PTR,  acc,
+			     -1);
+	  if (g_utf8_collate(name, currentSel) == 0) {
+	    active = i;
+	  g_free(name);
+	  }
+	}
 
-	gtk_combo_set_popdown_strings( gas->combo, nameList );
-
         /* If the account which was in the text box before still exists, then
          * reset to it. */
-        {
-                findData tmpfd;
-                gint pos;
-                tmpfd.str = currentSel;
-                tmpfd.flag = FALSE;
+	gtk_combo_box_set_active(GTK_COMBO_BOX(gas->combo), active);
 
-                g_list_foreach( nameList, gas_strcmp_adapter, &tmpfd );
-
-                if ( tmpfd.flag ) {
-                        gtk_editable_delete_text(
-                                GTK_EDITABLE(gas->combo->entry), 0, -1 );
-                        pos = 0;
-                        gtk_editable_insert_text(
-                                GTK_EDITABLE(gas->combo->entry),
-                                currentSel, strlen(currentSel), &pos );
-                }
-        }
-        g_list_free( nameList );
+        g_list_free( filteredAccts );
         if ( currentSel ) {
                 g_free( currentSel );
         }
-
-#if 0 /* completion not implemented */
-        gas->completion = g_completion_new( NULL );
-        g_completion_add_items( gas->completion, nameList );
-#endif /* 0 -- completion not implemented */
 }
 
 static
 void
-gas_accounts_to_names( gpointer data, gpointer user_data )
+gas_filter_accounts( gpointer data, gpointer user_data )
 {
-        accounts_to_names_data *atnd;
+        account_filter_data *atnd;
         Account *a;
 
-        atnd = (accounts_to_names_data*)user_data;
+        atnd = (account_filter_data*)user_data;
         a = (Account*)data;
         /* Filter as we've been configured to do. */
         if ( atnd->gas->acctTypeFilters ) {
@@ -261,90 +242,10 @@
                         return;
                 }
         }
-        *atnd->outList =
-                g_list_append( *atnd->outList, xaccAccountGetFullName(a) );
+        *atnd->outList = g_list_append( *atnd->outList, a );
 }
 
-#if 0 /* completion not implemented  */
-/*
- * There is apparently no way -- in GTK 1.x -- to programatically select a
- * region in the way we would like... so we've disallowed manual editing of
- * the Account string.
- */
-static
-void
-gnc_account_sel_changed( GtkEditable *entry, gpointer ud )
-{
-        gchar *s, *prefix;
-        GNCAccountSel *gas = (GNCAccountSel*)ud;
 
-        if ( !gas->initDone ) {
-                return;
-        }
-        s = gtk_editable_get_chars( entry, 0, -1 );
-        g_completion_complete( gas->completion, s, &prefix );
-        if ( prefix && (strlen(prefix) > 0) ) {
-                printf( "changed into \"%s\"; longest completion: \"%s\"\n", s, prefix );
-                g_signal_handlers_block_by_func( gas->combo->entry,
-						 gnc_account_sel_changed,
-						 ud );
-                gtk_entry_set_text( GTK_ENTRY(gas->combo->entry), prefix );
-                gtk_editable_select_region( GTK_EDITABLE(gas->combo->entry),
-                                            strlen(s), -1 );
-                {
-                        GdkEventKey k;
-                        gboolean ret;
-                        
-                        k.type = GDK_KEY_RELEASE;
-                        k.send_event = TRUE;
-                        k.state = GDK_SHIFT_MASK;
-                        k.keyval = GDK_End;
-                        k.length = 0;
-                        k.string = "";
-                        printf( "foo [%d : \"%s\"]\n", k.length, k.string );
-                        //gtk_widget_event( GTK_WIDGET(gas->combo->entry), &e );
-                        g_signal_emit_by_name( gas->combo->entry,
-					       "key-press-event",
-					       gas->combo->entry, &k, NULL, &ret );
-                        printf( "bar\n" );
-                }
-                gtk_editable_set_position( GTK_EDITABLE(gas->combo->entry),
-                                           strlen(s) );
-                g_signal_handlers_unblock_by_func( gas->combo->entry,
-						   gnc_account_sel_changed,
-						   ud );
-                g_free( prefix );
-        }
-        g_free( s );
-}
-
-static
-gint
-gnc_account_sel_key_press(GtkWidget *widget, GdkEventKey *event)
-{
-        GNCAccountSel *gas = GNC_ACCOUNT_SEL(widget);
-        gint result;
-
-        result = (* GTK_WIDGET_CLASS (parent_class)->key_press_event)(widget, event);
-
-        switch (event->keyval)
-        {
-        case GDK_Tab:
-                /* FIXME: += equivalent keys. */
-                break;
-                if (event->state & (GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SHIFT_MASK))
-                        break;
-                return result;
-        case GDK_KP_Enter:
-                break;
-        default:
-                return result;
-        }
-
-        return TRUE;
-}
-#endif /* 0 -- completion not implemented */
-
 GtkWidget *
 gnc_account_sel_new (void)
 {
@@ -355,47 +256,56 @@
         return GTK_WIDGET (gas);
 }
 
-GtkWidget *
-gnc_account_sel_gtk_entry (GNCAccountSel *gas)
+typedef struct {
+  GNCAccountSel *gas;
+  Account *acct;
+} gas_find_data;
+
+static
+gboolean
+gnc_account_sel_find_account (GtkTreeModel *model,
+			      GtkTreePath *path,
+			      GtkTreeIter *iter,
+			      gas_find_data *data)
 {
-        g_return_val_if_fail(gas != NULL, NULL);
-        g_return_val_if_fail(GNC_IS_ACCOUNT_SEL(gas), NULL);
+  Account *model_acc;
 
-        return (GtkWidget *)gas->combo->entry;
-}
+  gtk_tree_model_get(model, iter, COLUMN_ACCT_PTR, &model_acc, -1);
+  if (data->acct != model_acc)
+    return FALSE;
 
+  gtk_combo_box_set_active_iter(GTK_COMBO_BOX(data->gas->combo), iter);
+  return TRUE;
+}
 void
 gnc_account_sel_set_account( GNCAccountSel *gas, Account *acct )
 {
-        gchar *acctStr;
+	gas_find_data data;
 
-        if ( acct == NULL ) {
-                gtk_list_select_item( GTK_LIST(gas->combo->list), 0 );
+	gtk_combo_box_set_active( GTK_COMBO_BOX(gas->combo), -1 );
+        if ( acct == NULL )
                 return;
-        }
-        acctStr = xaccAccountGetFullName( acct );
-        gtk_entry_set_text( GTK_ENTRY(gas->combo->entry), acctStr );
-        g_free( acctStr );
+
+	data.gas = gas;
+	data.acct = acct;
+	gtk_tree_model_foreach(GTK_TREE_MODEL(gas->store),
+			       (GtkTreeModelForeachFunc)gnc_account_sel_find_account,
+			       &data);
 }
 
 Account*
 gnc_account_sel_get_account( GNCAccountSel *gas )
 {
-        AccountGroup *ag;
-        Account *ret;
-        gchar *txt;
+	GtkTreeIter iter;
+        Account *acc;
 
-        ret = NULL;
-        txt = gtk_editable_get_chars( GTK_EDITABLE(gas->combo->entry), 0, -1 );
-        g_assert( txt != NULL );
-        if ( strlen(txt) == 0 ) {
-                goto cleanup;
-        }
-        ag = gnc_book_get_group( gnc_get_current_book() );
-        ret = xaccGetAccountFromFullName( ag, txt );
- cleanup:
-        g_free( txt );
-        return ret;
+	if (!gtk_combo_box_get_active_iter(GTK_COMBO_BOX(gas->combo), &iter))
+	  return NULL;
+
+	gtk_tree_model_get(GTK_TREE_MODEL(gas->store), &iter,
+			   COLUMN_ACCT_PTR, &acc,
+			   -1);
+        return acc;
 }
 
 
@@ -500,3 +410,53 @@
 	else
 	  gnc_ui_new_account_with_types( NULL, gas->acctTypeFilters );
 }
+
+gint
+gnc_account_sel_get_num_account( GNCAccountSel *gas )
+{
+  if (NULL == gas)
+    return 0;
+  return gtk_tree_model_iter_n_children( GTK_TREE_MODEL(gas->store), NULL );
+}
+
+void
+gnc_account_sel_purge_account( GNCAccountSel *gas,
+			       Account *target,
+			       gboolean recursive)
+{
+  GtkTreeModel *model = GTK_TREE_MODEL(gas->store);
+  GtkTreeIter iter;
+  Account *acc;
+  gboolean more;
+
+  if (!gtk_tree_model_get_iter_first(model, &iter))
+    return;
+
+  if (!recursive) {
+    do {
+      gtk_tree_model_get(model, &iter, COLUMN_ACCT_PTR, &acc, -1);
+      if (acc == target) {
+	gtk_list_store_remove(gas->store, &iter);
+	break;
+      }
+    } while (gtk_tree_model_iter_next(model, &iter));
+  } else {
+    do {
+      gtk_tree_model_get(model, &iter, COLUMN_ACCT_PTR, &acc, -1);
+      while (acc) {
+	if (acc == target)
+	  break;
+	acc = xaccAccountGetParentAccount(acc);
+      }
+
+      if (acc == target)
+	more = gtk_list_store_remove(gas->store, &iter);
+      else
+	more = gtk_tree_model_iter_next(model, &iter);
+    } while (more);
+  }
+
+  gtk_combo_box_set_active(GTK_COMBO_BOX(gas->combo), 0);
+}
+
+

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.h
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.h	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-account-sel.h	2006-05-20 05:54:17 UTC (rev 14141)
@@ -42,7 +42,8 @@
         GtkHBox hbox;
         gboolean initDone;
 	gboolean isModal;
-        GtkCombo *combo;
+	GtkListStore *store;
+        GtkComboBoxEntry *combo;
         GList *acctTypeFilters;
         gint eventHandlerId;
         /* The state of this pointer also serves as a flag about what state
@@ -64,7 +65,7 @@
 
 GType      gnc_account_sel_get_type (void);
 GtkWidget* gnc_account_sel_new (void);
-GtkWidget* gnc_account_sel_gtk_entry (GNCAccountSel *gas);
+
 /**
  * Sets the GAS to the given account.  If the account doesn't exist in the
  * list, then it doesn't change the state of the GAS.  If the account is
@@ -99,4 +100,7 @@
 void gnc_account_sel_set_new_account_modal( GNCAccountSel *gas,
                                               gboolean state );
 
+gint gnc_account_sel_get_num_account( GNCAccountSel *gas );
+void gnc_account_sel_purge_account( GNCAccountSel *gas, Account *acc, gboolean recursive);
+
 #endif /* !ndef GNC_ACCOUNT_SEL_H */

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.c
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.c	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.c	2006-05-20 05:54:17 UTC (rev 14141)
@@ -158,8 +158,8 @@
 gnc_date_delta_init (GNCDateDelta *gdd)
 {
   gdd->value_spin = NULL;
-  gdd->units_menu = NULL;
-  gdd->polarity_menu = NULL;
+  gdd->units_combo = NULL;
+  gdd->polarity_combo = NULL;
 
   gdd->units = 0;
   gdd->polarity = 0;
@@ -194,93 +194,59 @@
 }
 
 static void
-set_units (GtkWidget *widget, gpointer data)
+set_units (GtkComboBox *combo, GNCDateDelta *gdd)
 {
-  GNCDateDeltaUnits units;
-  GNCDateDelta *gdd;
+  gint active;
 
-  units = GPOINTER_TO_INT(data);
-  gdd = GNC_DATE_DELTA(g_object_get_data(G_OBJECT(widget), GDD_LABEL));
+  active = gtk_combo_box_get_active(GTK_COMBO_BOX(gdd->units_combo));
+  if ((active < GNC_DATE_DELTA_DAYS) || (active > GNC_DATE_DELTA_YEARS))
+    active = GNC_DATE_DELTA_DAYS;
+  gdd->units = active;
 
-  gdd->units = units;
-
   g_signal_emit (gdd, date_delta_signals [UNITS_CHANGED], 0);
   g_signal_emit (gdd, date_delta_signals [DELTA_CHANGED], 0);
 }
 
 static void
-fill_units_menu(GNCDateDelta *gdd)
+fill_units_combo(GNCDateDelta *gdd)
 {
-  GtkWidget *menu;
-  GtkWidget *item;
-  char *strings[] = {
-    _("Days"),
-    _("Weeks"),
-    _("Months"),
-    _("Years"),
-    NULL
-  };
-  gint i;
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->units_combo),
+			    _("Days"));
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->units_combo),
+			    _("Weeks"));
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->units_combo),
+			    _("Months"));
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->units_combo),
+			    _("Years"));
 
-  menu = gtk_menu_new ();
-  gtk_widget_show(menu);
-
-  for (i = 0; strings[i] != NULL; i++)
-  {
-    item = gtk_menu_item_new_with_label (strings[i]);
-    g_object_set_data(G_OBJECT(item), GDD_LABEL, gdd);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
-    gtk_widget_show(item);
-
-    g_signal_connect (item, "activate",
-		      G_CALLBACK (set_units), GINT_TO_POINTER(i));
-  }
-
-  gtk_option_menu_set_menu (GTK_OPTION_MENU (gdd->units_menu), menu);
+  g_signal_connect (gdd->units_combo, "changed",
+		    G_CALLBACK (set_units), gdd);
 }
 
 static void
-set_polarity (GtkWidget *widget, gpointer data)
+set_polarity (GtkComboBox *combo, GNCDateDelta *gdd)
 {
-  GNCDateDeltaPolarity polarity;
-  GNCDateDelta *gdd;
+  gint active;
 
-  polarity = GPOINTER_TO_INT(data);
-  gdd = GNC_DATE_DELTA(g_object_get_data(G_OBJECT(widget), GDD_LABEL));
+  active = gtk_combo_box_get_active(GTK_COMBO_BOX(gdd->units_combo));
+  if ((active < GNC_DATE_DELTA_PAST) || (active > GNC_DATE_DELTA_FUTURE))
+    active = GNC_DATE_DELTA_PAST;
+  gdd->polarity = active;
 
-  gdd->polarity = polarity;
-
   g_signal_emit (gdd, date_delta_signals [POLARITY_CHANGED], 0);
   g_signal_emit (gdd, date_delta_signals [DELTA_CHANGED], 0);
 }
 
 static void
-fill_polarity_menu(GNCDateDelta *gdd)
+fill_polarity_combo(GNCDateDelta *gdd)
 {
-  GtkWidget *menu;
-  GtkWidget *item;
-  char *strings[] = {
-    _("Ago"),
-    _("From Now"),
-    NULL
-  };
-  gint i;
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->polarity_combo),
+			    _("Ago"));
+  gtk_combo_box_append_text(GTK_COMBO_BOX(gdd->polarity_combo),
+			    _("From Now"));
 
-  menu = gtk_menu_new ();
-  gtk_widget_show(menu);
-
-  for (i = 0; strings[i] != NULL; i++)
-  {
-    item = gtk_menu_item_new_with_label (strings[i]);
-    g_object_set_data(G_OBJECT(item), GDD_LABEL, gdd);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), item);
-    gtk_widget_show(item);
-
-    g_signal_connect (item, "activate",
-		      G_CALLBACK (set_polarity), GINT_TO_POINTER(i));
-  }
-
-  gtk_option_menu_set_menu (GTK_OPTION_MENU (gdd->polarity_menu), menu);
+  g_signal_connect (gdd->polarity_combo, "changed",
+		    G_CALLBACK(set_polarity), gdd);
 }
 
 static void
@@ -297,18 +263,18 @@
   g_signal_connect(gdd->value_spin, "changed",
 		   G_CALLBACK(value_changed), gdd);
 
-  gdd->units_menu = gtk_option_menu_new();
-  fill_units_menu(gdd);
-  gtk_option_menu_set_history(GTK_OPTION_MENU(gdd->units_menu), 0);
-  gtk_box_pack_start(GTK_BOX(gdd), gdd->units_menu, FALSE, FALSE, 0);
-  gtk_widget_show(gdd->units_menu);
+  gdd->units_combo = gtk_combo_box_new_text();
+  fill_units_combo(gdd);
+  gtk_combo_box_set_active(GTK_COMBO_BOX(gdd->units_combo), 0);
+  gtk_box_pack_start(GTK_BOX(gdd), gdd->units_combo, FALSE, FALSE, 0);
+  gtk_widget_show(gdd->units_combo);
 
-  gdd->polarity_menu = gtk_option_menu_new();
-  fill_polarity_menu(gdd);
-  gtk_option_menu_set_history(GTK_OPTION_MENU(gdd->polarity_menu), 0);
-  gtk_box_pack_start(GTK_BOX(gdd), gdd->polarity_menu, FALSE, FALSE, 0);
+  gdd->polarity_combo = gtk_combo_box_new_text();
+  fill_polarity_combo(gdd);
+  gtk_combo_box_set_active(GTK_COMBO_BOX(gdd->polarity_combo), 0);
+  gtk_box_pack_start(GTK_BOX(gdd), gdd->polarity_combo, FALSE, FALSE, 0);
   if (gdd->show_polarity)
-    gtk_widget_show(gdd->polarity_menu);
+    gtk_widget_show(gdd->polarity_combo);
 }
 
 /**
@@ -382,7 +348,7 @@
 
   gdd->units = units;
 
-  gtk_option_menu_set_history(GTK_OPTION_MENU(gdd->units_menu), units);
+  gtk_combo_box_set_active(GTK_COMBO_BOX(gdd->units_combo), units);
 }
 
 /**
@@ -417,7 +383,7 @@
 
   gdd->polarity = polarity;
 
-  gtk_option_menu_set_history(GTK_OPTION_MENU(gdd->polarity_menu), polarity);
+  gtk_combo_box_set_active(GTK_COMBO_BOX(gdd->polarity_combo), polarity);
 }
 
 /**
@@ -451,7 +417,7 @@
   gdd->show_polarity = show_polarity;
 
   if (show_polarity)
-    gtk_widget_show(gdd->polarity_menu);
+    gtk_widget_show(gdd->polarity_combo);
   else
-    gtk_widget_hide(gdd->polarity_menu);
+    gtk_widget_hide(gdd->polarity_combo);
 }

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.h
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.h	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-date-delta.h	2006-05-20 05:54:17 UTC (rev 14141)
@@ -54,8 +54,8 @@
   GtkHBox hbox;
 
   GtkWidget *value_spin;
-  GtkWidget *units_menu;
-  GtkWidget *polarity_menu;
+  GtkWidget *units_combo;
+  GtkWidget *polarity_combo;
 
   GNCDateDeltaUnits units;
   GNCDateDeltaPolarity polarity;

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.c
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.c	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.c	2006-05-20 05:54:17 UTC (rev 14141)
@@ -2,6 +2,7 @@
  * gnc-frequency.c -- GnuCash widget for frequency editing.         *
  * Copyright (C) 2001,2002 Joshua Sled <jsled at asynchronous.org>     *
  * Copyright (C) 2003 Linas Vepstas <linas at linas.org>               *
+ * Copyright (C) 2006 David Hampton <hampton at employees.org>         *
  *                                                                  *
  * This program is free software; you can redistribute it and/or    *
  * modify it under the terms of the GNU General Public License as   *
@@ -51,7 +52,7 @@
 
 static void gnc_frequency_class_init( GNCFrequencyClass *klass );
 
-static void freq_option_value_changed( GtkMenuShell *b, gpointer d );
+static void freq_combo_changed( GtkComboBox *b, gpointer d );
 static void start_date_changed( GNCDateEdit *gde, gpointer d );
 static void spin_changed_helper( GtkAdjustment *adj, gpointer d );
 
@@ -156,11 +157,11 @@
         GtkWidget   *o;
         GtkAdjustment  *adj;
 
-        static const struct optionMenuTuple {
+        static const struct comboBoxTuple {
                 char *name;
                 void (*fn)();
-        } optionMenus[] = {
-                { "freq_option",        freq_option_value_changed },
+        } comboBoxes[] = {
+                { "freq_combobox",      freq_combo_changed },
                 { "semimonthly_first",  semimonthly_sel_changed },
                 { "semimonthly_second", semimonthly_sel_changed },
                 { "monthly_day",        monthly_sel_changed },
@@ -191,8 +192,8 @@
         gf->gxml = gnc_glade_xml_new( "sched-xact.glade", "gncfreq_vbox" );
         o = glade_xml_get_widget( gf->gxml, "gncfreq_nb" );
         gf->nb = GTK_NOTEBOOK(o);
-        o = glade_xml_get_widget( gf->gxml, "freq_option" );
-        gf->freqOpt = GTK_OPTION_MENU(o);
+        o = glade_xml_get_widget( gf->gxml, "freq_combobox" );
+        gf->freqComboBox = GTK_COMBO_BOX(o);
         gf->startDate = GNC_DATE_EDIT(gnc_date_edit_new( time(NULL), FALSE, FALSE ));
         /* Add the new widget to the table. */
         {
@@ -206,17 +207,13 @@
         gf->vb = vb;
         gtk_container_add( GTK_CONTAINER(&gf->widget), GTK_WIDGET(gf->vb) );
 
-        /* initialize the option menus */
-        for ( i=0; optionMenus[i].name != NULL; i++ ) {
-                o = glade_xml_get_widget( gf->gxml, optionMenus[i].name );
-                gnc_option_menu_init( GTK_WIDGET(o) );
-                if ( optionMenus[i].fn != NULL ) {
-                        o = gtk_option_menu_get_menu(GTK_OPTION_MENU(o));
-                        /* FIXME: having the user-data be a struct of a
-                         * calendar name and the GNCFrequency would allow a
-                         * single callback fn */
-                        g_signal_connect( o, "selection-done",
-					  G_CALLBACK(optionMenus[i].fn), gf );
+        /* initialize the combo boxes */
+        for ( i=0; comboBoxes[i].name != NULL; i++ ) {
+                o = glade_xml_get_widget( gf->gxml, comboBoxes[i].name );
+		gtk_combo_box_set_active(GTK_COMBO_BOX(o), 0);
+                if ( comboBoxes[i].fn != NULL ) {
+                        g_signal_connect( o, "changed",
+					  G_CALLBACK(comboBoxes[i].fn), gf );
                 }
         }
 
@@ -281,7 +278,7 @@
         g_assert( page != -1 );
 
         gtk_notebook_set_current_page( gf->nb, page );
-        gtk_option_menu_set_history( gf->freqOpt, page );
+        gtk_combo_box_set_active( gf->freqComboBox, page );
 
         switch ( uift ) 
         {
@@ -425,7 +422,7 @@
                 gtk_spin_button_set_value( GTK_SPIN_BUTTON(o), monthlyMult );
                 /*  first date */
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_first" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o), firstDayOfMonth-1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o), firstDayOfMonth-1 );
                 /*  second date */
                 subFS = (FreqSpec*)(g_list_nth( list, 1 )->data);
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_second" );
@@ -434,7 +431,7 @@
                         PERR( "Inappropriate FreqSpec type\n" );
                         return;
                 }
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o), secondDayOfMonth-1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o), secondDayOfMonth-1 );
         }
         break;
         case UIFREQ_MONTHLY:
@@ -452,7 +449,7 @@
                 o = glade_xml_get_widget( gf->gxml, "monthly_spin" );
                 gtk_spin_button_set_value( GTK_SPIN_BUTTON(o), monthlyMult );
                 o = glade_xml_get_widget( gf->gxml, "monthly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o), dayOfMonth-1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o), dayOfMonth-1 );
                 /*  set the day-of-month */
         }
         break;
@@ -544,9 +541,9 @@
                 gtk_spin_button_set_value( GTK_SPIN_BUTTON(o),
                                            (int)rint(floor(monthlyMult / 12)) );
                 o = glade_xml_get_widget( gf->gxml, "yearly_month" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o), monthOffset );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o), monthOffset );
                 o = glade_xml_get_widget( gf->gxml, "yearly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o), dayOfMonth-1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o), dayOfMonth-1 );
         }
         break;
         default:
@@ -558,7 +555,7 @@
         g_signal_emit_by_name( gf, "changed" );
 }
 
-static void
+void
 gnc_frequency_setup_default( GNCFrequency *gf, FreqSpec *fs, GDate *date )
 {
    time_t secs;
@@ -581,7 +578,7 @@
       g_assert( page != -1 );
    
       gtk_notebook_set_current_page( gf->nb, page );
-      gtk_option_menu_set_history( gf->freqOpt, page );
+      gtk_combo_box_set_active( gf->freqComboBox, page );
    }
 
    /* Setup the start date */
@@ -757,7 +754,7 @@
                 tmpInt = gtk_spin_button_get_value_as_int( GTK_SPIN_BUTTON(o) );
 
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_first" );
-                day = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+                day = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
                 tmpFS = xaccFreqSpecMalloc(gnc_get_current_book ());
                 g_date_to_struct_tm( &gd, &stm);
                 if ( day >= stm.tm_mday ) {
@@ -771,7 +768,7 @@
                 xaccFreqSpecCompositeAdd( fs, tmpFS );
 
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_second" );
-                day = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+                day = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
                 tmpFS = xaccFreqSpecMalloc(gnc_get_current_book ());
                 tmpTimeT = gnc_date_edit_get_date( gf->startDate );
                 g_date_set_time_t( &gd, tmpTimeT );
@@ -796,7 +793,7 @@
                 g_date_to_struct_tm( &gd, &stm);
 
                 o = glade_xml_get_widget( gf->gxml, "monthly_day" );
-                day = gnc_option_menu_get_active( GTK_WIDGET(o) ) + 1;
+                day = gtk_combo_box_get_active( GTK_COMBO_BOX(o) ) + 1;
                 stm.tm_mday = day;
                 g_date_set_time_t( &gd, mktime( &stm ) );
                 xaccFreqSpecSetMonthly( fs, &gd, tmpInt );
@@ -857,7 +854,7 @@
 
         o = glade_xml_get_widget( ((GNCFrequency*)d)->gxml,
                                   "monthly_day" );
-        dayOfMonth = gnc_option_menu_get_active( GTK_WIDGET(o) ) + 1;
+        dayOfMonth = gtk_combo_box_get_active( GTK_COMBO_BOX(o) ) + 1;
 
         tmptt = gnc_date_edit_get_date( gf->startDate );
         tmptm = localtime( &tmptt );
@@ -888,10 +885,10 @@
         tmptm = localtime( &tmptt );
 
         o = glade_xml_get_widget( gf->gxml, "semimonthly_first" );
-        tmpint = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+        tmpint = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
         o = glade_xml_get_widget( gf->gxml, "semimonthly_second" );
-        if ( tmpint > gnc_option_menu_get_active( GTK_WIDGET(o) )+1 ) {
-                tmpint = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+        if ( tmpint > gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1 ) {
+                tmpint = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
         }
 
         tmptm->tm_mday = tmpint;
@@ -946,8 +943,8 @@
         time_t tmpTT;
         struct tm *tmpTm;
 
-        occur = gnc_option_menu_get_active( occurW );
-        day = gnc_option_menu_get_active( dayOfMonthW ) + 1;
+        occur = gtk_combo_box_get_active( GTK_COMBO_BOX(occurW) );
+        day = gtk_combo_box_get_active( GTK_COMBO_BOX(dayOfMonthW) ) + 1;
 
         tmpTT = gnc_date_edit_get_date( gf->startDate );
         tmpTm = localtime( &tmpTT );
@@ -975,9 +972,9 @@
         tmptm = localtime( &tmptt );
 
         o = glade_xml_get_widget( gf->gxml, "yearly_month" );
-        tmptm->tm_mon = gnc_option_menu_get_active( GTK_WIDGET(o) );
+        tmptm->tm_mon = gtk_combo_box_get_active( GTK_COMBO_BOX(o) );
         o = glade_xml_get_widget( gf->gxml, "yearly_day" );
-        tmptm->tm_mday = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+        tmptm->tm_mday = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
 
         /* FIXME: correct for
            option_menu_selected_day > min(31,correct_days_in_month)
@@ -1005,7 +1002,7 @@
 }
 
 static void
-freq_option_value_changed( GtkMenuShell *b, gpointer d )
+freq_combo_changed( GtkComboBox *b, gpointer d )
 {
         GNCFrequency *gf = (GNCFrequency*)d;
         int optIdx;
@@ -1015,7 +1012,7 @@
         GtkWidget *o;
 
         /* Set the new page. */
-        optIdx = gnc_option_menu_get_active( GTK_WIDGET(((GNCFrequency*)d)->freqOpt) );
+        optIdx = gtk_combo_box_get_active( GTK_COMBO_BOX(((GNCFrequency*)d)->freqComboBox) );
         gtk_notebook_set_current_page( ((GNCFrequency*)d)->nb, optIdx );
 
         /* setup initial values for new page, as possible. */
@@ -1033,45 +1030,45 @@
                 tmpTm->tm_mday += 14;
                 tmpDate = mktime( tmpTm );
                 tmpTm = localtime( &tmpDate );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             min( tmpTm->tm_mday, tmpDayOfMonth ) - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  min( tmpTm->tm_mday, tmpDayOfMonth ) - 1 );
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_second" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             max( tmpTm->tm_mday, tmpDayOfMonth ) - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  max( tmpTm->tm_mday, tmpDayOfMonth ) - 1 );
         }
         break;
         case UIFREQ_MONTHLY:
                 /* on the <startdate_dom> */
                 o = glade_xml_get_widget( gf->gxml, "monthly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday - 1 );
                 break;
         case UIFREQ_QUARTERLY:
                 /* on the <startdate_dom> */
                 o = glade_xml_get_widget( gf->gxml, "quarterly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday - 1 );
                 break;
         case UIFREQ_TRI_ANUALLY:
                 /* on the <startdate_dom> */
                 o = glade_xml_get_widget( gf->gxml, "triyearly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday - 1 );
                 break;
         case UIFREQ_SEMI_YEARLY:
                 /* on the <startdate_dom> */
                 o = glade_xml_get_widget( gf->gxml, "semiyearly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday - 1 );
                 break;
         case UIFREQ_YEARLY:
                 /* on the <startdate_mon>, <startdate_dom> */
                 o = glade_xml_get_widget( gf->gxml, "yearly_month" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mon );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mon );
                 o = glade_xml_get_widget( gf->gxml, "yearly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday - 1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday - 1 );
                 break;
         default:
                 /* nuttin can be done, for whatever reason. */
@@ -1088,10 +1085,10 @@
 {
         struct tm  *tmpTm;
         tmpTm = localtime( &startDate );
-        gtk_option_menu_set_history( GTK_OPTION_MENU(occurOptMenu),
-                                     tmpTm->tm_mon % monthsInRange );
-        gtk_option_menu_set_history( GTK_OPTION_MENU(dayOptMenu),
-                                     tmpTm->tm_mday - 1 );
+        gtk_combo_box_set_active( GTK_COMBO_BOX(occurOptMenu),
+				  tmpTm->tm_mon % monthsInRange );
+        gtk_combo_box_set_active( GTK_COMBO_BOX(dayOptMenu),
+				   tmpTm->tm_mday - 1 );
 }
 
 static void
@@ -1125,23 +1122,23 @@
         {
                 gint first_day;
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_first" );
-                first_day = gnc_option_menu_get_active( GTK_WIDGET(o) )+1;
+                first_day = gtk_combo_box_get_active( GTK_COMBO_BOX(o) )+1;
                 o = glade_xml_get_widget( gf->gxml, "semimonthly_second" );
-                if ( first_day < gnc_option_menu_get_active(
-                             GTK_WIDGET(o) )+1 ) {
+                if ( first_day < gtk_combo_box_get_active(
+                             GTK_COMBO_BOX(o) )+1 ) {
                         o = glade_xml_get_widget( gf->gxml,
                                                   "semimonthly_first" );
                 }
 
                 tmpTm = localtime( &dateFromGDE );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
                                              tmpTm->tm_mday-1 );
         }
         break;
         case UIFREQ_MONTHLY:
                 o = glade_xml_get_widget( gf->gxml, "monthly_day" );
                 tmpTm = localtime( &dateFromGDE );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
                                              (tmpTm->tm_mday-1) );
                 break;
         case UIFREQ_QUARTERLY:
@@ -1168,11 +1165,11 @@
         case UIFREQ_YEARLY:
                 o = glade_xml_get_widget( gf->gxml, "yearly_month" );
                 tmpTm = localtime( &dateFromGDE );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mon );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mon );
                 o = glade_xml_get_widget( gf->gxml, "yearly_day" );
-                gtk_option_menu_set_history( GTK_OPTION_MENU(o),
-                                             tmpTm->tm_mday-1 );
+                gtk_combo_box_set_active( GTK_COMBO_BOX(o),
+					  tmpTm->tm_mday-1 );
                 break;
         default:
                 PERR( "unknown uift value %d\n", uift );

Modified: gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.h
===================================================================
--- gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.h	2006-05-20 05:53:39 UTC (rev 14140)
+++ gnucash/branches/deprecated-cleanup/src/gnome-utils/gnc-frequency.h	2006-05-20 05:54:17 UTC (rev 14141)
@@ -45,7 +45,7 @@
 
   	GtkVBox         *vb;
 	GtkNotebook     *nb;
-	GtkOptionMenu   *freqOpt;
+	GtkComboBox     *freqComboBox;
 	GNCDateEdit     *startDate;
 	GladeXML        *gxml;
 } GNCFrequency;
@@ -102,4 +102,7 @@
  */
 void gnc_frequency_set_date_label_text (GNCFrequency *gf, const gchar *txt);
 
+void
+gnc_frequency_setup_default( GNCFrequency *gf, FreqSpec *fs, GDate *date );
+
 #endif /* !defined( GNC_FREQUENCY_H ) */



More information about the gnucash-changes mailing list