Skip to content

Commit

Permalink
libgui: Fixed DisplayMode init; added stub for SDL
Browse files Browse the repository at this point in the history
  • Loading branch information
skyjake committed Sep 1, 2019
1 parent 7ea9bc8 commit 8659d53
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 2 deletions.
2 changes: 1 addition & 1 deletion doomsday/libs/gui/CMakeLists.txt
Expand Up @@ -108,7 +108,7 @@ list_remove_matches (SOURCES ".*/displaymode_.*")
if (NOT DE_ENABLE_DISPLAYMODE)
list (APPEND SOURCES src/displaymode_dummy.cpp)
else ()
list (APPEND SOURCES src/displaymode_${DE_PLATFORM_SUFFIX})
list (APPEND SOURCES src/displaymode_sdl.cpp)
endif ()

# Ignore mobile-only sources.
Expand Down
64 changes: 64 additions & 0 deletions doomsday/libs/gui/src/displaymode_sdl.cpp
@@ -0,0 +1,64 @@
/** @file displaymode_sdl.cpp DisplayMode backend based on SDL.
* @ingroup gl
*
* @authors Copyright (c) 2018 Jaakko Keränen <jaakko.keranen@iki.fi>
*
* @par License
* LGPL: http://www.gnu.org/licenses/lgpl.html
*
* <small>This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 3 of the License, or (at your
* option) any later version. This program is distributed in the hope that it
* will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
* General Public License for more details. You should have received a copy of
* the GNU Lesser General Public License along with this program; if not, see:
* http://www.gnu.org/licenses</small>
*/

#include "de/gui/displaymode_native.h"
#include <de/libcore.h>

#include <SDL_video.h>

void DisplayMode_Native_Init(void)
{
}

void DisplayMode_Native_Shutdown(void)
{
}

int DisplayMode_Native_Count(void)
{
return 0;
}

void DisplayMode_Native_GetMode(int index, DisplayMode *mode)
{
DE_UNUSED(index);
DE_UNUSED(mode);
}

void DisplayMode_Native_GetCurrentMode(DisplayMode *mode)
{
DE_UNUSED(mode);
}

int DisplayMode_Native_Change(DisplayMode const *mode, int shouldCapture)
{
DE_UNUSED(mode);
DE_UNUSED(shouldCapture);
return true;
}

void DisplayMode_Native_GetColorTransfer(DisplayColorTransfer *colors)
{
DE_UNUSED(colors);
}

void DisplayMode_Native_SetColorTransfer(DisplayColorTransfer const *colors)
{
DE_UNUSED(colors);
}
2 changes: 1 addition & 1 deletion doomsday/libs/gui/src/guiapp.cpp
Expand Up @@ -147,6 +147,7 @@ GuiApp::GuiApp(const StringList &args)
{
throw Error("GuiApp::GuiApp", "No video displays available");
}
DisplayMode_Init();

// d->matchLoopRateToDisplayMode();
d->determineDevicePixelRatio();
Expand All @@ -171,7 +172,6 @@ void GuiApp::initSubsystems(SubsystemInitFlags subsystemInitFlags)
// Apply the overall UI scale factor.
d->dpiFactor *= config().getd("ui.scaleFactor", 1.0);

DisplayMode_Init();
scriptSystem().nativeModule("DisplayMode").set("DPI_FACTOR", d->dpiFactor);
}

Expand Down

0 comments on commit 8659d53

Please sign in to comment.