 			return button;
 		}
 
-		protected function combo_box (object_name:String, property:String, attributes:Object = null, styles:Object = null) :ComboBox
-		{
-			return (instance_sprite(ComboBox, 'dataProvider', object_name, property, attributes, styles) as ComboBox);
+		protected function combo_box_for (object_name:String, property:String, attributes:Object = null, styles:Object = null) :ComboBox
+		{
+			return (sprite_for(ComboBox, 'dataProvider', object_name, property, attributes, styles) as ComboBox);
 		}
 
 		// horizontal layout helper:

			return addChild(sprite);
		}

		protected function text_field (object_name:String, property:String, attributes:Object = null, styles:Object = null) :TextField
		{
			return (instance_sprite(TextField, 'htmlText', object_name, property, attributes, styles) as TextField);
		}

		protected function text_input (object_name:String, property:String, attributes:Object = null, styles:Object = null) :TextInput
		{
			return (instance_sprite(TextInput, 'text', object_name, property, attributes, styles) as TextInput);
		}

		protected function truncate (tf:TextField, suffix:String = '...') :void

			return box.apply(null, args);
		}

		protected function image_for (object_name:String, property:String, attributes:Object = null, styles:Object = null) :Image
		{
			return (sprite_for(Image, 'source', object_name, property, attributes, styles) as Image);
		}

		protected function label_for (object_name:String, property:String, html:String, attributes:Object = null, styles:Object = null) :Text
		{
			// infer default instance id, but allow for manual override
			attributes = new Hash({ 
				id: 		(object_name + '_' + property + '_label'),
				htmlText:	html
			}).update(attributes);
			return (sprite(Text, attributes, styles) as Text);
		}

		// elem: Object. Visual element for whom the handler is being wired
