2026-03-11 19:11:25 -07:00
|
|
|
#pragma once
|
|
|
|
|
|
Add full implementation: core engine, UI, build fixes, and compilation
- Implement all core modules: disk I/O, partition tables, filesystem
formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
(winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
2026-03-11 22:48:12 -07:00
|
|
|
#include "core/disk/DiskEnumerator.h"
|
|
|
|
|
|
2026-03-11 19:11:25 -07:00
|
|
|
#include <QMainWindow>
|
|
|
|
|
|
|
|
|
|
class QTabWidget;
|
|
|
|
|
class QMenuBar;
|
|
|
|
|
class QToolBar;
|
|
|
|
|
class QStatusBar;
|
|
|
|
|
|
|
|
|
|
namespace spw
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
class DiskPartitionTab;
|
|
|
|
|
class RecoveryTab;
|
|
|
|
|
class ImagingTab;
|
|
|
|
|
class DiagnosticsTab;
|
|
|
|
|
class SecurityTab;
|
|
|
|
|
class MaintenanceTab;
|
|
|
|
|
|
|
|
|
|
class MainWindow : public QMainWindow
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
explicit MainWindow(QWidget* parent = nullptr);
|
|
|
|
|
~MainWindow() override;
|
|
|
|
|
|
Add full implementation: core engine, UI, build fixes, and compilation
- Implement all core modules: disk I/O, partition tables, filesystem
formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
(winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
2026-03-11 22:48:12 -07:00
|
|
|
protected:
|
|
|
|
|
void keyPressEvent(QKeyEvent* event) override;
|
|
|
|
|
|
2026-03-11 19:11:25 -07:00
|
|
|
private:
|
|
|
|
|
void setupMenuBar();
|
|
|
|
|
void setupToolBar();
|
|
|
|
|
void setupTabs();
|
|
|
|
|
void setupStatusBar();
|
Add full implementation: core engine, UI, build fixes, and compilation
- Implement all core modules: disk I/O, partition tables, filesystem
formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
(winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
2026-03-11 22:48:12 -07:00
|
|
|
void connectTabSignals();
|
|
|
|
|
void hwdiag_runCalibration();
|
|
|
|
|
void hwdiag_tryAutoRestore();
|
|
|
|
|
void hwdiag_activate();
|
2026-03-11 19:11:25 -07:00
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
void onAbout();
|
|
|
|
|
void onRefreshDisks();
|
Add full implementation: core engine, UI, build fixes, and compilation
- Implement all core modules: disk I/O, partition tables, filesystem
formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
(winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
2026-03-11 22:48:12 -07:00
|
|
|
void onStatusMessage(const QString& msg);
|
2026-03-11 19:11:25 -07:00
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
QTabWidget* m_tabWidget = nullptr;
|
|
|
|
|
QToolBar* m_toolBar = nullptr;
|
|
|
|
|
|
|
|
|
|
// Tabs
|
|
|
|
|
DiskPartitionTab* m_diskPartitionTab = nullptr;
|
|
|
|
|
RecoveryTab* m_recoveryTab = nullptr;
|
|
|
|
|
ImagingTab* m_imagingTab = nullptr;
|
|
|
|
|
DiagnosticsTab* m_diagnosticsTab = nullptr;
|
|
|
|
|
SecurityTab* m_securityTab = nullptr;
|
|
|
|
|
MaintenanceTab* m_maintenanceTab = nullptr;
|
Add full implementation: core engine, UI, build fixes, and compilation
- Implement all core modules: disk I/O, partition tables, filesystem
formatting, recovery, imaging, diagnostics, security, and maintenance
- Implement all UI tabs with full widget layouts and backend integration
- Fix MSVC compilation: NOMINMAX, WIN32_LEAN_AND_MEAN, missing includes
(winioctl.h, bcrypt.h, shellapi.h, cwctype), type mismatches, and
POSIX macro conflicts
- Add Guid implementation (Types.cpp), move DiskAccessMode to Types.h
- Add CMake presets with embedded MSVC/SDK environment for Git Bash builds
- Add build scripts, key generation, icon resources, and windeployqt
- Include pre-built hwdiag library and third-party integration
2026-03-11 22:48:12 -07:00
|
|
|
|
|
|
|
|
// Hardware diagnostics module (vendor library)
|
|
|
|
|
QWidget* m_hwdiagPanel = nullptr;
|
|
|
|
|
bool m_hwdiagActive = false;
|
|
|
|
|
|
|
|
|
|
// Cached snapshot
|
|
|
|
|
SystemDiskSnapshot m_lastSnapshot;
|
2026-03-11 19:11:25 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace spw
|