Coverage Report

Created: 2025-12-08 09:28

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libreoffice/include/sfx2/printer.hxx
Line
Count
Source
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*
3
 * This file is part of the LibreOffice project.
4
 *
5
 * This Source Code Form is subject to the terms of the Mozilla Public
6
 * License, v. 2.0. If a copy of the MPL was not distributed with this
7
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
 *
9
 * This file incorporates work covered by the following license notice:
10
 *
11
 *   Licensed to the Apache Software Foundation (ASF) under one or more
12
 *   contributor license agreements. See the NOTICE file distributed
13
 *   with this work for additional information regarding copyright
14
 *   ownership. The ASF licenses this file to you under the Apache
15
 *   License, Version 2.0 (the "License"); you may not use this file
16
 *   except in compliance with the License. You may obtain a copy of
17
 *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
18
 */
19
#ifndef INCLUDED_SFX2_PRINTER_HXX
20
#define INCLUDED_SFX2_PRINTER_HXX
21
22
#include <memory>
23
#include <sal/config.h>
24
#include <sfx2/dllapi.h>
25
#include <vcl/print.hxx>
26
27
class SfxItemSet;
28
29
// class SfxPrinter ------------------------------------------------------
30
31
class SFX2_DLLPUBLIC SfxPrinter final : public Printer
32
{
33
private:
34
    std::unique_ptr<SfxItemSet> pOptions;
35
    bool                    bKnown;
36
37
    SfxPrinter& operator =(SfxPrinter const &) = delete;
38
39
public:
40
                            SfxPrinter( std::unique_ptr<SfxItemSet> &&pTheOptions );
41
                            SfxPrinter( std::unique_ptr<SfxItemSet> &&pTheOptions,
42
                                        const OUString &rPrinterName );
43
                            SfxPrinter( std::unique_ptr<SfxItemSet> &&pTheOptions,
44
                                        const JobSetup &rTheOrigJobSetup );
45
                            SfxPrinter( const SfxPrinter &rPrinter );
46
                            virtual ~SfxPrinter() override;
47
    virtual void            dispose() override;
48
49
    VclPtr<SfxPrinter>      Clone() const;
50
51
    static VclPtr<SfxPrinter> Create( SvStream &rStream, std::unique_ptr<SfxItemSet> &&pOptions );
52
    void                    Store( SvStream &rStream ) const;
53
54
42.8k
    const SfxItemSet&       GetOptions() const { return *pOptions; }
55
    void                    SetOptions( const SfxItemSet &rNewOptions );
56
57
782
    bool                    IsKnown() const { return bKnown; }
58
};
59
60
#endif
61
62
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */