michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #ifndef __nsPrintProgress_h michael@0: #define __nsPrintProgress_h michael@0: michael@0: #include "nsIPrintProgress.h" michael@0: michael@0: #include "nsCOMArray.h" michael@0: #include "nsCOMPtr.h" michael@0: #include "nsIDOMWindow.h" michael@0: #include "nsIPrintStatusFeedback.h" michael@0: #include "nsString.h" michael@0: #include "nsIWindowWatcher.h" michael@0: #include "nsIObserver.h" michael@0: michael@0: class nsPrintProgress : public nsIPrintProgress, public nsIPrintStatusFeedback michael@0: { michael@0: public: michael@0: NS_DECL_THREADSAFE_ISUPPORTS michael@0: NS_DECL_NSIPRINTPROGRESS michael@0: NS_DECL_NSIWEBPROGRESSLISTENER michael@0: NS_DECL_NSIPRINTSTATUSFEEDBACK michael@0: michael@0: nsPrintProgress(); michael@0: virtual ~nsPrintProgress(); michael@0: michael@0: private: michael@0: nsresult ReleaseListeners(); michael@0: michael@0: bool m_closeProgress; michael@0: bool m_processCanceled; michael@0: nsString m_pendingStatus; michael@0: int32_t m_pendingStateFlags; michael@0: nsresult m_pendingStateValue; michael@0: nsCOMPtr m_dialog; michael@0: nsCOMArray m_listenerList; michael@0: nsCOMPtr m_observer; michael@0: }; michael@0: michael@0: #endif