diff --git a/gui/dialogs/hud.xml b/gui/dialogs/hud.xml
index d715550c2..227b0daaf 100644
--- a/gui/dialogs/hud.xml
+++ b/gui/dialogs/hud.xml
@@ -48,6 +48,7 @@
 	</group>
 
 	<group>
+		<name>devel-stuff</name>
 		<layout>hbox</layout>
 		<text>
 			<label>Clamp:</label>
@@ -64,7 +65,7 @@
 		</slider>
 	</group>
 
-	<hrule/>
+	<hrule><name>devel-stuff</name></hrule>
 
 	<group>
 		<layout>hbox</layout>
@@ -85,6 +86,7 @@
 	</group>
 
 	<group>
+		<name>devel-stuff</name>
 		<layout>hbox</layout>
 		<text>
 			<label>Red:</label>
@@ -107,6 +109,7 @@
 	</group>
 
 	<group>
+		<name>devel-stuff</name>
 		<layout>hbox</layout>
 		<text>
 			<label>Green:</label>
@@ -129,6 +132,7 @@
 	</group>
 
 	<group>
+		<name>devel-stuff</name>
 		<layout>hbox</layout>
 		<text>
 			<label>Blue:</label>
@@ -166,13 +170,7 @@
 
 	<nasal>
 		<open>
-			var self = cmdarg();
-			if (!getprop("/sim/gui/devel-widgets")) {
-				foreach(var w; [1, 3, 4, 5]) {
-					self.removeChild("group", w);
-				}
-				self.removeChild("hrule", 1);
-			}
+			gui.show_widgets(cmdarg(), "devel-stuff", getprop("/sim/gui/devel-widgets"));
 		</open>
 	</nasal>
 </PropertyList>
diff --git a/gui/dialogs/rendering.xml b/gui/dialogs/rendering.xml
index f7037b906..2e782201c 100644
--- a/gui/dialogs/rendering.xml
+++ b/gui/dialogs/rendering.xml
@@ -268,6 +268,7 @@
       <checkbox>
         <halign>left</halign>
         <label>Silhouette (debug)</label>
+        <name>shadows-debug</name>
         <property>/sim/rendering/shadows-debug</property>
         <binding>
           <command>dialog-apply</command>
@@ -294,4 +295,10 @@
 
     <empty><stretch>true</stretch></empty>
   </group>
+
+  <nasal>
+    <open>
+      gui.show_widgets(cmdarg(), "shadows-debug", getprop("/sim/gui/devel-widgets"));
+    </open>
+  </nasal>
 </PropertyList>