Ejemplo n.º 1
0
        /// <summary>
        /// Creates and initializes a new instance of the EvasObject class.
        /// </summary>
        /// <since_tizen> preview </since_tizen>
        protected EvasObject()
        {
            _backButtonHandler = new Interop.Eext.EextEventCallback((d, o, i) => { _backButtonPressed?.Invoke(this, EventArgs.Empty); });
            _moreButtonHandler = new Interop.Eext.EextEventCallback((d, o, i) => { _moreButtonPressed?.Invoke(this, EventArgs.Empty); });

            OnInstantiated();

            _tooltipContentCallback = (d, o, t) =>
            {
                return(_tooltipContentDelegate?.Invoke());
            };
        }
Ejemplo n.º 2
0
            static void EnableButtonEventHandler(Efl.Object obj, Interop.Eext.EextCallbackType type)
            {
                if (type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_BACK)
                {
                    if (!_backButtonEventMap.ContainsKey(obj))
                    {
                        Interop.Eext.EextEventCallback cb = (d, o, i) =>
                        {
                            EventHandler events;
                            if (_backButtonEventHandlers.TryGetValue(obj, out events))
                            {
                                events?.Invoke(obj, EventArgs.Empty);
                            }
                        };

                        Interop.Eext.eext_object_event_callback_add(obj.NativeHandle, type, cb, IntPtr.Zero);
                        _backButtonEventMap[obj] = cb;
                        obj.DelEvt += (s, e) => DisableButtonEventHandler(obj, type, true);
                    }
                }
                else if (type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_MORE)
                {
                    if (!_moreButtonEventMap.ContainsKey(obj))
                    {
                        Interop.Eext.EextEventCallback cb = (d, o, i) =>
                        {
                            EventHandler events;
                            if (_moreButtonEventHandlers.TryGetValue(obj, out events))
                            {
                                events?.Invoke(obj, EventArgs.Empty);
                            }
                        };

                        Interop.Eext.eext_object_event_callback_add(obj.NativeHandle, type, cb, IntPtr.Zero);
                        _moreButtonEventMap[obj] = cb;
                    }
                }
            }