* update qt6 upgrade progress * add flawed addition for QRenderTarget and link needed libs * update to better logging format * move many assets and qml files into qrc * get rid of deprecation messages * remove additional deprecation notices * make Qt6 finally render on desktop with some progress on vr * initialize QRhi with QQuickRenderControl * use default values to stop SegFaults * fix compilation on windows * add windows files for aiding in running exe * fix formatting of testing qt.conf * first attempt on using textures instead of files in AudioTabController * Fix public/private access issue * use getter instead of directly accessing class members * use QImage as a base to set overlay textures * use native logging * add more QImage Overlays * implement faulty vulkan implementation --------- Co-authored-by: ykeara <ykeara1@gmail.com>
96 lines
2.9 KiB
C++
96 lines
2.9 KiB
C++
|
|
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QTime>
|
|
#include <QImage>
|
|
#include <openvr.h>
|
|
#include <memory>
|
|
#include "src/keyboard_input/keyboard_input.h"
|
|
#include "src/media_keys/media_keys.h"
|
|
#include "../utils/FrameRateUtils.h"
|
|
|
|
class QQuickWindow;
|
|
// application namespace
|
|
namespace advsettings
|
|
{
|
|
// forward declaration
|
|
class OverlayController;
|
|
|
|
class UtilitiesTabController : public QObject
|
|
{
|
|
Q_OBJECT
|
|
Q_PROPERTY(
|
|
bool vrcDebug READ vrcDebug WRITE setVrcDebug NOTIFY vrcDebugChanged )
|
|
Q_PROPERTY( bool trackerOvlEnabled READ trackerOvlEnabled WRITE
|
|
setTrackerOvlEnabled NOTIFY trackerOvlEnabledChanged )
|
|
|
|
private:
|
|
OverlayController* m_parent;
|
|
|
|
unsigned settingsUpdateCounter = 0;
|
|
|
|
std::array<std::unique_ptr<QImage>, 6> m_batteryImgs;
|
|
vr::VROverlayHandle_t m_batteryOverlayHandles[vr::k_unMaxTrackedDeviceCount]
|
|
= { 0 };
|
|
int m_batteryState[vr::k_unMaxTrackedDeviceCount];
|
|
bool m_batteryVisible[vr::k_unMaxTrackedDeviceCount];
|
|
void handleTrackerBatOvl();
|
|
vr::VROverlayHandle_t createBatteryOverlay( vr::TrackedDeviceIndex_t index,
|
|
unsigned style = 0 );
|
|
void destroyBatteryOverlays();
|
|
|
|
public:
|
|
void initStage2( OverlayController* var_parent );
|
|
|
|
void eventLoopTick();
|
|
|
|
bool vrcDebug() const;
|
|
bool trackerOvlEnabled() const;
|
|
|
|
public slots:
|
|
void sendKeyboardInput( QString input );
|
|
void sendKeyboardEnter();
|
|
void sendKeyboardAltTab();
|
|
void sendKeyboardAltEnter();
|
|
void sendKeyboardCtrlC();
|
|
void sendKeyboardCtrlV();
|
|
void sendKeyboardBackspace( const int count );
|
|
void sendKeyboardRShiftTilde1();
|
|
void sendKeyboardRShiftTilde2();
|
|
void sendKeyboardRShiftTilde3();
|
|
void sendKeyboardRShiftTilde4();
|
|
void sendKeyboardRShiftTilde5();
|
|
void sendKeyboardRShiftTilde6();
|
|
void sendKeyboardRShiftTilde7();
|
|
void sendKeyboardRShiftTilde8();
|
|
void sendKeyboardRShiftTilde9();
|
|
void sendKeyboardRShiftTilde0();
|
|
void sendKeyboardRShiftTilde1Delayed();
|
|
void sendKeyboardRShiftTilde2Delayed();
|
|
void sendKeyboardRShiftTilde3Delayed();
|
|
void sendKeyboardRShiftTilde4Delayed();
|
|
void sendKeyboardRShiftTilde5Delayed();
|
|
void sendKeyboardRShiftTilde6Delayed();
|
|
void sendKeyboardRShiftTilde7Delayed();
|
|
void sendKeyboardRShiftTilde8Delayed();
|
|
void sendKeyboardRShiftTilde9Delayed();
|
|
void sendKeyboardRShiftTilde0Delayed();
|
|
void sendMediaNextSong();
|
|
void sendMediaPreviousSong();
|
|
void sendMediaPausePlay();
|
|
void sendMediaStopSong();
|
|
Q_INVOKABLE void sendKeyboardOne();
|
|
Q_INVOKABLE void sendKeyboardTwo();
|
|
Q_INVOKABLE void sendKeyboardThree();
|
|
|
|
void setVrcDebug( bool value, bool notify = true );
|
|
void setTrackerOvlEnabled( bool value, bool notify = true );
|
|
|
|
signals:
|
|
void vrcDebugChanged( bool value );
|
|
void trackerOvlEnabledChanged( bool value );
|
|
};
|
|
|
|
} // namespace advsettings
|