mirror of
https://github.com/narzoul/DDrawCompat
synced 2024-12-30 08:55:36 +01:00
Added StatsPosX and StatsPosY settings
This commit is contained in:
parent
320828c4a3
commit
eb79dd2ebb
@ -32,6 +32,8 @@
|
|||||||
#include <Config/Settings/StatsAggregateTime.h>
|
#include <Config/Settings/StatsAggregateTime.h>
|
||||||
#include <Config/Settings/StatsColumns.h>
|
#include <Config/Settings/StatsColumns.h>
|
||||||
#include <Config/Settings/StatsHotKey.h>
|
#include <Config/Settings/StatsHotKey.h>
|
||||||
|
#include <Config/Settings/StatsPosX.h>
|
||||||
|
#include <Config/Settings/StatsPosY.h>
|
||||||
#include <Config/Settings/StatsRows.h>
|
#include <Config/Settings/StatsRows.h>
|
||||||
#include <Config/Settings/StatsUpdateRate.h>
|
#include <Config/Settings/StatsUpdateRate.h>
|
||||||
#include <Config/Settings/SupportedResolutions.h>
|
#include <Config/Settings/SupportedResolutions.h>
|
||||||
@ -80,6 +82,8 @@ namespace Config
|
|||||||
Settings::StatsAggregateTime statsAggregateTime;
|
Settings::StatsAggregateTime statsAggregateTime;
|
||||||
Settings::StatsColumns statsColumns;
|
Settings::StatsColumns statsColumns;
|
||||||
Settings::StatsHotKey statsHotKey;
|
Settings::StatsHotKey statsHotKey;
|
||||||
|
Settings::StatsPosX statsPosX;
|
||||||
|
Settings::StatsPosY statsPosY;
|
||||||
Settings::StatsRows statsRows;
|
Settings::StatsRows statsRows;
|
||||||
Settings::StatsUpdateRate statsUpdateRate;
|
Settings::StatsUpdateRate statsUpdateRate;
|
||||||
Settings::SupportedResolutions supportedResolutions;
|
Settings::SupportedResolutions supportedResolutions;
|
||||||
|
39
DDrawCompat/Config/Settings/StatsPosX.h
Normal file
39
DDrawCompat/Config/Settings/StatsPosX.h
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <Config/MappedSetting.h>
|
||||||
|
|
||||||
|
namespace Config
|
||||||
|
{
|
||||||
|
namespace Settings
|
||||||
|
{
|
||||||
|
class StatsPosX : public MappedSetting<int>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
static const int CUSTOM = -1;
|
||||||
|
|
||||||
|
StatsPosX()
|
||||||
|
: MappedSetting("StatsPosX", "right", {
|
||||||
|
{"left", 0},
|
||||||
|
{"center", 50},
|
||||||
|
{"right", 100},
|
||||||
|
{"custom", CUSTOM}
|
||||||
|
})
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
int get() const
|
||||||
|
{
|
||||||
|
return CUSTOM == m_value ? m_param : m_value;
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual ParamInfo getParamInfo() const override
|
||||||
|
{
|
||||||
|
return CUSTOM == m_value ? ParamInfo{ "Position", 0, 100, 100 } : ParamInfo{};
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
extern Settings::StatsPosX statsPosX;
|
||||||
|
}
|
39
DDrawCompat/Config/Settings/StatsPosY.h
Normal file
39
DDrawCompat/Config/Settings/StatsPosY.h
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <Config/MappedSetting.h>
|
||||||
|
|
||||||
|
namespace Config
|
||||||
|
{
|
||||||
|
namespace Settings
|
||||||
|
{
|
||||||
|
class StatsPosY : public MappedSetting<int>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
static const int CUSTOM = -1;
|
||||||
|
|
||||||
|
StatsPosY()
|
||||||
|
: MappedSetting("StatsPosY", "top", {
|
||||||
|
{"top", 0},
|
||||||
|
{"center", 50},
|
||||||
|
{"bottom", 100},
|
||||||
|
{"custom", CUSTOM}
|
||||||
|
})
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
int get() const
|
||||||
|
{
|
||||||
|
return CUSTOM == m_value ? m_param : m_value;
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual ParamInfo getParamInfo() const override
|
||||||
|
{
|
||||||
|
return CUSTOM == m_value ? ParamInfo{ "Position", 0, 100, 0 } : ParamInfo{};
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
extern Settings::StatsPosY statsPosY;
|
||||||
|
}
|
@ -197,6 +197,8 @@
|
|||||||
<ClInclude Include="Config\Settings\StatsAggregateTime.h" />
|
<ClInclude Include="Config\Settings\StatsAggregateTime.h" />
|
||||||
<ClInclude Include="Config\Settings\StatsColumns.h" />
|
<ClInclude Include="Config\Settings\StatsColumns.h" />
|
||||||
<ClInclude Include="Config\Settings\StatsHotKey.h" />
|
<ClInclude Include="Config\Settings\StatsHotKey.h" />
|
||||||
|
<ClInclude Include="Config\Settings\StatsPosX.h" />
|
||||||
|
<ClInclude Include="Config\Settings\StatsPosY.h" />
|
||||||
<ClInclude Include="Config\Settings\StatsRows.h" />
|
<ClInclude Include="Config\Settings\StatsRows.h" />
|
||||||
<ClInclude Include="Config\Settings\StatsUpdateRate.h" />
|
<ClInclude Include="Config\Settings\StatsUpdateRate.h" />
|
||||||
<ClInclude Include="Config\Settings\SupportedDepthFormats.h" />
|
<ClInclude Include="Config\Settings\SupportedDepthFormats.h" />
|
||||||
|
@ -687,6 +687,12 @@
|
|||||||
<ClInclude Include="Config\Settings\StatsAggregateTime.h">
|
<ClInclude Include="Config\Settings\StatsAggregateTime.h">
|
||||||
<Filter>Header Files\Config\Settings</Filter>
|
<Filter>Header Files\Config\Settings</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="Config\Settings\StatsPosX.h">
|
||||||
|
<Filter>Header Files\Config\Settings</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="Config\Settings\StatsPosY.h">
|
||||||
|
<Filter>Header Files\Config\Settings</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="Gdi\Gdi.cpp">
|
<ClCompile Include="Gdi\Gdi.cpp">
|
||||||
|
@ -18,6 +18,8 @@
|
|||||||
#include <Config/Settings/SpriteDetection.h>
|
#include <Config/Settings/SpriteDetection.h>
|
||||||
#include <Config/Settings/SpriteFilter.h>
|
#include <Config/Settings/SpriteFilter.h>
|
||||||
#include <Config/Settings/SpriteTexCoord.h>
|
#include <Config/Settings/SpriteTexCoord.h>
|
||||||
|
#include <Config/Settings/StatsPosX.h>
|
||||||
|
#include <Config/Settings/StatsPosY.h>
|
||||||
#include <Config/Settings/TextureFilter.h>
|
#include <Config/Settings/TextureFilter.h>
|
||||||
#include <Config/Settings/VSync.h>
|
#include <Config/Settings/VSync.h>
|
||||||
#include <D3dDdi/Device.h>
|
#include <D3dDdi/Device.h>
|
||||||
@ -25,6 +27,7 @@
|
|||||||
#include <Input/Input.h>
|
#include <Input/Input.h>
|
||||||
#include <Overlay/ConfigWindow.h>
|
#include <Overlay/ConfigWindow.h>
|
||||||
#include <Overlay/SettingControl.h>
|
#include <Overlay/SettingControl.h>
|
||||||
|
#include <Overlay/StatsWindow.h>
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
@ -38,7 +41,7 @@ namespace
|
|||||||
const int ROW_HEIGHT = 25;
|
const int ROW_HEIGHT = 25;
|
||||||
const int ROWS = 15;
|
const int ROWS = 15;
|
||||||
|
|
||||||
std::array<SettingRow, 16> g_settingRows = { {
|
std::array<SettingRow, 18> g_settingRows = { {
|
||||||
{ &Config::alternatePixelCenter },
|
{ &Config::alternatePixelCenter },
|
||||||
{ &Config::antialiasing, &D3dDdi::Device::updateAllConfig },
|
{ &Config::antialiasing, &D3dDdi::Device::updateAllConfig },
|
||||||
{ &Config::bltFilter },
|
{ &Config::bltFilter },
|
||||||
@ -53,6 +56,8 @@ namespace
|
|||||||
{ &Config::spriteDetection },
|
{ &Config::spriteDetection },
|
||||||
{ &Config::spriteFilter, &D3dDdi::Device::updateAllConfig },
|
{ &Config::spriteFilter, &D3dDdi::Device::updateAllConfig },
|
||||||
{ &Config::spriteTexCoord, &D3dDdi::Device::updateAllConfig },
|
{ &Config::spriteTexCoord, &D3dDdi::Device::updateAllConfig },
|
||||||
|
{ &Config::statsPosX, []() { Gdi::GuiThread::getStatsWindow()->updatePos(); } },
|
||||||
|
{ &Config::statsPosY, []() { Gdi::GuiThread::getStatsWindow()->updatePos(); } },
|
||||||
{ &Config::textureFilter, &D3dDdi::Device::updateAllConfig },
|
{ &Config::textureFilter, &D3dDdi::Device::updateAllConfig },
|
||||||
{ &Config::vSync }
|
{ &Config::vSync }
|
||||||
} };
|
} };
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
|
|
||||||
#include <Common/Time.h>
|
#include <Common/Time.h>
|
||||||
#include <Config/Settings/StatsHotKey.h>
|
#include <Config/Settings/StatsHotKey.h>
|
||||||
|
#include <Config/Settings/StatsPosX.h>
|
||||||
|
#include <Config/Settings/StatsPosY.h>
|
||||||
#include <Config/Settings/StatsRows.h>
|
#include <Config/Settings/StatsRows.h>
|
||||||
#include <Gdi/GuiThread.h>
|
#include <Gdi/GuiThread.h>
|
||||||
#include <Input/Input.h>
|
#include <Input/Input.h>
|
||||||
@ -111,7 +113,9 @@ namespace Overlay
|
|||||||
RECT StatsWindow::calculateRect(const RECT& monitorRect) const
|
RECT StatsWindow::calculateRect(const RECT& monitorRect) const
|
||||||
{
|
{
|
||||||
RECT r = { 0, 0, m_rect.right - m_rect.left, m_rect.bottom - m_rect.top };
|
RECT r = { 0, 0, m_rect.right - m_rect.left, m_rect.bottom - m_rect.top };
|
||||||
OffsetRect(&r, monitorRect.left + monitorRect.right - r.right, monitorRect.top);
|
OffsetRect(&r,
|
||||||
|
monitorRect.left + Config::statsPosX.get() * (monitorRect.right - monitorRect.left - r.right) / 100,
|
||||||
|
monitorRect.top + Config::statsPosY.get() * (monitorRect.bottom - monitorRect.top - r.bottom) / 100);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ namespace Overlay
|
|||||||
HWND getWindow() const { return m_hwnd; }
|
HWND getWindow() const { return m_hwnd; }
|
||||||
void setTransparency(int transparency);
|
void setTransparency(int transparency);
|
||||||
void update();
|
void update();
|
||||||
|
void updatePos();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
HWND m_hwnd;
|
HWND m_hwnd;
|
||||||
@ -32,8 +33,6 @@ namespace Overlay
|
|||||||
|
|
||||||
virtual HWND getTopmost() const;
|
virtual HWND getTopmost() const;
|
||||||
|
|
||||||
void updatePos();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual void draw(HDC dc) override;
|
virtual void draw(HDC dc) override;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user