Bug 160429 Drag the datasource and dataset and produce an error gradation in data explorer
Details: Drag the datasource and dataset and produce an error gradation in data explorer Step: 1.New 4 datasource named d1, d2, d3, d4. 2.Drag the datasource in data explorer to change the gradation. (1) Drag d1 between d2 and d3. (2) Drag d2 between d3 and d4. (3) Drag d4 between d2 and d3. (4) Drag d4 to the top. (5) Drag d3 between d1 and d2. (6) Drag d3 to the top. Actual result: (1) d1 will be move to bottom. (2) d2 will be move to bottom. (3) d4 will not be move to anywhere. (4) d4 will not be move to anywhere. (5) d3 will be move to bottom. (6) d3 will be move to bottom. Excepted result: The datasource will be move to the correct station.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/ModuleHandle.java
* 
	 * @return the list of embedded images.
	 * 
	 * @see EmbeddedImageHandle
	 */
	public List getAllImages( )
	{
		return getStructureList( IMAGES_PROP );
	}
	/**
	 * Determines if the design has changed since it was last read from, or
	 * written to, the file. The dirty state reflects the action of the command
	 * stack. If the user saves the design and then changes it, the design is
	 * dirty. If the user then undoes the change, the design is no longer dirty.
	 * 
	 * @return <code>true</code> if the design has changed since the last load
	 *         or save; <code>false</code> if it has not changed.
	 */
	public boolean needsSave( )
	{
		String version = module.getVersionManager( ).getVersion( );
		if ( version != null )
		{
			List versionInfos = ModelUtil.checkVersion( version );
			if ( !versionInfos.isEmpty( ) )
				return true;
		}
		return module.isDirty( );
	}
	/**