Back to index

lightning-sunbird  0.9+nobinonly
nsIWebProgressListener.idl
Go to the documentation of this file.
00001 /* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
00002  *
00003  * ***** BEGIN LICENSE BLOCK *****
00004  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00005  *
00006  * The contents of this file are subject to the Mozilla Public License Version
00007  * 1.1 (the "License"); you may not use this file except in compliance with
00008  * the License. You may obtain a copy of the License at
00009  * http://www.mozilla.org/MPL/
00010  *
00011  * Software distributed under the License is distributed on an "AS IS" basis,
00012  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00013  * for the specific language governing rights and limitations under the
00014  * License.
00015  *
00016  * The Original Code is the Mozilla browser.
00017  *
00018  * The Initial Developer of the Original Code is
00019  * Netscape Communications, Inc.
00020  * Portions created by the Initial Developer are Copyright (C) 1999
00021  * the Initial Developer. All Rights Reserved.
00022  *
00023  * Contributor(s):
00024  *   Travis Bogard <travis@netscape.com>
00025  *   Darin Fisher <darin@meer.net>
00026  *
00027  * Alternatively, the contents of this file may be used under the terms of
00028  * either of the GNU General Public License Version 2 or later (the "GPL"),
00029  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00030  * in which case the provisions of the GPL or the LGPL are applicable instead
00031  * of those above. If you wish to allow use of your version of this file only
00032  * under the terms of either the GPL or the LGPL, and not to allow others to
00033  * use your version of this file under the terms of the MPL, indicate your
00034  * decision by deleting the provisions above and replace them with the notice
00035  * and other provisions required by the GPL or the LGPL. If you do not delete
00036  * the provisions above, a recipient may use your version of this file under
00037  * the terms of any one of the MPL, the GPL or the LGPL.
00038  *
00039  * ***** END LICENSE BLOCK ***** */
00040 
00041 #include "nsISupports.idl"
00042 
00043 interface nsIWebProgress;
00044 interface nsIRequest;
00045 interface nsIURI;
00046 
00056 [scriptable, uuid(570F39D1-EFD0-11d3-B093-00A024FFC08C)]
00057 interface nsIWebProgressListener : nsISupports
00058 {
00095   const unsigned long STATE_START          = 0x00000001;
00096   const unsigned long STATE_REDIRECTING    = 0x00000002;
00097   const unsigned long STATE_TRANSFERRING   = 0x00000004;
00098   const unsigned long STATE_NEGOTIATING    = 0x00000008;
00099   const unsigned long STATE_STOP           = 0x00000010;
00100 
00101 
00162   const unsigned long STATE_IS_REQUEST     = 0x00010000;
00163   const unsigned long STATE_IS_DOCUMENT    = 0x00020000;
00164   const unsigned long STATE_IS_NETWORK     = 0x00040000;
00165   const unsigned long STATE_IS_WINDOW      = 0x00080000;
00166 
00167 
00182   const unsigned long STATE_RESTORING      = 0x01000000;
00183 
00204   const unsigned long STATE_IS_INSECURE     = 0x00000004;
00205   const unsigned long STATE_IS_BROKEN       = 0x00000001;
00206   const unsigned long STATE_IS_SECURE       = 0x00000002;
00207 
00229   const unsigned long STATE_SECURE_HIGH     = 0x00040000;
00230   const unsigned long STATE_SECURE_MED      = 0x00010000;
00231   const unsigned long STATE_SECURE_LOW      = 0x00020000;
00232 
00233 
00256   void onStateChange(in nsIWebProgress aWebProgress,
00257                      in nsIRequest aRequest,
00258                      in unsigned long aStateFlags,
00259                      in nsresult aStatus);
00260 
00288   void onProgressChange(in nsIWebProgress aWebProgress,
00289                         in nsIRequest aRequest,
00290                         in long aCurSelfProgress,
00291                         in long aMaxSelfProgress,
00292                         in long aCurTotalProgress,
00293                         in long aMaxTotalProgress);
00294 
00310   void onLocationChange(in nsIWebProgress aWebProgress,
00311                         in nsIRequest aRequest,
00312                         in nsIURI aLocation);
00313 
00331   void onStatusChange(in nsIWebProgress aWebProgress,
00332                       in nsIRequest aRequest,
00333                       in nsresult aStatus,
00334                       in wstring aMessage);
00335 
00354   void onSecurityChange(in nsIWebProgress aWebProgress,
00355                         in nsIRequest aRequest,
00356                         in unsigned long aState);
00357 };