lib

KoCommentDia.cpp

00001 /* This file is part of the KDE project
00002    Copyright (C)  2002 Montel Laurent <lmontel@mandrakesoft.com>
00003 
00004    This library is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License as published by the Free Software Foundation; either
00007    version 2 of the License, or (at your option) any later version.
00008 
00009    This library is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public License
00015    along with this library; see the file COPYING.LIB.  If not, write to
00016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017  * Boston, MA 02110-1301, USA.
00018 */
00019 
00020 #include <klocale.h>
00021 #include <qvbox.h>
00022 #include <qmultilineedit.h>
00023 #include "KoCommentDia.h"
00024 #include <qlayout.h>
00025 #include <qpushbutton.h>
00026 #include <kglobal.h>
00027 #include <qdatetime.h>
00028 #include <qlabel.h>
00029 #include <kdebug.h>
00030 
00031 KoCommentDia::KoCommentDia( QWidget *parent, const QString &_note, const QString & _authorName, const QString &_createNote, const char *name )
00032     : KDialogBase( parent, name , true, "", Ok|Cancel, Ok, true )
00033 {
00034     setCaption( i18n("Edit Comment") );
00035     authorName = _authorName;
00036     QVBox *page = makeVBoxMainWidget();
00037     kdDebug()<<"_createNote :"<<_createNote<<endl;
00038     if ( !_createNote.isEmpty() )
00039         new QLabel( _createNote, page );
00040 
00041     m_multiLine = new QMultiLineEdit( page );
00042     m_multiLine->setText( _note );
00043     m_multiLine->setFocus();
00044     pbAddAuthorName = new QPushButton(i18n("Add Author Name"),page);
00045     if ( authorName.isEmpty() )
00046         pbAddAuthorName->setEnabled( false );
00047     else
00048         connect (pbAddAuthorName, SIGNAL(clicked ()), this , SLOT(slotAddAuthorName()));
00049     connect ( m_multiLine , SIGNAL( textChanged()), this, SLOT( slotTextChanged(  )));
00050     slotTextChanged( );
00051 
00052     resize( 300,100 );
00053 }
00054 
00055 void KoCommentDia::slotTextChanged( )
00056 {
00057     enableButtonOK( !m_multiLine->text().isEmpty() );
00058 }
00059 
00060 QString KoCommentDia::commentText()
00061 {
00062     return m_multiLine->text();
00063 }
00064 
00065 void KoCommentDia::slotAddAuthorName()
00066 {
00067     QString date = KGlobal::locale()->formatDate( QDate::currentDate() );
00068     QString time = KGlobal::locale()->formatTime( QTime::currentTime() );
00069     QString result = QString("--------%1 ,%2, %3------\n").arg(authorName).arg(date).arg(time);
00070     m_multiLine->insertLine( result, m_multiLine->numLines() );
00071 }
00072 
00073 #include "KoCommentDia.moc"
KDE Home | KDE Accessibility Home | Description of Access Keys