# # # patch "src/view/dialogs/RevisionManifest.cpp" # from [736a6cd757dfe3b1523445bb4bc76d7153d2247c] # to [e1d48f9707ef7086f7bae74a2bc1a110af2f6f5f] # # patch "src/view/dialogs/RevisionManifest.h" # from [f52de1b4ac11bb65b418ecdf8923f6760018e956] # to [8ac1d3278d8818c5dae1d245e9062fa40bd9ddd1] # ============================================================ --- src/view/dialogs/RevisionManifest.cpp 736a6cd757dfe3b1523445bb4bc76d7153d2247c +++ src/view/dialogs/RevisionManifest.cpp e1d48f9707ef7086f7bae74a2bc1a110af2f6f5f @@ -153,25 +153,31 @@ void RevisionManifest::contextMenuReques QFont activeFont; activeFont.setBold(true); - QAction * actOpenFile = menu.addAction(tr("Open file")); - QAction * actSaveSelected = menu.addAction(tr("Save selected")); - QAction * actSaveAll = menu.addAction(tr("Save all")); + QAction * actOpenFile = 0; + QAction * actFileHistory = 0; if (indexList.size() == 1 && - !static_cast(indexList.at(0).internalPointer())->is_directory) + !static_cast(indexList.at(0).internalPointer())->is_directory) { + actOpenFile = menu.addAction(tr("Open file")); + actFileHistory = menu.addAction(tr("File history")); actOpenFile->setFont(activeFont); + menu.addSeparator(); } - else - { - actOpenFile->setVisible(false); - } + QAction * actSaveSelected = menu.addAction(tr("Save selected")); + QAction * actSaveAll = menu.addAction(tr("Save all")); + QAction * act = menu.exec(pos); if (act == actOpenFile) { openFile(indexList.at(0)); } + else if (act == actFileHistory) + { + ManifestEntry * entry = static_cast(indexList.at(0).internalPointer()); + emit fileHistory(entry->path, revision); + } else if (act == actSaveSelected) { saveSelectedFiles(); ============================================================ --- src/view/dialogs/RevisionManifest.h f52de1b4ac11bb65b418ecdf8923f6760018e956 +++ src/view/dialogs/RevisionManifest.h 8ac1d3278d8818c5dae1d245e9062fa40bd9ddd1 @@ -37,6 +37,9 @@ public: void readManifest(const QString &); +signals: + void fileHistory(const QString &, const QString &); + private: FileEntryList extractSelectedEntries(const QModelIndexList &); FileEntryList addEntriesRecursive(ManifestEntry *);