|
Lines 16-21
Link Here
|
| 16 |
import org.eclipse.core.runtime.IBundleGroup; |
16 |
import org.eclipse.core.runtime.IBundleGroup; |
| 17 |
import org.eclipse.core.runtime.IBundleGroupProvider; |
17 |
import org.eclipse.core.runtime.IBundleGroupProvider; |
| 18 |
import org.eclipse.core.runtime.IProduct; |
18 |
import org.eclipse.core.runtime.IProduct; |
|
|
19 |
import org.eclipse.core.runtime.IStatus; |
| 19 |
import org.eclipse.core.runtime.Platform; |
20 |
import org.eclipse.core.runtime.Platform; |
| 20 |
import org.eclipse.jface.dialogs.IDialogConstants; |
21 |
import org.eclipse.jface.dialogs.IDialogConstants; |
| 21 |
import org.eclipse.jface.resource.ImageDescriptor; |
22 |
import org.eclipse.jface.resource.ImageDescriptor; |
|
Lines 45-52
Link Here
|
| 45 |
import org.eclipse.ui.internal.IWorkbenchHelpContextIds; |
46 |
import org.eclipse.ui.internal.IWorkbenchHelpContextIds; |
| 46 |
import org.eclipse.ui.internal.ProductProperties; |
47 |
import org.eclipse.ui.internal.ProductProperties; |
| 47 |
import org.eclipse.ui.internal.WorkbenchMessages; |
48 |
import org.eclipse.ui.internal.WorkbenchMessages; |
|
|
49 |
import org.eclipse.ui.internal.WorkbenchPlugin; |
| 48 |
import org.eclipse.ui.internal.about.AboutBundleGroupData; |
50 |
import org.eclipse.ui.internal.about.AboutBundleGroupData; |
| 49 |
import org.eclipse.ui.internal.about.AboutFeaturesButtonManager; |
51 |
import org.eclipse.ui.internal.about.AboutFeaturesButtonManager; |
|
|
52 |
import org.eclipse.ui.internal.misc.StatusUtil; |
| 53 |
import org.eclipse.ui.statushandling.StatusManager; |
| 50 |
|
54 |
|
| 51 |
/** |
55 |
/** |
| 52 |
* Displays information about the product. |
56 |
* Displays information about the product. |
|
Lines 209-215
Link Here
|
| 209 |
ImageDescriptor imageDescriptor = ProductProperties |
213 |
ImageDescriptor imageDescriptor = ProductProperties |
| 210 |
.getAboutImage(product); |
214 |
.getAboutImage(product); |
| 211 |
if (imageDescriptor != null) { |
215 |
if (imageDescriptor != null) { |
| 212 |
aboutImage = imageDescriptor.createImage(); |
216 |
try { |
|
|
217 |
aboutImage = imageDescriptor.createImage(); |
| 218 |
} catch(RuntimeException e) { |
| 219 |
String message = "Invalid about image for product " + product.getId(); //$NON-NLS-1$ |
| 220 |
IStatus status = StatusUtil.newStatus(WorkbenchPlugin.PI_WORKBENCH, message, e); |
| 221 |
StatusManager.getManager().handle(status); |
| 222 |
} |
| 213 |
} |
223 |
} |
| 214 |
|
224 |
|
| 215 |
// if the about image is small enough, then show the text |
225 |
// if the about image is small enough, then show the text |
|
Lines 369-376
Link Here
|
| 369 |
|
379 |
|
| 370 |
Button button = new Button(parent, SWT.FLAT | SWT.PUSH); |
380 |
Button button = new Button(parent, SWT.FLAT | SWT.PUSH); |
| 371 |
button.setData(info); |
381 |
button.setData(info); |
| 372 |
featureImage = desc.createImage(); |
382 |
|
| 373 |
images.add(featureImage); |
383 |
try { |
|
|
384 |
featureImage = desc.createImage(); |
| 385 |
} catch(RuntimeException e) { |
| 386 |
String message = "Invalid feature image for feature " + info.getId(); //$NON-NLS-1$ |
| 387 |
IStatus status = StatusUtil.newStatus(WorkbenchPlugin.PI_WORKBENCH, message, e); |
| 388 |
StatusManager.getManager().handle(status); |
| 389 |
} |
| 390 |
|
| 391 |
if (featureImage != null) { |
| 392 |
images.add(featureImage); |
| 393 |
} |
| 394 |
|
| 374 |
button.setImage(featureImage); |
395 |
button.setImage(featureImage); |
| 375 |
button.setToolTipText(info.getProviderName()); |
396 |
button.setToolTipText(info.getProviderName()); |
| 376 |
|
397 |
|