Files
seer/src/SeerSourceSymbolLibraryManagerWidget.cpp
T

90 lines
3.3 KiB
C++
Raw Normal View History

2022-09-25 18:50:53 -05:00
#include "SeerSourceSymbolLibraryManagerWidget.h"
#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);
_typeBrowserWidget = new SeerTypeBrowserWidget(this);
_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");
tabWidget->addTab(_typeBrowserWidget, "Types");
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.");
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);
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 () {
return _typeBrowserWidget;
}
2022-09-25 18:50:53 -05:00
SeerStaticBrowserWidget* SeerSourceSymbolLibraryManagerWidget::staticBrowserWidget () {
return _staticBrowserWidget;
}
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();
typeBrowserWidget()->refresh();
staticBrowserWidget()->refresh();
2022-05-08 17:38:39 -05:00
libraryBrowserWidget()->refresh();
2021-09-01 14:01:00 -05:00
}
void SeerSourceSymbolLibraryManagerWidget::handleHelpToolButtonClicked () {
SeerHelpPageWidget* help = new SeerHelpPageWidget;
help->loadFile(":/seer/resources/help/SourceSymbolLibraryInfoBrowser.md");
help->show();
}