提交 5bc93abf 编写于 作者: S serge-rider

Image detection refactoring

上级 3c8bc43a
......@@ -253,7 +253,7 @@ public class AggregateColumnsPanel implements IResultSetPanel {
for (Map.Entry<DBDAttributeBinding, List<Object>> entry : attrValues.entrySet()) {
TreeItem attrItem = new TreeItem(aggregateTable, SWT.NONE);
attrItem.setText(entry.getKey().getName());
attrItem.setImage(DBeaverIcons.getImage(DBUtils.getDataIcon(entry.getKey())));
attrItem.setImage(DBeaverIcons.getImage(DBUtils.getTypeImage(entry.getKey())));
aggregateValues(attrItem, entry.getValue());
attrItem.setExpanded(true);
}
......
......@@ -170,7 +170,7 @@ public class MetaDataPanel implements IResultSetPanel {
@Nullable
@Override
protected DBPImage getObjectImage(DBDAttributeBinding item) {
return DBUtils.getTypeImage(item.getMetaAttribute());
return DBUtils.getObjectImage(item.getMetaAttribute());
}
@Override
......
......@@ -1302,7 +1302,7 @@ public class SpreadsheetPresentation extends AbstractPresentation implements IRe
Object cellValue = getCellValue(colElement, rowElement, false);
if (cellValue instanceof DBDContent || cellValue instanceof DBDReference) {
DBDAttributeBinding attr = (DBDAttributeBinding)(controller.isRecordMode() ? rowElement : colElement);
return DBUtils.getTypeImage(attr.getMetaAttribute());
return DBUtils.getObjectImage(attr.getMetaAttribute());
} else {
return null;
}
......@@ -1381,7 +1381,7 @@ public class SpreadsheetPresentation extends AbstractPresentation implements IRe
public Image getImage(Object element)
{
if (element instanceof DBDAttributeBinding/* && (!isRecordMode() || !model.isDynamicMetadata())*/) {
return DBeaverIcons.getImage(DBUtils.getTypeImage(((DBDAttributeBinding) element).getMetaAttribute()));
return DBeaverIcons.getImage(DBUtils.getObjectImage(((DBDAttributeBinding) element).getMetaAttribute()));
}
return null;
}
......
......@@ -37,7 +37,7 @@ public class DB2ValueHandlerProvider implements DBDValueHandlerProvider {
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Override
......
......@@ -35,7 +35,7 @@ public class MySQLValueHandlerProvider implements DBDValueHandlerProvider {
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Nullable
......
......@@ -34,7 +34,7 @@ public class OracleValueHandlerProvider implements DBDValueHandlerProvider {
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Override
......
......@@ -36,7 +36,7 @@ public class PhoenixValueHandlerProvider implements DBDValueHandlerProvider {
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Nullable
......
......@@ -37,7 +37,7 @@ public class PostgreValueHandlerProvider implements DBDValueHandlerProvider {
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Nullable
......
......@@ -1253,10 +1253,16 @@ public final class DBUtils {
}
@NotNull
public static DBIcon getDataIcon(@NotNull DBSTypedObject type)
public static DBPImage getTypeImage(@NotNull DBSTypedObject typedObject)
{
String typeName = type.getTypeName();
switch (type.getDataKind()) {
if (typedObject instanceof DBSTypedObjectEx) {
DBSDataType dataType = ((DBSTypedObjectEx) typedObject).getDataType();
if (dataType instanceof DBPImageProvider) {
return ((DBPImageProvider) dataType).getObjectImage();
}
}
String typeName = typedObject.getTypeName();
switch (typedObject.getDataKind()) {
case BOOLEAN:
return DBIcon.TYPE_BOOLEAN;
case STRING:
......@@ -1297,14 +1303,19 @@ public final class DBUtils {
}
@NotNull
public static DBPImage getTypeImage(DBSTypedObject column)
public static DBPImage getObjectImage(DBPObject object)
{
DBPImage image = null;
if (column instanceof DBPImageProvider) {
image = ((DBPImageProvider)column).getObjectImage();
if (object instanceof DBPImageProvider) {
image = ((DBPImageProvider)object).getObjectImage();
}
if (image == null) {
image = DBIcon.TREE_COLUMN;
if (object instanceof DBSTypedObject) {
image = getTypeImage((DBSTypedObject) object);
}
if (image == null) {
image = DBIcon.TYPE_OBJECT;
}
}
return image;
}
......
......@@ -154,6 +154,6 @@ public class DBDAttributeBindingElement extends DBDAttributeBindingNested implem
if (collection.getComponentType() instanceof DBPImageProvider) {
return ((DBPImageProvider) collection.getComponentType()).getObjectImage();
}
return DBUtils.getDataIcon(collection.getComponentType());
return DBUtils.getTypeImage(collection.getComponentType());
}
}
......@@ -145,7 +145,7 @@ public class DBDAttributeBindingType extends DBDAttributeBindingNested implement
if (attribute instanceof DBPImageProvider) {
return ((DBPImageProvider) attribute).getObjectImage();
}
return DBUtils.getDataIcon(this);
return DBUtils.getTypeImage(this);
}
@Override
......
......@@ -128,7 +128,7 @@ public class AttributeMetaDataProxy implements DBCAttributeMetaData, DBPImagePro
if (attribute instanceof DBPImageProvider) {
return ((DBPImageProvider) attribute).getObjectImage();
}
return DBUtils.getDataIcon(this);
return DBUtils.getTypeImage(this);
}
@Override
......
......@@ -24,7 +24,6 @@ import org.jkiss.dbeaver.model.DBUtils;
import org.jkiss.dbeaver.model.data.DBDPreferences;
import org.jkiss.dbeaver.model.data.DBDValueHandler;
import org.jkiss.dbeaver.model.data.DBDValueHandlerProvider;
import org.jkiss.dbeaver.model.impl.jdbc.JDBCUtils;
import org.jkiss.dbeaver.model.struct.DBSTypedObject;
/**
......@@ -35,7 +34,7 @@ public class JDBCStandardValueHandlerProvider implements DBDValueHandlerProvider
@Override
public DBPImage getTypeImage(DBSTypedObject type)
{
return DBUtils.getDataIcon(type);
return DBUtils.getTypeImage(type);
}
@Override
......
......@@ -304,7 +304,7 @@ public class JDBCColumnMetaData implements DBCAttributeMetaData, DBPImageProvide
@Nullable
@Override
public DBPImage getObjectImage() {
return DBUtils.getDataIcon(this);
return DBUtils.getTypeImage(this);
}
@Override
......
......@@ -48,7 +48,7 @@ public abstract class JDBCAttribute extends AbstractAttribute implements DBSObje
@Override
public DBPImage getObjectImage()
{
DBPImage columnImage = DBUtils.getDataIcon(this);
DBPImage columnImage = DBUtils.getTypeImage(this);
JDBCColumnKeyType keyType = getKeyType();
if (keyType != null) {
columnImage = getOverlayImage(columnImage, keyType);
......
......@@ -166,6 +166,6 @@ public class LocalResultSetColumn implements DBCAttributeMetaData, DBPImageProvi
@Nullable
@Override
public DBPImage getObjectImage() {
return DBUtils.getDataIcon(this);
return DBUtils.getTypeImage(this);
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册