1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef PRINTING_PRINTING_CONTEXT_NO_SYSTEM_DIALOG_H_ 6 #define PRINTING_PRINTING_CONTEXT_NO_SYSTEM_DIALOG_H_ 7 8 #include <string> 9 10 #include "printing/printing_context.h" 11 12 namespace base { 13 class DictionaryValue; 14 } 15 16 namespace printing { 17 18 class PRINTING_EXPORT PrintingContextNoSystemDialog : public PrintingContext { 19 public: 20 explicit PrintingContextNoSystemDialog(const std::string& app_locale); 21 virtual ~PrintingContextNoSystemDialog(); 22 23 // PrintingContext implementation. 24 virtual void AskUserForSettings( 25 gfx::NativeView parent_view, 26 int max_pages, 27 bool has_selection, 28 const PrintSettingsCallback& callback) OVERRIDE; 29 virtual Result UseDefaultSettings() OVERRIDE; 30 virtual gfx::Size GetPdfPaperSizeDeviceUnits() OVERRIDE; 31 virtual Result UpdatePrinterSettings(bool external_preview) OVERRIDE; 32 virtual Result InitWithSettings(const PrintSettings& settings) OVERRIDE; 33 virtual Result NewDocument(const base::string16& document_name) OVERRIDE; 34 virtual Result NewPage() OVERRIDE; 35 virtual Result PageDone() OVERRIDE; 36 virtual Result DocumentDone() OVERRIDE; 37 virtual void Cancel() OVERRIDE; 38 virtual void ReleaseContext() OVERRIDE; 39 virtual gfx::NativeDrawingContext context() const OVERRIDE; 40 41 private: 42 DISALLOW_COPY_AND_ASSIGN(PrintingContextNoSystemDialog); 43 }; 44 45 } // namespace printing 46 47 #endif // PRINTING_PRINTING_CONTEXT_NO_SYSTEM_DIALOG_H_ 48