tipLabelImage.setImage( image );
if ( p != null ) tipLabelImage.setImage( MainTab.getImageFromRegistry( p.getName() ) ); else tipLabelImage.setImage( null );
				public void mouseHover( MouseEvent event ) {					Point pt = new Point( event.x, event.y );					Widget widget = event.widget;					/* get the selected item from the table */					Table w = ( Table ) widget;					widget = w.getItem ( pt );					if ( widget == null ) {						tipShell.setVisible( false );						tipWidget = null;					}					if ( widget == tipWidget ) return;										tipWidget = widget;									// Create the tooltip on demand					if ( widget instanceof TableItem ) {						TableItem tableItem = ( TableItem ) widget; 						ResultInfo aResult = ( ResultInfo ) tableItem.getData();												Image image = null;						Program p;												if ( !aResult.getFormat().equals( "" ) )								p = Program.findProgram( aResult.getFormat() );						else {							String temp = aResult.getNames()[ 0 ];							int index = temp.lastIndexOf( "." );							try {								temp = temp.substring( index );							}							catch ( Exception e ) {								p = null;							}							p = Program.findProgram( temp );						}												if ( p != null ) {							ImageData data = p.getImageData();							if ( data != null ) 								image = new Image( null, data );						}													String imageText = aResult.getNames()[ 0 ];						String aString = "";						if ( !aResult.getFormat().equals( "" ) )							aString += bundle.getString( "ST_TT_FORMAT" ) + aResult.getFormat() + "\n";							aString += bundle.getString( "ST_TT_LINK" ) + aResult.getLink() + "\n";							aString += bundle.getString( "ST_TT_NETWORK" )															 + aResult.getNetwork().getNetworkName() + "\n";							aString += bundle.getString( "ST_TT_SIZE" ) + aResult.getStringSize() + "\n";							aString += bundle.getString( "ST_TT_SOURCES" ) + aResult.getTags()[ 0 ].getValue();						if ( !aResult.getHistory() )							aString = aString + "\n" + bundle.getString( "ST_TT_DOWNLOADED" );																// set the text/image for the tooltip 						if ( aString != null )							tipLabelText.setText( aString );						else							tipLabelText.setText( "" );													tipLabelImage.setImage( image ); // accepts null;						tipLabelImage.setText ( imageText ); 										/* pack/layout the tooltip */					tipShell.pack();					tipPosition = control.toDisplay( pt );					setHoverLocation( tipShell, tipPosition );										tipShell.setVisible( true );				}				}