Java Code Examples for org.eclipse.swt.SWT#SHADOW_IN

The following examples show how to use org.eclipse.swt.SWT#SHADOW_IN . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: MonthCalendarableItemControl.java    From nebula with Eclipse Public License 2.0 6 votes vote down vote up
/**
 * Paint the Label's border.
 */
private void paintBorder(GC gc, Rectangle r) {
	Display disp= getDisplay();

	Color c1 = null;
	Color c2 = null;
	
	int style = getStyle();
	if ((style & SWT.SHADOW_IN) != 0) {
		c1 = disp.getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW);
		c2 = disp.getSystemColor(SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW);
	}
	if ((style & SWT.SHADOW_OUT) != 0) {		
		c1 = disp.getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW);
		c2 = disp.getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW);
	}
		
	if (c1 != null && c2 != null) {
		gc.setLineWidth(1);
		drawBevelRect(gc, r.x, r.y, r.width-1, r.height-1, c1, c2);
	}
}
 
Example 2
Source File: ThemePreferencePage.java    From APICloud-Studio with GNU General Public License v3.0 6 votes vote down vote up
@Override
protected Control createContents(Composite parent)
{
	Composite composite = new Composite(parent, SWT.NONE);
	composite.setLayout(new GridLayout());
	composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

	Group group = new Group(composite, SWT.SHADOW_IN);
	group.setLayout(new GridLayout());
	group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

	createThemeListControls(group);
	createGlobalColorControls(group);
	createTokenEditTable(group);
	createFontArea(composite);
	createInvasivePrefArea(composite);

	setTheme(getThemeManager().getCurrentTheme().getName());
	return composite;
}
 
Example 3
Source File: UserControlDialog.java    From gama with GNU General Public License v3.0 6 votes vote down vote up
@SuppressWarnings ({ "rawtypes", "unchecked" })
@Override
protected Control createDetailsArea(final Composite parent) {
	final Composite compo = new Composite(parent, SWT.BORDER | SWT.SHADOW_IN);
	compo.setBackground(WorkbenchHelper.getDisplay().getSystemColor(SWT.COLOR_GRAY));
	final GridLayout layout = new GridLayout(2, false);
	layout.verticalSpacing = 0;
	compo.setLayout(layout);
	final IAgent agent = scope.getAgent();
	final AgentAttributesEditorsList editors = new AgentAttributesEditorsList();
	editors.add(new ArrayList<IParameter>(agent.getSpecies().getVars()), agent);
	final Map<String, IParameterEditor<?>> parameters = editors.getCategories().get(agent);
	if (parameters != null) {
		final List<AbstractEditor> list = new ArrayList(parameters.values());
		Collections.sort(list);
		for (final AbstractEditor gpParam : list) {
			gpParam.createComposite(compo);
		}
	}
	return compo;

}
 
Example 4
Source File: CustomSeparator.java    From http4e with Apache License 2.0 6 votes vote down vote up
public CustomSeparator( Composite parent, int style) {
   super(parent, style = checkStyle(style));

   this.style = style;

   if ((style & SWT.SHADOW_IN) != 0 || (style & SWT.SHADOW_OUT) != 0)
      lineSize = 2;
   else
      lineSize = 1;

   addPaintListener(new PaintListener() {
      public void paintControl( PaintEvent event){
         onPaint(event);
      }
   });
}
 
Example 5
Source File: ImageLabel.java    From birt with Eclipse Public License 1.0 6 votes vote down vote up
/**
 * Paint the Label's border.
 */
private void paintBorder( GC gc, Rectangle r )
{
	Display disp = getDisplay( );

	Color c1 = null;
	Color c2 = null;

	int style = getStyle( );
	if ( ( style & SWT.SHADOW_IN ) != 0 )
	{
		c1 = disp.getSystemColor( SWT.COLOR_WIDGET_NORMAL_SHADOW );
		c2 = disp.getSystemColor( SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW );
	}
	if ( ( style & SWT.SHADOW_OUT ) != 0 )
	{
		c1 = disp.getSystemColor( SWT.COLOR_WIDGET_LIGHT_SHADOW );
		c2 = disp.getSystemColor( SWT.COLOR_WIDGET_NORMAL_SHADOW );
	}

	if ( c1 != null && c2 != null )
	{
		gc.setLineWidth( 1 );
		drawBevelRect( gc, r.x, r.y, r.width - 1, r.height - 1, c1, c2 );
	}
}
 
Example 6
Source File: RefactoringPreferencePage.java    From xtext-eclipse with Eclipse Public License 2.0 6 votes vote down vote up
@Override
protected void createFieldEditors() {
	Composite parent = getFieldEditorParent();
	Group refactoringGroup = new Group(parent, SWT.SHADOW_IN);
	refactoringGroup.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));

	refactoringGroup.setText("Refactoring");
	GridLayout layout = new GridLayout(1, false);
	refactoringGroup.setLayout(layout);
	Composite composite = new Composite(refactoringGroup, SWT.NONE);
	addField(new BooleanFieldEditor(RefactoringPreferences.SAVE_ALL_BEFORE_REFACTORING,
			"Save all modified resources automatically prior to refactoring", composite));
	addField(new BooleanFieldEditor(RefactoringPreferences.USE_INLINE_REFACTORING,
			"Rename in editor without dialog if possible", composite));
	refactoringGroup.pack();
}
 
Example 7
Source File: AccordionLabel.java    From birt with Eclipse Public License 1.0 5 votes vote down vote up
/**
 * Check the style bits to ensure that no invalid styles are applied.
 */
private static int checkStyle( int style )
{
	if ( ( style & SWT.BORDER ) != 0 )
		style |= SWT.SHADOW_IN;
	int mask = SWT.SHADOW_IN
			| SWT.SHADOW_OUT
			| SWT.SHADOW_NONE
			| SWT.LEFT_TO_RIGHT
			| SWT.RIGHT_TO_LEFT;
	style = style & mask;
	return style |= SWT.NO_FOCUS | SWT.DOUBLE_BUFFERED;
}
 
Example 8
Source File: MonthCalendarableItemControl.java    From nebula with Eclipse Public License 2.0 5 votes vote down vote up
/**
 * Check the style bits to ensure that no invalid styles are applied.
 */
private static int checkStyle (int style) {
	if ((style & SWT.BORDER) != 0) style |= SWT.SHADOW_IN;
	int mask = SWT.SHADOW_IN | SWT.SHADOW_OUT | SWT.SHADOW_NONE | SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT;
	style = style & mask;
	return style |= SWT.NO_FOCUS | SWT.DOUBLE_BUFFERED;
}
 
Example 9
Source File: Summarize.java    From Rel with Apache License 2.0 5 votes vote down vote up
protected void buildPerOrByPanel(Composite container) {
	container.setLayout(new RowLayout(SWT.VERTICAL));

	Group perOrByGroup = new Group(container, SWT.SHADOW_IN);
	perOrByGroup.setLayout(new RowLayout(SWT.VERTICAL));

	Button btnPer = new Button(perOrByGroup, SWT.RADIO);
	btnPer.setText("PER");
	btnPer.setSelection(perArgument.isVisible());
	btnPer.addListener(SWT.Selection, e -> {
		buildPer(container);
		controlPanel.getShell().pack();
	});

	Button btnBy = new Button(perOrByGroup, SWT.RADIO);
	btnBy.setText("BY");
	btnBy.setSelection(!perArgument.isVisible());
	btnBy.addListener(SWT.Selection, e -> {
		buildBy(container);
		controlPanel.getShell().pack();
	});

	if (perArgument.isVisible())
		buildPer(container);
	else
		buildBy(container);
}
 
Example 10
Source File: NewTxtUMLModelWizardPage.java    From txtUML with Eclipse Public License 1.0 5 votes vote down vote up
private void createFileTypeChoice(Composite composite, int cols2) {
	Group group1 = new Group(composite, SWT.SHADOW_IN);
	group1.setText("Model syntax");
	group1.setLayout(new RowLayout(SWT.VERTICAL));
	group1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 3, 1));
	xtxt = new Button(group1, SWT.RADIO);
	xtxt.setText("XtxtUML (custom syntax)");
	xtxt.setSelection(true);
	txt = new Button(group1, SWT.RADIO);
	txt.setText("JtxtUML (Java syntax)");
}
 
Example 11
Source File: SelectJReFrameworkerProjectPage.java    From JReFrameworker with MIT License 5 votes vote down vote up
@Override
public void createControl(Composite parent) {
	Composite container = new Composite(parent, SWT.NULL);
	setControl(container);
	container.setLayout(new GridLayout(1, false));
	
	Group projectGroup = new Group(container, SWT.SHADOW_IN);
	projectGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
	projectGroup.setText("JReFrameworker Projects");
	projectGroup.setLayout(new RowLayout(SWT.VERTICAL));
	
	Label errorLabel = new Label(container, SWT.NONE);
    errorLabel.setForeground(SWTResourceManager.getColor(SWT.COLOR_DARK_RED));
    errorLabel.setFont(SWTResourceManager.getFont(".SF NS Text", 11, SWT.BOLD));
    errorLabel.setLayoutData(new GridData(SWT.CENTER, SWT.BOTTOM, true, true, 1, 1));
	
	final LinkedList<IJavaProject> projects = JReFrameworker.getJReFrameworkerProjects();
	if(projects.isEmpty()){
		errorLabel.setText("No JReFrameworker Projects in Workspace!");
	} else {
		boolean first = true;
		for(final IJavaProject project : projects){
			Button projectButton = new Button(projectGroup, SWT.RADIO);
			projectButton.setText(project.getProject().getName());
			if(first){
				jProject = project;
				projectButton.setSelection(true);
				setPageComplete(true);
				first = false;
			}
			projectButton.addSelectionListener(new SelectionAdapter() {
				@Override
				public void widgetSelected(SelectionEvent e) {
					jProject = project;
				}
			});
		}
	}
}
 
Example 12
Source File: ImageLabel.java    From birt with Eclipse Public License 1.0 5 votes vote down vote up
/**
 * Check the style bits to ensure that no invalid styles are applied.
 */
private static int checkStyle( int style )
{
	if ( ( style & SWT.BORDER ) != 0 )
		style |= SWT.SHADOW_IN;
	int mask = SWT.SHADOW_IN
			| SWT.SHADOW_OUT
			| SWT.SHADOW_NONE
			| SWT.LEFT_TO_RIGHT
			| SWT.RIGHT_TO_LEFT;
	style = style & mask;
	style |= SWT.NO_FOCUS;
	if ( ( style & ( SWT.CENTER | SWT.RIGHT ) ) == 0 )
		style |= SWT.LEFT;
	// TEMPORARY CODE
	/*
	 * The default background on carbon and some GTK themes is not a solid
	 * color but a texture. To show the correct default background, we must
	 * allow the operating system to draw it and therefore, we can not use
	 * the NO_BACKGROUND style. The NO_BACKGROUND style is not required on
	 * platforms that use double buffering which is true in both of these
	 * cases.
	 */
	String platform = SWT.getPlatform( );
	if ( "carbon".equals( platform ) || "gtk".equals( platform ) )return style; //$NON-NLS-1$ //$NON-NLS-2$
	return style | SWT.NO_BACKGROUND;
}
 
Example 13
Source File: BuilderConfigDialog.java    From texlipse with Eclipse Public License 1.0 5 votes vote down vote up
/**
 * Adds the program arguments text field to the dialog.
 * @param parent parent component
 */
private void addFormatsField(Composite parent) {

    Composite leftPart = new Composite(parent, SWT.NULL);
    leftPart.setLayoutData(new GridData());
    GridLayout llay = new GridLayout();
    llay.numColumns = 2;
    leftPart.setLayout(llay);
    
    Label label = new Label(leftPart, SWT.LEFT);
    label.setText(TexlipsePlugin.getResourceString("preferenceBuilderInputFormatLabel"));
    label.setLayoutData(new GridData());
    
    Group inputGroup = new Group(leftPart, SWT.SHADOW_IN);
    inputGroup.setLayoutData(new GridData());
    inputGroup.setLayout(new GridLayout());
    
    Label inputLabel = new Label(inputGroup, SWT.LEFT);
    inputLabel.setText("." + builder.getInputFormat());
    inputLabel.setLayoutData(new GridData());
    
    Composite rightPart = new Composite(parent, SWT.NULL);
    rightPart.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    GridLayout rlay = new GridLayout();
    rlay.numColumns = 2;
    rightPart.setLayout(rlay);
    
    Label label2 = new Label(rightPart, SWT.LEFT);
    label2.setText(TexlipsePlugin.getResourceString("preferenceBuilderOutputFormatLabel"));
    label2.setLayoutData(new GridData());
    
    Group outputGroup = new Group(rightPart, SWT.SHADOW_IN);
    outputGroup.setLayoutData(new GridData());
    outputGroup.setLayout(new GridLayout());
    
    Label outputLabel = new Label(outputGroup, SWT.LEFT);
    outputLabel.setText("." + builder.getOutputFormat());
    outputLabel.setLayoutData(new GridData());
}
 
Example 14
Source File: MainShell.java    From RepDev with GNU General Public License v3.0 5 votes vote down vote up
public void createStatusBar() {
	statusBar = new Composite(shell, SWT.BORDER | SWT.SHADOW_IN);

	// Layout Stuff
	FormLayout slayout = new FormLayout();

	statusBar.setLayout(slayout);
	FormData statusBarData = new FormData();
	statusBarData.left = new FormAttachment(0);
	statusBarData.right = new FormAttachment(100);
	statusBarData.bottom = new FormAttachment(100);
	statusBarData.height = 16;
	statusBar.setLayoutData(statusBarData);

	final Label verLabel = new Label(statusBar, SWT.NONE);
	verLabel.setText("RepDev " + RepDevMain.VERSION + " ");
	verLabel.setSize(100, 16);
	FormData data = new FormData();
	data.left = new FormAttachment(0);
	verLabel.setLayoutData(data);

	Label sep1 = new Label(statusBar, SWT.SEPARATOR);
	data = new FormData();
	data.left = new FormAttachment(verLabel);
	sep1.setLayoutData(data);

	lineColumn = new Label(statusBar, SWT.NONE);
	data = new FormData();
	data.left = new FormAttachment(sep1);
	lineColumn.setLayoutData(data);

	setLineColumn();
}
 
Example 15
Source File: LiveSashForm.java    From http4e with Apache License 2.0 5 votes vote down vote up
private void drawBorderAround(Control c, GC gc)
{
  int sh = getChildBorder(c);
  if(sh == SWT.SHADOW_NONE) return;

  Display disp = getDisplay();
  Color shadow = disp.getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW);
  Color highlight = disp.getSystemColor(SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW);
  if(shadow == null || highlight == null) return;
  Rectangle r = c.getBounds();

  switch(sh)
  {
    case SWT.SHADOW_IN:
      drawBevelRect(gc, r.x-1, r.y-1, r.width+1, r.height+1, shadow, highlight);
      break;

    case SWT.SHADOW_OUT:
      drawBevelRect(gc, r.x-1, r.y-1, r.width+1, r.height+1, highlight, shadow);
      break;

    case SWT.SHADOW_ETCHED_IN:
      drawBevelRect(gc, r.x-1, r.y-1, r.width+1, r.height+1, highlight, shadow);
      drawBevelRect(gc, r.x-2, r.y-2, r.width+3, r.height+3, shadow, highlight);
      break;

    case SWT.SHADOW_ETCHED_OUT:
      drawBevelRect(gc, r.x-1, r.y-1, r.width+1, r.height+1, shadow, highlight);
      drawBevelRect(gc, r.x-2, r.y-2, r.width+3, r.height+3, highlight, shadow);
      break;
  }
}
 
Example 16
Source File: ComponentStatusLabel.java    From arx with Apache License 2.0 5 votes vote down vote up
/**
 * Checkstyle method.
 *
 * @param style
 * @return
 */
private static int checkStyle(int style) {
    if ((style & SWT.BORDER) != 0) style |= SWT.SHADOW_IN;
    int mask = SWT.SHADOW_IN | SWT.SHADOW_OUT | SWT.SHADOW_NONE | SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT;
    style = style & mask;
    return style |= SWT.NO_FOCUS | SWT.DOUBLE_BUFFERED;
}
 
Example 17
Source File: AccordionSubComposite.java    From birt with Eclipse Public License 1.0 5 votes vote down vote up
void onPaint( PaintEvent event )
{
	Rectangle rect = getClientArea( );
	if ( rect.width == 0 || rect.height == 0 )
		return;

	GC gc = event.gc;
	
	Rectangle r = getClientArea( );

	Display disp = getDisplay( );

	Color c1 = null;
	Color c2 = null;

	int style = getStyle( );
	if ( ( style & SWT.SHADOW_IN ) != 0 )
	{
		c1 = disp.getSystemColor( SWT.COLOR_WIDGET_NORMAL_SHADOW );
		c2 = disp.getSystemColor( SWT.COLOR_WIDGET_HIGHLIGHT_SHADOW );
	}
	if ( ( style & SWT.SHADOW_OUT ) != 0 )
	{
		c1 = disp.getSystemColor( SWT.COLOR_WIDGET_LIGHT_SHADOW );
		c2 = disp.getSystemColor( SWT.COLOR_WIDGET_NORMAL_SHADOW );
	}

	if ( c1 != null && c2 != null )
	{
		gc.setLineWidth( 1 );
		drawBevelRect( gc, r.x, r.y, r.width - 1, r.height - 1, c1, c2 );
	}
	
}
 
Example 18
Source File: ViewerConfigDialog.java    From texlipse with Eclipse Public License 1.0 4 votes vote down vote up
public DDEGroup(Composite parent, String name, String toolTip) {
	super(parent, SWT.NONE);
	
	setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    ((GridData)getLayoutData()).horizontalSpan = 2;
    setLayout( new GridLayout());
    	    
 		    Group group = new Group(this, SWT.SHADOW_IN);
       group.setText(name);
       group.setToolTipText(toolTip);
 		    group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
       group.setLayout(new GridLayout(4, false));

	Label ddeCommandLabel = new Label(group, SWT.LEFT);
	ddeCommandLabel.setText(TexlipsePlugin.getResourceString("preferenceViewerDDECommandLabel"));
	ddeCommandLabel.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDECommandTooltip"));
	ddeCommandLabel.setLayoutData(new GridData());

	command = new Text(group, SWT.SINGLE | SWT.BORDER);
	command.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDECommandTooltip"));
	command.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
	((GridData) command.getLayoutData()).horizontalSpan = 3;

	Label ddeServerLabel = new Label(group, SWT.LEFT);
	ddeServerLabel.setText(TexlipsePlugin.getResourceString("preferenceViewerDDEServerLabel"));
	ddeServerLabel.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDEServerTooltip"));
	ddeServerLabel.setLayoutData(new GridData());

	server = new Text(group, SWT.SINGLE | SWT.BORDER);
	server.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDEServerTooltip"));
	server.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

	Label ddeTopicLabel = new Label(group, SWT.LEFT);
	ddeTopicLabel.setText(TexlipsePlugin.getResourceString("preferenceViewerDDETopicLabel"));
	ddeTopicLabel.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDETopicTooltip"));
	ddeTopicLabel.setLayoutData(new GridData());

	topic = new Text(group, SWT.SINGLE | SWT.BORDER);
	topic.setToolTipText(TexlipsePlugin.getResourceString("preferenceViewerDDETopicTooltip"));
	topic.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
	
	setVisible(false);
}
 
Example 19
Source File: ImageLabel.java    From birt with Eclipse Public License 1.0 4 votes vote down vote up
void onPaint( PaintEvent event )
{
	Rectangle rect = getClientArea( );
	if ( rect.width == 0 || rect.height == 0 )
		return;

	Image img = image;
	Point extent = getTotalSize( img );

	GC gc = event.gc;

	// determine horizontal position
	int x = rect.x + hIndent;
	if ( align == SWT.CENTER )
	{
		x = ( rect.width - extent.x ) / 2;
	}
	if ( align == SWT.RIGHT )
	{
		x = rect.width - extent.x - hIndent;
	}

	if ( this.backgroundColor != null )
	{
		Color oldBackground = gc.getBackground( );
		gc.setBackground( backgroundColor );
		gc.fillRectangle( 0, 0, rect.width, rect.height );
		gc.setBackground( oldBackground );
	}
	else
	{
		if ( ( getStyle( ) & SWT.NO_BACKGROUND ) != 0 )
		{
			gc.setBackground( getBackground( ) );
			gc.fillRectangle( rect );
		}
	}

	// draw border
	int style = getStyle( );
	if ( ( style & SWT.SHADOW_IN ) != 0 || ( style & SWT.SHADOW_OUT ) != 0 )
	{
		paintBorder( gc, rect );
	}
	// draw the image
	if ( img != null )
	{
		Rectangle imageRect = img.getBounds( );
		if ( this.isFocusControl( ) )
		{

			ImageData data = img.getImageData( );
			PaletteData palette = new PaletteData( new RGB[]{
					this.getDisplay( )
							.getSystemColor( SWT.COLOR_WHITE )
							.getRGB( ),
					this.getDisplay( )
							.getSystemColor( SWT.COLOR_LIST_SELECTION )
							.getRGB( ),
			} );
			ImageData sourceData = new ImageData( data.width,
					data.height,
					1,
					palette );
			for ( int i = 0; i < data.width; i++ )
			{
				for ( int j = 0; j < data.height; j++ )
				{
					if ( data.getPixel( i, j ) != data.transparentPixel )
						sourceData.setPixel( i, j, 1 );
				}
			}

			Image highlightImage = new Image( this.getDisplay( ),
					sourceData );

			gc.drawImage( highlightImage,
					0,
					0,
					imageRect.width,
					imageRect.height,
					x,
					( rect.height - imageRect.height ) / 2,
					rect.width - 10,
					imageRect.height );
			highlightImage.dispose( );
		}
		else
			gc.drawImage( img,
					0,
					0,
					imageRect.width,
					imageRect.height,
					x,
					( rect.height - imageRect.height ) / 2,
					rect.width - 10,
					imageRect.height );
		x += imageRect.width;
	}
}
 
Example 20
Source File: TextComposite.java    From neoscada with Eclipse Public License 1.0 4 votes vote down vote up
public TextComposite ( final Composite parent, final int style, final DataItemDescriptor descriptor, final String format, final String decimal, final boolean isText, final String attribute, int width, int height, final boolean date, final int textHeight, final String textMap, final String hdConnectionId, final String hdItemId, final String queryString )
{
    super ( parent, style, format, decimal, isText, attribute );

    this.date = date;

    this.map = stringToMap ( textMap );

    if ( width == 0 )
    {
        width = 60;
    }
    if ( height == 0 )
    {
        height = SWT.DEFAULT;
    }

    final GridLayout layout = new GridLayout ( 3, false );

    setLayout ( layout );

    this.controlImage = new ControlImage ( this, this.registrationManager );
    Helper.createTrendButton ( this.controlImage, hdConnectionId, hdItemId, queryString );

    this.blockImage = new BlockControlImage ( this.controlImage, SWT.NONE, this.registrationManager );

    this.dataText = new CLabel ( this, SWT.MULTI | SWT.WRAP | SWT.RIGHT | SWT.SHADOW_IN );
    if ( textHeight != 0 )
    {
        // FIXME: use parent font
        this.font = new Font ( getDisplay (), new FontData ( "Arial", textHeight, 0 ) ); //$NON-NLS-1$
        this.dataText.setFont ( this.font );
    }
    final GridData data = new GridData ( SWT.FILL, SWT.CENTER, false, false );
    data.widthHint = data.minimumWidth = width;
    data.heightHint = data.minimumHeight = height;

    this.dataText.setLayoutData ( data );
    this.dataText.setEnabled ( true );
    this.dataText.setEllipsis ( "…" );
    this.dataText.setEllipsisAlignment ( SWT.END );

    this.dataText.setText ( "" ); //$NON-NLS-1$
    final DescriptorLabel label = new DescriptorLabel ( this, SWT.NONE, format, descriptor );
    final GridData labelData = new GridData ( SWT.FILL, SWT.CENTER, true, false );
    labelData.minimumWidth = 100;
    label.setLayoutData ( labelData );

    if ( descriptor != null )
    {
        this.controlImage.setDetailItem ( descriptor.asItem () );
        this.blockImage.setBlockItem ( descriptor.asItem () );
        this.registrationManager.registerItem ( "value", descriptor.getItemId (), descriptor.getConnectionInformation (), false, false ); //$NON-NLS-1$
    }
}