| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef PRINTING_PRINT_SETTINGS_INITIALIZER_GTK_H_ |
| #define PRINTING_PRINT_SETTINGS_INITIALIZER_GTK_H_ |
| |
| #include "base/logging.h" |
| #include "printing/page_range.h" |
| |
| typedef struct _GtkPrintSettings GtkPrintSettings; |
| typedef struct _GtkPageSetup GtkPageSetup; |
| |
| namespace printing { |
| |
| class PrintSettings; |
| |
| // Initializes a PrintSettings object from the provided Gtk printer objects. |
| class PRINTING_EXPORT PrintSettingsInitializerGtk { |
| public: |
| static void InitPrintSettings(GtkPrintSettings* settings, |
| GtkPageSetup* page_setup, |
| const PageRanges& new_ranges, |
| bool print_selection_only, |
| PrintSettings* print_settings); |
| |
| // The default margins, in points. These values are based on 72 dpi, |
| // with 0.25 margins on top, left, and right, and 0.56 on bottom. |
| static const double kTopMarginInInch; |
| static const double kRightMarginInInch; |
| static const double kBottomMarginInInch; |
| static const double kLeftMarginInInch; |
| |
| private: |
| DISALLOW_IMPLICIT_CONSTRUCTORS(PrintSettingsInitializerGtk); |
| }; |
| |
| } // namespace printing |
| |
| #endif // PRINTING_PRINT_SETTINGS_INITIALIZER_GTK_H_ |