src/sap.ui.commons/src/sap/ui/commons/RoadMapRenderer.js
function(rm, oRoadMap, oStep){
		var fCreateIcon = function(rm, oRoadMap, sId, sIcon, sAdditonalClass){
			rm.write("<div");
			rm.writeAttribute("id", sId + "-ico");
			rm.addClass("sapUiRoadMapStepIco");
			if (sAdditonalClass) {
				rm.addClass(sAdditonalClass);
			}
			rm.writeClasses();
			rm.write("></div>");
		};

		var bIsExpanded = oStep.getExpanded();

		//Render the start step with an additional icon
		renderStep(rm, oRoadMap, oStep, bIsExpanded ? ["sapUiRoadMapExpanded"] : null, function(rm, oRoadMap, oStep){
			fCreateIcon(rm, oRoadMap, oStep.getId(), bIsExpanded ? "roundtripstart.gif" : "roundtrip.gif");
		});

		//Render the sub steps
		var aSteps = oStep.getSubSteps();
		for (var i = 0; i < aSteps.length; i++) {
			var aClasses = ["sapUiRoadMapSubStep"];
			if (!bIsExpanded && aSteps[i].getVisible()) {
				aClasses.push("sapUiRoadMapHidden");
			}
			renderStep(rm, oRoadMap, aSteps[i], aClasses);
		}

		//Render the end step with an additional icon
		aClasses = ["sapUiRoadMapExpanded", "sapUiRoadMapStepEnd"];
		if (!bIsExpanded) {
			aClasses.push("sapUiRoadMapHidden");
		}
		renderStep(rm, oRoadMap, oStep, aClasses, function(rm, oRoadMap, oStep){
			fCreateIcon(rm, oRoadMap, oStep.getId() + "-expandend", "roundtripend.gif");
		}, oStep.getId() + "-expandend");
	}
function(rm, oRoadMap, oStep){
		var fCreateIcon = function(rm, oRoadMap, sId, sIcon, sAdditonalClass){
			rm.write("<div");
			rm.writeAttribute("id", sId + "-ico");
			rm.addClass("sapUiRoadMapStepIco");
			if (sAdditonalClass) {
				rm.addClass(sAdditonalClass);
			}
			rm.writeClasses();
			rm.write("></div>");
		};

		var bIsExpanded = oStep.getExpanded();

		//Render the start step with an additional icon
		renderStep(rm, oRoadMap, oStep, bIsExpanded ? ["sapUiRoadMapExpanded"] : null, function(rm, oRoadMap, oStep){
			fCreateIcon(rm, oRoadMap, oStep.getId(), bIsExpanded ? "roundtripstart.gif" : "roundtrip.gif");
		});

		//Render the sub steps
		var aSteps = oStep.getSubSteps();
		for (var i = 0; i < aSteps.length; i++) {
			var aClasses = ["sapUiRoadMapSubStep"];
			if (!bIsExpanded && aSteps[i].getVisible()) {
				aClasses.push("sapUiRoadMapHidden");
			}
			renderStep(rm, oRoadMap, aSteps[i], aClasses);
		}

		//Render the end step with an additional icon
		aClasses = ["sapUiRoadMapExpanded", "sapUiRoadMapStepEnd"];
		if (!bIsExpanded) {
			aClasses.push("sapUiRoadMapHidden");
		}
		renderStep(rm, oRoadMap, oStep, aClasses, function(rm, oRoadMap, oStep){
			fCreateIcon(rm, oRoadMap, oStep.getId() + "-expandend", "roundtripend.gif");
		}, oStep.getId() + "-expandend");
	}
function ( rm , oRoadMap , oStep ) { var fCreateIcon = function ( rm , oRoadMap , sId , sIcon , sAdditonalClass ) { rm . write ( "<div" ) ; rm . writeAttribute ( "id" , sId + "-ico" ) ; rm . addClass ( "sapUiRoadMapStepIco" ) ; if ( sAdditonalClass ) { rm . addClass ( sAdditonalClass ) ; } rm . writeClasses ( ) ; rm . write ( "></div>" ) ; } ; var bIsExpanded = oStep . getExpanded ( ) ; //Render the start step with an additional icon renderStep ( rm , oRoadMap , oStep , bIsExpanded ? [ "sapUiRoadMapExpanded" ] : null , function ( rm , oRoadMap , oStep ) { fCreateIcon ( rm , oRoadMap , oStep . getId ( ) , bIsExpanded ? "roundtripstart.gif" : "roundtrip.gif" ) ; } ) ; //Render the sub steps var aSteps = oStep . getSubSteps ( ) ; for ( var i = 0 ; i < aSteps . length ; i ++ ) { var aClasses = [ "sapUiRoadMapSubStep" ] ; if ( ! bIsExpanded && aSteps [ i ] . getVisible ( ) ) { aClasses . push ( "sapUiRoadMapHidden" ) ; } renderStep ( rm , oRoadMap , aSteps [ i ] , aClasses ) ; } //Render the end step with an additional icon aClasses = [ "sapUiRoadMapExpanded" , "sapUiRoadMapStepEnd" ] ; if ( ! bIsExpanded ) { aClasses . push ( "sapUiRoadMapHidden" ) ; } renderStep ( rm , oRoadMap , oStep , aClasses , function ( rm , oRoadMap , oStep ) { fCreateIcon ( rm , oRoadMap , oStep . getId ( ) + "-expandend" , "roundtripend.gif" ) ; } , oStep . getId ( ) + "-expandend" ) ; }
Writes the step HTML of the expandable step and its children into the rendermanger
Writes the step HTML of the expandable step and its children into the rendermanger