|
|
|
/*********
|
|
|
|
*
|
|
|
|
* This file is part of BibleTime's source code, http://www.bibletime.info/.
|
|
|
|
*
|
|
|
|
* Copyright 1999-2006 by the BibleTime developers.
|
|
|
|
* The BibleTime source code is licensed under the GNU General Public License version 2.0.
|
|
|
|
*
|
|
|
|
**********/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//own includes
|
|
|
|
#include "cinputdialog.h"
|
|
|
|
|
|
|
|
//TQt includes
|
|
|
|
#include <tqwidget.h>
|
|
|
|
#include <tqlabel.h>
|
|
|
|
#include <tqtextedit.h>
|
|
|
|
#include <tqpushbutton.h>
|
|
|
|
#include <tqlayout.h>
|
|
|
|
|
|
|
|
//KDE includes
|
|
|
|
#include <tdelocale.h>
|
|
|
|
#include <kseparator.h>
|
|
|
|
|
|
|
|
CInputDialog::CInputDialog(const TQString& caption, const TQString& description, const TQString& text, TQWidget *parent, const char *name, const bool modal ) : KDialog(parent,name,modal) {
|
|
|
|
setPlainCaption(caption);
|
|
|
|
|
|
|
|
TQVBoxLayout* topLayout = new TQVBoxLayout(this, 5,5);
|
|
|
|
|
|
|
|
TQLabel* l = new TQLabel(description, this);
|
|
|
|
topLayout->addWidget(l);
|
|
|
|
|
|
|
|
topLayout->addSpacing(10);
|
|
|
|
|
|
|
|
m_editWidget = new TQTextEdit(this, "edit widget");
|
|
|
|
m_editWidget->setWordWrap( TQTextEdit::WidgetWidth );
|
|
|
|
m_editWidget->setText(text);
|
|
|
|
if (!text.isEmpty())
|
|
|
|
m_editWidget->selectAll();
|
|
|
|
|
|
|
|
topLayout->addWidget(m_editWidget);
|
|
|
|
|
|
|
|
KSeparator* separator = new KSeparator(KSeparator::HLine, this);
|
|
|
|
topLayout->addWidget(separator);
|
|
|
|
|
|
|
|
TQHBoxLayout* buttonLayout = new TQHBoxLayout(topLayout);
|
|
|
|
|
|
|
|
buttonLayout->addStretch(2);
|
|
|
|
|
|
|
|
TQPushButton* cancel = new TQPushButton(this);
|
|
|
|
cancel->setText(i18n("&Cancel"));
|
|
|
|
connect(cancel, TQT_SIGNAL(clicked()), TQT_SLOT(reject()));
|
|
|
|
buttonLayout->addWidget(cancel,1);
|
|
|
|
|
|
|
|
buttonLayout->addSpacing(15);
|
|
|
|
|
|
|
|
TQPushButton* clear = new TQPushButton(this);
|
|
|
|
clear->setText(i18n("C&lear"));
|
|
|
|
connect(clear, TQT_SIGNAL(clicked()),m_editWidget, TQT_SLOT(clear()));
|
|
|
|
buttonLayout->addWidget(clear,1);
|
|
|
|
|
|
|
|
buttonLayout->addSpacing(15);
|
|
|
|
|
|
|
|
TQPushButton* ok = new TQPushButton(this);
|
|
|
|
ok->setText(i18n("&Ok"));
|
|
|
|
connect(ok, TQT_SIGNAL(clicked()), TQT_SLOT(accept()));
|
|
|
|
buttonLayout->addWidget(ok,1);
|
|
|
|
|
|
|
|
m_editWidget->setFocus();
|
|
|
|
}
|
|
|
|
|
|
|
|
/** Returns the text entered at the moment. */
|
|
|
|
const TQString CInputDialog::text() {
|
|
|
|
return m_editWidget->text();
|
|
|
|
}
|
|
|
|
|
|
|
|
/** A static function to get some using CInputDialog. */
|
|
|
|
const TQString CInputDialog::getText( const TQString& caption, const TQString& description, const TQString& text, bool* ok, TQWidget* parent, bool modal) {
|
|
|
|
CInputDialog* dlg = new CInputDialog(caption, description, text, parent, "", modal);
|
|
|
|
TQString ret = TQString();
|
|
|
|
|
|
|
|
const bool isOk = (dlg->exec() == CInputDialog::Accepted);
|
|
|
|
if (isOk) {
|
|
|
|
ret = dlg->text();
|
|
|
|
}
|
|
|
|
|
|
|
|
if (ok) { //change the ok param to return the value
|
|
|
|
*ok = isOk;
|
|
|
|
}
|
|
|
|
|
|
|
|
delete dlg;
|
|
|
|
return ret;
|
|
|
|
}
|
|
|
|
|
|
|
|
#include "cinputdialog.moc"
|