libplasma
textedit.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "textedit.h"
00021
00022 #include <KTextEdit>
00023 #include <QPainter>
00024
00025 #include <KMimeType>
00026
00027 #include "theme.h"
00028 #include "svg.h"
00029
00030 namespace Plasma
00031 {
00032
00033 class TextEditPrivate
00034 {
00035 public:
00036 TextEditPrivate()
00037 {
00038 }
00039
00040 ~TextEditPrivate()
00041 {
00042 }
00043 };
00044
00045 TextEdit::TextEdit(QGraphicsWidget *parent)
00046 : QGraphicsProxyWidget(parent),
00047 d(new TextEditPrivate)
00048 {
00049 KTextEdit* native = new KTextEdit;
00050 connect(native, SIGNAL(textChanged()), this, SIGNAL(textChanged()));
00051 setWidget(native);
00052 native->setAttribute(Qt::WA_NoSystemBackground);
00053 }
00054
00055 TextEdit::~TextEdit()
00056 {
00057 delete d;
00058 }
00059
00060 void TextEdit::setText(const QString &text)
00061 {
00062
00063 static_cast<KTextEdit*>(widget())->setHtml(text);
00064 }
00065
00066 QString TextEdit::text() const
00067 {
00068 return static_cast<KTextEdit*>(widget())->toHtml();
00069 }
00070
00071 void TextEdit::setStyleSheet(const QString &stylesheet)
00072 {
00073 widget()->setStyleSheet(stylesheet);
00074 }
00075
00076 QString TextEdit::styleSheet()
00077 {
00078 return widget()->styleSheet();
00079 }
00080
00081 KTextEdit* TextEdit::nativeWidget() const
00082 {
00083 return static_cast<KTextEdit*>(widget());
00084 }
00085
00086 void TextEdit::dataUpdated(const QString &sourceName, const Plasma::DataEngine::Data &data)
00087 {
00088 Q_UNUSED(sourceName)
00089
00090 KTextEdit * te = nativeWidget();
00091 te->clear();
00092
00093 foreach (const QVariant& v, data) {
00094 if (v.canConvert(QVariant::String)) {
00095 te->append(v.toString() + "\n");
00096 }
00097 }
00098 }
00099
00100 void TextEdit::resizeEvent(QGraphicsSceneResizeEvent *event)
00101 {
00102 QGraphicsProxyWidget::resizeEvent(event);
00103 }
00104
00105 }
00106
00107 #include <textedit.moc>
00108