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

Side by Side Diff: printing/print_settings.h

Issue 268036: Implement the basic OS-level printing mechanics on Mac (Closed)
Patch Set: Address review comments Created 11 years, 2 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 | « no previous file | printing/print_settings.cc » ('j') | printing/printed_document_mac.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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_PRINT_SETTINGS_H_ 5 #ifndef PRINTING_PRINT_SETTINGS_H_
6 #define PRINTING_PRINT_SETTINGS_H_ 6 #define PRINTING_PRINT_SETTINGS_H_
7 7
8 #include "base/gfx/rect.h" 8 #include "base/gfx/rect.h"
9 #include "printing/page_overlays.h" 9 #include "printing/page_overlays.h"
10 #include "printing/page_range.h" 10 #include "printing/page_range.h"
11 #include "printing/page_setup.h" 11 #include "printing/page_setup.h"
12 12
13 #if defined(OS_MACOSX)
14 #import <ApplicationServices/ApplicationServices.h>
15 #endif
16
13 typedef struct HDC__* HDC; 17 typedef struct HDC__* HDC;
14 typedef struct _devicemodeW DEVMODE; 18 typedef struct _devicemodeW DEVMODE;
15 19
16 namespace printing { 20 namespace printing {
17 21
18 // OS-independent print settings. 22 // OS-independent print settings.
19 class PrintSettings { 23 class PrintSettings {
20 public: 24 public:
21 PrintSettings(); 25 PrintSettings();
22 26
23 // Reinitialize the settings to the default values. 27 // Reinitialize the settings to the default values.
24 void Clear(); 28 void Clear();
25 29
26 #ifdef WIN32 30 #ifdef WIN32
27 // Reads the settings from the selected device context. Calculates derived 31 // Reads the settings from the selected device context. Calculates derived
28 // values like printable_area_. 32 // values like printable_area_.
29 void Init(HDC hdc, 33 void Init(HDC hdc,
30 const DEVMODE& dev_mode, 34 const DEVMODE& dev_mode,
31 const PageRanges& new_ranges, 35 const PageRanges& new_ranges,
32 const std::wstring& new_device_name, 36 const std::wstring& new_device_name,
33 bool selection_only); 37 bool selection_only);
38 #elif defined(OS_MACOSX)
39 // Reads the settings from the given PMPrinter and PMPageFormat.
40 void Init(PMPrinter printer, PMPageFormat page_format,
41 const PageRanges& new_ranges, bool print_selection_only);
34 #endif 42 #endif
35 43
36 // Set printer printable area in in pixels. 44 // Set printer printable area in in pixels.
37 void SetPrinterPrintableArea(gfx::Size const& physical_size_pixels, 45 void SetPrinterPrintableArea(gfx::Size const& physical_size_pixels,
38 gfx::Rect const& printable_area_pixels); 46 gfx::Rect const& printable_area_pixels);
39 47
40 // Equality operator. 48 // Equality operator.
41 // NOTE: printer_name is NOT tested for equality since it doesn't affect the 49 // NOTE: printer_name is NOT tested for equality since it doesn't affect the
42 // output. 50 // output.
43 bool Equals(const PrintSettings& rhs) const; 51 bool Equals(const PrintSettings& rhs) const;
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 // Printer's device effective dots per inch in both axis. 106 // Printer's device effective dots per inch in both axis.
99 int dpi_; 107 int dpi_;
100 108
101 // Is the orientation landscape or portrait. 109 // Is the orientation landscape or portrait.
102 bool landscape_; 110 bool landscape_;
103 }; 111 };
104 112
105 } // namespace printing 113 } // namespace printing
106 114
107 #endif // PRINTING_PRINT_SETTINGS_H_ 115 #endif // PRINTING_PRINT_SETTINGS_H_
OLDNEW
« no previous file with comments | « no previous file | printing/print_settings.cc » ('j') | printing/printed_document_mac.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698