┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/panels/information/commentwidget.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2009-10-10 14:13:50 +0000
committerPeter Penz <[email protected]>2009-10-10 14:13:50 +0000
commiteaeee9f7d68d120b1982f24e73d8183db3418261 (patch)
treea890f309955e93cd2e44c8f95aa04ce4988939fb /src/panels/information/commentwidget.cpp
parentec6144e5cf91bfe7d0c0343e2f47db85aa1160b0 (diff)
Start of refactoring so that the metadata widget can be moved outside of Dolphin for other applications. The temporary removed code will be integrated again within the next 10 days (-> currently no meta data is shown and cannot be updated).
svn path=/trunk/KDE/kdebase/apps/; revision=1033585
Diffstat (limited to 'src/panels/information/commentwidget.cpp')
-rw-r--r--src/panels/information/commentwidget.cpp106
1 files changed, 5 insertions, 101 deletions
diff --git a/src/panels/information/commentwidget.cpp b/src/panels/information/commentwidget.cpp
index 23f79dfb1..63d8a1dc3 100644
--- a/src/panels/information/commentwidget.cpp
+++ b/src/panels/information/commentwidget.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008 by Sebastian Trueg <[email protected]> *
+ * Copyright (C) 2009 by Peter Penz <[email protected]> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
@@ -17,111 +17,15 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
-#include "commentwidget.h"
+#include "commentwidget_p.h"
-#include <QtGui/QLabel>
-#include <QtGui/QTextEdit>
-#include <QtGui/QLayout>
-#include <QtGui/QCursor>
-#include <QtCore/QEvent>
-
-#include <KLocale>
-
-
-class CommentWidget::Private
-{
-public:
- Private( CommentWidget* parent )
- : q( parent ) {
- }
-
- void update();
- void _k_slotEnableEditing();
-
- QTextEdit* textEdit;
- QLabel* addComment;
-
- QString comment;
-
-private:
- CommentWidget* q;
-};
-
-
-void CommentWidget::Private::update()
+CommentWidget::CommentWidget(QWidget* parent) :
+ QWidget(parent)
{
- textEdit->setText( comment );
- const bool hasComment = !comment.isEmpty();
- textEdit->setVisible(hasComment);
- addComment->setVisible(!hasComment);
}
-
-void CommentWidget::Private::_k_slotEnableEditing()
-{
- textEdit->show();
- textEdit->setFocus();
- addComment->hide();
-}
-
-
-
-CommentWidget::CommentWidget( QWidget* parent )
- : QWidget( parent ),
- d( new Private( this ) )
-{
- d->textEdit = new QTextEdit( this );
- d->textEdit->installEventFilter( this );
- d->textEdit->setMinimumHeight( 100 );
- d->textEdit->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Ignored);
-
- d->addComment = new QLabel( this );
- d->addComment->setText( "<p align=center><a style=\"font-size:small;\" href=\"addComment\">" + i18nc( "@label", "Add Comment..." ) + "</a>" );
-
- QVBoxLayout* layout = new QVBoxLayout( this );
- layout->setMargin( 0 );
- layout->addWidget( d->textEdit );
- layout->addWidget( d->addComment );
- d->update();
- connect( d->addComment, SIGNAL( linkActivated( const QString& ) ), this, SLOT( _k_slotEnableEditing() ) );
-}
-
-
CommentWidget::~CommentWidget()
{
- delete d;
-}
-
-
-void CommentWidget::setComment( const QString& comment )
-{
- d->comment = comment;
- d->update();
-}
-
-
-QString CommentWidget::comment() const
-{
- return d->comment;
-}
-
-
-QString CommentWidget::editorText() const
-{
- return d->textEdit->toPlainText();
-}
-
-bool CommentWidget::eventFilter( QObject* watched, QEvent* event )
-{
- if ( watched == d->textEdit && event->type() == QEvent::FocusOut ) {
- const QString currentComment = editorText();
- if ( currentComment != d->comment ) {
- d->comment = currentComment;
- emit commentChanged( currentComment );
- }
- d->update();
- }
- return QWidget::eventFilter( watched, event );
}
-#include "commentwidget.moc"
+#include "commentwidget_p.moc"