22#ifndef COMMON_VIRTUAL_KEYBOARD_GUI_H
23#define COMMON_VIRTUAL_KEYBOARD_GUI_H
25#include "common/scummsys.h"
29#include "backends/vkeybd/virtual-keyboard.h"
30#include "common/rect.h"
31#include "common/system.h"
32#include "graphics/font.h"
33#include "graphics/surface.h"
43class VirtualKeyboardGUI {
47 VirtualKeyboardGUI(VirtualKeyboard *kbd);
48 ~VirtualKeyboardGUI();
53 void initMode(VirtualKeyboard::Mode *mode);
65 bool isDisplaying() {
return _displaying; }
76 void startDrag(int16 x, int16 y);
87 void checkScreenChanged();
92 void initSize(int16 w, int16 h);
98 VirtualKeyboard *_kbd;
101 uint32 _kbdTransparentColor;
105 static const int SNAP_WIDTH = 10;
110 bool _displayEnabled;
113 int16 _dispX, _dispY;
115 uint32 _dispForeColor, _dispBackColor;
117 int _lastScreenChanged;
118 int16 _screenW, _screenH;
123 void setupDisplayArea(Rect &r, uint32 forecolor);
124 void move(int16 x, int16 y);
125 void moveToDefaultPosition();
126 void screenChanged();
128 void extendDirtyRect(
const Rect &r);
129 void resetDirtyRect();
132 void updateDisplay();
133 bool fontIsSuitable(
const Graphics::Font *font,
const Rect &rect);
134 uint calculateEndIndex(
const String &str, uint startIndex);
138 static const int kCaretBlinkTime = 500;
141 static const int kCursorAnimateDelay = 250;
142 int _cursorAnimateCounter;
143 int _cursorAnimateTimer;
147 void animateCursor();
Out move(In first, In last, Out dst)
Definition: algorithm.h:109
Definition: algorithm.h:29
Definition: display_client.h:58