File: print_settings_test_util.cc

package info (click to toggle)
chromium 138.0.7204.183-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 6,071,908 kB
  • sloc: cpp: 34,937,088; ansic: 7,176,967; javascript: 4,110,704; python: 1,419,953; asm: 946,768; xml: 739,971; pascal: 187,324; sh: 89,623; perl: 88,663; objc: 79,944; sql: 50,304; cs: 41,786; fortran: 24,137; makefile: 21,806; php: 13,980; tcl: 13,166; yacc: 8,925; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (56 lines) | stat: -rw-r--r-- 2,183 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include <utility>
#include <vector>

#include "chromeos/crosapi/mojom/print_preview_cros.mojom.h"
#include "components/printing/common/print.mojom.h"
#include "printing/mojom/print.mojom.h"

namespace chromeos {

crosapi::mojom::PrintSettingsPtr CreatePrintSettings(int preview_id) {
  auto print_settings = crosapi::mojom::PrintSettings::New();
  print_settings->preview_id = preview_id;
  print_settings->request_id = 0;
  print_settings->is_first_request = true;
  print_settings->printer_type = printing::mojom::PrinterType::kLocal;
  print_settings->margin_type = printing::mojom::MarginType::kDefaultMargins;
  print_settings->scaling_type = crosapi::mojom::ScalingType::kDefault;
  print_settings->collate = false;
  print_settings->copies = 1;
  print_settings->color = printing::mojom::ColorModel::kColor;
  print_settings->duplex = printing::mojom::DuplexMode::kUnknownDuplexMode;
  print_settings->landscape = true;
  print_settings->scale_factor = 1;
  print_settings->rasterize_pdf = false;
  print_settings->pages_per_sheet = 1;
  print_settings->dpi_horizontal = 100;
  print_settings->dpi_vertical = 100;
  print_settings->page_range = std::vector<uint32_t>({0, 1});
  print_settings->header_footer_enabled = false;
  print_settings->should_print_backgrounds = false;
  print_settings->should_print_selection_only = false;

  auto margins_custom = crosapi::mojom::MarginsCustom::New();
  margins_custom->margin_top = 0;
  margins_custom->margin_bottom = 0;
  margins_custom->margin_left = 0;
  margins_custom->margin_right = 0;
  print_settings->margins_custom = std::move(margins_custom);

  auto media_size = crosapi::mojom::MediaSize::New();
  media_size->height_microns = 100;
  media_size->width_microns = 100;
  media_size->imageable_area_bottom_microns = 100;
  media_size->imageable_area_left_microns = 100;
  media_size->imageable_area_right_microns = 100;
  media_size->imageable_area_top_microns = 100;
  print_settings->media_size = std::move(media_size);

  return print_settings;
}

}  // namespace chromeos