+void ProjectList::setupMenu(QMenu *addMenu, QAction *defaultAction)
+{
+ QList <QAction *> actions = addMenu->actions();
+ for (int i = 0; i < actions.count(); i++) {
+ if (actions.at(i)->data().toString() == "clip_properties") {
+ m_editAction = actions.at(i);
+ m_toolbar->addAction(m_editAction);
+ actions.removeAt(i);
+ i--;
+ } else if (actions.at(i)->data().toString() == "delete_clip") {
+ m_deleteAction = actions.at(i);
+ m_toolbar->addAction(m_deleteAction);
+ actions.removeAt(i);
+ i--;
+ } else if (actions.at(i)->data().toString() == "edit_clip") {
+ m_openAction = actions.at(i);
+ actions.removeAt(i);
+ i--;
+ } else if (actions.at(i)->data().toString() == "reload_clip") {
+ m_reloadAction = actions.at(i);
+ actions.removeAt(i);
+ i--;
+ }
+ }
+
+ QMenu *m = new QMenu();
+ m->addActions(actions);
+ m_addButton->setMenu(m);
+ m_addButton->setDefaultAction(defaultAction);
+ m_menu = new QMenu();
+ m_menu->addActions(addMenu->actions());
+}
+
+void ProjectList::setupGeneratorMenu(QMenu *addMenu)
+{
+ if (!addMenu) return;
+ QMenu *menu = m_addButton->menu();
+ menu->addMenu(addMenu);
+ m_addButton->setMenu(menu);
+
+ m_menu->addMenu(addMenu);
+ if (addMenu->isEmpty()) addMenu->setEnabled(false);
+ m_menu->addAction(m_reloadAction);
+ m_menu->addAction(m_editAction);
+ m_menu->addAction(m_openAction);
+ m_menu->addAction(m_deleteAction);
+ m_menu->insertSeparator(m_deleteAction);
+}
+
+
+QByteArray ProjectList::headerInfo()
+{
+ return listView->header()->saveState();
+}
+
+void ProjectList::setHeaderInfo(const QByteArray &state)
+{
+ listView->header()->restoreState(state);
+}
+
+void ProjectList::slotEditClip()
+{