Back to index

lightning-sunbird  0.9+nobinonly
StdAfx.h
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: Mozilla-sample-code 1.0
00004  *
00005  * Copyright (c) 2002 Netscape Communications Corporation and
00006  * other contributors
00007  *
00008  * Permission is hereby granted, free of charge, to any person obtaining a
00009  * copy of this Mozilla sample software and associated documentation files
00010  * (the "Software"), to deal in the Software without restriction, including
00011  * without limitation the rights to use, copy, modify, merge, publish,
00012  * distribute, sublicense, and/or sell copies of the Software, and to permit
00013  * persons to whom the Software is furnished to do so, subject to the
00014  * following conditions:
00015  *
00016  * The above copyright notice and this permission notice shall be included
00017  * in all copies or substantial portions of the Software.
00018  *
00019  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
00020  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00021  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
00022  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
00023  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
00024  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
00025  * DEALINGS IN THE SOFTWARE.
00026  *
00027  * Contributor(s):
00028  *   Chak Nanga <chak@netscape.com>
00029  *
00030  * ***** END LICENSE BLOCK ***** */
00031 
00032 // stdafx.h : include file for standard system include files,
00033 //  or project specific include files that are used frequently, but
00034 //      are changed infrequently
00035 //
00036 
00037 #ifndef _STDAFX_H
00038 #define _STDAFX_H
00039 
00040 #if _MSC_VER > 1000
00041 #pragma once
00042 #endif // _MSC_VER > 1000
00043 
00044 #define VC_EXTRALEAN        // Exclude rarely-used stuff from Windows headers
00045 
00046 //
00047 // These headers are very evil, as they will define DEBUG if _DEBUG is
00048 //  defined, which is lame and not what we want for things like
00049 //  MOZ_TRACE_MALLOC and other tools.
00050 // If we do not detect this, various MOZ/NS debug symbols are undefined
00051 //  and we can not build.
00052 // /MDd defines _DEBUG automagically to have the right debug C LIB
00053 //  functions get called (so we can get symbols and hook into malloc).
00054 //
00055 #if !defined(DEBUG)
00056 #define THERECANBENODEBUG
00057 #endif
00058 
00059 #include <afxwin.h>         // MFC core and standard components
00060 #include <afxext.h>         // MFC extensions
00061 #include <afxdtctl.h>        // MFC support for Internet Explorer 4 Common Controls
00062 #include <afxpriv.h>        // Needed for MFC MBCS/Unicode Conversion Macros
00063 #ifndef _AFX_NO_AFXCMN_SUPPORT
00064 #include <afxcmn.h>            // MFC support for Windows Common Controls
00065 #endif // _AFX_NO_AFXCMN_SUPPORT
00066 
00067 //{{AFX_INSERT_LOCATION}}
00068 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
00069 
00070 #if defined(THERECANBENODEBUG) && defined(DEBUG)
00071 #undef DEBUG
00072 #endif
00073 
00074 #include "nsCOMPtr.h"
00075 #include "nsEmbedString.h"
00076 #include "nsCWebBrowser.h"
00077 #include "nsWidgetsCID.h"
00078 #include "nsIDocShell.h"
00079 #include "nsIWebBrowser.h"
00080 #include "nsIBaseWindow.h"
00081 #include "nsIWebNavigation.h"
00082 #include "nsIWebBrowserChrome.h"
00083 #include "nsIWebProgressListener.h"
00084 #include "nsIWebProgress.h"
00085 #include "nsIWindowCreator.h"
00086 #include "nsIInterfaceRequestor.h"
00087 #include "nsIInterfaceRequestorUtils.h"
00088 #include "nsIDocShellTreeOwner.h"
00089 #include "nsIDocShellTreeItem.h"
00090 #include "nsIClipboardCommands.h"
00091 #include "nsIWebBrowserPersist.h"
00092 #include "nsIContextMenuListener2.h"
00093 #include "nsITooltipListener.h"
00094 #include "nsIDOMNode.h"
00095 #include "nsIDOMHTMLAnchorElement.h"
00096 #include "nsIDOMHTMLImageElement.h"
00097 #include "nsIDOMDocument.h"
00098 #include "nsIDOMHTMLDocument.h"
00099 #include "nsIDOMHTMLFrameSetElement.h"
00100 #include "nsIPrompt.h"
00101 #include "nsEmbedAPI.h"         
00102 #include "nsISHistory.h"
00103 #include "nsISHEntry.h"
00104 #include "nsIPref.h"
00105 #include "nsAppDirectoryServiceDefs.h"
00106 #include "nsIProfileChangeStatus.h"
00107 #include "nsIObserverService.h"
00108 #include "imgIContainer.h"
00109 #ifdef MOZ_OLD_CACHE
00110 #include "nsINetDataCacheManager.h"
00111 #endif
00112 #include "nsError.h"
00113 #include "nsIObserver.h"
00114 #include "nsWeakReference.h"
00115 #include "nsIEmbeddingSiteWindow2.h"
00116 #include "nsIWebBrowserFind.h"
00117 #include "nsIWebBrowserFocus.h"
00118 #include "nsIURI.h"
00119 
00120 // Printer Includes
00121 #include "nsIWebBrowserPrint.h"
00122 #include "nsIDOMWindow.h"
00123 
00124 // MfcEmbed #defines
00125 
00126 // USE_PROFILES - If defined, nsIProfile will be used which allows for
00127 // multiple profiles. If not defined, a standalone directory service provider
00128 // will be used to provide "profile" locations to one specified directory.
00129 // In the case, the mozilla profile DLL is not needed.
00130 
00131 #define USE_PROFILES 1
00132 
00133 #endif //_STDAFX_H