X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Feffectslistview.cpp;h=9935394c1b445ba3c5db0a10fc2a6292e3766b48;hb=8feb092507a7bff209dae60353bcd000bd82c969;hp=050029b666c1f8c1d02bfca40f60ffaddd16b70c;hpb=4e71606a3c8fbb73a07bbc37be6933a01e394c20;p=kdenlive diff --git a/src/effectslistview.cpp b/src/effectslistview.cpp index 050029b6..9935394c 100644 --- a/src/effectslistview.cpp +++ b/src/effectslistview.cpp @@ -35,20 +35,25 @@ EffectsListView::EffectsListView(QWidget *parent) : { setupUi(this); - QMenu *menu = new QMenu(this); - m_effectsList = new EffectsListWidget(menu); + QMenu *contextMenu = new QMenu(this); + m_effectsList = new EffectsListWidget(contextMenu); QVBoxLayout *lyr = new QVBoxLayout(effectlistframe); lyr->addWidget(m_effectsList); lyr->setContentsMargins(0, 0, 0, 0); search_effect->setTreeWidget(m_effectsList); + search_effect->setToolTip(i18n("Search in the effect list")); buttonInfo->setIcon(KIcon("help-about")); + buttonInfo->setToolTip(i18n("Show/Hide the effect description")); setFocusPolicy(Qt::StrongFocus); setFocusProxy(search_effect); + m_effectsList->setFocusProxy(search_effect); - if (KdenliveSettings::showeffectinfo()) { + if (KdenliveSettings::showeffectinfo()) buttonInfo->setDown(true); - } else infopanel->hide(); - menu->addAction(KIcon("edit-delete"), i18n("Delete effect"), this, SLOT(slotRemoveEffect())); + else + infopanel->hide(); + + contextMenu->addAction(KIcon("edit-delete"), i18n("Delete effect"), this, SLOT(slotRemoveEffect())); connect(type_combo, SIGNAL(currentIndexChanged(int)), this, SLOT(filterList(int))); connect(buttonInfo, SIGNAL(clicked()), this, SLOT(showInfoPanel())); @@ -103,7 +108,12 @@ void EffectsListView::showInfoPanel() void EffectsListView::slotEffectSelected() { QDomElement effect = m_effectsList->currentEffect(); - if (!effect.isNull()) emit addEffect(effect); + QTreeWidgetItem* item=m_effectsList->currentItem(); + if (item && m_effectsList->indexOfTopLevelItem(item)!=-1){ + item->setExpanded(!item->isExpanded()); + } + if (!effect.isNull()) + emit addEffect(effect); } void EffectsListView::slotUpdateInfo() @@ -111,9 +121,9 @@ void EffectsListView::slotUpdateInfo() infopanel->setText(m_effectsList->currentInfo()); } -void EffectsListView::reloadEffectList() +void EffectsListView::reloadEffectList(QMenu *effectsMenu, KActionCategory *effectActions) { - m_effectsList->initList(); + m_effectsList->initList(effectsMenu, effectActions); } void EffectsListView::slotRemoveEffect() @@ -162,6 +172,8 @@ void EffectsListView::slotUpdateSearch(QTreeWidgetItem *item, bool hidden) void EffectsListView::slotAutoExpand(QString text) { + search_effect->updateSearch(); + for (int i = 0; i < m_effectsList->topLevelItemCount(); ++i) { QTreeWidgetItem *folder = m_effectsList->topLevelItem(i); bool expandFolder = false;