File: KoTextBlockPaintStrategyBase.h

package info (click to toggle)
calligra 1%3A25.04.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 309,164 kB
  • sloc: cpp: 667,890; xml: 126,105; perl: 2,724; python: 2,497; yacc: 1,817; ansic: 1,326; sh: 1,223; lex: 1,107; javascript: 495; makefile: 24
file content (33 lines) | stat: -rw-r--r-- 1,066 bytes parent folder | download
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
/* This file is part of the KDE project
 * SPDX-FileCopyrightText: 2010 C. Boemann <cbo@boemann.dk>
 * SPDX-FileCopyrightText: 2010 Thomas Zander <zander@kde.org>
 *
 * SPDX-License-Identifier: LGPL-2.0-or-later
 */

#ifndef KOTEXTBLOCKPAINTSTRATEGYBASE_H
#define KOTEXTBLOCKPAINTSTRATEGYBASE_H

#include "kotext_export.h"

class QPainter;
class QBrush;

/**
 * This class is used to control aspects of textblock painting
 * Which is used when Stage animates text.
 */
class KOTEXT_EXPORT KoTextBlockPaintStrategyBase
{
public:
    KoTextBlockPaintStrategyBase();
    virtual ~KoTextBlockPaintStrategyBase();
    /// returns a background for the block, the default implementation returns the defaultBackground
    virtual QBrush background(const QBrush &defaultBackground) const;
    /// A strategy implementing this class can apply its settings by modifying the \a painter
    virtual void applyStrategy(QPainter *painter);
    /// Returns true if the block should be painted at all or false when it should be skipped
    virtual bool isVisible() const;
};

#endif