예제 #1
0
 private void ConnectQuitSignal(QuitCallback callback, GClosureNotify destroyData)
 {
     RegisterHandler(
         "destroy",
         Marshal.GetFunctionPointerForDelegate(callback),
         destroyData,
         GConnectFlags.GConnectAfter,
         IntPtr.Zero);
 }
예제 #2
0
 private void ConnectResizeSignal(ResizeCallback callback, GClosureNotify destroyData)
 {
     RegisterHandler(
         "configure-event",
         Marshal.GetFunctionPointerForDelegate(callback),
         destroyData,
         GConnectFlags.GConnectAfter,
         IntPtr.Zero);
 }
예제 #3
0
    protected virtual void ConnectDestroySignal(DestroyCallback callback, GClosureNotify destroyData)
    {
        _onDestroySignal = Marshal.GetFunctionPointerForDelegate(callback);

        RegisterHandler(
            "delete-event",
            _onDestroySignal,
            destroyData,
            GConnectFlags.GConnectAfter,
            IntPtr.Zero);
    }
예제 #4
0
    protected virtual void ConnectSizeAllocateSignal(SizeAllocateCallback callback, GClosureNotify destroyData)
    {
        _onSizeAllocateSignal = Marshal.GetFunctionPointerForDelegate(callback);

        RegisterHandler(
            "size-allocate",
            _onSizeAllocateSignal,
            destroyData,
            GConnectFlags.GConnectAfter,
            IntPtr.Zero);
    }
예제 #5
0
    protected virtual void ConnectRealizeSignal(RealizeCallback callback, GClosureNotify destroyData)
    {
        _onRealizedSignal = Marshal.GetFunctionPointerForDelegate(callback);

        RegisterHandler(
            "realize",
            _onRealizedSignal,
            destroyData,
            GConnectFlags.GConnectAfter,
            IntPtr.Zero);
    }
예제 #6
0
 protected virtual void RegisterHandler(string signalName, IntPtr handler, GClosureNotify destroyData, GConnectFlags connectFlags = GConnectFlags.GConnectAfter, IntPtr data = default(IntPtr))
 {
     try
     {
         g_signal_connect_data(_handle, signalName, handler, data, destroyData, connectFlags);
     }
     catch (Exception exception)
     {
         Logger.Instance.Log.LogError("Error in LinuxGtk3Host::RegisterHandler");
         Logger.Instance.Log.LogError(exception);
     }
 }
예제 #7
0
 public void RegisterHandler(string signalName, IntPtr handler, GClosureNotify destroyData, GConnectFlags connectFlags = GConnectFlags.GConnectAfter, IntPtr data = default(IntPtr))
 {
     try
     {
         NativeMethods.g_signal_connect_data(_handle, signalName, handler, data, destroyData, connectFlags);
     }
     catch (Exception exception)
     {
         Log.Error("Error in LinuxGtk3Host::RegisterHandler");
         Log.Error(exception);
     }
 }
예제 #8
0
        public LinuxGtk3Host()
        {
            _isInitialized = false;
            _handle        = IntPtr.Zero;
            _xid           = IntPtr.Zero;

            _onRealizedDelegate     = new RealizeCallback(OnRealized);
            _onSizeAllocateDelegate = new SizeAllocateCallback(OnSizeAllocate);
            _onResizeDelegate       = new ResizeCallback(OnResize);
            _onDestroyDelegate      = new DestroyCallback(OnDestroy);

            _onFreeNotify = new GClosureNotify(FreeData);

            _onHandleErrorDelegate   = new XHandleXError(HandleError);
            _onHandleIOErrorDelegate = new XHandleXIOError(HandleIOError);
        }
예제 #9
0
    public ChromelyLinuxHost()
    {
        gdk_set_allowed_backends("x11");

        _isInitialized = false;
        _handle        = IntPtr.Zero;
        _xid           = IntPtr.Zero;

        _onRealizedDelegate     = new RealizeCallback(OnRealized);
        _onSizeAllocateDelegate = new SizeAllocateCallback(OnSizeAllocate);
        _onResizeDelegate       = new ResizeCallback(OnResize);
        _onDestroyDelegate      = new DestroyCallback(OnDestroy);

        _onFreeNotify = new GClosureNotify(FreeData);

        _onHandleErrorDelegate   = new XHandleXError(HandleError);
        _onHandleIOErrorDelegate = new XHandleXIOError(HandleIOError);
    }
예제 #10
0
    public ChromelyLinuxHost(IChromelyConfiguration config)
    {
        _config    = config;
        _options   = _config?.WindowOptions ?? new WindowOptions();
        _debugging = _config == null ? false : _config.DebuggingMode;

        gdk_set_allowed_backends("x11");

        _isInitialized = false;
        _handle        = IntPtr.Zero;
        _xid           = IntPtr.Zero;

        _onRealizedDelegate     = new RealizeCallback(OnRealized);
        _onSizeAllocateDelegate = new SizeAllocateCallback(OnSizeAllocate);
        _onResizeDelegate       = new ResizeCallback(OnResize);
        _onDestroyDelegate      = new DestroyCallback(OnDestroy);

        _onFreeNotify = new GClosureNotify(FreeData);

        _onHandleErrorDelegate   = new XHandleXError(HandleError);
        _onHandleIOErrorDelegate = new XHandleXIOError(HandleIOError);
    }
예제 #11
0
 public static extern uint g_signal_connect_data(IntPtr instance, string detailedSignal, IntPtr handler,
                                                 IntPtr data, GClosureNotify destroyData, GConnectFlags connectFlags);
예제 #12
0
 internal static extern uint ConnectData(GObjectManaged instance,
                                         [MarshalAs(UnmanagedType.LPStr)] string detailedSignal, IntPtr cHandler, IntPtr data,
                                         GClosureNotify destroyData, Enums.GConnectFlags connectFlags);
예제 #13
0
 public void RegisterHandler(string signalName, IntPtr handler, GClosureNotify destroyData, GConnectFlags connectFlags = GConnectFlags.GConnectAfter, IntPtr data = default(IntPtr))
 {
 }
예제 #14
0
 public void RegisterHandler(string signalName, IntPtr handler, GClosureNotify destroyData, GConnectFlags connectFlags = GConnectFlags.GConnectAfter, IntPtr data = default(IntPtr))
 {
     NativeMethods.g_signal_connect_data(_handle, signalName, handler, data, destroyData, connectFlags);
 }