OGL resolution fixing in Windows. report if anything went wrong (worked great here for me)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@326 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
cedb93df9c
commit
1365abfbff
|
@ -74,21 +74,29 @@ void DllConfig(HWND _hParent)
|
||||||
|
|
||||||
DWORD iModeNum = 0;
|
DWORD iModeNum = 0;
|
||||||
DEVMODE dmi;
|
DEVMODE dmi;
|
||||||
unsigned int x = 0, y = 0;
|
|
||||||
ZeroMemory(&dmi, sizeof(dmi));
|
ZeroMemory(&dmi, sizeof(dmi));
|
||||||
dmi.dmSize = sizeof(dmi);
|
dmi.dmSize = sizeof(dmi);
|
||||||
|
std::string resos[100];
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
while (EnumDisplaySettings(NULL, iModeNum++, &dmi) != 0)
|
while(EnumDisplaySettings(NULL, iModeNum++, &dmi) != 0)
|
||||||
{
|
{
|
||||||
if((x != dmi.dmPelsWidth || y != dmi.dmPelsHeight) && (dmi.dmPelsWidth >= x))
|
|
||||||
{
|
|
||||||
char szBuffer[100];
|
char szBuffer[100];
|
||||||
sprintf(szBuffer,"%dx%d", dmi.dmPelsWidth, dmi.dmPelsHeight);
|
sprintf(szBuffer,"%dx%d", dmi.dmPelsWidth, dmi.dmPelsHeight);
|
||||||
frame.AddFSReso(szBuffer);
|
//making a string cause char*[] to char was a baaad idea
|
||||||
frame.AddWindowReso(szBuffer);
|
std::string strBuffer(szBuffer);
|
||||||
x = dmi.dmPelsWidth;
|
//create a check loop to check every pointer of resos to see if the res is added or not
|
||||||
y = dmi.dmPelsHeight;
|
int b = 0;
|
||||||
}
|
bool resFound = false;
|
||||||
|
while(b < i && !resFound)
|
||||||
|
{
|
||||||
|
//is the res already added?
|
||||||
|
resFound = (resos[b] == strBuffer);
|
||||||
|
b++;
|
||||||
|
}
|
||||||
|
if(!resFound)
|
||||||
|
//and add the res
|
||||||
|
{
resos[i] = strBuffer;
i++;
frame.AddFSReso(szBuffer);
frame.AddWindowReso(szBuffer);
}
|
||||||
ZeroMemory(&dmi, sizeof(dmi));
|
ZeroMemory(&dmi, sizeof(dmi));
|
||||||
}
|
}
|
||||||
frame.ShowModal();
|
frame.ShowModal();
|
||||||
|
|
Loading…
Reference in New Issue