void GraffitiTab::SetupEdits () { new Util::ClearLineEditAddon (CoreProxy_, Ui_.Album_); new Util::ClearLineEditAddon (CoreProxy_, Ui_.Artist_); new Util::ClearLineEditAddon (CoreProxy_, Ui_.Title_); auto genreMgr = new Util::LineEditButtonManager (Ui_.Genre_); Ui_.Genre_->SetSeparator (" / "); auto model = new Util::TagsCompletionModel (this); model->UpdateTags (Genres); auto completer = new Util::TagsCompleter (Ui_.Genre_); completer->OverrideModel (model); Ui_.Genre_->AddSelector (genreMgr); new Util::ClearLineEditAddon (CoreProxy_, Ui_.Genre_, genreMgr); connect (Ui_.ArtistSetAll_, SIGNAL (released ()), this, SLOT (on_Artist__textChanged ())); connect (Ui_.AlbumSetAll_, SIGNAL (released ()), this, SLOT (on_Album__textChanged ())); connect (Ui_.TitleSetAll_, SIGNAL (released ()), this, SLOT (on_Title__textChanged ())); connect (Ui_.GenreSetAll_, SIGNAL (released ()), this, SLOT (on_Genre__textChanged ())); connect (Ui_.YearSetAll_, SIGNAL (released ()), this, SLOT (on_Year__valueChanged ())); }
QWidget* EntriesDelegate::createEditor (QWidget *parent, const QStyleOptionViewItem& option, const QModelIndex& index) const { switch (index.column ()) { case EntriesModel::Columns::Account: case EntriesModel::Columns::EntryCurrency: return new QComboBox (parent); case EntriesModel::Columns::Categories: { auto result = new Util::TagsLineEdit (parent); auto completer = new Util::TagsCompleter (result, result); const auto& cats = Core::Instance ().GetOpsManager ()->GetKnownCategories ().toList (); completer->OverrideModel (new QStringListModel (cats, completer)); result->AddSelector (); return result; } default: return QStyledItemDelegate::createEditor (parent, option, index); } }