1 /* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2  *
3  * This Source Code Form is subject to the terms of the Mozilla Public
4  * License, v. 2.0. If a copy of the MPL was not distributed with this
5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 
7 #ifndef nsPrintSettingsServiceGTK_h
8 #define nsPrintSettingsServiceGTK_h
9 
10 #include "nsPrintSettingsService.h"
11 
12 namespace mozilla {
13 namespace embedding {
14 class PrintData;
15 }  // namespace embedding
16 }  // namespace mozilla
17 
18 class nsPrintSettingsServiceGTK final : public nsPrintSettingsService {
19  public:
20   nsPrintSettingsServiceGTK() = default;
21 
22   NS_IMETHODIMP SerializeToPrintData(
23       nsIPrintSettings* aSettings,
24       mozilla::embedding::PrintData* data) override;
25 
26   NS_IMETHODIMP DeserializeToPrintSettings(
27       const mozilla::embedding::PrintData& data,
28       nsIPrintSettings* settings) override;
29 
30   virtual nsresult _CreatePrintSettings(nsIPrintSettings** _retval) override;
31 };
32 
33 #endif  // nsPrintSettingsServiceGTK_h
34