diff options
author | TSRBerry <20988865+TSRBerry@users.noreply.github.com> | 2023-06-29 02:39:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-29 02:39:22 +0200 |
commit | 6e28a4dd13df0ab866e6a178086abe36ca4a2b25 (patch) | |
tree | 68e6b5f9e62212216cab071e5b9455550f2b971b /src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs | |
parent | 7c989f88bdab65dfa7783e824a180220ba829bd0 (diff) |
[Ryujinx.Ui.Common] Address dotnet-format issues (#5392)1.1.942
* dotnet format style --severity info
Some changes were manually reverted.
* dotnet format analyzers --serverity info
Some changes have been minimally adapted.
* Silence dotnet format IDE0060 warnings
* Address dotnet format CA1401 warnings
* dotnet-format fixes after rebase
* Address most dotnet format whitespace warnings
* Apply dotnet format whitespace formatting
A few of them have been manually reverted and the corresponding warning was silenced
* Another rebase, another dotnet format run
* Run dotnet format style after rebase
* Add comments to disabled warnings
* Remove a few unused parameters
* Simplify properties and array initialization, Use const when possible, Remove trailing commas
* Address IDE0251 warnings
* Revert "Simplify properties and array initialization, Use const when possible, Remove trailing commas"
This reverts commit 9462e4136c0a2100dc28b20cf9542e06790aa67e.
* dotnet format whitespace after rebase
* Small optimizations
* Remove alignment
* Apply formatting
* Fix build issues
* Final pass for dotnet format
* Add trailing commas
Co-authored-by: Ac_K <Acoustik666@gmail.com>
* Add trailing commas
---------
Co-authored-by: Ac_K <Acoustik666@gmail.com>
Diffstat (limited to 'src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs')
-rw-r--r-- | src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs | 97 |
1 files changed, 80 insertions, 17 deletions
diff --git a/src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs b/src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs index 234f7597..af8723e2 100644 --- a/src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs +++ b/src/Ryujinx.Ui.Common/Helper/ObjectiveC.cs @@ -1,8 +1,6 @@ using System; -using System.IO; using System.Runtime.InteropServices; using System.Runtime.Versioning; -using System.Text; namespace Ryujinx.Ui.Common.Helper { @@ -12,44 +10,109 @@ namespace Ryujinx.Ui.Common.Helper private const string ObjCRuntime = "/usr/lib/libobjc.A.dylib"; [LibraryImport(ObjCRuntime, StringMarshalling = StringMarshalling.Utf8)] - private static unsafe partial IntPtr sel_getUid(string name); + private static partial IntPtr sel_getUid(string name); [LibraryImport(ObjCRuntime, StringMarshalling = StringMarshalling.Utf8)] - public static partial IntPtr objc_getClass(string name); + private static partial IntPtr objc_getClass(string name); [LibraryImport(ObjCRuntime)] - public static partial void objc_msgSend(IntPtr receiver, Selector selector); + private static partial void objc_msgSend(IntPtr receiver, Selector selector); [LibraryImport(ObjCRuntime)] - public static partial void objc_msgSend(IntPtr receiver, Selector selector, byte value); + private static partial void objc_msgSend(IntPtr receiver, Selector selector, byte value); [LibraryImport(ObjCRuntime)] - public static partial void objc_msgSend(IntPtr receiver, Selector selector, IntPtr value); + private static partial void objc_msgSend(IntPtr receiver, Selector selector, IntPtr value); [LibraryImport(ObjCRuntime)] - public static partial void objc_msgSend(IntPtr receiver, Selector selector, NSRect point); + private static partial void objc_msgSend(IntPtr receiver, Selector selector, NSRect point); [LibraryImport(ObjCRuntime)] - public static partial void objc_msgSend(IntPtr receiver, Selector selector, double value); + private static partial void objc_msgSend(IntPtr receiver, Selector selector, double value); [LibraryImport(ObjCRuntime, EntryPoint = "objc_msgSend")] - public static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector); + private static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector); [LibraryImport(ObjCRuntime, EntryPoint = "objc_msgSend")] - public static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector, IntPtr param); + private static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector, IntPtr param); [LibraryImport(ObjCRuntime, EntryPoint = "objc_msgSend", StringMarshalling = StringMarshalling.Utf8)] - public static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector, string param); + private static partial IntPtr IntPtr_objc_msgSend(IntPtr receiver, Selector selector, string param); [LibraryImport(ObjCRuntime, EntryPoint = "objc_msgSend")] [return: MarshalAs(UnmanagedType.Bool)] - public static partial bool bool_objc_msgSend(IntPtr receiver, Selector selector, IntPtr param); + private static partial bool bool_objc_msgSend(IntPtr receiver, Selector selector, IntPtr param); - public struct Selector + public readonly struct Object + { + public readonly IntPtr ObjPtr; + + private Object(IntPtr pointer) + { + ObjPtr = pointer; + } + + public Object(string name) + { + ObjPtr = objc_getClass(name); + } + + public void SendMessage(Selector selector) + { + objc_msgSend(ObjPtr, selector); + } + + public void SendMessage(Selector selector, byte value) + { + objc_msgSend(ObjPtr, selector, value); + } + + public void SendMessage(Selector selector, Object obj) + { + objc_msgSend(ObjPtr, selector, obj.ObjPtr); + } + + public void SendMessage(Selector selector, NSRect point) + { + objc_msgSend(ObjPtr, selector, point); + } + + public void SendMessage(Selector selector, double value) + { + objc_msgSend(ObjPtr, selector, value); + } + + public Object GetFromMessage(Selector selector) + { + return new Object(IntPtr_objc_msgSend(ObjPtr, selector)); + } + + public Object GetFromMessage(Selector selector, Object obj) + { + return new Object(IntPtr_objc_msgSend(ObjPtr, selector, obj.ObjPtr)); + } + + public Object GetFromMessage(Selector selector, NSString nsString) + { + return new Object(IntPtr_objc_msgSend(ObjPtr, selector, nsString.StrPtr)); + } + + public Object GetFromMessage(Selector selector, string param) + { + return new Object(IntPtr_objc_msgSend(ObjPtr, selector, param)); + } + + public bool GetBoolFromMessage(Selector selector, Object obj) + { + return bool_objc_msgSend(ObjPtr, selector, obj.ObjPtr); + } + } + + public readonly struct Selector { public readonly IntPtr SelPtr; - public unsafe Selector(string name) + private Selector(string name) { SelPtr = sel_getUid(name); } @@ -57,7 +120,7 @@ namespace Ryujinx.Ui.Common.Helper public static implicit operator Selector(string value) => new(value); } - public struct NSString + public readonly struct NSString { public readonly IntPtr StrPtr; @@ -94,4 +157,4 @@ namespace Ryujinx.Ui.Common.Helper } } } -}
\ No newline at end of file +} |