Back to index

lightning-sunbird  0.9+nobinonly
nsISHEntry.idl
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
00002 /* ***** BEGIN LICENSE BLOCK *****
00003  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00004  *
00005  * The contents of this file are subject to the Mozilla Public License Version
00006  * 1.1 (the "License"); you may not use this file except in compliance with
00007  * the License. You may obtain a copy of the License at
00008  * http://www.mozilla.org/MPL/
00009  *
00010  * Software distributed under the License is distributed on an "AS IS" basis,
00011  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00012  * for the specific language governing rights and limitations under the
00013  * License.
00014  *
00015  * The Original Code is mozilla.org code.
00016  *
00017  * The Initial Developer of the Original Code is
00018  * Netscape Communications Corporation.
00019  * Portions created by the Initial Developer are Copyright (C) 1998
00020  * the Initial Developer. All Rights Reserved.
00021  *
00022  * Contributor(s):
00023  *   Radha Kulkarni <radha@netscape.com>
00024  *
00025  * Alternatively, the contents of this file may be used under the terms of
00026  * either of the GNU General Public License Version 2 or later (the "GPL"),
00027  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00028  * in which case the provisions of the GPL or the LGPL are applicable instead
00029  * of those above. If you wish to allow use of your version of this file only
00030  * under the terms of either the GPL or the LGPL, and not to allow others to
00031  * use your version of this file under the terms of the MPL, indicate your
00032  * decision by deleting the provisions above and replace them with the notice
00033  * and other provisions required by the GPL or the LGPL. If you do not delete
00034  * the provisions above, a recipient may use your version of this file under
00035  * the terms of any one of the MPL, the GPL or the LGPL.
00036  *
00037  * ***** END LICENSE BLOCK ***** */
00038 
00045 #include "nsIHistoryEntry.idl"
00046 
00047 interface nsILayoutHistoryState;
00048 interface nsIContentViewer;
00049 interface nsIURI;
00050 interface nsIInputStream;
00051 interface nsIDocShellTreeItem;
00052 interface nsISupportsArray;
00053 %{C++
00054 struct nsRect;
00055 %}
00056 [ref] native nsRect(nsRect);
00057 
00058 [scriptable, uuid(542a98b9-2889-4922-aaf4-02b6056f4136)]
00059 interface nsISHEntry : nsIHistoryEntry
00060 {
00062     void setURI(in nsIURI aURI);
00063 
00065     attribute nsIURI referrerURI;
00066 
00068     attribute nsIContentViewer contentViewer;
00069 
00071     attribute boolean sticky;
00072 
00074     attribute nsISupports windowState;
00075 
00081     [noscript] void getViewerBounds(in nsRect bounds);
00082     [noscript] void setViewerBounds([const] in nsRect bounds);
00083 
00091     void addChildShell(in nsIDocShellTreeItem shell);
00092 
00096     nsIDocShellTreeItem childShellAt(in long index);
00097 
00101     void clearChildShells();
00102 
00104     attribute nsISupportsArray refreshURIList;
00105 
00113     void syncPresentationState();
00114 
00116     void setTitle(in AString aTitle);
00117 
00119     attribute nsIInputStream postData;
00120 
00122     attribute nsILayoutHistoryState layoutHistoryState;
00123 
00125     attribute nsISHEntry parent;
00126 
00131     attribute unsigned long loadType;
00132 
00137     attribute unsigned long ID;
00138 
00147     attribute unsigned long pageIdentifier;
00148 
00150     attribute nsISupports cacheKey;
00151 
00153     attribute boolean saveLayoutStateFlag;
00154 
00156     attribute boolean expirationStatus;
00157 
00162     attribute ACString contentType; 
00163  
00165     void setScrollPosition(in long x, in long y);
00166     void getScrollPosition(out long x, out long y);
00167 
00169     void create(in nsIURI URI, in AString title,
00170                 in nsIInputStream inputStream,
00171                 in nsILayoutHistoryState layoutHistoryState,
00172                 in nsISupports cacheKey, in ACString contentType);
00173 
00174     nsISHEntry clone();
00175 
00177     void setIsSubFrame(in boolean aFlag);
00178 
00182     nsIContentViewer getAnyContentViewer(out nsISHEntry ownerEntry);
00183 };
00184 
00185 [scriptable, uuid(ab044652-b327-4108-b7ba-f72c4b4fec9d)]
00186 interface nsISHEntry_MOZILLA_1_8_BRANCH : nsISHEntry
00187 {
00188     void create_MOZILLA_1_8_BRANCH(in nsIURI URI, in AString title,
00189                                    in nsIInputStream inputStream,
00190                                    in nsILayoutHistoryState layoutHistoryState,
00191                                    in nsISupports cacheKey,
00192                                    in ACString contentType,
00193                                    in nsISupports owner);
00194 
00200     readonly attribute nsISupports owner;
00201 };
00202 
00203 [scriptable, uuid(67590da1-bafc-4638-8ccd-33dfd1551c61)]
00204 interface nsISHEntry_MOZILLA_1_8_BRANCH2 : nsISHEntry_MOZILLA_1_8_BRANCH
00205 {
00209     attribute nsIURI ownerURI;
00210 };
00211 
00212 %{ C++
00213 // {BFD1A791-AD9F-11d3-BDC7-0050040A9B44}
00214 #define NS_SHENTRY_CID \
00215 {0xbfd1a791, 0xad9f, 0x11d3, {0xbd, 0xc7, 0x0, 0x50, 0x4, 0xa, 0x9b, 0x44}}
00216 
00217 #define NS_SHENTRY_CONTRACTID \
00218     "@mozilla.org/browser/session-history-entry;1"
00219 
00220 %}
00221