Hey,<br><br>Thanks for the response. I do not think the code I use to reattch them is an issue, but I have attached it below.&nbsp; The reason I do not think its an issues is because if i comment out those lines I showed you last e-mail the program does not crash, it just piles widgets on top of each other.&nbsp; Also this code works just fine on Windows (all versions) and Linux (SUSE and Ubuntu) I use the &quot;Native Version&quot; of GTK on OSX 10.5 with Mono 1.9.1 that I installed 3 or so months ago.&nbsp; Do you have any ideas about a work around, another way to remove widgets from a table?<br>
<br>&nbsp;public override void LayoutPropertiesPanel()<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(showPropPanel)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Table GTKTable = drawView.Controller.GTKObjectPropertiesTable;<br><br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; GTKTable.Attach(typeIndicator, 1, 4, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(nameBox, 1, 4, 6, 8);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(xLabel, 4, 6, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(xBox, 4, 6, 6, 8);<br>
<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(yLabel, 6, 8, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(yBox, 6, 8, 6, 8);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(widthLabel, 4, 6, 9, 12);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(widthBox, 4, 6, 12, 14);<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(heightLabel, 6, 8, 9, 12);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(heightBox, 6, 8, 12, 14);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(buttonModeCheckBox, 8, 12, 11, 15);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(fillLabel, 8, 10, 2, 5);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(fillButton, 8, 10, 6, 8, AttachOptions.Fill, AttachOptions.Expand, 0, 0);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(strokeLabel, 9, 13, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(strokeButton, 10, 12, 6, 8, AttachOptions.Fill, AttachOptions.Expand, 0, 0);<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(strokeWidthLabel, 12, 15, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(strokeComboBox, 12, 15, 6, 8, AttachOptions.Fill, AttachOptions.Expand, 0, 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( showEvents )<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(eventsLabel, 15, 18, 2, 5);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(eventsComboBox, 15, 18, 6, 8, AttachOptions.Fill, AttachOptions.Expand, 0, 0);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; eventHandlerBox.BorderWidth = 1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.Attach(eventHandlerBox, 18, 31, 2, 15);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; eventHandlerBox.GdkWindow.Background = new Gdk.Color(0, 0, 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GTKTable.ShowAll();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UpdatePropertiesPanel(); // sets all of the values of the widgets we just attached<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br><br>Billy<br><br><div class="gmail_quote">On Sat, Jun 28, 2008 at 12:48 PM, Michael Hutchinson &lt;<a href="mailto:m.j.hutchinson@gmail.com">m.j.hutchinson@gmail.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">On Sat, Jun 28, 2008 at 2:31 AM, Billy Schoenberg &lt;<a href="mailto:wasbridge@gmail.com">wasbridge@gmail.com</a>&gt; wrote:<br>

&gt; Hi,<br>
&gt; I am having a problem removing all of the widgets from a table. &nbsp;I use this<br>
&gt; code<br>
&gt;<br>
&gt; foreach ( Widget c in controller.GTKObjectPropertiesTable.Children)<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;controller.GTKObjectPropertiesTable.Remove(c);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&gt; to try to clear a table, but it gives this exception<br>
&gt; &nbsp;at (wrapper managed-to-native) Gtk.Application.gtk_main () &lt;0x00004&gt;<br>
&gt; &nbsp; at (wrapper managed-to-native) Gtk.Application.gtk_main () &lt;0xffffffff&gt;<br>
&gt; &nbsp; at Gtk.Application.Run () &lt;0x0000a&gt;<br>
&gt; &nbsp; at Open_Dialect.MainWindow..ctor (string) [0x0070a] in<br>
&gt; /Users/Billy/Desktop/Open Dialect/Open<br>
&gt; Dialect/OpenDialect/FormsAndViews/MainWindow.cs:257<br>
&gt; &nbsp; at Open_Dialect.Program.Main (string[]) [0x0005f] in<br>
&gt; /Users/Billy/Desktop/Open Dialect/Open Dialect/OpenDialect/Program.cs:43<br>
&gt; &nbsp; at (wrapper runtime-invoke)<br>
&gt; Open_Dialect.Program.runtime_invoke_void_string[]<br>
&gt; (object,intptr,intptr,intptr) &lt;0xffffffff&gt;<br>
&gt; yes that is the full stack trace, it is missing pieces and I do not know<br>
&gt; why. &nbsp;The first time this piece of code is called it works fine, removes the<br>
<br>
</div>It an unmanaged segfault in the main loop. Something you&#39;ve done<br>
leaves this in a state that doesn&#39;t immediately cause problems, but<br>
makes the main loop crash.<br>
<div class="Ih2E3d"><br>
&gt; widgets from the table, but then after I reattach them and call this method<br>
<br>
</div>What&#39;s the code that you use to re-attach them?<br>
<div class="Ih2E3d"><br>
&gt; again it throws this exception. &nbsp;Any ideas? &nbsp;Who to report to? &nbsp;I am having<br>
&gt; a lot of trouble registering for the Bugzilla at Novell.<br>
<br>
</div>Have you seen <a href="http://www.mono-project.com/FAQ:_Novell_Bugzilla" target="_blank">http://www.mono-project.com/FAQ:_Novell_Bugzilla</a> ?<br>
<br>
Also, are you using the X11 or &quot;native&quot; version of GTK on OS X?<br>
<font color="#888888"><br>
--<br>
Michael Hutchinson<br>
<a href="http://mjhutchinson.com" target="_blank">http://mjhutchinson.com</a><br>
</font></blockquote></div><br>