ChartUIUtil.bindHelp( parent, ChartHelpContextIds.PREFERENCE_CHART );
PlatformUI.getWorkbench( ).getHelpSystem( ).setHelp( parent, ChartHelpContextIds.PREFERENCE_CHART );
	protected Control createContents( Composite parent )	{		ChartUIUtil.bindHelp( parent, ChartHelpContextIds.PREFERENCE_CHART );				Composite cmpTop = new Composite( parent, SWT.NONE );		{			GridLayout layout = new GridLayout( 2, false );			cmpTop.setLayout( layout );		}		btnEnableLivePreview = new Button( cmpTop, SWT.CHECK );		{			GridData gd = new GridData( );			gd.horizontalSpan = 2;			btnEnableLivePreview.setLayoutData( gd );			btnEnableLivePreview.setText( Messages.getString( "ChartPreferencePage.Label.EnableLivePreview" ) ); //$NON-NLS-1$			btnEnableLivePreview.setSelection( ChartReportItemUIActivator.getDefault( )					.getPluginPreferences( )					.getBoolean( ChartReportItemUIActivator.PREFERENCE_ENALBE_LIVE ) );		}		txtMaxRow = new IntegerFieldEditor( ChartReportItemUIActivator.PREFERENCE_MAX_ROW,				Messages.getString( "ChartPreferencePage.Label.MaxRowNumber" ), cmpTop ); //$NON-NLS-1$ 		{			txtMaxRow.setErrorMessage( Messages.getString( "ChartPreferencePage.Error.MaxRowInvalid", //$NON-NLS-1$					new Object[]{						new Integer( MAX_ROW_LIMIT )					} ) );			txtMaxRow.setValidateStrategy( StringFieldEditor.VALIDATE_ON_KEY_STROKE );			txtMaxRow.setValidRange( 1, MAX_ROW_LIMIT );			txtMaxRow.setEmptyStringAllowed( false );			txtMaxRow.setStringValue( ChartReportItemUIActivator.getDefault( )					.getPluginPreferences( )					.getString( ChartReportItemUIActivator.PREFERENCE_MAX_ROW ) );			txtMaxRow.setPage( this );			txtMaxRow.setPropertyChangeListener( this );		}		return cmpTop;	}