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.
This commit is contained in:
uncor3
2025-10-24 00:24:58 -07:00
parent 9d21afc5aa
commit 4b81d7bdf1
20 changed files with 1014 additions and 121 deletions
+23
View File
@@ -29,6 +29,10 @@
#include <QMessageBox>
#include <libusb-1.0/libusb.h>
#ifdef WIN32
#include "platform/windows/diagnose_widget.h"
#endif
void handleCallback(const idevice_event_t *event, void *userData)
{
printf("Device event received: ");
@@ -134,6 +138,25 @@ MainWindow::MainWindow(QWidget *parent)
// Welcome page (shown when no devices are connected)
WelcomeWidget *welcomePage = new WelcomeWidget(this);
// No devices page
QWidget *noDevicesPage = new QWidget();
QVBoxLayout *noDeviceLayout = new QVBoxLayout(noDevicesPage);
noDeviceLayout->addStretch();
QHBoxLayout *labelLayout = new QHBoxLayout();
labelLayout->addStretch();
QLabel *noDeviceLabel = new QLabel("No devices detected");
noDeviceLabel->setAlignment(Qt::AlignCenter);
labelLayout->addWidget(noDeviceLabel);
labelLayout->addStretch();
noDeviceLayout->addLayout(labelLayout);
#ifdef WIN32
// Add diagnose widget to check dependencies
// DiagnoseWidget *diagnoseWidget = new DiagnoseWidget();
// noDeviceLayout->addWidget(diagnoseWidget);
#endif
noDeviceLayout->addStretch();
m_deviceManager = new DeviceManagerWidget(this);