#include "qt/element/QtStringListBox.h" #include #include "qt/element/QtStringListBoxItem.h" QtStringListBox::QtStringListBox(QWidget *parent, const QString& listName) : QtListBox(parent, listName) { } std::vector QtStringListBox::getStrings() { std::vector strings; for (int i = 0; i < m_list->count(); ++i) { QtListBoxItem* widget = dynamic_cast(m_list->itemWidget(m_list->item(i))); strings.push_back(widget->getText().toStdWString()); } return strings; } void QtStringListBox::setStrings(const std::vector& strings, bool readOnly) { clear(); for (const std::wstring& str : strings) { QtListBoxItem* itemWidget = addListBoxItemWithText(QString::fromStdWString(str)); itemWidget->setReadOnly(readOnly); } } QtListBoxItem* QtStringListBox::createListBoxItem(QListWidgetItem* item) { return new QtStringListBoxItem(this, item); }