[M49_2623] Chromium upversion to m49_2623 branch.
[platform/framework/web/chromium-efl.git] / tizen_src / ewk / efl_integration / common / print_pages_params.h
1 // Copyright 2014 Samsung Electronics. 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 PRINT_PAGES_PARAMS_H_
6 #define PRINT_PAGES_PARAMS_H_
7
8 #include <vector>
9
10 #include "base/files/file_path.h"
11 #include "base/memory/shared_memory.h"
12 #include "printing/printing_export.h"
13 #include "third_party/WebKit/public/web/WebPrintScalingOption.h"
14 #include "ui/gfx/geometry/rect.h"
15 #include "ui/gfx/geometry/size.h"
16
17 struct PrintParams {
18   PrintParams();
19
20   gfx::Size page_size;
21   gfx::Size content_size;
22   gfx::Rect printable_area;
23   double dpi;
24   int desired_dpi;
25   bool is_first_request;
26   bool print_to_pdf;
27   blink::WebPrintScalingOption print_scaling_option;
28   int document_cookie;
29 };
30
31 // collection of printable pages
32 struct PrintPagesParams {
33   PrintPagesParams();
34   ~PrintPagesParams();
35
36   PrintParams params;
37   std::vector<int> pages;
38 };
39
40 // single page
41 struct PrintPageParams {
42   PrintParams params;
43   int page_number;
44 };
45
46 struct DidPrintPagesParams {
47   base::SharedMemoryHandle metafile_data_handle;
48   uint32_t data_size;
49   int document_cookie;
50   base::FilePath filename;
51 };
52
53 #endif // PRINT_PAGES_PARAMS_H_