mirror of
https://github.com/minetest/irrlicht.git
synced 2024-12-24 01:30:31 +01:00
SIrrlichtCreationParameters::WindowResizable no longer bool but has 3 states.
New default is that the system decides itself. Reason is that X11 didn't like the last change (disabling it on start) too much and we got messed up title-bars. Or at least on some Window Managers. Which makes sense as X11 really requires Windows to be resizable in Windowed mode. git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6196 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
parent
155c7f7592
commit
c83eaa654c
@ -75,7 +75,7 @@ Changes in 1.9 (not yet released)
|
||||
- Drivers can now try to create textures from images in more exotic color formats (like floating point formats). It depends on the driver how much that works (so far mainly OpenGL can handle it somewhat).
|
||||
- Fix OpenGL to no longer switch colors red and blue in 24-bit RGB format. But warnings added to documentation to avoid 24-bit textures as they are generally just trouble.
|
||||
- No longer try to convert ECF_R5G6B5 to ECF_A1R5G5B5 on OpenGL (just made texture-loading seem to fail).
|
||||
- Add flag SIrrlichtCreationParameters.WindowResizable. Mainly to work around troubles with SDL+OpenGL on some platforms where resizing later can be tricky/impossible.
|
||||
- Add parameter SIrrlichtCreationParameters.WindowResizable. Mainly to work around troubles with SDL+OpenGL on some platforms where resizing later can be tricky/impossible.
|
||||
- Add operator[] to vector2d and vector3d
|
||||
- Bugfix: IrrlichtDevice::isWindowMinimized no longer returns true when it's maximized on Windows.
|
||||
- Ignore degenerated faces in obj file loader when they would generate triangles where 2 vertices use identical indices.
|
||||
|
@ -28,7 +28,7 @@ namespace irr
|
||||
Bits(32),
|
||||
ZBufferBits(24),
|
||||
Fullscreen(false),
|
||||
WindowResizable(false),
|
||||
WindowResizable(2),
|
||||
Stencilbuffer(true),
|
||||
Vsync(false),
|
||||
AntiAlias(0),
|
||||
@ -121,8 +121,9 @@ namespace irr
|
||||
|
||||
//! Should a non-fullscreen window be resizable.
|
||||
/** Might not be supported by all devices. Ignored when Fullscreen is true.
|
||||
Default: false */
|
||||
bool WindowResizable;
|
||||
Values: 0 = not resizable, 1 = resizable, 2 = system decides default itself
|
||||
Default: 2*/
|
||||
u8 WindowResizable;
|
||||
|
||||
//! Specifies if the stencil buffer should be enabled.
|
||||
/** Set this to true, if you want the engine be able to draw
|
||||
|
@ -133,7 +133,8 @@ CIrrDeviceLinux::CIrrDeviceLinux(const SIrrlichtCreationParameters& param)
|
||||
// create the window, only if we do not use the null device
|
||||
if (!createWindow())
|
||||
return;
|
||||
setResizable(param.WindowResizable);
|
||||
if (param.WindowResizable < 2 )
|
||||
setResizable(param.WindowResizable == 1 ? true : false);
|
||||
}
|
||||
|
||||
// create cursor control
|
||||
|
@ -53,7 +53,7 @@ CIrrDeviceSDL::CIrrDeviceSDL(const SIrrlichtCreationParameters& param)
|
||||
Screen((SDL_Surface*)param.WindowId), SDL_Flags(SDL_ANYFORMAT),
|
||||
MouseX(0), MouseY(0), MouseButtonStates(0),
|
||||
Width(param.WindowSize.Width), Height(param.WindowSize.Height),
|
||||
Resizable(param.WindowResizable), WindowMinimized(false)
|
||||
Resizable(param.WindowResizable > 0 ? true : false), WindowMinimized(false)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
setDebugName("CIrrDeviceSDL");
|
||||
|
@ -1037,7 +1037,7 @@ CIrrDeviceWin32::CIrrDeviceWin32(const SIrrlichtCreationParameters& params)
|
||||
clientSize.right = CreationParams.WindowSize.Width;
|
||||
clientSize.bottom = CreationParams.WindowSize.Height;
|
||||
|
||||
DWORD style = getWindowStyle(CreationParams.Fullscreen, CreationParams.WindowResizable);
|
||||
DWORD style = getWindowStyle(CreationParams.Fullscreen, CreationParams.WindowResizable > 0 ? true : false);
|
||||
AdjustWindowRect(&clientSize, style, FALSE);
|
||||
|
||||
const s32 realWidth = clientSize.right - clientSize.left;
|
||||
@ -1285,7 +1285,7 @@ DWORD CIrrDeviceWin32::getWindowStyle(bool fullscreen, bool resizable) const
|
||||
return WS_THICKFRAME | WS_SYSMENU | WS_CAPTION | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_MINIMIZEBOX | WS_MAXIMIZEBOX;
|
||||
|
||||
return WS_BORDER | WS_SYSMENU | WS_CAPTION | WS_CLIPCHILDREN | WS_CLIPSIBLINGS;
|
||||
}
|
||||
}
|
||||
|
||||
//! sets the caption of the window
|
||||
void CIrrDeviceWin32::setWindowCaption(const wchar_t* text)
|
||||
@ -1658,7 +1658,7 @@ void CIrrDeviceWin32::getWindowsVersion(core::stringc& out)
|
||||
(LPBYTE) szProductType, &dwBufLen);
|
||||
RegCloseKey( hKey );
|
||||
|
||||
|
||||
|
||||
if (irr::core::stringc("WINNT").equals_ignore_case(szProductType))
|
||||
out.append("Professional ");
|
||||
if (irr::core::stringc("LANMANNT").equals_ignore_case(szProductType))
|
||||
|
Loading…
Reference in New Issue
Block a user