Example #1
0
  private void updateLabels() {
    Object value = source.getPropertyValue(descriptor.getId());
    if (nameLayout != null && !nameLayout.isDisposed()) {
      nameLayout.setText(descriptor.getDisplayName());
      nameLayout.setStyle(
          new TextStyle(canvas.getFont(), canvas.getForeground(), null),
          0,
          nameLayout.getText().length());
    }
    ILabelDescriptor labelDescriptor = descriptor.getLabelDescriptor();
    ImageDescriptor image = labelDescriptor == null ? null : labelDescriptor.getImage(value);
    if (valueImage != null) {
      valueImage.dispose();
    }
    valueImage = image == null ? null : image.createImage(false, Display.getCurrent());

    ColorDescriptor color = labelDescriptor == null ? null : labelDescriptor.getForeground(value);
    if (valueColor != null) {
      valueColor.dispose();
    }
    valueColor = color == null ? null : color.createColor(Display.getCurrent());

    FontDescriptor font = labelDescriptor == null ? null : labelDescriptor.getFont(value);
    if (valueFont != null) {
      valueFont.dispose();
    }
    valueFont = font == null ? null : font.createFont(Display.getCurrent());

    if (valueLayout != null && !valueLayout.isDisposed()) {
      String valueText =
          labelDescriptor == null
              ? (value == null
                  ? "" //$NON-NLS-1$
                  : value.toString())
              : labelDescriptor.getText(value);
      if (valueText == null) valueText = ""; // $NON-NLS-1$
      valueLayout.setText(valueText);
      valueLayout.setStyle(
          new TextStyle(
              valueFont == null ? canvas.getFont() : valueFont,
              valueColor == null ? canvas.getForeground() : valueColor,
              null),
          0,
          valueText.length());
    }
    canvas.layout(true);
    canvas.redraw();
  }
Example #2
0
  /** Tests to ensure correct behavior of getColorDescriptor methods. */
  public void testDefaultColorDescriptor() {
    ColorDescriptor desc = getDefaultTheme().getColorRegistry().getColorDescriptor("somegarbage");
    assertNotNull(desc);
    Color color = desc.createColor(getWorkbench().getDisplay());
    assertNotNull(color);
    //		color.dispose();

    desc = getDefaultTheme().getColorRegistry().getColorDescriptor("somegarbage", null);
    assertNull(desc);

    desc =
        getDefaultTheme()
            .getColorRegistry()
            .getColorDescriptor("somegarbage", ColorDescriptor.createFrom(new RGB(0, 0, 0)));
    assertNotNull(desc);
    color = desc.createColor(getWorkbench().getDisplay());
    assertNotNull(color);
    //		color.dispose();
  }
  private Color getColor(Object element, boolean forground) {
    IWorkbenchAdapter2 adapter = getAdapter2(element);
    if (adapter == null) {
      return null;
    }
    RGB descriptor = forground ? adapter.getForeground(element) : adapter.getBackground(element);
    if (descriptor == null) {
      return null;
    }

    try {
      return resourceManager.createColor(ColorDescriptor.createFrom(descriptor));
    } catch (Exception e) {
      Log.log(e);
      return null;
    }
  }
 /**
  * Returns the color descriptor associated with the given symbolic color name. If this name does
  * not exist within the registry the supplied default value will be used.
  *
  * @param symbolicName
  * @param defaultValue
  * @return the color descriptor associated with the given symbolic color name or the default
  * @since 3.4
  */
 public ColorDescriptor getColorDescriptor(String symbolicName, ColorDescriptor defaultValue) {
   RGB rgb = getRGB(symbolicName);
   if (rgb == null) return defaultValue;
   return ColorDescriptor.createFrom(rgb);
 }
 private ColorDescriptor createEditorColorDescriptor(String key) {
   return ColorDescriptor.createFrom(
       PreferenceConverter.getColor(EditorsUI.getPreferenceStore(), key));
 }