Chromium Code Reviews| Index: printing/printing_context_win.h |
| diff --git a/printing/printing_context_win.h b/printing/printing_context_win.h |
| index 99a7e3ef2b0c076964f92234973605b6185a69a2..f6222ad103ed31fb72804f0063bcd891166ac18d 100644 |
| --- a/printing/printing_context_win.h |
| +++ b/printing/printing_context_win.h |
| @@ -40,24 +40,45 @@ class PRINTING_EXPORT PrintingContextWin : public PrintingContext { |
| virtual void ReleaseContext() OVERRIDE; |
| virtual gfx::NativeDrawingContext context() const OVERRIDE; |
| + // Allocates the HDC for a specific DEVMODE. |
| + static bool AllocateContext(const std::wstring& printer_name, |
|
Vitaly Buka (NO REVIEWS)
2014/09/08 09:43:59
I'll restore this under !DISABLE_BASIC_PRINTING wh
|
| + const DEVMODE* dev_mode, |
| + gfx::NativeDrawingContext* context); |
| + |
| protected: |
| - virtual scoped_ptr<DEVMODE, base::FreeDeleter> ShowPrintDialog( |
| - HANDLE printer, |
| - gfx::NativeView parent_view, |
| - DEVMODE* dev_mode); |
| + virtual HRESULT ShowPrintDialog(PRINTDLGEX* options); |
| private: |
| + // Class that manages the PrintDlgEx() callbacks. This is meant to be a |
| + // temporary object used during the Print... dialog display. |
| + class CallbackHandler; |
| + |
| // Used in response to the user canceling the printing. |
| static BOOL CALLBACK AbortProc(HDC hdc, int nCode); |
| // Reads the settings from the selected device context. Updates settings_ and |
| // its margins. |
| - virtual Result InitializeSettings(const base::string16& device_name, |
| - DEVMODE* dev_mode); |
| + bool InitializeSettings(const DEVMODE& dev_mode, |
| + const std::wstring& new_device_name, |
| + const PRINTPAGERANGE* ranges, |
| + int number_ranges, |
| + bool selection_only); |
| + |
| + // Retrieves the printer's default low-level settings. On Windows, context_ is |
| + // allocated with this call. |
| + bool GetPrinterSettings(HANDLE printer, |
| + const std::wstring& device_name); |
| + |
| + // Parses the result of a PRINTDLGEX result. |
| + Result ParseDialogResultEx(const PRINTDLGEX& dialog_options); |
| + Result ParseDialogResult(const PRINTDLG& dialog_options); |
| // The selected printer context. |
| HDC context_; |
| + // The dialog box for the time it is shown. |
| + volatile HWND dialog_box_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(PrintingContextWin); |
| }; |