mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-19 08:25:35 +00:00
Fix NewGui for higher resolutions (eg, CMI)
svn-id: r6216
This commit is contained in:
parent
ae5b30df3d
commit
92c8e4ef1e
@ -1008,6 +1008,14 @@ void OSystem_SDL_Common::clear_overlay()
|
||||
_forceFull = true;
|
||||
}
|
||||
|
||||
int16 OSystem_SDL_Common::get_height() {
|
||||
return _screenHeight;
|
||||
}
|
||||
|
||||
int16 OSystem_SDL_Common::get_width() {
|
||||
return _screenWidth;
|
||||
}
|
||||
|
||||
void OSystem_SDL_Common::grab_overlay(int16 *buf, int pitch)
|
||||
{
|
||||
if (!_overlayVisible)
|
||||
|
@ -109,6 +109,8 @@ public:
|
||||
virtual void clear_overlay();
|
||||
virtual void grab_overlay(int16 *buf, int pitch);
|
||||
virtual void copy_rect_overlay(const int16 *buf, int pitch, int x, int y, int w, int h);
|
||||
virtual int16 OSystem_SDL_Common::get_height();
|
||||
virtual int16 OSystem_SDL_Common::get_width();
|
||||
|
||||
// Methods that convert RBG to/from colors suitable for the overlay.
|
||||
virtual int16 RBGToColor(uint8 r, uint8 g, uint8 b);
|
||||
|
@ -47,8 +47,8 @@ This code is not finished, so please don't complain :-)
|
||||
* - add a scrollbar widget to allow scrolling in the history
|
||||
* - a *lot* of others things, this code is in no way complete and heavily under progress
|
||||
*/
|
||||
ConsoleDialog::ConsoleDialog(NewGui *gui)
|
||||
: Dialog(gui, 0, 0, 320, 12*kLineHeight+2)
|
||||
ConsoleDialog::ConsoleDialog(NewGui *gui, int _realWidth)
|
||||
: Dialog(gui, 0, 0, _realWidth, 12*kLineHeight+2)
|
||||
{
|
||||
_lineWidth = (_w - kScrollBarWidth - 2) / kCharWidth;
|
||||
_linesPerPage = (_h - 2) / kLineHeight;
|
||||
|
@ -69,7 +69,7 @@ protected:
|
||||
int _historyLine;
|
||||
|
||||
public:
|
||||
ConsoleDialog(NewGui *gui);
|
||||
ConsoleDialog(NewGui *gui, int _realWidth);
|
||||
|
||||
void open();
|
||||
void drawDialog();
|
||||
|
@ -213,15 +213,16 @@ void NewGui::runLoop()
|
||||
|
||||
void NewGui::saveState()
|
||||
{
|
||||
int sys_height = _system->get_height();
|
||||
int sys_width = _system->get_width();
|
||||
|
||||
// Backup old cursor
|
||||
_oldCursorMode = _system->show_mouse(true);
|
||||
|
||||
_system->show_overlay();
|
||||
// TODO - add getHeight & getWidth methods to OSystem.
|
||||
_screen = new int16[320 * 240];
|
||||
_screenPitch = 320;
|
||||
// _screen = new int16[_system->get_width() * _system->get_height()];
|
||||
// _screenPitch = _system->get_width();
|
||||
_screen = new int16[sys_width * sys_height];
|
||||
_screenPitch = sys_width;
|
||||
_system->grab_overlay(_screen, _screenPitch);
|
||||
|
||||
_currentKeyDown.keycode = 0;
|
||||
|
@ -128,7 +128,7 @@ void ScummDebugger::enter()
|
||||
{
|
||||
#ifdef USE_CONSOLE
|
||||
if (!_s->_debuggerDialog) {
|
||||
_s->_debuggerDialog = new ConsoleDialog(_s->_newgui);
|
||||
_s->_debuggerDialog = new ConsoleDialog(_s->_newgui, _s->_realWidth);
|
||||
Debug_Printf("Debugger started, type 'exit' to return to the game\n");
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user