1. A computer-implemented method of manipulating data objects, the computer-implemented method comprising: in a computer system, assigning a plurality of properties to each of a plurality of data objects, the plurality of properties including a priority property and a movability property; in the computer system, determining a first number of columns of data objects that fits within a first width of a first layout area; in the computer system, determining a first plurality of locations within the first number of columns in the first layout area to display the plurality of data objects; in the computer system, determining a rank order for each of the first plurality of locations; in the computer system, positioning the plurality of data objects at the first plurality of locations in the first layout area based on the priority property of each data object and the rank order of each location unless the movability property of the data object defines a specific location for the data object in the first layout area; and displaying the plurality of data objects at the first plurality of locations based on the positioning, wherein the data object with a highest priority is displayed at a location with a highest ranked order in the first layout area unless the movability property of the data object with the highest priority defines a specific location in the first layout area for the data object with the highest priority.