blob: a1093c5a3b8609a93a147329912a525e5f7194ba [file] [log] [blame]
Torne (Richard Coles)58218062012-11-14 11:43:16 +00001// 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_PRINT_SETTINGS_INITIALIZER_H_
6#define PRINTING_PRINT_SETTINGS_INITIALIZER_H_
7
8#include "base/basictypes.h"
9#include "base/logging.h"
Torne (Richard Coles)1e9bf3e2013-10-31 11:16:26 +000010#include "printing/page_range.h"
Torne (Richard Coles)58218062012-11-14 11:43:16 +000011#include "printing/printing_export.h"
12
13namespace base {
14class DictionaryValue;
15}
16
17namespace printing {
18
19class PrintSettings;
20
21// Initializes the header footer strings in the PrintSettings object from the
22// provided |job_settings|.
23class PRINTING_EXPORT PrintSettingsInitializer {
24 public:
Torne (Richard Coles)1e9bf3e2013-10-31 11:16:26 +000025 static bool InitSettings(
Torne (Richard Coles)58218062012-11-14 11:43:16 +000026 const base::DictionaryValue& job_settings,
Torne (Richard Coles)1e9bf3e2013-10-31 11:16:26 +000027 const PageRanges& ranges,
Torne (Richard Coles)58218062012-11-14 11:43:16 +000028 PrintSettings* print_settings);
29
30 private:
31 DISALLOW_IMPLICIT_CONSTRUCTORS(PrintSettingsInitializer);
32};
33
34} // namespace printing
35
36#endif // PRINTING_PRINT_SETTINGS_INITIALIZER_H_
37