diff --git a/CHANGELOG.md b/CHANGELOG.md
index b518b2bf0e..dcc02d43b2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
+- Added custom icon for [CatalogueItem] that represent transforms on the underlying column (https://github.com/HicServices/RDMP/issues/818)
+
### Fixed
### Changed
diff --git a/Rdmp.Core/Icons/CatalogueItemTransform.png b/Rdmp.Core/Icons/CatalogueItemTransform.png
new file mode 100644
index 0000000000..9b08913e69
Binary files /dev/null and b/Rdmp.Core/Icons/CatalogueItemTransform.png differ
diff --git a/Rdmp.Core/Icons/IconProvision/CatalogueIcons.Designer.cs b/Rdmp.Core/Icons/IconProvision/CatalogueIcons.Designer.cs
index f9d35d0876..70bd1e3428 100644
--- a/Rdmp.Core/Icons/IconProvision/CatalogueIcons.Designer.cs
+++ b/Rdmp.Core/Icons/IconProvision/CatalogueIcons.Designer.cs
@@ -489,7 +489,19 @@ public static System.Drawing.Bitmap CatalogueItem {
return ((System.Drawing.Bitmap)(obj));
}
}
-
+
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ public static System.Drawing.Bitmap CatalogueItemTransform
+ {
+ get
+ {
+ object obj = ResourceManager.GetObject("CatalogueItemTransform", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
diff --git a/Rdmp.Core/Icons/IconProvision/CatalogueIcons.resx b/Rdmp.Core/Icons/IconProvision/CatalogueIcons.resx
index 36bb823589..535e8868cd 100644
--- a/Rdmp.Core/Icons/IconProvision/CatalogueIcons.resx
+++ b/Rdmp.Core/Icons/IconProvision/CatalogueIcons.resx
@@ -265,6 +265,9 @@
..\CatalogueItem.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\CatalogueItemTransform.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\CatalogueItemIssue.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
diff --git a/Rdmp.Core/Icons/IconProvision/StateBasedIconProviders/CatalogueItemStateBasedIconProvider.cs b/Rdmp.Core/Icons/IconProvision/StateBasedIconProviders/CatalogueItemStateBasedIconProvider.cs
index 4127be6a6b..3cbe16a510 100644
--- a/Rdmp.Core/Icons/IconProvision/StateBasedIconProviders/CatalogueItemStateBasedIconProvider.cs
+++ b/Rdmp.Core/Icons/IconProvision/StateBasedIconProviders/CatalogueItemStateBasedIconProvider.cs
@@ -16,11 +16,13 @@ namespace Rdmp.Core.Icons.IconProvision.StateBasedIconProviders
public class CatalogueItemStateBasedIconProvider : IObjectStateBasedIconProvider
{
private readonly Bitmap basicImage;
+ private readonly Bitmap transformImage;
private readonly IconOverlayProvider _overlayProvider;
public CatalogueItemStateBasedIconProvider(IconOverlayProvider overlayProvider)
{
basicImage = CatalogueIcons.CatalogueItem;
+ transformImage = CatalogueIcons.CatalogueItemTransform;
_overlayProvider = overlayProvider;
}
@@ -31,9 +33,8 @@ public Bitmap GetImageIfSupportedObject(object o)
if (ci == null)
return null;
- Bitmap toReturn = basicImage;
-
var ei = ci.ExtractionInformation;
+ Bitmap toReturn = ei?.IsProperTransform() ?? false ? transformImage: basicImage;
//it's extractable
if (ei != null)