Files
iDescriptor/src/platform/windows/diagnose_widget.h
T
uncor3 4b81d7bdf1 fix Windows build
- Updated README.md to include CMake command for installation.
- Improved win-deploy.cmake to handle executable path issues and added detailed logging for deployment steps.
- Introduced checks for runtime dependencies and optimized DLL copying logic to avoid unnecessary copies.
- Added additional MinGW runtime DLLs required for GStreamer and FFmpeg.
- Created idescriptor.rc for application versioning and resource management.
- Updated resources.qrc to include application icon.
- Modified AppsWidget to improve UI for install and download actions.
- Adjusted dnssd_service.h to conditionally include headers based on platform.
- Enhanced install_ipa.cpp with additional includes for better compatibility.
- Updated main.cpp to set up environment variables for GStreamer on Windows.
- Improved mainwindow.cpp to add a no devices detected page and integrate dependency checks.
- Cleaned up mainwindow.ui by removing unnecessary layout elements.
- Implemented check_deps.cpp and check_deps.h for verifying required dependencies on Windows.
- Created diagnose_dialog.cpp and diagnose_dialog.h for a dialog to display dependency checks.
- Developed diagnose_widget.cpp and diagnose_widget.h to manage and display dependency items.
- Enhanced sshterminalwidget.cpp to improve terminal handling on Windows.
- Updated welcomewidget.cpp to refine UI layout and spacing for better aesthetics.
2025-10-24 00:24:58 -07:00

66 lines
1.4 KiB
C++

#ifndef DIAGNOSE_WIDGET_H
#define DIAGNOSE_WIDGET_H
#include <QGroupBox>
#include <QHBoxLayout>
#include <QLabel>
#include <QProgressBar>
#include <QPushButton>
#include <QScrollArea>
#include <QVBoxLayout>
#include <QWidget>
class DependencyItem : public QWidget
{
Q_OBJECT
public:
explicit DependencyItem(const QString &name, const QString &description,
QWidget *parent = nullptr);
void setInstalled(bool installed);
void setChecking(bool checking);
signals:
void installRequested(const QString &name);
private slots:
void onInstallClicked();
private:
QString m_name;
QLabel *m_nameLabel;
QLabel *m_descriptionLabel;
QLabel *m_statusLabel;
QPushButton *m_installButton;
QProgressBar *m_progressBar;
};
class DiagnoseWidget : public QWidget
{
Q_OBJECT
public:
explicit DiagnoseWidget(QWidget *parent = nullptr);
public slots:
void checkDependencies();
private slots:
void onInstallRequested(const QString &name);
private:
void setupUI();
void addDependencyItem(const QString &name, const QString &description);
QVBoxLayout *m_mainLayout;
QVBoxLayout *m_itemsLayout;
QPushButton *m_checkButton;
QLabel *m_summaryLabel;
QScrollArea *m_scrollArea;
QWidget *m_itemsWidget;
QList<DependencyItem *> m_dependencyItems;
};
#endif // DIAGNOSE_WIDGET_H