currentImageSaveButton = createButton( currentImageSaveContainer, Messages.getString( "ImageDialog.Save" ) ); //$NON-NLS-1$
currentImageSaveButton.addSelectionListener( new SelectionAdapter()
{
public void widgetSelected( SelectionEvent event )
{
FileDialog fileDialog = new FileDialog( ImageDialog.this.getShell(), SWT.SAVE );
fileDialog.setText( Messages.getString( "ImageDialog.SaveImage" ) ); //$NON-NLS-1$
fileDialog.setFilterExtensions( new String[]
{ "*.jpg" } ); //$NON-NLS-1$
String returnedFileName = fileDialog.open();
if ( returnedFileName != null )
{
try
{
File file = new File( returnedFileName );
FileOutputStream out = new FileOutputStream( file );
out.write( currentImageRawData );
out.flush();
out.close();
}
catch ( FileNotFoundException e )
{
ConnectionUIPlugin.getDefault().getExceptionHandler().handleException(
new Status( IStatus.ERROR, ValueEditorsConstants.PLUGIN_ID, IStatus.ERROR, Messages
.getString( "ImageDialog.CantWriteFile" ), e ) ); //$NON-NLS-1$
}
catch ( IOException e )
{
ConnectionUIPlugin.getDefault().getExceptionHandler().handleException(
new Status( IStatus.ERROR, ValueEditorsConstants.PLUGIN_ID, IStatus.ERROR, Messages
.getString( "ImageDialog.CantWriteFile" ), e ) ); //$NON-NLS-1$
}
}
}
} );
currentTab = new TabItem( tabFolder, SWT.NONE );
currentTab.setText( Messages.getString( "ImageDialog.CurrentImage" ) ); //$NON-NLS-1$
currentTab.setControl( currentImageContainer );
}
// new image
newImageContainer = new Composite( tabFolder, SWT.NONE );
GridLayout newLayout = new GridLayout( 1, false );
newLayout.marginHeight = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_MARGIN );
newLayout.marginWidth = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_MARGIN );
newLayout.verticalSpacing = convertVerticalDLUsToPixels( IDialogConstants.VERTICAL_SPACING );
newLayout.horizontalSpacing = convertHorizontalDLUsToPixels( IDialogConstants.HORIZONTAL_SPACING );
newImageContainer.setLayout( newLayout );
newImageContainer.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
newImageLabel = createImageLabel( newImageContainer );
Composite newImageInfoContainer = createImageInfoContainer( newImageContainer );
newImageTypeText = createImageInfo( newImageInfoContainer, Messages.getString( "ImageDialog.ImageType" ) ); //$NON-NLS-1$
newImageSizeText = createImageInfo( newImageInfoContainer, Messages.getString( "ImageDialog.ImageSize" ) ); //$NON-NLS-1$
newImageWidthText = createImageInfo( newImageInfoContainer, Messages.getString( "ImageDialog.ImageWidth" ) ); //$NON-NLS-1$
newImageHeightText = createImageInfo( newImageInfoContainer, Messages.getString( "ImageDialog.ImageHeight" ) ); //$NON-NLS-1$
Composite newImageSelectContainer = createImageInfoContainer( newImageContainer );
newImageFilenameText = new Text( newImageSelectContainer, SWT.SINGLE | SWT.BORDER );
GridData gd = new GridData( GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL );
newImageFilenameText.setLayoutData( gd );
newImageFilenameText.addModifyListener( new ModifyListener()
{
public void modifyText( ModifyEvent e )
{
updateNewImageGroup();
}
} );
newImageBrowseButton = createButton( newImageSelectContainer, Messages.getString( "ImageDialog.Browse" ) ); //$NON-NLS-1$
newImageBrowseButton.addSelectionListener( new SelectionAdapter()
{
public void widgetSelected( SelectionEvent event )
{
FileDialog fileDialog = new FileDialog( ImageDialog.this.getShell(), SWT.OPEN );
fileDialog.setText( Messages.getString( "ImageDialog.SelectImage" ) ); //$NON-NLS-1$
// fileDialog.setFilterExtensions(IMAGE_FILE_EXTENSIONS);
fileDialog.setFileName( new File( newImageFilenameText.getText() ).getName() );
fileDialog.setFilterPath( new File( newImageFilenameText.getText() ).getParent() );
String returnedFileName = fileDialog.open();
if ( returnedFileName != null )
{
newImageFilenameText.setText( returnedFileName );
}
}