• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdegraphics API Reference
  • KDE Home
  • Contact Us
 

libs/libkexiv2/libkexiv2

  • sources
  • kde-4.14
  • kdegraphics
  • libs
  • libkexiv2
  • libkexiv2
msgtextedit.cpp
Go to the documentation of this file.
1 
26 // Qt includes
27 
28 #include <QColor>
29 #include <QPalette>
30 #include <QPainter>
31 
32 // Local includes
33 
34 #include "msgtextedit.moc"
35 
36 namespace KExiv2Iface
37 {
38 
39 class MsgTextEdit::Private
40 {
41 public:
42 
43  Private(){}
44 
45  QString message;
46 };
47 
48 MsgTextEdit::MsgTextEdit(QWidget* parent)
49  : KTextEdit(parent), d(new Private)
50 {
51  setAcceptRichText(false);
52 }
53 
54 MsgTextEdit::~MsgTextEdit()
55 {
56  delete d;
57 }
58 
59 QString MsgTextEdit::clickMessage() const
60 {
61  return d->message;
62 }
63 
64 void MsgTextEdit::setClickMessage(const QString& msg)
65 {
66  d->message = msg;
67  viewport()->update();
68 }
69 
70 void MsgTextEdit::setText(const QString& txt)
71 {
72  KTextEdit::setText(txt);
73  viewport()->update();
74 }
75 
76 void MsgTextEdit::paintEvent(QPaintEvent* e)
77 {
78  KTextEdit::paintEvent(e);
79 
80  if (toPlainText().isEmpty() && !hasFocus())
81  {
82  QPainter p(viewport());
83  QPen tmp = p.pen();
84  p.setPen(palette().color(QPalette::Disabled, QPalette::Text));
85  QRect cr = contentsRect();
86  p.drawText(cr, Qt::AlignTop, d->message);
87  p.setPen(tmp);
88  }
89 }
90 
91 void MsgTextEdit::dropEvent(QDropEvent* e)
92 {
93  viewport()->update();
94  KTextEdit::dropEvent(e);
95 }
96 
97 void MsgTextEdit::focusInEvent(QFocusEvent* e)
98 {
99  viewport()->update();
100  KTextEdit::focusInEvent(e);
101 }
102 
103 void MsgTextEdit::focusOutEvent(QFocusEvent* e)
104 {
105  viewport()->update();
106  KTextEdit::focusOutEvent(e);
107 }
108 
109 } // namespace KExiv2Iface
QWidget
KExiv2Iface::MsgTextEdit::setText
void setText(const QString &txt)
Definition: msgtextedit.cpp:70
KExiv2Iface::MsgTextEdit::dropEvent
void dropEvent(QDropEvent *)
Definition: msgtextedit.cpp:91
KExiv2Iface::MsgTextEdit::focusInEvent
void focusInEvent(QFocusEvent *)
Definition: msgtextedit.cpp:97
KExiv2Iface::MsgTextEdit::MsgTextEdit
MsgTextEdit(QWidget *parent)
Definition: msgtextedit.cpp:48
QRect
QPainter::setPen
void setPen(const QColor &color)
QDropEvent
QPainter
QPainter::drawText
void drawText(const QPointF &position, const QString &text)
KExiv2Iface::MsgTextEdit::setClickMessage
void setClickMessage(const QString &msg)
Definition: msgtextedit.cpp:64
QString
KExiv2Iface::MsgTextEdit::clickMessage
QString clickMessage() const
Definition: msgtextedit.cpp:59
QPen
KExiv2Iface::MsgTextEdit::focusOutEvent
void focusOutEvent(QFocusEvent *)
Definition: msgtextedit.cpp:103
QPaintEvent
KExiv2Iface::MsgTextEdit::paintEvent
void paintEvent(QPaintEvent *)
Definition: msgtextedit.cpp:76
QPainter::pen
const QPen & pen() const
QFocusEvent
KExiv2Iface::MsgTextEdit::~MsgTextEdit
~MsgTextEdit()
Definition: msgtextedit.cpp:54
KTextEdit
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:19:40 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

libs/libkexiv2/libkexiv2

Skip menu "libs/libkexiv2/libkexiv2"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdegraphics API Reference

Skip menu "kdegraphics API Reference"
  •     libkdcraw
  •     libkexiv2
  •     libkipi
  •     libksane
  • okular

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal