20#include "kexinamedialog.h"
22KexiNameDialog::KexiNameDialog(
const TQString& message,
23 TQWidget * parent,
const char * name)
24 : KDialogBase(KDialogBase::Plain, TQString(),
25 KDialogBase::Ok|KDialogBase::Cancel|KDialogBase::Help,
30 m_widget=
new KexiNameWidget(message, plainPage(),
"KexiNameWidget");
34KexiNameDialog::KexiNameDialog(
const TQString& message,
35 const TQString& nameLabel,
const TQString& nameText,
36 const TQString& captionLabel,
const TQString& captionText,
37 TQWidget * parent,
const char * name)
38 : KDialogBase(KDialogBase::Plain, TQString(),
39 KDialogBase::Ok|KDialogBase::Cancel,
43 m_widget=
new KexiNameWidget(message, nameLabel, nameText,
44 captionLabel, captionText, plainPage(),
"KexiNameWidget");
48KexiNameDialog::~KexiNameDialog()
52void KexiNameDialog::init()
54 TQGridLayout *lyr =
new TQGridLayout(plainPage(), 2, 3);
55 m_icon =
new TQLabel( plainPage(),
"icon" );
56 m_icon->setAlignment(
int( AlignTop | AlignLeft ) );
57 m_icon->setSizePolicy(TQSizePolicy(TQSizePolicy::Fixed, TQSizePolicy::Preferred,1,0));
58 m_icon->setFixedWidth(50);
59 lyr->addWidget(m_icon,0,0);
61 m_widget->setSizePolicy(TQSizePolicy(TQSizePolicy::Expanding, TQSizePolicy::Preferred,1,0));
62 lyr->addWidget(m_widget,0,1);
63 lyr->addItem(
new TQSpacerItem( 25, 10, TQSizePolicy::Expanding, TQSizePolicy::Minimum ), 0, 2);
64 lyr->addItem(
new TQSpacerItem( 5, 10, TQSizePolicy::Minimum, TQSizePolicy::Expanding ), 1, 1);
67 connect(m_widget,TQ_SIGNAL(messageChanged()),
this, TQ_SLOT(updateSize()));
69 enableButtonOK(
true );
71 connect(m_widget, TQ_SIGNAL(textChanged()),
this, TQ_SLOT(slotTextChanged()));
74void KexiNameDialog::updateSize()
77 resize( TQSize(400, 140 + (!m_widget->lbl_message->text().isEmpty()?m_widget->lbl_message->height():0) )
78 .expandedTo(minimumSizeHint()) );
82void KexiNameDialog::slotTextChanged()
85 if (m_widget->isNameRequired() && m_widget->nameText().isEmpty()
86 || m_widget->isCaptionRequired() && m_widget->captionText().isEmpty())
88 enableButtonOK( enable );
91void KexiNameDialog::accept()
93 if (!m_widget->checkValidity())
95 KDialogBase::accept();
98void KexiNameDialog::setDialogIcon(
const TQPixmap& icon)
100 m_icon->setPixmap(icon);
103void KexiNameDialog::show()
105 m_widget->captionLineEdit()->selectAll();
106 m_widget->captionLineEdit()->setFocus();
110#include "kexinamedialog.moc"