Originally by Ray Chason for 3.4.3, based on the Qt windowport by Warwick Allison. The look and feel is mostly the same. Some improvements over the Qt 3 interface are: * Panes are resizable * Full support for IBMgraphics, and walls and corridors are drawn with graphical primitives for a continuous appearance no matter what the font says * Lots of irritating glitches fixed * Menus support proportional fonts correctly Adding this because the old Qt windowport cannot be compiled on Qt4, even with Qt3 compatibility stuff. TODO: - background map glyphs - status hilites - menucolors
43 lines
770 B
C++
43 lines
770 B
C++
// Copyright (c) Warwick Allison, 1999.
|
|
// Qt4 conversion copyright (c) Ray Chason, 2012-2014.
|
|
// NetHack may be freely redistributed. See license for details.
|
|
|
|
// qt4delay.cpp -- implement a delay
|
|
|
|
#include "hack.h"
|
|
#undef Invisible
|
|
#undef Warning
|
|
#undef index
|
|
#undef msleep
|
|
#undef rindex
|
|
#undef wizard
|
|
#undef yn
|
|
#undef min
|
|
#undef max
|
|
|
|
#include <QtGui/QtGui>
|
|
#include "qt4delay.h"
|
|
|
|
namespace nethack_qt4 {
|
|
|
|
// RLC Can we use QTimer::single_shot for this?
|
|
NetHackQtDelay::NetHackQtDelay(int ms) :
|
|
msec(ms), m_timer(0), m_loop(this)
|
|
{
|
|
}
|
|
|
|
void NetHackQtDelay::wait()
|
|
{
|
|
m_timer = startTimer(msec);
|
|
m_loop.exec();
|
|
}
|
|
|
|
void NetHackQtDelay::timerEvent(QTimerEvent* timer)
|
|
{
|
|
m_loop.exit();
|
|
killTimer(m_timer);
|
|
m_timer = 0;
|
|
}
|
|
|
|
} // namespace nethack_qt4
|