예제 #1
0
        /// <summary>
        /// Creates a new object that is not owned by any other object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public static CfrDictionaryValue Create()
        {
            var call = new CfxDictionaryValueCreateRemoteCall();

            call.RequestExecution();
            return(CfrDictionaryValue.Wrap(new RemotePtr(call.__retval)));
        }
예제 #2
0
        /// <summary>
        /// Creates a new object that is not owned by any other object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public static CfrDictionaryValue Create()
        {
            var call = new CfxDictionaryValueCreateRenderProcessCall();

            call.RequestExecution(CfxRemoteCallContext.CurrentContext.connection);
            return(CfrDictionaryValue.Wrap(call.__retval));
        }
예제 #3
0
        /// <summary>
        /// Creates a new object that is not owned by any other object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public static CfrDictionaryValue Create()
        {
            var connection = CfxRemoteCallContext.CurrentContext.connection;
            var call       = new CfxDictionaryValueCreateRemoteCall();

            call.RequestExecution(connection);
            return(CfrDictionaryValue.Wrap(new RemotePtr(connection, call.__retval)));
        }
예제 #4
0
        /// <summary>
        /// Returns a writable copy of this object. If |excludeNullChildren| is true
        /// (1) any NULL dictionaries or lists will be excluded from the copy.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue Copy(bool excludeEmptyChildren)
        {
            var call = new CfxDictionaryValueCopyRenderProcessCall();

            call.self = CfrObject.Unwrap(this);
            call.excludeEmptyChildren = excludeEmptyChildren;
            call.RequestExecution(this);
            return(CfrDictionaryValue.Wrap(call.__retval));
        }
예제 #5
0
        /// <summary>
        /// Returns true (1) if this object and |that| object have an equivalent
        /// underlying value but are not necessarily the same object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool IsEqual(CfrDictionaryValue that)
        {
            var call = new CfxDictionaryValueIsEqualRenderProcessCall();

            call.self = CfrObject.Unwrap(this);
            call.that = CfrObject.Unwrap(that);
            call.RequestExecution(this);
            return(call.__retval);
        }
예제 #6
0
        /// <summary>
        /// Sets the underlying value as type dict. Returns true (1) if the value was
        /// set successfully. This object keeps a reference to |value| and ownership of
        /// the underlying data remains unchanged.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool SetDictionary(CfrDictionaryValue value)
        {
            var call = new CfxValueSetDictionaryRenderProcessCall();

            call.@this = proxyId;
            call.value = CfrObject.Unwrap(value);
            call.RequestExecution(this);
            return(call.__retval);
        }
        /// <summary>
        /// Returns true (1) if this object and |that| object have the same underlying
        /// data. If true (1) modifications to this object will also affect |that|
        /// object and vice-versa.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool IsSame(CfrDictionaryValue that)
        {
            var call = new CfxDictionaryValueIsSameRenderProcessCall();

            call.@this = proxyId;
            call.that  = CfrObject.Unwrap(that);
            call.RequestExecution(this);
            return(call.__retval);
        }
예제 #8
0
        /// <summary>
        /// Returns the value at the specified index as type dictionary. The returned
        /// value will reference existing data and modifications to the value will
        /// modify this object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue GetDictionary(ulong index)
        {
            var call = new CfxListValueGetDictionaryRemoteCall();

            call.@this = RemotePtr.ptr;
            call.index = index;
            call.RequestExecution(RemotePtr.connection);
            return(CfrDictionaryValue.Wrap(new RemotePtr(call.__retval)));
        }
예제 #9
0
        /// <summary>
        /// Returns the value at the specified key as type dictionary. The returned
        /// value will reference existing data and modifications to the value will
        /// modify this object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue GetDictionary(string key)
        {
            var call = new CfxDictionaryValueGetDictionaryRemoteCall();

            call.@this = RemotePtr.ptr;
            call.key   = key;
            call.RequestExecution(RemotePtr.connection);
            return(CfrDictionaryValue.Wrap(new RemotePtr(call.__retval)));
        }
예제 #10
0
        /// <summary>
        /// Returns a writable copy of this object. If |excludeNullChildren| is true
        /// (1) any NULL dictionaries or lists will be excluded from the copy.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue Copy(bool excludeEmptyChildren)
        {
            var call = new CfxDictionaryValueCopyRemoteCall();

            call.@this = RemotePtr.ptr;
            call.excludeEmptyChildren = excludeEmptyChildren;
            call.RequestExecution(RemotePtr.connection);
            return(CfrDictionaryValue.Wrap(new RemotePtr(call.__retval)));
        }
예제 #11
0
        /// <summary>
        /// Returns true (1) if this object and |that| object have an equivalent
        /// underlying value but are not necessarily the same object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool IsEqual(CfrDictionaryValue that)
        {
            var call = new CfxDictionaryValueIsEqualRemoteCall();

            call.@this = RemotePtr.ptr;
            call.that  = CfrObject.Unwrap(that).ptr;
            call.RequestExecution(RemotePtr.connection);
            return(call.__retval);
        }
예제 #12
0
        /// <summary>
        /// Sets the underlying value as type dict. Returns true (1) if the value was
        /// set successfully. This object keeps a reference to |value| and ownership of
        /// the underlying data remains unchanged.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool SetDictionary(CfrDictionaryValue value)
        {
            var call = new CfxValueSetDictionaryRemoteCall();

            call.@this = RemotePtr.ptr;
            call.value = CfrObject.Unwrap(value).ptr;
            call.RequestExecution(RemotePtr.connection);
            return(call.__retval);
        }
예제 #13
0
        /// <summary>
        /// Returns the value at the specified key as type dictionary. The returned
        /// value will reference existing data and modifications to the value will
        /// modify this object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue GetDictionary(string key)
        {
            var call = new CfxDictionaryValueGetDictionaryRenderProcessCall();

            call.self = CfrObject.Unwrap(this);
            call.key  = key;
            call.RequestExecution(this);
            return(CfrDictionaryValue.Wrap(call.__retval));
        }
예제 #14
0
        /// <summary>
        /// Returns the value at the specified index as type dictionary. The returned
        /// value will reference existing data and modifications to the value will
        /// modify this object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public CfrDictionaryValue GetDictionary(int index)
        {
            var call = new CfxListValueGetDictionaryRenderProcessCall();

            call.@this = proxyId;
            call.index = index;
            call.RequestExecution(this);
            return(CfrDictionaryValue.Wrap(call.__retval));
        }
예제 #15
0
        /// <summary>
        /// Sets the value at the specified key as type dict. Returns true (1) if the
        /// value was set successfully. If |value| is currently owned by another object
        /// then the value will be copied and the |value| reference will not change.
        /// Otherwise, ownership will be transferred to this object and the |value|
        /// reference will be invalidated.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool SetDictionary(string key, CfrDictionaryValue value)
        {
            var call = new CfxDictionaryValueSetDictionaryRenderProcessCall();

            call.self  = CfrObject.Unwrap(this);
            call.key   = key;
            call.value = CfrObject.Unwrap(value);
            call.RequestExecution(this);
            return(call.__retval);
        }
예제 #16
0
        /// <summary>
        /// Sets the value at the specified index as type dict. Returns true (1) if the
        /// value was set successfully. If |value| is currently owned by another object
        /// then the value will be copied and the |value| reference will not change.
        /// Otherwise, ownership will be transferred to this object and the |value|
        /// reference will be invalidated.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool SetDictionary(int index, CfrDictionaryValue value)
        {
            var call = new CfxListValueSetDictionaryRenderProcessCall();

            call.self  = CfrObject.Unwrap(this);
            call.index = index;
            call.value = CfrObject.Unwrap(value);
            call.RequestExecution(this);
            return(call.__retval);
        }
예제 #17
0
        /// <summary>
        /// Returns true (1) if this object and |that| object have an equivalent
        /// underlying value but are not necessarily the same object.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool IsEqual(CfrDictionaryValue that)
        {
            var connection = RemotePtr.connection;
            var call       = new CfxDictionaryValueIsEqualRemoteCall();

            call.@this = RemotePtr.ptr;
            if (!CfrObject.CheckConnection(that, connection))
            {
                throw new ArgumentException("Render process connection mismatch.", "that");
            }
            call.that = CfrObject.Unwrap(that).ptr;
            call.RequestExecution(connection);
            return(call.__retval);
        }
예제 #18
0
        /// <summary>
        /// Sets the underlying value as type dict. Returns true (1) if the value was
        /// set successfully. This object keeps a reference to |value| and ownership of
        /// the underlying data remains unchanged.
        /// </summary>
        /// <remarks>
        /// See also the original CEF documentation in
        /// <see href="https://bitbucket.org/chromiumfx/chromiumfx/src/tip/cef/include/capi/cef_values_capi.h">cef/include/capi/cef_values_capi.h</see>.
        /// </remarks>
        public bool SetDictionary(CfrDictionaryValue value)
        {
            var connection = RemotePtr.connection;
            var call       = new CfxValueSetDictionaryRemoteCall();

            call.@this = RemotePtr.ptr;
            if (!CfrObject.CheckConnection(value, connection))
            {
                throw new ArgumentException("Render process connection mismatch.", "value");
            }
            call.value = CfrObject.Unwrap(value).ptr;
            call.RequestExecution(connection);
            return(call.__retval);
        }
예제 #19
0
        internal static CfrDictionaryValue Wrap(RemotePtr remotePtr)
        {
            if (remotePtr == RemotePtr.Zero)
            {
                return(null);
            }
            var weakCache = CfxRemoteCallContext.CurrentContext.connection.weakCache;

            lock (weakCache) {
                var cfrObj = (CfrDictionaryValue)weakCache.Get(remotePtr.ptr);
                if (cfrObj == null)
                {
                    cfrObj = new CfrDictionaryValue(remotePtr);
                    weakCache.Add(remotePtr.ptr, cfrObj);
                }
                return(cfrObj);
            }
        }
예제 #20
0
        internal static CfrDictionaryValue Wrap(IntPtr proxyId)
        {
            if (proxyId == IntPtr.Zero)
            {
                return(null);
            }
            var weakCache = CfxRemoteCallContext.CurrentContext.connection.weakCache;

            lock (weakCache) {
                var cfrObj = (CfrDictionaryValue)weakCache.Get(proxyId);
                if (cfrObj == null)
                {
                    cfrObj = new CfrDictionaryValue(proxyId);
                    weakCache.Add(proxyId, cfrObj);
                }
                return(cfrObj);
            }
        }