Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Karlaš <david.karlas@xamarin.com>2014-07-24 12:58:16 +0400
committerDavid Karlaš <david.karlas@xamarin.com>2014-07-24 12:58:16 +0400
commit997fc8115e1616b51d128e34a29a9e87e43d271e (patch)
tree7299ef93f431a5ee8dc3a6d4a66782626b831efe /main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters
parentcc83b2b75f42425617f357712ef6a5a5fda3a07d (diff)
[Debugger] CGImgage converter
Diffstat (limited to 'main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters')
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters/ImageConverter.cs10
1 files changed, 9 insertions, 1 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters/ImageConverter.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters/ImageConverter.cs
index c25bc4d25d..333ec60e80 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters/ImageConverter.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Converters/ImageConverter.cs
@@ -39,7 +39,8 @@ namespace MonoDevelop.Debugger.Converters
return val.TypeName != null && (
val.TypeName == "Android.Graphics.Bitmap" ||
val.TypeName == "Gdk.Pixbuf" ||
- val.TypeName.EndsWith ("UIKit.UIImage"));
+ val.TypeName.EndsWith ("UIKit.UIImage") ||
+ val.TypeName.EndsWith ("CoreGraphics.CGImage"));
}
public override Image GetValue (ObjectValue val)
@@ -60,6 +61,13 @@ namespace MonoDevelop.Debugger.Converters
var bytes = (byte[])(arrayObject).GetValues (0, arrayObject.Length);
var ms = new MemoryStream (bytes, false);
return Image.FromStream (ms);
+ } else if (val.TypeName.EndsWith ("CoreGraphics.CGImage")) {
+ rawVal = (RawValue)DebuggingService.CurrentFrame.GetExpressionValue ("MonoTouch.UIKit.UIImage.FromImage(" + val.Name + ")", true).GetRawValue (ops);
+ RawValue nsData = (RawValue)rawVal.CallMethod ("AsPNG");
+ var arrayObject = (RawValueArray)nsData.CallMethod ("ToArray");
+ var bytes = (byte[])(arrayObject).GetValues (0, arrayObject.Length);
+ var ms = new MemoryStream (bytes, false);
+ return Image.FromStream (ms);
} else if (val.TypeName.EndsWith ("UIKit.UIImage")) {
RawValue nsData = (RawValue)rawVal.CallMethod ("AsPNG");
var arrayObject = (RawValueArray)nsData.CallMethod ("ToArray");