Improve file menu of TraceAnalyzer.
This commit is contained in:
@@ -119,16 +119,21 @@ void TraceAnalyzer::openTracefile(const QString &path)
|
||||
void TraceAnalyzer::on_menuFile_aboutToShow()
|
||||
{
|
||||
ui->actionOpen->setEnabled(true);
|
||||
ui->actionQuit->setEnabled(true);
|
||||
|
||||
bool tabsOpen = ui->traceFileTabs->count() > 0;
|
||||
bool exportAsVcdAvailable = PythonCaller::instance().vcdExportDependenciesAvailable();
|
||||
|
||||
ui->actionSave->setEnabled(tabsOpen);
|
||||
ui->actionSave_as->setEnabled(tabsOpen);
|
||||
ui->actionSave_all->setEnabled(tabsOpen);
|
||||
ui->actionReload->setEnabled(tabsOpen);
|
||||
ui->actionReload_all->setEnabled(tabsOpen);
|
||||
ui->actionSaveChangesToDB->setEnabled(tabsOpen);
|
||||
ui->actionExportAsVCD->setEnabled(tabsOpen && exportAsVcdAvailable);
|
||||
ui->actionClose_all->setEnabled(tabsOpen);
|
||||
ui->actionTest->setEnabled(tabsOpen);
|
||||
ui->actionMetrics->setEnabled(tabsOpen);
|
||||
ui->actionClose->setEnabled(tabsOpen);
|
||||
ui->actionClose_all->setEnabled(tabsOpen);
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_traceFileTabs_tabCloseRequested(int index)
|
||||
@@ -144,6 +149,11 @@ void TraceAnalyzer::on_traceFileTabs_tabCloseRequested(int index)
|
||||
}
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionClose_triggered()
|
||||
{
|
||||
on_traceFileTabs_tabCloseRequested(ui->traceFileTabs->currentIndex());
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionClose_all_triggered()
|
||||
{
|
||||
for (unsigned int i = ui->traceFileTabs->count(); i--;)
|
||||
@@ -154,6 +164,22 @@ void TraceAnalyzer::on_actionClose_all_triggered()
|
||||
statusLabel->clear();
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionReload_triggered()
|
||||
{
|
||||
auto traceFileTab = static_cast<TraceFileTab *>(ui->traceFileTabs->currentWidget());
|
||||
|
||||
QString traceFile = traceFileTab->getPathToTraceFile();
|
||||
|
||||
if (!traceFileTab->close())
|
||||
return;
|
||||
|
||||
ui->traceFileTabs->removeTab(ui->traceFileTabs->currentIndex());
|
||||
openedTraceFiles.remove(traceFile);
|
||||
delete traceFileTab;
|
||||
|
||||
openTracefile(traceFile);
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionReload_all_triggered()
|
||||
{
|
||||
TraceFileTab *traceFileTab;
|
||||
@@ -192,7 +218,20 @@ void TraceAnalyzer::on_actionReload_all_triggered()
|
||||
this->statusChanged(QString("All databases reloaded "), true);
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionSaveChangesToDB_triggered()
|
||||
void TraceAnalyzer::on_actionSave_triggered()
|
||||
{
|
||||
auto traceFileTab = static_cast<TraceFileTab *>(ui->traceFileTabs->currentWidget());
|
||||
traceFileTab->commitChangesToDB();
|
||||
|
||||
// TODO update status
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionSave_as_triggered()
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionSave_all_triggered()
|
||||
{
|
||||
for (int index = 0; index < ui->traceFileTabs->count(); index++) {
|
||||
// Changes in the database files will trigger the file watchers from
|
||||
@@ -212,7 +251,7 @@ void TraceAnalyzer::on_actionExportAsVCD_triggered()
|
||||
void TraceAnalyzer::statusChanged(QString message, bool saveChangesEnable)
|
||||
{
|
||||
statusLabel->setText(message + QTime::currentTime().toString());
|
||||
ui->actionSaveChangesToDB->setEnabled(saveChangesEnable);
|
||||
ui->actionSave->setEnabled(saveChangesEnable);
|
||||
}
|
||||
|
||||
void TraceAnalyzer::on_actionTest_triggered()
|
||||
|
||||
@@ -80,12 +80,16 @@ private Q_SLOTS:
|
||||
void on_traceFileTabs_tabCloseRequested(int index);
|
||||
|
||||
void on_actionOpen_triggered();
|
||||
void on_actionSave_triggered();
|
||||
void on_actionSave_as_triggered();
|
||||
void on_actionSave_all_triggered();
|
||||
void on_actionReload_triggered();
|
||||
void on_actionReload_all_triggered();
|
||||
void on_actionSaveChangesToDB_triggered();
|
||||
void on_actionExportAsVCD_triggered();
|
||||
void on_actionClose_all_triggered();
|
||||
void on_actionTest_triggered();
|
||||
void on_actionMetrics_triggered();
|
||||
void on_actionClose_triggered();
|
||||
void on_actionClose_all_triggered();
|
||||
|
||||
public Q_SLOTS:
|
||||
void statusChanged(QString message, bool saveChangesEnable = false);
|
||||
|
||||
@@ -54,20 +54,28 @@
|
||||
</property>
|
||||
<widget class="QMenu" name="menuFile">
|
||||
<property name="title">
|
||||
<string>File</string>
|
||||
<string>&File</string>
|
||||
</property>
|
||||
<addaction name="actionOpen"/>
|
||||
<addaction name="actionSave"/>
|
||||
<addaction name="actionSave_as"/>
|
||||
<addaction name="actionSave_all"/>
|
||||
<addaction name="actionReload"/>
|
||||
<addaction name="actionReload_all"/>
|
||||
<addaction name="actionSaveChangesToDB"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionExportAsVCD"/>
|
||||
<addaction name="actionClose_all"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionTest"/>
|
||||
<addaction name="actionMetrics"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionClose"/>
|
||||
<addaction name="actionClose_all"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="actionQuit"/>
|
||||
</widget>
|
||||
<widget class="QMenu" name="menuHelp">
|
||||
<property name="title">
|
||||
<string>Help</string>
|
||||
<string>&Help</string>
|
||||
</property>
|
||||
<addaction name="actionInfo"/>
|
||||
<addaction name="actionAbout"/>
|
||||
@@ -77,54 +85,54 @@
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusbar"/>
|
||||
<action name="actionOpen">
|
||||
<property name="icon">
|
||||
<iconset theme="document-open">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Open</string>
|
||||
<string>&Open...</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+O</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionReload_all">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<action name="actionReload">
|
||||
<property name="icon">
|
||||
<iconset theme="view-refresh">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Reload databases</string>
|
||||
<string>&Reload</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+R</string>
|
||||
<string>F5</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSaveChangesToDB">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<action name="actionSave">
|
||||
<property name="icon">
|
||||
<iconset theme="document-save">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Save changes to DB</string>
|
||||
<string>&Save</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+S</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionClose_all">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Close all</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+Q</string>
|
||||
<string>C&lose all</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionInfo">
|
||||
<property name="text">
|
||||
<string>Info</string>
|
||||
<string>&Info</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionAbout">
|
||||
<property name="text">
|
||||
<string>About</string>
|
||||
<string>&About</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionPreferences">
|
||||
@@ -136,39 +144,101 @@
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionTest">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Test</string>
|
||||
<string>&Test</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+T</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionMetrics">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Metrics</string>
|
||||
<string>&Metrics</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+M</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionExportAsVCD">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<property name="icon">
|
||||
<iconset theme="document-export">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Export as VCD</string>
|
||||
<string>Export as &VCD...</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+E</string>
|
||||
<string>Ctrl+V</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionClose">
|
||||
<property name="icon">
|
||||
<iconset theme="document-close">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>&Close</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+W</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionReload_all">
|
||||
<property name="text">
|
||||
<string>R&eload all</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionQuit">
|
||||
<property name="icon">
|
||||
<iconset theme="application-exit">
|
||||
<normaloff>../../../../.designer/backup</normaloff>../../../../.designer/backup</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>&Quit</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+Q</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSave_all">
|
||||
<property name="icon">
|
||||
<iconset theme="document-save-all">
|
||||
<normaloff>.</normaloff>.</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Save &all</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionSave_as">
|
||||
<property name="icon">
|
||||
<iconset theme="document-save-as">
|
||||
<normaloff>.</normaloff>.</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Save &as...</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>Ctrl+Shift+S</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>actionQuit</sender>
|
||||
<signal>triggered()</signal>
|
||||
<receiver>TraceAnalyzer</receiver>
|
||||
<slot>close()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>-1</x>
|
||||
<y>-1</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>399</x>
|
||||
<y>299</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
||||
|
||||
Reference in New Issue
Block a user