KDEUI
klinkdialog.cpp
Go to the documentation of this file.00001
00022 #include "klinkdialog.h"
00023
00024 #include <klocale.h>
00025 #include <klineedit.h>
00026
00027 #include <QtGui/QLabel>
00028 #include <QtGui/QGridLayout>
00029
00034
00035 class KLinkDialogPrivate
00036 {
00037 public:
00038 QLabel *textLabel;
00039 KLineEdit *textLineEdit;
00040 QLabel *linkUrlLabel;
00041 KLineEdit *linkUrlLineEdit;
00042 };
00043
00044
00045 KLinkDialog::KLinkDialog(QWidget *parent)
00046 : KDialog(parent), d(new KLinkDialogPrivate)
00047 {
00048 setCaption(i18n("Manage Link"));
00049 setButtons(Ok | Cancel);
00050 setDefaultButton(Ok);
00051 setModal(true);
00052 showButtonSeparator(true);
00053
00054 QWidget *entries = new QWidget(this);
00055
00056 QGridLayout *layout = new QGridLayout(entries);
00057
00058 d->textLabel = new QLabel(i18n("Link Text:"), this);
00059 d->textLineEdit = new KLineEdit(this);
00060 d->textLineEdit->setClearButtonShown(true);
00061 d->linkUrlLabel = new QLabel(i18n("Link URL:"), this);
00062 d->linkUrlLineEdit = new KLineEdit(this);
00063 d->linkUrlLineEdit->setClearButtonShown(true);
00064
00065 layout->addWidget(d->textLabel, 0, 0);
00066 layout->addWidget(d->textLineEdit, 0, 1);
00067 layout->addWidget(d->linkUrlLabel, 1, 0);
00068 layout->addWidget(d->linkUrlLineEdit, 1, 1);
00069
00070 setMainWidget(entries);
00071
00072 KConfigGroup group(KGlobal::config(), "KLinkDialog");
00073 restoreDialogSize(group);
00074
00075 d->textLineEdit->setFocus();
00076 }
00077
00078 KLinkDialog::~KLinkDialog()
00079 {
00080 KConfigGroup group(KGlobal::config(), "KLinkDialog");
00081 saveDialogSize(group);
00082 delete d;
00083 }
00084
00085 void KLinkDialog::setLinkText(const QString &linkText)
00086 {
00087 d->textLineEdit->setText(linkText);
00088 if (!linkText.trimmed().isEmpty())
00089 d->linkUrlLineEdit->setFocus();
00090 }
00091
00092 void KLinkDialog::setLinkUrl(const QString &linkUrl)
00093 {
00094 d->linkUrlLineEdit->setText(linkUrl);
00095 }
00096
00097
00098 QString KLinkDialog::linkText() const
00099 {
00100 return d->textLineEdit->text().trimmed();
00101 }
00102
00103 QString KLinkDialog::linkUrl() const
00104 {
00105 return d->linkUrlLineEdit->text();
00106 }