Exemplo n.º 1
0
        internal static void on_tooltip(IntPtr gcHandlePtr, out int __retval, IntPtr browser, out int browser_release, ref IntPtr text_str, ref int text_length)
        {
            var self = (CfxDisplayHandler)System.Runtime.InteropServices.GCHandle.FromIntPtr(gcHandlePtr).Target;

            if (self == null || self.CallbacksDisabled)
            {
                __retval        = default(int);
                browser_release = 1;
                return;
            }
            var e = new CfxOnTooltipEventArgs();

            e.m_browser     = browser;
            e.m_text_str    = text_str;
            e.m_text_length = text_length;
            self.m_OnTooltip?.Invoke(self, e);
            e.m_isInvalid   = true;
            browser_release = e.m_browser_wrapped == null? 1 : 0;
            if (e.m_text_changed)
            {
                var text_pinned = new PinnedString(e.m_text_wrapped);
                text_str    = text_pinned.Obj.PinnedPtr;
                text_length = text_pinned.Length;
            }
            __retval = e.m_returnValue ? 1 : 0;
        }
Exemplo n.º 2
0
        internal static void on_tooltip(IntPtr gcHandlePtr, out int __retval, IntPtr browser, ref IntPtr text_str, ref int text_length)
        {
            var self = (CfxDisplayHandler)System.Runtime.InteropServices.GCHandle.FromIntPtr(gcHandlePtr).Target;

            if (self == null)
            {
                __retval = default(int);
                return;
            }
            var e            = new CfxOnTooltipEventArgs(browser, text_str, text_length);
            var eventHandler = self.m_OnTooltip;

            if (eventHandler != null)
            {
                eventHandler(self, e);
            }
            e.m_isInvalid = true;
            if (e.m_browser_wrapped == null)
            {
                CfxApi.cfx_release(e.m_browser);
            }
            if (e.m_text_changed)
            {
                var text_pinned = new PinnedString(e.m_text_wrapped);
                text_str    = text_pinned.Obj.PinnedPtr;
                text_length = text_pinned.Length;
            }
            __retval = e.m_returnValue ? 1 : 0;
        }