Esempio n. 1
0
        public void Initialize()
        {
            this.Height             = this.toolStrip1.Height + 2;
            urlTextbox.AutoSize     = true;
            urlTextbox.DoubleClick += new EventHandler(urlTextbox_DoubleClick);
            urlTextbox.Click       += new EventHandler(urlTextbox_Click);
            MyBrowser browser = WebBrowser as MyBrowser;

            if (browser != null)
            {
                backButton.Enabled    = browser.CanGoBack;
                forwardButton.Enabled = browser.CanGoForward;
                if (Host is AutoBrowser)
                {
                    TaskToolStrip trip = new TaskToolStrip(browser);
                    trip.RenderMode = ToolStripRenderMode.ManagerRenderMode;
                    trip.Dock       = DockStyle.Top;
                    this.Controls.Add(trip);
                    trip.BringToFront();
                    trip.NavBind();
                    this.Height = this.toolStrip1.Height + trip.Height + 2;
                }
                browser.CommandStateChange += new csExWB.CommandStateChangeEventHandler(browser_CommandStateChange);
            }
            WinformBrowser wb = WebBrowser as WinformBrowser;

            if (wb != null)
            {
                //configButton.Visible = false;
                backButton.Enabled      = wb.CanGoBack;
                forwardButton.Enabled   = wb.CanGoForward;
                wb.CanGoBackChanged    += new EventHandler(wb_CanGoBackChanged);
                wb.CanGoForwardChanged += new EventHandler(wb_CanGoForwardChanged);
            }
        }
Esempio n. 2
0
        public override void Perform()
        {
            // Window.Close();
            MyBrowser browser = AppContext.Browser as MyBrowser;

            browser.PopWindow(false);
        }
Esempio n. 3
0
        /// <summary>
        /// 挂载浏览器
        /// </summary>
        public void Attach(MyBrowser browser)
        {
            this.browser  = browser;
            this.Selector = browser.Selector;
            if (treeDom == null)
            {
                return;
            }

            browser.WBKeyUp -= new csExWB.WBKeyUpEventHandler(browser_WBKeyUp);
            selectorStripButton.CheckedChanged -= new EventHandler(selectorStripButton_CheckedChanged);
            browser.WBLButtonDown -= new HTMLMouseEventHandler(MyBrowser_WBLButtonDown);
            browser.WBLButtonUp   -= new HTMLMouseEventHandler(MyBrowser_WBLButtonUp);

            browser.WBKeyUp += new csExWB.WBKeyUpEventHandler(browser_WBKeyUp);
            selectorStripButton.CheckedChanged += new EventHandler(selectorStripButton_CheckedChanged);
            browser.WBLButtonDown += new HTMLMouseEventHandler(MyBrowser_WBLButtonDown);
            browser.WBLButtonUp   += new HTMLMouseEventHandler(MyBrowser_WBLButtonUp);


            treeDom.AfterSelect          -= new TreeViewEventHandler(DomTreeView_AfterSelect);
            treeDom.AfterSelect          += new TreeViewEventHandler(DomTreeView_AfterSelect);
            browser.DocumentFullComplete += browser_DocumentFullComplete;
            RefreshTreeView();
        }
Esempio n. 4
0
 public TaskToolStrip(MyBrowser browser)
 {
     this.browser = browser;
     this.context = browser.ObjectForScripting as FakeHttpContext;
     this.context.ViewContainer = this;
     browser.NavigateComplete2 += new csExWB.NavigateComplete2EventHandler(browser_NavigateComplete2);
 }
Esempio n. 5
0
        /// <summary>
        /// 获取某一个元素的屏幕位置
        /// </summary>
        /// <param name="browser"></param>
        /// <param name="element"></param>
        /// <returns></returns>
        static public Rectangle GeScreenPosition(this Browser browser, IHTMLElement element)
        {
            Rectangle    rect  = GetAbsolutePosition(browser, element);
            IHTMLElement frame = GetFrame(element);
            Rectangle    frameRect;

            while (frame != null)
            {
                frameRect = GetAbsolutePosition(browser, frame);
                rect.Offset(frameRect.X, frameRect.Y);
                frame = GetFrame(frame);
            }
            //frame = GetFrame(frame);
            //if (frame != null)
            //{
            //    frameRect = GetAbsolutePosition(browser, frame);
            //    rect.Offset(frameRect.X, frameRect.Y);
            //}
            int       width  = element.offsetWidth;
            int       height = element.offsetHeight;
            MyBrowser my     = browser.GetMyBrowser();

            rect.Offset(my.PointToScreen(Point.Empty));
            return(rect);
        }
Esempio n. 6
0
        private void SimulateClick(IHTMLElement el)
        {
            BrowserWindow bw = browser as BrowserWindow;

            if (bw != null)
            {
                MyBrowser wb = bw.WBBrowser as MyBrowser;

                Point p          = wb.GetScroll();
                int   scrollTop  = p.Y;
                int   scrollLeft = p.X;
                logger.InfoFormat("scrolltop:{0},scrollleft:{1}", scrollTop, scrollLeft);

                Rectangle rect = browser.GetAbsolutePosition(el);

                System.Windows.Forms.Control control = wb as System.Windows.Forms.Control;
                //获取控件绝对位置
                Point location = control.PointToScreen(Point.Empty);

                Point newPosition = new Point(rect.X + rect.Width / 2 - scrollLeft, rect.Y + location.Y - scrollTop + 2);
                logger.InfoFormat("new position, x:{0}, y:{0}", newPosition.X, newPosition.Y);
                AutoRobo.Core.Macro.Macror.LinearSmoothMove(newPosition, 200);
                MouseSimulator.X = newPosition.X;
                MouseSimulator.Y = newPosition.Y;
                MouseSimulator.Click(System.Windows.Forms.MouseButtons.Left);
            }
        }
 /// <summary>
 /// FillView content clicked
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 async void HubGridView_ItemClick_1(object sender, ItemClickEventArgs e)
 {
     // can't get more ifthere's no internet
     if (await IsInternet())
     {
         var _Item = e.ClickedItem as IArticle;
         if (_Item is AdvertArticle)
         {
             return;
         }
         else if (_Item is SummaryArticle)
         {
             return;
         }
         else if (_Item is CalendarArticle)
         {
             return;
         }
         else if (_Item is WeatherArticle)
         {
             return;
         }
         else
         {
             var _AppHubViewModel = this.DataContext as AppHubViewModel;
             if (_AppHubViewModel != null)
             {
                 SuspendAds();
                 var _Feed = _AppHubViewModel
                             .Feeds.First(x => x.Articles.Contains(_Item)).Feed;
                 MyBrowser.Navigate(_Item, _Feed);
             }
         }
     }
 }
Esempio n. 8
0
        public override void Perform()
        {
            MyBrowser browser = AppContext.Browser as MyBrowser;

            //Window.Forward();
            browser.GoForward();
        }
Esempio n. 9
0
        /// <summary>
        /// 支持多浏览器切换
        /// </summary>
        /// <param name="webBrowser">激活的浏览器</param>
        protected virtual void AttachBrowser(ICoreBrowser activeBrowser)
        {
            if (activeBrowser == webBrowser)
            {
                return;
            }
            browserToolbar.WebBrowser = activeBrowser;
            if (webBrowser == null)
            {
                activeBrowser.Navigate(StringHelper.Domain + "/page/start");
                browserToolbar.Host = this;
                browserToolbar.Initialize();
            }
            else
            {
                DetachBrowser(webBrowser);
            }
            MyBrowser myBrowser = activeBrowser as MyBrowser;

            if (myBrowser != null)
            {
                //加载配置
                myBrowser.RefreshConfig();
                myBrowser.ProgressChange       += new ProgressChangeEventHandler(Browser_ProgressChange);
                myBrowser.StatusTextChange     += new StatusTextChangeEventHandler(webBrowser_StatusTextChange);
                myBrowser.DocumentFullComplete += new EventHandler(browser_DocumentFullComplete);
                myBrowser.NavigateComplete2    += new NavigateComplete2EventHandler(myBrowser_NavigateComplete2);
            }
            webBrowser = activeBrowser;
        }
Esempio n. 10
0
        private MyBrowser CreateBrowser()
        {
            if (((MyBrowser)AppContext.Browser).InvokeRequired)
            {
                return((MyBrowser)((MyBrowser)AppContext.Browser).Invoke(new Func <MyBrowser>(CreateBrowser)));
            }
            MyBrowser newBrowser = new MyBrowser()
            {
                DownloadActiveX = this.DownloadActivex,
                DownloadFlash   = this.DownloadFlash,
                DownloadScripts = this.DownloadScript,
                DownloadImages  = this.DownloadImages,
                DownloadSounds  = this.DownloadSounds,
                DownloadVideo   = this.DownloadVideo,
                Visible         = this.Visibility
            };

            IViewArea view = Ioc.Container.Get <IViewArea>();

            //加载浏览器
            view.AddControl(newBrowser);

            float zoomvalue = (view.Width * 100 / ((MyBrowser)AppContext.Browser).FindForm().Width);

            logger.Info("zoomvalue :" + zoomvalue);
            if (zoomvalue < 10)
            {
                zoomvalue = 10;
            }
            newBrowser.SetOpticalZoomValue((int)zoomvalue);
            return(newBrowser);
        }
Esempio n. 11
0
        public override void Perform()
        {
            //Window.Refresh();
            MyBrowser browser = AppContext.Browser as MyBrowser;

            browser.Refresh();
        }
Esempio n. 12
0
        public void BrowserAttach()
        {
            MyBrowser browser = AppContext.Current.Browser as MyBrowser;

            htmlTree.Attach(browser);
            browser.DocumentFullComplete -= new EventHandler(Reload);
            browser.DocumentFullComplete += new EventHandler(Reload);
        }
Esempio n. 13
0
        private void Form1_Load(object sender, EventArgs e)
        {
            browser = MyBrowser.GetBrowser();
            InitializeTV();
            //TV_Show.SelectedNode = null;
            //TV_Show.SelectedNode.Checked = false;

            InitializeLV();
        }
Esempio n. 14
0
        public PopIE()
        {
            InitializeComponent();
            browser            = new MyBrowser();
            browser.Dock       = DockStyle.Fill;
            browser.AllowAlert = true;

            this.Controls.Add(browser);
        }
Esempio n. 15
0
 void settings_ClearCache(object sender, EventArgs e)
 {
     new System.Threading.Thread(() =>
     {
         MyBrowser browser = WebBrowser as MyBrowser;
         browser.ClearHistory();
         browser.ClearSessionCookies();
     }).Start();
 }
Esempio n. 16
0
        public bool Recognize(ScriptObject so)
        {
            return(Method <bool> .Watch("KeywordMatchHandler:", () =>
            {
                MyBrowser browser = Context.CoreBrowser as MyBrowser;
                string innerText = browser.GetActiveDocument().body.innerText;

                return (new Regex(so.Similarity)).IsMatch(innerText);
            }));
        }
Esempio n. 17
0
        protected override void AttachBrowser(ICoreBrowser browser)
        {
            fakeHttpContext = new FakeHttpContext(webBrowser);
            fakeHttpContext.Initialize();
            MyBrowser mybrower = (MyBrowser)webBrowser;

            mybrower.ObjectForScripting = fakeHttpContext;
            mybrower.DownloadComplete  += new csExWB.DownloadCompleteEventHandler(mybrower_DownloadComplete);

            base.AttachBrowser(browser);
        }
Esempio n. 18
0
        public ImageCroper(MyBrowser myBrowser)
        {
            this.myBrowser = myBrowser;


            myBrowser.WBMouseMove   += new csExWB.HTMLMouseEventHandler(myBrowser_WBMouseMove);
            myBrowser.WBLButtonDown += new csExWB.HTMLMouseEventHandler(myBrowser_WBLButtonDown);
            myBrowser.WBLButtonUp   += new csExWB.HTMLMouseEventHandler(myBrowser_WBLButtonUp);

            myBrowser.Paint += new PaintEventHandler(myBrowser_Paint);
        }
Esempio n. 19
0
        static public Form CreateForm(MyBrowser ie)
        {
            JintConsole.ie = ie;
            Form form = new Form();

            form.Text = "代码编辑器";
            form.Size = new System.Drawing.Size(800, 600);
            // textEditor = JintCreator.CreateEditor(ie);
            form.FormClosed      += new FormClosedEventHandler(form_FormClosed);
            textEditor.RunBefore += new EventHandler(textEditor_RunBefore);
            return(form);
        }
Esempio n. 20
0
 protected override void OnLoad(EventArgs e)
 {
     base.OnLoad(e);
     Text = "回帖工具";
     if (DesignMode)
     {
         return;
     }
     hostBrowser          = Host.Browser as MyBrowser;
     browser.WBLButtonUp += new csExWB.HTMLMouseEventHandler(browser_WBLButtonUp);
     Goto(StringHelper.Domain + "/portal/answers/index");
 }
Esempio n. 21
0
 protected override void OnViewLoad(object sender, EventArgs e)
 {
     editBrowser = Context.Browser as MyBrowser;
     //editBrowser.WBKeyDown += new csExWB.WBKeyDownEventHandler(RoboBrowser_WBKeyDown);
     //editBrowser.WBKeyUp += new csExWB.WBKeyUpEventHandler(RoboBrowser_WBKeyUp);
     editBrowser.WBEvaluteNewWindow += new csExWB.EvaluateNewWindowEventHandler(editBrowser_WBEvaluteNewWindow);
     //editBrowser.WBLButtonUp += new csExWB.HTMLMouseEventHandler(editBrowser_WBLButtonUp);
     //使用WBLButtonDown事件是因为该事件有对e.Handled做处理,WBLButtonUp事件e.Handled=true无效
     //editBrowser.WBLButtonDown += new csExWB.HTMLMouseEventHandler(editBrowser_WBLButtonDown);
     Context.State.PropertyChanged += new System.ComponentModel.PropertyChangedEventHandler(State_PropertyChanged);
     base.OnViewLoad(sender, e);
 }
Esempio n. 22
0
        /// <summary>
        /// 更新整个树信息,当浏览器数据加载完成后
        /// </summary>
        /// <param name="data"></param>
        public void UpdateView(MyBrowser browser)
        {
            //避免重复加载数据
            int hashCode = browser.LocationUrl.GetHashCode();

            if (pageHashCode == hashCode)
            {
                return;
            }
            pageHashCode = hashCode;
            RefreshTreeView();
        }
Esempio n. 23
0
 protected override void OnLoad(EventArgs e)
 {
     base.OnLoad(e);
     hostBrowser = Host.Browser as MyBrowser;
     Text        = "后台管理";
     if (DesignMode)
     {
         return;
     }
     browser.ObjectForScripting = this;
     Goto(StringHelper.Domain + "/host/task?url=" + HostUrl);
 }
Esempio n. 24
0
        private void DetachBrowser(ICoreBrowser browser)
        {
            MyBrowser myBrowser = browser as MyBrowser;

            if (myBrowser != null)
            {
                myBrowser.ProgressChange       -= new ProgressChangeEventHandler(Browser_ProgressChange);
                myBrowser.StatusTextChange     -= new StatusTextChangeEventHandler(webBrowser_StatusTextChange);
                myBrowser.DocumentFullComplete -= new EventHandler(browser_DocumentFullComplete);
                myBrowser.NavigateComplete2    -= new NavigateComplete2EventHandler(myBrowser_NavigateComplete2);
            }
        }
        void Context_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            if (e.PropertyName == "MultiStepActionParameter")
            {
                MyBrowser browser = Context.Browser as MyBrowser;

                if (AppSettings.Instance.ListToListAllowPrompt)
                {
                    CollectDialog dialog = new CollectDialog();
                    dialog.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
                    dialog.ShowDialog();
                }
            }
        }
Esempio n. 26
0
 private void GoSearchToolStripButtonClickHandler(object sender, EventArgs e)
 {
     try
     {
         if (sender == homeBtn)
         {
             Go(StringHelper.Domain);
         }
         else if (sender == this.urlTextbox)
         {
             string text = urlTextbox.Text;
             Go(text);
         }
         else if (sender == this.backButton)
         {
             WebBrowser.GoBack();
         }
         else if (sender == this.forwardButton)
         {
             WebBrowser.GoForward();
         }
         else if (sender == this.refreshButton)
         {
             WebBrowser.Refresh();
         }
         else if (sender == configButton)
         {
             BrowserSettings settings = new BrowserSettings();
             settings.ClearCache += new EventHandler(settings_ClearCache);
             if (settings.ShowDialog() == DialogResult.OK)
             {
                 MyBrowser webBrowser = WebBrowser as MyBrowser;
                 if (webBrowser == null)
                 {
                     return;
                 }
                 webBrowser.RefreshConfig();
             }
         }
         if (CommandClick != null)
         {
             CommandClick(sender, e);
         }
     }
     catch (Exception ex)
     {
         logger.Fatal(ex);
     }
 }
Esempio n. 27
0
        static public void SingleThreadUIRun(System.Action <Browser> action)
        {
            WatiN.Core.Settings.WaitForCompleteTimeOut = 5;
            MainForm = new TestBrowser();
            MainForm.Browser.AllowAlert     = true;
            MainForm.Browser.DownloadImages = true;
            WB = MainForm.Browser;
            MainForm.Browser.ObjectForScripting = CreateContext(MainForm.Browser);
            if (action != null)
            {
                action(Context.Browser);
            }

            Application.Run(MainForm);
        }
Esempio n. 28
0
        protected override void OnLoad(EventArgs e)
        {
            Assembly assembly  = Assembly.GetAssembly(typeof(MakerView));
            Stream   xmlStream = assembly.GetManifestResourceStream("AutoRobo.Makers.dockConfig.xml");

            dockPanel.LoadFromXml(xmlStream, m_deserializeDockContent);
            xmlStream.Close();
            //formPreview.Show(this.dockPanel, DockState.DockRight);
            MyBrowser browser = AppContext.Current.Browser as MyBrowser;

            browser.WBContextMenu += new csExWB.ContextMenuEventHandler(MakerView_WBContextMenu);
            this.tsbAddAction.DropDownItems.AddRange(GetItems());
            htmlView.BrowserAttach();
            base.OnLoad(e);
        }
Esempio n. 29
0
        private void InnerInit()
        {
            webBrowser = new MyBrowser();
            //注册插件
            //Register("TaskPlugin");
            //Register("DebugerUI");
            Register("CutPaper");
            Register("Reply");
            Register("BackForm");
            Control c = webBrowser as Control;

            c.Dock = DockStyle.Fill;
            this.Controls.Add(c);
            c.BringToFront();
        }
Esempio n. 30
0
        public IResult Process(FakeHttpContext context, System.Runtime.InteropServices.Expando.IExpando expando)
        {
            browser = context.CoreBrowser;
            ScriptObject so = JsonConvert.DeserializeObject <ScriptObject>(expando.GetString("Model"));

            scriptId = so.Id;
            string modelId = so.ModelId;

            //纯脚本执行,没有关联数据模型
            if (string.IsNullOrEmpty(so.ModelId) || modelId == "0")
            {
                Publish(modelId, scriptId, "0");
            }
            else
            {
                List <SchemaObject> source = ServerApiInvoker.Get_shcema_objects(Identity.UserId, scriptId);
                if (source.Count == 0)
                {
                    context.GoTo(StringHelper.Domain + "/portal/thread/create/" + modelId, "_blank");
                }
                else
                {
                    SchemaObjectSelect selectDialog = new SchemaObjectSelect(modelId, source);
                    selectDialog.Context = context;
                    string schemaObjectId = "0";
                    bool   appendLink     = false;
                    if (selectDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        schemaObjectId = selectDialog.SchemaObjectId;
                        appendLink     = selectDialog.AppendOutLink;
                    }
                    if (schemaObjectId == "0")
                    {
                        return(new EmptyResult());
                    }

                    if (Identity.MockUser == null)
                    {
                        System.Windows.Forms.MessageBox.Show("请先登录");
                    }
                    else
                    {
                        Publish(modelId, scriptId, schemaObjectId);
                    }
                }
            }
            return(new EmptyResult());
        }