mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-29 15:52:07 +00:00
f2b9ae0184
Rather than wrapping an NSPrintInfo in nsPrintSettingsX, where we then have two (potentially conflicting) sources of truth about various settings, we treat the settings in the base nsPrintInfo class as authoritative, and just apply them to a temporary NSPrintInfo when needed to interact with platform APIs. Differential Revision: https://phabricator.services.mozilla.com/D92966
40 lines
1.2 KiB
C++
40 lines
1.2 KiB
C++
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef nsPrintSettingsServiceX_h
|
|
#define nsPrintSettingsServiceX_h
|
|
|
|
#include "nsPrintSettingsService.h"
|
|
|
|
namespace mozilla {
|
|
namespace embedding {
|
|
class PrintData;
|
|
} // namespace embedding
|
|
} // namespace mozilla
|
|
|
|
class nsPrintSettingsServiceX final : public nsPrintSettingsService {
|
|
public:
|
|
nsPrintSettingsServiceX() {}
|
|
|
|
NS_IMETHODIMP SerializeToPrintData(
|
|
nsIPrintSettings* aSettings,
|
|
mozilla::embedding::PrintData* data) override;
|
|
|
|
NS_IMETHODIMP DeserializeToPrintSettings(
|
|
const mozilla::embedding::PrintData& data,
|
|
nsIPrintSettings* settings) override;
|
|
|
|
protected:
|
|
nsresult ReadPrefs(nsIPrintSettings* aPS, const nsAString& aPrinterName,
|
|
uint32_t aFlags) override;
|
|
|
|
nsresult WritePrefs(nsIPrintSettings* aPS, const nsAString& aPrinterName,
|
|
uint32_t aFlags) override;
|
|
|
|
nsresult _CreatePrintSettings(nsIPrintSettings** _retval) override;
|
|
};
|
|
|
|
#endif // nsPrintSettingsServiceX_h
|