Added graying out of the dependency submenu.

This commit is contained in:
Iron Prando da Silva
2021-11-15 11:28:21 +01:00
parent 19a0b9d2ce
commit eea5dd80f7
4 changed files with 21 additions and 12 deletions

View File

@@ -148,19 +148,23 @@ vector<shared_ptr<Transaction>> TraceDB::getTransactionsInTimespan(const Timespa
return parseTransactionsFromQuery(selectTransactionsByTimespan, updateVisiblePhases);
}
void TraceDB::updateDependenciesInTimespan(const Timespan &span)
bool TraceDB::checkDependencyTableExists()
{
executeQuery(checkDependenciesExist);
if (checkDependenciesExist.next())
{
if (checkDependenciesExist.next() && checkDependenciesExist.value(0).toInt() == 1)
return true;
if (checkDependenciesExist.value(0).toInt() == 1)
{
selectDependenciesByTimespan.bindValue(":begin", span.Begin());
selectDependenciesByTimespan.bindValue(":end", span.End());
executeQuery(selectDependenciesByTimespan);
mUpdateDependenciesFromQuery(selectDependenciesByTimespan);
}
return false;
}
void TraceDB::updateDependenciesInTimespan(const Timespan &span)
{
if (checkDependencyTableExists())
{
selectDependenciesByTimespan.bindValue(":begin", span.Begin());
selectDependenciesByTimespan.bindValue(":end", span.End());
executeQuery(selectDependenciesByTimespan);
mUpdateDependenciesFromQuery(selectDependenciesByTimespan);
}
}

View File

@@ -105,6 +105,7 @@ public:
std::vector<CommentModel::Comment> getDebugMessagesInTimespan(const Timespan &span,
unsigned int limit);
bool checkDependencyTableExists();
DependencyInfos getDependencyInfos(DependencyInfos::Type infoType);
QSqlDatabase getDatabase() const;

View File

@@ -224,7 +224,7 @@ void TracePlot::setUpContextMenu()
{setColorGroupingPhase, setColorGroupingTransaction, setColorGroupingThread, setColorGroupingAlphaTransaction});
contextMenu->addMenu(colorGroupingSubMenu);
QMenu *dependenciesSubMenu = new QMenu("Show dependencies", contextMenu);
dependenciesSubMenu = new QMenu("Show dependencies", contextMenu);
dependenciesSubMenu->addActions(
{disabledDependencies, selectedDependencies, allDependencies, switchDrawDependencyTextsOption});
contextMenu->addMenu(dependenciesSubMenu);
@@ -274,6 +274,8 @@ void TracePlot::init(TraceNavigator *navigator, QScrollBar *scrollBar, CommentMo
updateScrollbar();
dependenciesSubMenu->setEnabled(navigator->TraceFile().checkDependencyTableExists());
replot();
}

View File

@@ -182,11 +182,13 @@ private:
QAction *setColorGroupingThread;
QAction *setColorGroupingAlphaTransaction;
QAction *exportToPdf;
ToggleCollapsedAction *toggleCollapsedState;
QMenu *dependenciesSubMenu;
QAction *disabledDependencies;
QAction *selectedDependencies;
QAction *allDependencies;
QAction *switchDrawDependencyTextsOption;
ToggleCollapsedAction *toggleCollapsedState;
TracePlotMouseLabel *mouseLabel;