Bug 178179 The order of included css files keeps unchanged when reloading
Xingjie once asked Rima this question, and Rima answered that the order kept unchanged. The question and answer are listed following: About reload css. Now there is duplicate style name problem. Which css file is added at last, which file has the highest priority. For example design file has two css file. base.css and new.css . Base.css ----- StyleA ----- StyleB New.css -----StyleA -----StyleC So the priority of new.css is higher. So we can get three styles: New.css.styleA, StyleB, StyleC When I execute reload base.css action, There is two choices. One is : keep every thing. That means the priority of new.css is higher too. Second is: After reload, priority of base.css is higher. And in report design you will see New.css -----StyleA -----StyleC Base.css ----- StyleA ----- StyleB And we can get three styles: base.css.styleA, styleB, styleC Which is the better choice? I will let Xiong send a bug about the choice that in future we can know the behavior. [Rima Kanguri] Always the priority of the last file included is highest. In your example the styles defined in New.css takes higher priority always. Even when user performs a reload operation.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/DesignElementHandle.java
* handle to modify the definition after it has been added to an element.
	 * 
	 * @param prop
	 *            the user property definition to add. The name and property
	 *            type must be valid.
	 * @throws UserPropertyException
	 *             if the element is not allowed to have user property or the
	 *             user property definition is invalid, or if the value of the
	 *             user-defined choice is invalid for the type of user property
	 *             definition, the property type is incorrect.
	 */
	public void addUserPropertyDefn( UserPropertyDefn prop )
			throws UserPropertyException
	{
		DesignElement element = getElement( );
		UserPropertyCommand cmd = new UserPropertyCommand( module, element );
		cmd.addUserProperty( prop );
	}
	/**
	 * Adds a report item to the given slot at the given position. The item must
	 * be newly created and not yet added to the design.
	 * 
	 * @param child
	 *            handle to the newly created element
	 * @param slotId
	 *            slot id in which the child item will be added.
	 * @param pos
	 *            position in the slot that the child item will be added.
	 * @throws ContentException
	 *             if the element is not allowed in the slot