예제 #1
0
파일: frmMain.cs 프로젝트: vebin/NanUI
        public frmMain()
            : base("res://assets/main.html", true)
        {
            InitializeComponent();

            GlobalObject.Add("hostEditor", new HostEditor(this));
        }
예제 #2
0
        public Main() : base("http://res.welcome.local/www/index.html")
        {
            InitializeComponent();

            GlobalObject.Add("hostBridge", new JsCodeEditorObject(this));

            //ShowDevTools();
        }
예제 #3
0
        //NanUI窗口会自动检测是否运行在XP下面。
        //在XP环境下DWM自动禁用,NanUI改为重绘Nonclient Area的方式来进行窗口绘制。
        //当然,也可以在Win7等支持DWM的系统中禁用DWM窗口绘制,如下,构造第二个参数设置为true
        //将强制窗口使用Nanclient区域重绘。
        public EditorForm()
            : base("http://www/main.html")
        {
            InitializeComponent();



            GlobalObject.Add("hostEditor", new JsCodeEditorObject(this));
        }
예제 #4
0
파일: Main.cs 프로젝트: radtek/ExcelAPP
        public void SetURL(string ruleID, string DWBH)
        {
            var host = ConfigurationManager.AppSettings["Host"].ToString();

            this.LoadUrl($"{host}/Excel/asserts/import.html?id=" + ruleID + "&dwbh=" + DWBH);


            LoadHandler.OnLoadStart += LoadHandler_OnLoadStart;
            GlobalObject.Add("APIBridge", new JSMainObject(this));
        }
예제 #5
0
        public Login() : base("http://localhost/Excel/asserts/login.html")
        {
            this.StartPosition = FormStartPosition.CenterScreen;
            var host = ConfigurationManager.AppSettings["Host"].ToString();

            this.LoadUrl($"{host}/Excel/asserts/login.html");
            //this.LoadUrl("http://www.baidu.com");
            InitializeComponent();

            LoadHandler.OnLoadStart += LoadHandler_OnLoadStart;

            GlobalObject.Add("APIBridge", new JSLoginObject(this));
        }
예제 #6
0
        public void SetURL(string url)
        {
            var host = ConfigurationManager.AppSettings["Host"].ToString();

            if (url.IndexOf("http") == -1)
            {
                this.LoadUrl($"{host}/Excel/" + url);
            }
            else
            {
                this.LoadUrl(url);
            }
            GlobalObject.Add("APIBridge", new JSDEVObject(this));
        }
예제 #7
0
        public Main() : base("http://localhost/Excel/asserts/frame.html")
        {
            var host = ConfigurationManager.AppSettings["Host"].ToString();

            this.LoadUrl($"{host}/Excel/asserts/frame.html");
            InitializeComponent();

            LoadHandler.OnLoadStart += LoadHandler_OnLoadStart;

            GlobalObject.Add("APIBridge", new JSMainObject(this));

            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
            //Chromium.ShowDevTools();
        }
예제 #8
0
        public frmMain()
            : base("res://assets/main.html")
        {
            InitializeComponent();

            GlobalObject.Add("hostEditor", new HostEditor(this));

            LoadHandler.OnLoadStart += (s, e) =>
            {
                if (e.Frame.IsMain)
                {
                    //ShowDevTools();
                }
            };
        }
예제 #9
0
        protected void InitializeChromium(string initialUrl)
        {
            if (string.IsNullOrEmpty(initialUrl))
            {
                this.browser = new ChromiumBrowser();
            }
            else
            {
                this.browser = new ChromiumBrowser(initialUrl);
            }
            this.browser.Dock = System.Windows.Forms.DockStyle.Fill;
            this.browser.RemoteCallbackInvokeMode = JSInvokeMode.Inherit;
            this.Controls.Add(this.browser);

            BrowserHandle = browser.Handle;

            browser.BrowserCreated += (sender, args) =>
            {
                AttachInterceptorToChromiumBrowser();
            };


            LifeSpanHandler.OnBeforePopup += (sender, args) =>
            {
            };

            DragHandler.OnDraggableRegionsChanged += (sender, args) =>
            {
                var regions = args.Regions;

                if (regions.Length > 0)
                {
                    foreach (var region in regions)
                    {
                        var rect = new Rectangle(region.Bounds.X, region.Bounds.Y, region.Bounds.Width, region.Bounds.Height);

                        if (draggableRegion == null)
                        {
                            draggableRegion = new Region(rect);
                        }
                        else
                        {
                            if (region.Draggable)
                            {
                                draggableRegion.Union(rect);
                            }
                            else
                            {
                                draggableRegion.Exclude(rect);
                            }
                        }
                    }
                }
            };

            DragHandler.OnDragEnter += (s, e) =>
            {
                // 禁止往窗口上拖东西
                e.SetReturnValue(true);
            };

            LoadHandler.OnLoadEnd += (sender, args) =>
            {
                args.Frame.ExecuteJavaScript(JS_WINDOW_SYSTEM_COMMAND_NOTIFY, null, 0);
                HideInitialSplash();
            };

            LoadHandler.OnLoadError += (sender, args) =>
            {
                args.Frame.ExecuteJavaScript(JS_WINDOW_SYSTEM_COMMAND_NOTIFY, null, 0);
                HideInitialSplash();
            };

            GlobalObject.Add("NanUI", new JsHostWindowObject(this));
        }
 public ExtendedChromiumBrowser(string url) : base(url)
 {
     GlobalObject.Add("CallbackObject", CallBackListener);
 }
 public ExtendedChromiumBrowser()
 {
     GlobalObject.Add("CallbackObject", CallBackListener);
 }
예제 #12
0
 public Form1() : base("embedded://www/index.html")
 {
     InitializeComponent();
     GlobalObject.Add("Host", new MusicJSObject(this));
 }