2022-09-25 18:50:53 -05:00
|
|
|
#include "SeerSourceSymbolLibraryManagerWidget.h"
|
2022-09-25 20:06:56 -05:00
|
|
|
#include "SeerHelpPageWidget.h"
|
|
|
|
|
#include "QHContainerWidget.h"
|
2021-09-01 14:01:00 -05:00
|
|
|
#include <QtWidgets/QToolButton>
|
|
|
|
|
#include <QtGui/QIcon>
|
|
|
|
|
#include <QtCore/QDebug>
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerSourceSymbolLibraryManagerWidget::SeerSourceSymbolLibraryManagerWidget (QWidget* parent) : QWidget(parent) {
|
2021-09-01 14:01:00 -05:00
|
|
|
|
|
|
|
|
// Initialize private data
|
|
|
|
|
|
|
|
|
|
// Setup UI
|
|
|
|
|
setupUi(this);
|
|
|
|
|
|
|
|
|
|
// Setup the widgets
|
|
|
|
|
tabWidget->setMovable(true);
|
|
|
|
|
tabWidget->setTabsClosable(false);
|
|
|
|
|
|
2022-05-08 17:38:39 -05:00
|
|
|
_sourceBrowserWidget = new SeerSourceBrowserWidget(this);
|
|
|
|
|
_functionBrowserWidget = new SeerFunctionBrowserWidget(this);
|
2022-05-09 15:58:47 -05:00
|
|
|
_typeBrowserWidget = new SeerTypeBrowserWidget(this);
|
2022-08-11 19:05:55 -05:00
|
|
|
_staticBrowserWidget = new SeerStaticBrowserWidget(this);
|
2022-05-08 17:38:39 -05:00
|
|
|
_libraryBrowserWidget = new SeerLibraryBrowserWidget(this);
|
2021-09-01 14:01:00 -05:00
|
|
|
|
2022-05-08 17:38:39 -05:00
|
|
|
tabWidget->addTab(_sourceBrowserWidget, "Source");
|
|
|
|
|
tabWidget->addTab(_functionBrowserWidget, "Functions");
|
2022-05-09 15:58:47 -05:00
|
|
|
tabWidget->addTab(_typeBrowserWidget, "Types");
|
2022-08-11 19:05:55 -05:00
|
|
|
tabWidget->addTab(_staticBrowserWidget, "Statics");
|
2022-05-08 17:38:39 -05:00
|
|
|
tabWidget->addTab(_libraryBrowserWidget, "Libraries");
|
2021-09-01 14:01:00 -05:00
|
|
|
|
|
|
|
|
QToolButton* refreshToolButton = new QToolButton(tabWidget);
|
2022-02-09 11:59:14 -06:00
|
|
|
refreshToolButton->setIcon(QIcon(":/seer/resources/RelaxLightIcons/view-refresh.svg"));
|
2022-09-25 18:50:53 -05:00
|
|
|
refreshToolButton->setToolTip("Refresh the source/symbol/library information.");
|
2022-09-25 20:06:56 -05:00
|
|
|
|
|
|
|
|
QToolButton* helpToolButton = new QToolButton(tabWidget);
|
|
|
|
|
helpToolButton->setIcon(QIcon(":/seer/resources/RelaxLightIcons/help-about.svg"));
|
|
|
|
|
helpToolButton->setToolTip("Help on source/symbol/library information.");
|
|
|
|
|
|
|
|
|
|
QHContainerWidget* hcontainer = new QHContainerWidget(this);
|
|
|
|
|
hcontainer->setSpacing(3);
|
|
|
|
|
hcontainer->addWidget(refreshToolButton);
|
|
|
|
|
hcontainer->addWidget(helpToolButton);
|
|
|
|
|
|
|
|
|
|
tabWidget->setCornerWidget(hcontainer, Qt::TopRightCorner);
|
2021-09-01 14:01:00 -05:00
|
|
|
|
|
|
|
|
// Connect things.
|
2022-09-25 18:50:53 -05:00
|
|
|
QObject::connect(refreshToolButton, &QToolButton::clicked, this, &SeerSourceSymbolLibraryManagerWidget::handleRefreshToolButtonClicked);
|
2022-09-25 20:06:56 -05:00
|
|
|
QObject::connect(helpToolButton, &QToolButton::clicked, this, &SeerSourceSymbolLibraryManagerWidget::handleHelpToolButtonClicked);
|
2021-09-01 14:01:00 -05:00
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerSourceSymbolLibraryManagerWidget::~SeerSourceSymbolLibraryManagerWidget () {
|
2021-09-01 14:01:00 -05:00
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerSourceBrowserWidget* SeerSourceSymbolLibraryManagerWidget::sourceBrowserWidget () {
|
2021-09-01 14:01:00 -05:00
|
|
|
return _sourceBrowserWidget;
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerFunctionBrowserWidget* SeerSourceSymbolLibraryManagerWidget::functionBrowserWidget () {
|
2022-05-08 17:38:39 -05:00
|
|
|
return _functionBrowserWidget;
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerTypeBrowserWidget* SeerSourceSymbolLibraryManagerWidget::typeBrowserWidget () {
|
2022-05-09 15:58:47 -05:00
|
|
|
return _typeBrowserWidget;
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerStaticBrowserWidget* SeerSourceSymbolLibraryManagerWidget::staticBrowserWidget () {
|
2022-08-11 19:05:55 -05:00
|
|
|
return _staticBrowserWidget;
|
2022-05-09 15:58:47 -05:00
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
SeerLibraryBrowserWidget* SeerSourceSymbolLibraryManagerWidget::libraryBrowserWidget () {
|
2022-05-08 17:38:39 -05:00
|
|
|
return _libraryBrowserWidget;
|
2021-09-01 14:01:00 -05:00
|
|
|
}
|
|
|
|
|
|
2022-09-25 18:50:53 -05:00
|
|
|
void SeerSourceSymbolLibraryManagerWidget::handleRefreshToolButtonClicked () {
|
2021-09-01 14:01:00 -05:00
|
|
|
|
|
|
|
|
sourceBrowserWidget()->refresh();
|
2022-05-08 17:38:39 -05:00
|
|
|
functionBrowserWidget()->refresh();
|
2022-05-09 15:58:47 -05:00
|
|
|
typeBrowserWidget()->refresh();
|
2022-08-11 19:05:55 -05:00
|
|
|
staticBrowserWidget()->refresh();
|
2022-05-08 17:38:39 -05:00
|
|
|
libraryBrowserWidget()->refresh();
|
2021-09-01 14:01:00 -05:00
|
|
|
}
|
|
|
|
|
|
2022-09-25 20:06:56 -05:00
|
|
|
void SeerSourceSymbolLibraryManagerWidget::handleHelpToolButtonClicked () {
|
|
|
|
|
|
|
|
|
|
SeerHelpPageWidget* help = new SeerHelpPageWidget;
|
|
|
|
|
help->loadFile(":/seer/resources/help/SourceSymbolLibraryInfoBrowser.md");
|
|
|
|
|
help->show();
|
|
|
|
|
}
|
|
|
|
|
|