Provides data for the GeckoNavigatingEventHandler event.
Inheritance: System.ComponentModel.CancelEventArgs
示例#1
0
        void Library_Navigating(object sender, GeckoNavigatingEventArgs e)
        {
            Skybound.Gecko.GeckoWebBrowser geckoWebBrowser1 = (Skybound.Gecko.GeckoWebBrowser)sender;

            string newLocation = e.Uri.ToString().Replace("file:///","").Replace(".html",".htm");
            if(e.Uri.ToString().Contains(".html"))
            {

                string URL = e.Uri.ToString();
                using(StreamReader SR = new StreamReader(URL.Replace("file:///",""))){
                    String D = SR.ReadToEnd();
                    D=D.Replace("${BackColor}",ColorTranslator.ToHtml(MainForm.ListBackground()));
                    D=D.Replace("${ForeColor}",ColorTranslator.ToHtml(MainForm.ListForeground()));
                    foreach(KeyValuePair<String, String> Sub in Substitutions)
                    {
                        D=D.Replace("${"+Sub.Key+"}",Sub.Value);
                    }
                    using(StreamWriter SW = new StreamWriter(newLocation))
                    {
                        SW.Write(D);
                        SW.Close();
                    }
                    SR.Close();
                }

                geckoWebBrowser1.Navigate(("file:///"+newLocation));
                e.Cancel=true;
            }
        }
        void nsIWebProgressListener.OnStateChange(nsIWebProgress aWebProgress, nsIRequest aRequest, int aStateFlags, int aStatus)
        {
            bool cancelled = false;

            if ((aStateFlags & nsIWebProgressListenerConstants.STATE_START) != 0 && (aStateFlags & nsIWebProgressListenerConstants.STATE_IS_NETWORK) != 0)
            {
                IsBusy = true;

                Uri uri;
                Uri.TryCreate(nsString.Get(aRequest.GetName), UriKind.Absolute, out uri);

                GeckoNavigatingEventArgs ea = new GeckoNavigatingEventArgs(uri);
                OnNavigating(ea);

                if (ea.Cancel)
                {
                    aRequest.Cancel(0);
                    cancelled = true;
                }
            }

            // maybe we'll add another event here to allow users to cancel certain content types
            //if ((aStateFlags & nsIWebProgressListenerConstants.STATE_TRANSFERRING) != 0)
            //{
            //      GeckoResponse rsp = new GeckoResponse(aRequest);
            //      if (rsp.ContentType == "application/x-executable")
            //      {
            //            // do something
            //      }
            //}

            if (cancelled || ((aStateFlags & nsIWebProgressListenerConstants.STATE_STOP) != 0 && (aStateFlags & nsIWebProgressListenerConstants.STATE_IS_NETWORK) != 0))
            {
                // clear busy state
                IsBusy = false;

                // kill any cached document and raise DocumentCompleted event
                UnloadDocument();
                OnDocumentCompleted(EventArgs.Empty);

                // clear progress bar
                OnProgressChanged(new GeckoProgressEventArgs(100, 100));

                // clear status bar
                StatusText = "";
            }
        }
 /// <summary>Raises the <see cref="Navigating"/> event.</summary>
 /// <param name="e">The data for the event.</param>
 protected virtual void OnNavigating(GeckoNavigatingEventArgs e)
 {
     if (((GeckoNavigatingEventHandler)this.Events[NavigatingEvent]) != null)
         ((GeckoNavigatingEventHandler)this.Events[NavigatingEvent])(this, e);
 }
示例#4
0
 void webBrowser1_Navigating(object sender, GeckoNavigatingEventArgs e)
 {
 }
示例#5
0
		void nsIWebProgressListener.OnStateChange(nsIWebProgress aWebProgress, nsIRequest aRequest, int aStateFlags, int aStatus)
		{
			if ((aStateFlags & nsIWebProgressListenerConstants.STATE_START) != 0 && (aStateFlags & nsIWebProgressListenerConstants.STATE_IS_NETWORK) != 0)
			{
				IsBusy = true;
				
				GeckoNavigatingEventArgs ea = new GeckoNavigatingEventArgs(null);
				OnNavigating(ea);
				
				if (ea.Cancel)
					aRequest.Cancel(0);
			}
			
			if ((aStateFlags & nsIWebProgressListenerConstants.STATE_STOP) != 0 && (aStateFlags & nsIWebProgressListenerConstants.STATE_IS_NETWORK) != 0)
			{
				// clear busy state
				IsBusy = false;
				
				// kill any cached document and raise DocumentCompleted event
				UnloadDocument();
				OnDocumentCompleted(EventArgs.Empty);
				
				// clear progress bar
				OnProgressChanged(new GeckoProgressEventArgs(100, 100));
				
				// clear status bar
				StatusText = "";
			}
		}
示例#6
0
 void geckoWebBrowser1_Navigating(object sender, Skybound.Gecko.GeckoNavigatingEventArgs e)
 {
     //geckoWebBrowser1.Navigate(url);
 }
        /// <summary>
        /// Displays the status progress bar when the renderer is navigating.
        /// </summary>
        private void browser_Navigating(object sender, GeckoNavigatingEventArgs e)
        {
            CommandManager.InvalidateRequerySuggested();

            progress.Visibility = Visibility.Visible;
            progress.Value = 0;
        }
示例#8
0
 private void geckoWebBrowser3_Navigating(object sender, GeckoNavigatingEventArgs e)
 {
 }