htVisibleDisplayName.put( sNodePath, entry.getDisplayName( ) );
	protected void populateSubtasks( )	{		super.populateSubtasks( );		// Get collection of registered Sheets		Collection cRegisteredEntries = ChartUIExtensionsImpl.instance( )				.getUISheetExtensions( );		Iterator iterEntries = cRegisteredEntries.iterator( );		// Vector to be used to build a sorted list of registered sheets (sorted		// on provided node index)		Vector vSortedEntries = new Vector( );		while ( iterEntries.hasNext( ) )		{			IRegisteredSubtaskEntry entry = (IRegisteredSubtaskEntry) iterEntries.next( );			if ( vSortedEntries.isEmpty( ) )			{				vSortedEntries.add( entry );			}			else			{				// Find location where the new entry needs to be inserted				int iNewIndex = entry.getNodeIndex( );				// Try the last entry				if ( ( (IRegisteredSubtaskEntry) vSortedEntries.get( vSortedEntries.size( ) - 1 ) ).getNodeIndex( ) <= iNewIndex )				{					vSortedEntries.add( entry );				}				else if ( ( (IRegisteredSubtaskEntry) vSortedEntries.get( 0 ) ).getNodeIndex( ) > iNewIndex )				// Try the first entry				{					vSortedEntries.add( 0, entry );				}				else				{					vSortedEntries = addEntrySorted( vSortedEntries,							entry,							0,							vSortedEntries.size( ) - 1 );				}			}		}		for ( int i = 0; i < vSortedEntries.size( ); i++ )		{			IRegisteredSubtaskEntry entry = (IRegisteredSubtaskEntry) vSortedEntries.get( i );			ISubtaskSheet sheet = entry.getSheet( );			String sNodePath = entry.getNodePath( );			sheet.setParentTask( this );			sheet.setNodePath( sNodePath );			// Initially ALL registered sheets are visible			htVisibleSheets.put( sNodePath, sheet );			addSubtask( sNodePath, sheet );		}		if ( getCurrentModelState( ) != null )		{			initialize( getCurrentModelState( ), this );		}	}