}
return labelProvider;
}
protected static void customizeLabelProvider(PropertiesBasedLabelProvider provider) {
LabelColumnInfo columnInfo = provider.getColumnInfo(IDebugVMConstants.COLUMN_ID__VALUE);
LabelAttribute[] labelAttributes = columnInfo.getLabelAttributes();
int preferredIndex = -1;
// Find the best FormattedValueLabelText to replace (the one that would print "details" format)
// this should the one at index 1, according to super.createLabelProvider() in
// org.eclipse.cdt.dsf.ui_2.4.0.201402142303
for (int i = 0; i < labelAttributes.length; i++) {
LabelAttribute labelAttribute = labelAttributes[i];
if(labelAttribute instanceof FormattedValueLabelText) {
preferredIndex = i;
}
if(labelAttribute instanceof ErrorLabelText) {
labelAttributes[i] = new ErrorLabelText_Extension();
}
}
if(preferredIndex != -1) {
labelAttributes[preferredIndex] = new FormattedValueLabelText_Override();
} else {
LangUIPlugin.logError("Internal Error: " +
" Failed to replace CDT's FormattedValueLabelText for the Variables view");
}
provider.setColumnInfo(IDebugVMConstants.COLUMN_ID__VALUE, new LabelColumnInfo(labelAttributes));
}