design.getActivityStack( ).startTrans( );
	public void setTheme( String name ) throws SemanticException	{		name = StringUtil.trimString( name );		ReportDesign design = (ReportDesign) element;		// Ensure that the theme exists.		Theme theme = null;		Theme oldTheme = design.getTheme( );		if ( name != null )		{			theme = getModule( ).findTheme( name );			// the theme in the element is the same with the new set value			if ( theme == oldTheme )				return;			if ( theme == null )				throw new StyleException( element, name,						StyleException.DESIGN_EXCEPTION_NOT_FOUND );		}		else		{			// the new name is null and the theme in the element is un-set			if ( oldTheme == null )				return;		}		design.getActivityStack( ).startTrans( );		// Make the change for the theme property.		PropertyCommand propCommand = new PropertyCommand( module, module );		propCommand.setProperty( IModuleModel.THEME_PROP, name );		// adjust the back references for styles in the theme				ThemeRecord themeEffects = new ThemeRecord( design, theme, oldTheme );		design.getActivityStack( ).execute( themeEffects );		design.getActivityStack( ).commit( );	}