qwt_text_engine.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Qwt Widget Library
3  * Copyright (C) 1997 Josef Wilgen
4  * Copyright (C) 2002 Uwe Rathmann
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the Qwt License, Version 1.0
8  *****************************************************************************/
9 
10 #ifndef QWT_TEXT_ENGINE_H
11 #define QWT_TEXT_ENGINE_H
12 
13 #include "qwt_global.h"
14 #include <qsize.h>
15 
16 class QFont;
17 class QRectF;
18 class QString;
19 class QPainter;
20 
31 {
32  public:
33  virtual ~QwtTextEngine();
34 
45  virtual double heightForWidth( const QFont& font, int flags,
46  const QString& text, double width ) const = 0;
47 
57  virtual QSizeF textSize( const QFont& font, int flags,
58  const QString& text ) const = 0;
59 
66  virtual bool mightRender( const QString& text ) const = 0;
67 
83  virtual void textMargins( const QFont& font, const QString& text,
84  double& left, double& right, double& top, double& bottom ) const = 0;
85 
94  virtual void draw( QPainter* painter, const QRectF& rect,
95  int flags, const QString& text ) const = 0;
96 
97  protected:
98  QwtTextEngine();
99 
100  private:
101  Q_DISABLE_COPY(QwtTextEngine)
102 };
103 
104 
112 {
113  public:
115  virtual ~QwtPlainTextEngine();
116 
117  virtual double heightForWidth( const QFont& font, int flags,
118  const QString& text, double width ) const QWT_OVERRIDE;
119 
120  virtual QSizeF textSize( const QFont& font, int flags,
121  const QString& text ) const QWT_OVERRIDE;
122 
123  virtual void draw( QPainter*, const QRectF& rect,
124  int flags, const QString& text ) const QWT_OVERRIDE;
125 
126  virtual bool mightRender( const QString& ) const QWT_OVERRIDE;
127 
128  virtual void textMargins(
129  const QFont&, const QString&,
130  double& left, double& right,
131  double& top, double& bottom ) const QWT_OVERRIDE;
132 
133  private:
134  class PrivateData;
136 };
137 
138 
139 #ifndef QT_NO_RICHTEXT
140 
148 {
149  public:
151 
152  virtual double heightForWidth( const QFont& font, int flags,
153  const QString& text, double width ) const QWT_OVERRIDE;
154 
155  virtual QSizeF textSize( const QFont& font, int flags,
156  const QString& text ) const QWT_OVERRIDE;
157 
158  virtual void draw( QPainter*, const QRectF& rect,
159  int flags, const QString& text ) const QWT_OVERRIDE;
160 
161  virtual bool mightRender( const QString& ) const QWT_OVERRIDE;
162 
163  virtual void textMargins(
164  const QFont&, const QString&,
165  double& left, double& right,
166  double& top, double& bottom ) const QWT_OVERRIDE;
167 
168  private:
169  QString taggedText( const QString&, int flags ) const;
170 };
171 
172 #endif // !QT_NO_RICHTEXT
173 
174 #endif
QwtTextEngine
Abstract base class for rendering text strings.
Definition: qwt_text_engine.h:30
left
lu_byte left
Definition: lparser.c:1226
QwtTextEngine::heightForWidth
virtual double heightForWidth(const QFont &font, int flags, const QString &text, double width) const =0
QwtPlainTextEngine::m_data
PrivateData * m_data
Definition: qwt_text_engine.h:134
sol::stack::top
int top(lua_State *L)
Definition: sol.hpp:11684
right
lu_byte right
Definition: lparser.c:1227
qwt_global.h
QwtTextEngine::draw
virtual void draw(QPainter *painter, const QRectF &rect, int flags, const QString &text) const =0
QwtRichTextEngine
A text engine for Qt rich texts.
Definition: qwt_text_engine.h:147
QwtTextEngine::mightRender
virtual bool mightRender(const QString &text) const =0
QwtTextEngine::textMargins
virtual void textMargins(const QFont &font, const QString &text, double &left, double &right, double &top, double &bottom) const =0
QWT_OVERRIDE
#define QWT_OVERRIDE
Definition: qwt_global.h:53
QWT_EXPORT
#define QWT_EXPORT
Definition: qwt_global.h:38
QwtTextEngine::textSize
virtual QSizeF textSize(const QFont &font, int flags, const QString &text) const =0
QwtPlainTextEngine
A text engine for plain texts.
Definition: qwt_text_engine.h:111
QwtPlainTextEngine::PrivateData
Definition: qwt_text_engine.cpp:83


plotjuggler
Author(s): Davide Faconti
autogenerated on Mon Nov 11 2024 03:23:46