 					if (object)
 						newNameOrder[i] = hashMap.getName(object);
 				}
+				if (_reverse)
+					newNameOrder.reverse();
 				hashMap.setNameOrder(newNameOrder);
 			}
 		}

		private const _dynamicObjectWatcher:LinkableWatcher = newLinkableChild(this, LinkableWatcher, updateDataProvider, true);
		private const _childListWatcher:LinkableWatcher = newLinkableChild(this, LinkableWatcher, updateDataProvider);
		private var _labelFunction:Function = null;
		
		public function get hashMap():ILinkableHashMap
		{

			else if (hashMap)
			{
				setNameColumnHeader();
				var objects:Array = hashMap.getObjects();
				if (_filterFunction != null)
					objects = objects.filter(_filterFunction);
				if (_reverse)
					objects = objects.reverse();
				_editor.dataProvider = objects;
			}
			else
				_editor.dataProvider = null;
