Exemplo n.º 1
0
 internal static unsafe CefPageRange Create(cef_page_range_t* pageRange)
 {
     return new CefPageRange(
         pageRange->from,
         pageRange->to
         );
 }
Exemplo n.º 2
0
        /// <summary>
        /// Retrieve the page ranges.
        /// </summary>
        public CefPageRange[] GetPageRanges()
        {
            var count = GetPageRangesCount();
            if (count == 0) return new CefPageRange[0];

            var n_ranges = new cef_page_range_t[count];
            UIntPtr n_count = (UIntPtr)count;
            fixed (cef_page_range_t* n_ranges_ptr = n_ranges)
            {
                cef_print_settings_t.get_page_ranges(_self, &n_count, n_ranges_ptr);
            }

            count = (int)n_count;
            if (count == 0) return new CefPageRange[0];

            var ranges = new CefPageRange[count];

            for (var i = 0; i < count; i++)
            {
                ranges[i].From = n_ranges[i].from;
                ranges[i].To = n_ranges[i].to;
            }

            return ranges;
        }
Exemplo n.º 3
0
        /// <summary>
        /// Set the page ranges.
        /// </summary>
        public void SetPageRanges(CefPageRange[] ranges)
        {
            var count = ranges != null ? ranges.Length : 0;
            var n_ranges = new cef_page_range_t[count];

            for (var i = 0; i < count; i++)
            {
                n_ranges[i].from = ranges[i].From;
                n_ranges[i].to = ranges[i].To;
            }

            fixed (cef_page_range_t* n_ranges_ptr = n_ranges)
            {
                cef_print_settings_t.set_page_ranges(_self, (UIntPtr)count, n_ranges_ptr);
            }
        }
Exemplo n.º 4
0
 public static void get_page_ranges(cef_print_settings_t* self, UIntPtr* rangesCount, cef_page_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);
 }