public WebMouseEventArgs(bool alt, bool ctrl, bool shift, WebMouseButton bt, int clientx, int clienty, int screenx, int screeny)
 {
     _altKey   = alt;
     _ctrlKey  = ctrl;
     _shiftKey = shift;
     _button   = bt;
     _clientX  = clientx;
     _clientY  = clienty;
     _screenX  = screenx;
     _screenY  = screeny;
 }
        public static string ObjectCreateJavaScriptCode(object v)
        {
            if (v == null || v == System.DBNull.Value)
            {
                return("null");
            }
            IJavascriptType ijt = v as IJavascriptType;

            if (ijt != null)
            {
                return(ijt.GetValueJsCode());
            }
            Type t = v.GetType();

            if (typeof(WebMouseButton).Equals(t))
            {
                WebMouseButton wmb = (WebMouseButton)v;
                switch (wmb)
                {
                case WebMouseButton.Left:
                    return("JsonDataBinding.mouseButtonLeft()");

                case WebMouseButton.Middle:
                    return("4");

                default:
                    return("2");
                }
            }
            if (typeof(Cursor).Equals(t))
            {
                Cursor cr = (Cursor)v;
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", GetJavascriptCursorValue(cr, true)));
            }
            if (typeof(EnumWebCursor).Equals(t))
            {
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", v.ToString().Replace("_", "-")));
            }
            if (t.IsEnum)
            {
                if (JavaScriptEnumAttribute.IsJavaScriptEnum(t))
                {
                    return(string.Format(CultureInfo.InvariantCulture, "{0}.{1}", t.FullName, Enum.GetName(t, v)));
                }
                else
                {
                    return(string.Format(CultureInfo.InvariantCulture, "'{0}'", v));
                }
            }
            if (typeof(string).Equals(t))
            {
                string s = v as string;
                if (s.Length == 0)
                {
                    return("''");
                }
                s = s.Replace("\r", "\\r").Replace("\n", "\\n").Replace("'", "\\'");
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", s));
            }
            if (typeof(bool).Equals(t))
            {
                bool c = Convert.ToBoolean(v);
                if (c)
                {
                    return("true");
                }
                else
                {
                    return("false");
                }
            }
            if (typeof(Color).Equals(t))
            {
                Color c = (Color)v;
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", GetColorString(c)));
            }
            if (typeof(Font).Equals(t))
            {
                Font ft = (Font)v;
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", GetFontStyleString(ft)));
            }
            if (typeof(Cursor).Equals(t))
            {
                return(string.Format(CultureInfo.InvariantCulture, "'{0}'", GetJavascriptCursorValue((Cursor)v, true)));
            }
            if (VPLUtil.IsNumber(t))
            {
                return(v.ToString());
            }
            if (t.IsArray)
            {
                Array         a  = v as Array;
                StringBuilder sb = new StringBuilder("[");
                if (a.Length > 0)
                {
                    sb.Append(ObjectCreateJavaScriptCode(a.GetValue(0)));
                    for (int i = 1; i < a.Length; i++)
                    {
                        sb.Append(",");
                        sb.Append(ObjectCreateJavaScriptCode(a.GetValue(i)));
                    }
                }
                sb.Append("]");
                return(sb.ToString());
            }
            return(string.Format(CultureInfo.InvariantCulture, "'{0}'", v));
        }