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
35 lines
745 B
C++
35 lines
745 B
C++
// Copyright (c) Warwick Allison, 1999.
|
|
// Qt4 conversion copyright (c) Ray Chason, 2012-2014.
|
|
// NetHack may be freely redistributed. See license for details.
|
|
|
|
// qt4glyph.h -- class to manage the glyphs in a tile set
|
|
|
|
#ifndef QT4GLYPH_H
|
|
#define QT4GLYPH_H
|
|
|
|
namespace nethack_qt4 {
|
|
|
|
class NetHackQtGlyphs {
|
|
public:
|
|
NetHackQtGlyphs();
|
|
|
|
int width() const { return size.width(); }
|
|
int height() const { return size.height(); }
|
|
void toggleSize();
|
|
void setSize(int w, int h);
|
|
|
|
void drawGlyph(QPainter&, int glyph, int pixelx, int pixely);
|
|
void drawCell(QPainter&, int glyph, int cellx, int celly);
|
|
QPixmap glyph(int glyph);
|
|
|
|
private:
|
|
QImage img;
|
|
QPixmap pm,pm1, pm2;
|
|
QSize size;
|
|
int tiles_per_row;
|
|
};
|
|
|
|
} // namespace nethack_qt4
|
|
|
|
#endif
|