From 231a90376b096687770b2b029d4a3d2efa232b2e Mon Sep 17 00:00:00 2001 From: zautrix Date: Sat, 05 Feb 2005 14:31:01 +0000 Subject: many fixes --- (limited to 'korganizer/journalentry.cpp') diff --git a/korganizer/journalentry.cpp b/korganizer/journalentry.cpp index 7af5cf4..dca42e0 100644 --- a/korganizer/journalentry.cpp +++ b/korganizer/journalentry.cpp @@ -26,11 +26,20 @@ #include #include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include #include "koprefs.h" #include @@ -50,7 +59,25 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : mJournal = 0; mDirty = false; - mTitleLabel = new QLabel(i18n("Title"),this); + QHBox * vb = new QHBox ( this ); + QPushButton * loadTemplate = new QPushButton( vb ); + QPushButton * saveTemplate = new QPushButton( vb ); + QIconSet icon; + if ( QApplication::desktop()->width() < 321 ) + icon = SmallIcon("fileexport16"); + else + icon = SmallIcon("fileexport"); + saveTemplate->setIconSet (icon ) ; + int size = saveTemplate->sizeHint().height(); + saveTemplate->setFixedSize( size, size ); + if ( QApplication::desktop()->width() < 321 ) + icon = SmallIcon("fileimport16"); + else + icon = SmallIcon("fileimport"); + loadTemplate->setIconSet (icon ) ; + loadTemplate->setFixedSize( size, size ); + + mTitleLabel = new QLabel(i18n("Title"),vb); mTitleLabel->setMargin(2); mTitleLabel->setAlignment(AlignCenter); @@ -61,15 +88,66 @@ JournalEntry::JournalEntry(Calendar *calendar,QWidget *parent) : #endif mEditor->setWordWrap( KTextEdit::WidgetWidth ); QBoxLayout *topLayout = new QVBoxLayout(this); - topLayout->addWidget(mTitleLabel); + topLayout->addWidget(vb); topLayout->addWidget(mEditor); mEditor->installEventFilter(this); + connect( saveTemplate, SIGNAL( clicked() ), this , SLOT( slotSaveTemplate() ) ); + connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( slotLoadTemplate() ) ); } JournalEntry::~JournalEntry() { } +void JournalEntry::slotSaveTemplate() +{ + QString fileName =locateLocal( "templates", "journals" ); + QDir t_dir; + if ( !t_dir.exists(fileName) ) + t_dir.mkdir ( fileName ); + fileName += "/journal"; + fileName = KFileDialog::getSaveFileName( fileName , i18n("Save as Journal template"), this ); + if ( fileName.length() == 0 ) + return; + + QFile fileIn( fileName ); + if (!fileIn.open( IO_WriteOnly ) ) { + KMessageBox::error( this, i18n("Error saving template file\n '%1'.") + .arg( fileName ) ); + return; + } + // QString text; + QTextStream tsIn( &fileIn ); + tsIn.setCodec( QTextCodec::codecForName("utf8") ); + tsIn << mEditor->text(); + fileIn.close(); +} +void JournalEntry::slotLoadTemplate() +{ + QString fileName =locateLocal( "templates", "journals" ); + QDir t_dir; + if ( !t_dir.exists(fileName) ) + t_dir.mkdir ( fileName ); + fileName += "/journal"; + fileName = KFileDialog::getOpenFileName( fileName , i18n("Insert Journal template"), this ); + if ( fileName.length() == 0 ) + return; + QFile fileIn( fileName ); + if (!fileIn.open( IO_ReadOnly ) ) { + KMessageBox::error( this, i18n("Error loading template file\n '%1'.") + .arg( fileName ) ); + return; + } + QTextStream tsIn( &fileIn ); + tsIn.setCodec( QTextCodec::codecForName("utf8") ); + QString text = tsIn.read(); + fileIn.close(); + int line, col; + mEditor->getCursorPosition (& line, & col ); + mEditor-> insertAt ( text, line, col, true ); + //mEditor->setIgnoreMark( true ); + setDirty(); +} void JournalEntry::setDate(const QDate &date) { writeJournal(); @@ -153,6 +231,7 @@ void JournalEntry::writeJournal() } mJournal->setDescription(mEditor->text()); + //qDebug("tttt%s ", mEditor->text().latin1()); mDirty = false; } -- cgit v0.9.0.2