public unsafe void GetPageRanges(UIntPtr *rangesCount, cef_range_t *ranges)
 {
     fixed(cef_print_settings_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_print_settings_t *, UIntPtr *, cef_range_t *, void >)get_page_ranges)(self, rangesCount, ranges);
     }
 }
Exemple #2
0
 public unsafe void OnImeCompositionRangeChanged(cef_browser_t *browser, [Immutable] cef_range_t *selected_range, UIntPtr character_boundsCount, [Immutable] cef_rect_t *character_bounds)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_range_t *, UIntPtr, cef_rect_t *, void >)on_ime_composition_range_changed)(self, browser, selected_range, character_boundsCount, character_bounds);
     }
 }
        private void on_text_selection_changed(cef_render_handler_t *self, cef_browser_t *browser, cef_string_t *selected_text, cef_range_t *selected_range)
        {
            CheckSelf(self);

            var m_browser        = CefBrowser.FromNative(browser);
            var m_selected_text  = cef_string_t.ToString(selected_text);
            var m_selected_range = new CefRange(selected_range->from, selected_range->to);

            OnTextSelectionChanged(m_browser, m_selected_text, m_selected_range);
        }
        private void on_ime_composition_range_changed(cef_render_handler_t *self, cef_browser_t *browser, cef_range_t *selected_range, UIntPtr character_boundsCount, cef_rect_t *character_bounds)
        {
            CheckSelf(self);

            // TODO: reuse array/special list for rectange - this method called only from one thread and can be reused

            var m_browser       = CefBrowser.FromNative(browser);
            var m_selectedRange = new CefRange(selected_range->from, selected_range->to);

            CefRectangle[] m_characterBounds;
            if (character_boundsCount == UIntPtr.Zero)
            {
                m_characterBounds = s_emptyRectangleArray;
            }
            else
            {
                var m_characterBoundsCount = checked ((int)character_boundsCount);
                m_characterBounds = new CefRectangle[m_characterBoundsCount];
                for (var i = 0; i < m_characterBoundsCount; i++)
                {
                    m_characterBounds[i] = new CefRectangle(
                        character_bounds[i].x,
                        character_bounds[i].y,
                        character_bounds[i].width,
                        character_bounds[i].height
                        );
                }
            }

            OnImeCompositionRangeChanged(m_browser, m_selectedRange, m_characterBounds);
        }
Exemple #5
0
 public unsafe void OnTextSelectionChanged(cef_browser_t *browser, [Immutable] cef_string_t *selected_text, [Immutable] cef_range_t *selected_range)
 {
     fixed(cef_render_handler_t *self = &this)
     {
         ((delegate * unmanaged[Stdcall] < cef_render_handler_t *, cef_browser_t *, cef_string_t *, cef_range_t *, void >)on_text_selection_changed)(self, browser, selected_text, selected_range);
     }
 }
 public unsafe extern void GetPageRanges(UIntPtr *rangesCount, cef_range_t *ranges);
 public unsafe extern void SetPageRanges(UIntPtr rangesCount, [Immutable] cef_range_t *ranges);
 public unsafe extern void OnTextSelectionChanged(cef_browser_t *browser, [Immutable] cef_string_t *selected_text, [Immutable] cef_range_t *selected_range);
 public unsafe extern void OnImeCompositionRangeChanged(cef_browser_t *browser, [Immutable] cef_range_t *selected_range, UIntPtr character_boundsCount, [Immutable] cef_rect_t *character_bounds);
        public static void get_page_ranges(cef_print_settings_t *self, UIntPtr *rangesCount, cef_range_t *ranges)
        {
            get_page_ranges_delegate d;
            var p = self->_get_page_ranges;

            if (p == _pf)
            {
                d = _df;
            }
            else
            {
                d = (get_page_ranges_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(get_page_ranges_delegate));
                if (_pf == IntPtr.Zero)
                {
                    _df = d; _pf = p;
                }
            }
            d(self, rangesCount, ranges);
        }
Exemple #11
0
 public unsafe extern void ImeCommitText([Immutable] cef_string_t *text, [Immutable] cef_range_t *replacement_range, int relative_cursor_pos);
Exemple #12
0
 public unsafe extern void ImeSetComposition([Immutable] cef_string_t *text, UIntPtr underlinesCount, [Immutable] cef_composition_underline_t *underlines, [Immutable] cef_range_t *replacement_range, [Immutable] cef_range_t *selection_range);