Bug 175664 [Mac] Unexpected internal exception occurs when invoke expression builder
Description: There are two problems: 1. "fx" button (Click this button to invoke Expression Builder) could not be displayed correctly, nothing displayed in the button. 2. Click on the button, an unexpected internal exception occurs. Version:2.2.0.v20070205 Steps to reproduce: 1.Insert a Data item to the layout. Click "fx" button to invoke the expression builder, although on Mac "fx" button could not display correctly. Error log: Argument cannot be null Plug-in Provider: Eclipse.org Plug-in Name: BIRT Designer UI Plug-in ID: org.eclipse.birt.report.designer.ui Error Code: Error.GUIException.invokedByUnexpectedException Error Message:Argument cannot be null
UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/util/UIUtil.java
{
	protected static Logger logger = Logger.getLogger( UIUtil.class.getName( ) );
	private static final String MSG_DIALOG_TITLE = Messages.getString( "ImportLibraryAction.Title.ImportSuccessfully" ); 
	private static final String MSG_DIALOG_MSG = Messages.getString( "ImportLibraryAction.Message.ImportSuccessfully" ); 
	/**
	 * Regex pattern for neutral chars in Bidi Algorithm.
	 */
	static Pattern punctuation = Pattern.compile( "\\p{Punct}||\\p{Blank}||\\p{Space}" ); 
	public static Object listArea;
	/**
	 * Returns the length in pixels of given string in a control.
	 * 
	 * @return the length in pixels
	 */
	public static int getStringWidth( String string, Control control )
	{
		int width = 0;
		GC gc = new GC( control );
		for ( int i = 0; i < string.length( ); i++ )
		{
			char c = string.charAt( i );
			width += gc.getAdvanceWidth( c );
		}
		gc.dispose( );
		return width;
	}
	/**
	 * @param string