Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: printing/printing_context_win.h

Issue 557663002: Restored printing windows context for builds without preview. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Tue Sep 9 12:14:54 PDT 2014 Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « printing/printing_context_system_dialog_win.cc ('k') | printing/printing_context_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef PRINTING_PRINTING_CONTEXT_WIN_H_ 5 #ifndef PRINTING_PRINTING_CONTEXT_WIN_H_
6 #define PRINTING_PRINTING_CONTEXT_WIN_H_ 6 #define PRINTING_PRINTING_CONTEXT_WIN_H_
7 7
8 #include <ocidl.h>
9 #include <commdlg.h>
10
11 #include <string> 8 #include <string>
12 9
13 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
14 #include "build/build_config.h"
15 #include "printing/printing_context.h" 11 #include "printing/printing_context.h"
16 #include "ui/gfx/native_widget_types.h" 12 #include "ui/gfx/native_widget_types.h"
17 13
18 namespace printing { 14 namespace printing {
19 15
16 class PrintSettings;
17
20 class PRINTING_EXPORT PrintingContextWin : public PrintingContext { 18 class PRINTING_EXPORT PrintingContextWin : public PrintingContext {
21 public: 19 public:
22 explicit PrintingContextWin(Delegate* delegate); 20 explicit PrintingContextWin(Delegate* delegate);
23 virtual ~PrintingContextWin(); 21 virtual ~PrintingContextWin();
24 22
25 // PrintingContext implementation. 23 // PrintingContext implementation.
26 virtual void AskUserForSettings( 24 virtual void AskUserForSettings(
27 int max_pages, 25 int max_pages,
28 bool has_selection, 26 bool has_selection,
29 const PrintSettingsCallback& callback) OVERRIDE; 27 const PrintSettingsCallback& callback) OVERRIDE;
30 virtual Result UseDefaultSettings() OVERRIDE; 28 virtual Result UseDefaultSettings() OVERRIDE;
31 virtual gfx::Size GetPdfPaperSizeDeviceUnits() OVERRIDE; 29 virtual gfx::Size GetPdfPaperSizeDeviceUnits() OVERRIDE;
32 virtual Result UpdatePrinterSettings(bool external_preview, 30 virtual Result UpdatePrinterSettings(bool external_preview,
33 bool show_system_dialog) OVERRIDE; 31 bool show_system_dialog) OVERRIDE;
34 virtual Result InitWithSettings(const PrintSettings& settings) OVERRIDE; 32 virtual Result InitWithSettings(const PrintSettings& settings) OVERRIDE;
35 virtual Result NewDocument(const base::string16& document_name) OVERRIDE; 33 virtual Result NewDocument(const base::string16& document_name) OVERRIDE;
36 virtual Result NewPage() OVERRIDE; 34 virtual Result NewPage() OVERRIDE;
37 virtual Result PageDone() OVERRIDE; 35 virtual Result PageDone() OVERRIDE;
38 virtual Result DocumentDone() OVERRIDE; 36 virtual Result DocumentDone() OVERRIDE;
39 virtual void Cancel() OVERRIDE; 37 virtual void Cancel() OVERRIDE;
40 virtual void ReleaseContext() OVERRIDE; 38 virtual void ReleaseContext() OVERRIDE;
41 virtual gfx::NativeDrawingContext context() const OVERRIDE; 39 virtual gfx::NativeDrawingContext context() const OVERRIDE;
42 40
43 protected: 41 protected:
44 virtual scoped_ptr<DEVMODE, base::FreeDeleter> ShowPrintDialog( 42 static HWND GetRootWindow(gfx::NativeView view);
45 HANDLE printer,
46 gfx::NativeView parent_view,
47 DEVMODE* dev_mode);
48
49 private:
50 // Used in response to the user canceling the printing.
51 static BOOL CALLBACK AbortProc(HDC hdc, int nCode);
52 43
53 // Reads the settings from the selected device context. Updates settings_ and 44 // Reads the settings from the selected device context. Updates settings_ and
54 // its margins. 45 // its margins.
55 virtual Result InitializeSettings(const base::string16& device_name, 46 virtual Result InitializeSettings(const base::string16& device_name,
56 DEVMODE* dev_mode); 47 DEVMODE* dev_mode);
57 48
49 HDC contest() const { return context_; }
50
51 void set_context(HDC context) { context_ = context; }
52
53 private:
54 virtual scoped_ptr<DEVMODE, base::FreeDeleter> ShowPrintDialog(
55 HANDLE printer,
56 gfx::NativeView parent_view,
57 DEVMODE* dev_mode);
58
59 // Used in response to the user canceling the printing.
60 static BOOL CALLBACK AbortProc(HDC hdc, int nCode);
61
58 // The selected printer context. 62 // The selected printer context.
59 HDC context_; 63 HDC context_;
60 64
61 DISALLOW_COPY_AND_ASSIGN(PrintingContextWin); 65 DISALLOW_COPY_AND_ASSIGN(PrintingContextWin);
62 }; 66 };
63 67
64 } // namespace printing 68 } // namespace printing
65 69
66 #endif // PRINTING_PRINTING_CONTEXT_WIN_H_ 70 #endif // PRINTING_PRINTING_CONTEXT_WIN_H_
OLDNEW
« no previous file with comments | « printing/printing_context_system_dialog_win.cc ('k') | printing/printing_context_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698