diff --git a/notes/README.json b/notes/README.json new file mode 100644 index 0000000..9de8c88 --- /dev/null +++ b/notes/README.json @@ -0,0 +1,6 @@ + +A good example for writing/reading a JSON file. For example, Seer's 'pre' and 'post' CONNECT mode. + +https://stackoverflow.com/questions/61075951/minimal-example-on-how-to-read-write-and-print-qjson-code-with-qjsondocument + + diff --git a/src/SeerDebugDialog.cpp b/src/SeerDebugDialog.cpp index 1eab1f7..0840398 100644 --- a/src/SeerDebugDialog.cpp +++ b/src/SeerDebugDialog.cpp @@ -330,10 +330,14 @@ void SeerDebugDialog::handleRunModeChanged (int id) { // Disable all imprortant widgets. // - // ID == 0 RUN/START executableNameLineEdit->setEnabled(false); + executableNameToolButton->setEnabled(false); executableSymbolNameLineEdit->setEnabled(false); + executableSymbolNameToolButton->setEnabled(false); executableWorkingDirectoryLineEdit->setEnabled(false); + executableWorkingDirectoryToolButton->setEnabled(false); + + // ID == 0 RUN/START runProgramArgumentsLabel->setEnabled(false); runProgramArgumentsLineEdit->setEnabled(false); loadBreakpointsFilenameLabel->setEnabled(false); @@ -368,8 +372,11 @@ void SeerDebugDialog::handleRunModeChanged (int id) { // ID == 0 RUN/START if (id == 0) { executableNameLineEdit->setEnabled(true); + executableNameToolButton->setEnabled(true); executableSymbolNameLineEdit->setEnabled(true); + executableSymbolNameToolButton->setEnabled(true); executableWorkingDirectoryLineEdit->setEnabled(true); + executableWorkingDirectoryToolButton->setEnabled(true); runProgramArgumentsLabel->setEnabled(true); runProgramArgumentsLineEdit->setEnabled(true); loadBreakpointsFilenameLabel->setEnabled(true); @@ -387,7 +394,9 @@ void SeerDebugDialog::handleRunModeChanged (int id) { // ID == 1 ATTACH if (id == 1) { executableNameLineEdit->setEnabled(true); + executableNameToolButton->setEnabled(true); executableSymbolNameLineEdit->setEnabled(true); + executableSymbolNameToolButton->setEnabled(true); attachProgramPidLabel->setEnabled(true); attachProgramPidLineEdit->setEnabled(true); attachProgramPidToolButton->setEnabled(true); @@ -396,6 +405,7 @@ void SeerDebugDialog::handleRunModeChanged (int id) { // ID == 2 CONNECT if (id == 2) { executableSymbolNameLineEdit->setEnabled(true); + executableSymbolNameToolButton->setEnabled(true); connectProgramHostPortLabel->setEnabled(true); connectProgramHostPortLineEdit->setEnabled(true); } @@ -403,7 +413,7 @@ void SeerDebugDialog::handleRunModeChanged (int id) { // ID == 3 CORE if (id == 3) { executableSymbolNameLineEdit->setEnabled(true); - connectProgramHostPortLabel->setEnabled(true); + executableSymbolNameToolButton->setEnabled(true); loadCoreFilenameLabel->setEnabled(true); loadCoreFilenameLineEdit->setEnabled(true); loadCoreFilenameToolButton->setEnabled(true); diff --git a/src/SeerDebugDialog.ui b/src/SeerDebugDialog.ui index a5533b4..242cb46 100644 --- a/src/SeerDebugDialog.ui +++ b/src/SeerDebugDialog.ui @@ -13,8 +13,8 @@ Select Executable to Debug - - + + Executable Name @@ -72,7 +72,7 @@ - + Symbol File Name @@ -130,7 +130,7 @@ - + @@ -176,7 +176,7 @@ - + @@ -187,8 +187,8 @@ Launch Method - - + + 2 @@ -203,8 +203,7 @@ - Run and debug an executable. - + Run and debug an executable. @@ -401,8 +400,7 @@ - Attach and debug a running process on the local machine. - + Attach and debug a running process on the local machine. @@ -486,63 +484,139 @@ Connect - + - + - Connect to a gdbserver (or similar) session. - + Connect to a gdbserver (or similar) session. - - - - - - 100 - 0 - - - - How to access the remote gdbserver. - - - - - - host:port or /dev/serialport - - - true - - - - - - - Gdbserver - - - - - - - + - Qt::Vertical + Qt::Horizontal - 20 - 378 + 248 + 20 + + + + Help for Connect launch method. + + + ... + + + + :/seer/resources/RelaxLightIcons/help-about.svg:/seer/resources/RelaxLightIcons/help-about.svg + + + + + + + + + + + Gdbserver + + + + + + + + 100 + 0 + + + + How to access the remote gdbserver. + + + + + + host:port or /dev/serialport + + + true + + + + + + + + + + + gdb commands before "connect" + + + + + + + + + Load "pre" and "post" commands from a file. + + + ... + + + + :/seer/resources/RelaxLightIcons/document-open.svg:/seer/resources/RelaxLightIcons/document-open.svg + + + + + + + Save "pre" and "post" commands to a file. + + + ... + + + + :/seer/resources/RelaxLightIcons/document-save-as.svg:/seer/resources/RelaxLightIcons/document-save-as.svg + + + + + + + Qt::Vertical + + + + 20 + 348 + + + + + + + + + + gdb commands after "connect" + + + @@ -557,8 +631,7 @@ - Analyze a corefile. - + Analyze a corefile. @@ -625,7 +698,7 @@ - + Qt::Horizontal diff --git a/src/SeerMainWindow.cpp b/src/SeerMainWindow.cpp index 546c9f7..23345ce 100644 --- a/src/SeerMainWindow.cpp +++ b/src/SeerMainWindow.cpp @@ -48,7 +48,7 @@ SeerMainWindow::SeerMainWindow(QWidget* parent) : QMainWindow(parent) { // Add help button. QToolButton* helpToolButton = new QToolButton(this); helpToolButton->setIcon(QIcon(":/seer/resources/RelaxLightIcons/help-about.svg")); - helpToolButton->setToolTip("Help on source/symbol/library information."); + helpToolButton->setToolTip("Help on Seer main window."); toolBar->addWidget(helpToolButton);