21#include "stringlistedit.h"
23#include <tqlineedit.h>
28#include <tqpushbutton.h>
30#include <keditlistbox.h>
31#include <kdialogbase.h>
32#include <kstdguiitem.h>
40StringListEdit::StringListEdit(
Property *property, TQWidget *parent,
const char *name)
44 TQHBoxLayout *l =
new TQHBoxLayout(
this, 0, 0);
46 m_edit =
new TQLineEdit(
this);
47 m_edit->setLineWidth(0);
48 m_edit->setReadOnly(
true);
49 m_edit->setSizePolicy(TQSizePolicy::Expanding, TQSizePolicy::Expanding);
50 m_edit->setMinimumHeight(5);
53 m_selectButton =
new TQPushButton(
"...",
this);
54 m_selectButton->setSizePolicy(TQSizePolicy::Minimum, TQSizePolicy::Expanding);
55 l->addWidget(m_selectButton);
56 setFocusWidget(m_selectButton);
58 connect(m_selectButton, TQ_SIGNAL(clicked()),
this, TQ_SLOT(showEditor()));
61StringListEdit::~StringListEdit()
65StringListEdit::value()
const
71StringListEdit::setValue(
const TQVariant &value,
bool emitChange)
73 m_list = value.toStringList();
74 m_edit->setText(value.toStringList().join(
", "));
76 emit valueChanged(
this);
80StringListEdit::drawViewer(TQPainter *p,
const TQColorGroup &cg,
const TQRect &r,
const TQVariant &value)
88StringListEdit::showEditor()
90 KDialogBase dialog(this->topLevelWidget(),
"stringlist_dialog",
true, i18n(
"Edit List of Items"),
94 dialog.setMainWidget(edit);
97 if(dialog.exec() == TQDialog::Accepted)
99 m_list = edit->
items();
100 m_edit->setText(m_list.join(
", "));
101 emit valueChanged(
this);
106StringListEdit::setReadOnlyInternal(
bool readOnly)
108 m_selectButton->setEnabled(!readOnly);
111#include "stringlistedit.moc"
void insertStringList(const TQStringList &list, int index=-1)
TQStringList items() const
The base class representing a single property.
const char * name(StdAction id)
Namespace for a set of classes implementing generic properties framework.