Group cSetting = new Group( currencyPage, SWT.NONE ); cSetting.setText( LABEL_CURRENCY_SETTINGS_GROUP ); cSetting.setLayoutData( createGridData4Group( ) ); cSetting.setLayout( new GridLayout( 2, false ) );  new Label( cSetting, SWT.NONE ).setText( LABEL_DECIMAL_PLACES ); cPlacesChoice = new Combo( cSetting, SWT.BORDER | SWT.SINGLE | SWT.V_SCROLL ); cPlacesChoice.setItems( new String[]{ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" } ); GridData data = new GridData( GridData.FILL_HORIZONTAL ); data.heightHint = 20; cPlacesChoice.setLayoutData( data ); cPlacesChoice.addSelectionListener( mySelectionListener ); cPlacesChoice.addModifyListener( myModifyListener ); cPlacesChoice.select( 2 );  cUseSep = new Button( cSetting, SWT.CHECK ); cUseSep.setText( LABEL_USE_1000S_SEPARATOR ); data = new GridData( ); data.horizontalSpan = 2; cUseSep.setLayoutData( data ); cUseSep.addSelectionListener( mySelectionListener );  new Label( cSetting, SWT.NONE ).setText( LABEL_CURRENCY_SYMBOL ); cSymbolChoice = new Combo( cSetting, SWT.DROP_DOWN | SWT.READ_ONLY ); cSymbolChoice.setLayoutData( new GridData( GridData.HORIZONTAL_ALIGN_FILL ) ); cSymbolChoice.setItems( symbols ); cSymbolChoice.addSelectionListener( new SelectionAdapter( ) {  public void widgetSelected( SelectionEvent e ) { if ( cSymbolChoice.getSelectionIndex( ) == 0 ) { cSymPosChoice.deselectAll( ); cSymPosChoice.setEnabled( false ); } else { if ( !cSymPosChoice.isEnabled( ) ) { cSymPosChoice.setEnabled( true ); cSymPosChoice.select( 1 ); } } updatePreview( ); } } ); cSymbolChoice.select( 0 );  new Label( cSetting, SWT.NONE ).setText( LABEL_SYMBOL_POSITION ); cSymPosChoice = new Combo( cSetting, SWT.DROP_DOWN | SWT.READ_ONLY ); cSymPosChoice.setItems( new String[]{ SYMBOL_POSITION_AFTER, SYMBOL_POSITION_BEFORE } ); cSymPosChoice.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) ); cSymPosChoice.addSelectionListener( mySelectionListener ); cSymPosChoice.setEnabled( false );  Label label = new Label( cSetting, SWT.NONE ); label.setLayoutData( new GridData( GridData.VERTICAL_ALIGN_BEGINNING ) ); label.setText( LABEL_NEGATIVE_NUMBERS );  cNegNumChoice = new List( cSetting, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL ); cNegNumChoice.add( "-1234.56" ); cNegNumChoice.add( "(1234.56)" ); data = new GridData( GridData.FILL_HORIZONTAL ); cNegNumChoice.setLayoutData( data ); cNegNumChoice.addSelectionListener( mySelectionListener ); cNegNumChoice.select( 0 );  cPreviewLabel = createPreviewText( currencyPage );
createCurrencySettingPart( currencyPage ); cPreviewLabel = createGeneralPreviewPart4Page( currencyPage );
	private Composite getCurrencyPage( Composite parent )	{		if ( currencyPage == null )		{			currencyPage = new Composite( parent, SWT.NULL );			currencyPage.setLayout( new GridLayout( 1, false ) );			Group cSetting = new Group( currencyPage, SWT.NONE );			cSetting.setText( LABEL_CURRENCY_SETTINGS_GROUP );			cSetting.setLayoutData( createGridData4Group( ) );			cSetting.setLayout( new GridLayout( 2, false ) );			new Label( cSetting, SWT.NONE ).setText( LABEL_DECIMAL_PLACES );			cPlacesChoice = new Combo( cSetting, SWT.BORDER					| SWT.SINGLE					| SWT.V_SCROLL );			cPlacesChoice.setItems( new String[]{					"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$ //$NON-NLS-8$ //$NON-NLS-9$ //$NON-NLS-10$ //$NON-NLS-11$			} );			GridData data = new GridData( GridData.FILL_HORIZONTAL );			data.heightHint = 20;			cPlacesChoice.setLayoutData( data );			cPlacesChoice.addSelectionListener( mySelectionListener );			cPlacesChoice.addModifyListener( myModifyListener );			cPlacesChoice.select( 2 );			cUseSep = new Button( cSetting, SWT.CHECK );			cUseSep.setText( LABEL_USE_1000S_SEPARATOR );			data = new GridData( );			data.horizontalSpan = 2;			cUseSep.setLayoutData( data );			cUseSep.addSelectionListener( mySelectionListener );			new Label( cSetting, SWT.NONE ).setText( LABEL_CURRENCY_SYMBOL );			cSymbolChoice = new Combo( cSetting, SWT.DROP_DOWN | SWT.READ_ONLY );			cSymbolChoice.setLayoutData( new GridData( GridData.HORIZONTAL_ALIGN_FILL ) );			cSymbolChoice.setItems( symbols );			cSymbolChoice.addSelectionListener( new SelectionAdapter( ) {				public void widgetSelected( SelectionEvent e )				{					if ( cSymbolChoice.getSelectionIndex( ) == 0 )					{						cSymPosChoice.deselectAll( );						cSymPosChoice.setEnabled( false );					}					else					{						if ( !cSymPosChoice.isEnabled( ) )						{							cSymPosChoice.setEnabled( true );							cSymPosChoice.select( 1 );						}					}					updatePreview( );				}			} );			cSymbolChoice.select( 0 );			new Label( cSetting, SWT.NONE ).setText( LABEL_SYMBOL_POSITION );			cSymPosChoice = new Combo( cSetting, SWT.DROP_DOWN | SWT.READ_ONLY );			cSymPosChoice.setItems( new String[]{					SYMBOL_POSITION_AFTER, SYMBOL_POSITION_BEFORE			} );			cSymPosChoice.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );			cSymPosChoice.addSelectionListener( mySelectionListener );			cSymPosChoice.setEnabled( false );			Label label = new Label( cSetting, SWT.NONE );			label.setLayoutData( new GridData( GridData.VERTICAL_ALIGN_BEGINNING ) );			label.setText( LABEL_NEGATIVE_NUMBERS );			cNegNumChoice = new List( cSetting, SWT.SINGLE					| SWT.BORDER					| SWT.V_SCROLL );			cNegNumChoice.add( "-1234.56" ); //$NON-NLS-1$			cNegNumChoice.add( "(1234.56)" ); //$NON-NLS-1$			data = new GridData( GridData.FILL_HORIZONTAL );			cNegNumChoice.setLayoutData( data );			cNegNumChoice.addSelectionListener( mySelectionListener );			cNegNumChoice.select( 0 );			cPreviewLabel = createPreviewText( currencyPage );		}		return currencyPage;	}