	selectPath = function( file ){
		var isNewPath = (path !== file);
		
		var currentLabel = selectedItem.label;
		if( currentLabel===".." ){
			vPosition = 0;
			return;
		}
		
		if(isNewPath)
		{// if:  the requested file to select isn't already the currently selected file
			// then:  at least make sure we're in the same folder
			var endAt = path.lastIndexOf("\\")+1;
			var oldFolder = path.substr( 0, endAt );
			endAt = file.lastIndexOf("\\")+1;
			var newFolder = path.substr( 0, endAt );
			if(newFolder !== oldFolder)
			{// if:  we're in the wrong folder
				// then:  navigate to the new folder
				path = newFolder;
			}// if:  we're in the wrong folder
		}// if:  the requested file to select isn't already the currently selected file
		
		// locate the requested file in the list
		var startAt = file.lastIndexOf("\\") +1;
		var fileName = file.substr(startAt);
		var list_ary = dataProvider;
		
		var isFolder = mdm.FileSystem.folderExists( file );
		var findThis = (isFolder) ? "["+fileName+"]" : fileName;		// the list displays folder names within [brackets]
		var foundAt = null;
		for(var i=0; i<list_ary.length; i++){
			if(list_ary[i].label === findThis){
				foundAt = i;
				break;		// stop searching
			}// if: found the requested item
		}// for:  each item
		
		if(foundAt !== null){
			if(isNewPath){
				selectedIndex = foundAt;
			}// if:  the requested file to select isn't already the currently selected file
		
			// scroll to the selected item  (and center it)
			var itemPixelHeight = 20;
			var visibleItems = Math.floor(height / itemPixelHeight);
			var halfHeightIndex = Math.round(visibleItems / 2);
			vPosition = foundAt - halfHeightIndex;		// if this is less than Zero,  the list will automatically scroll to item Zero
		}// if:  the requested file/folder was found
	}// selectPath()