OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
windowmanagerimp.hpp
Go to the documentation of this file.
1 #ifndef MWGUI_WINDOWMANAGERIMP_H
2 #define MWGUI_WINDOWMANAGERIMP_H
3 
10 #include <stack>
11 
12 #include "../mwbase/windowmanager.hpp"
13 
16 
17 #include "mapwindow.hpp"
18 
19 #include <MyGUI_KeyCode.h>
20 #include <MyGUI_Types.h>
21 
22 namespace MyGUI
23 {
24  class Gui;
25  class Widget;
26  class Window;
27  class UString;
28  class ImageBox;
29 }
30 
31 namespace MWWorld
32 {
33  class ESMStore;
34 }
35 
36 namespace Compiler
37 {
38  class Extensions;
39 }
40 
41 namespace Translation
42 {
43  class Storage;
44 }
45 
46 namespace osg
47 {
48  class Group;
49 }
50 namespace osgViewer
51 {
52  class Viewer;
53 }
54 
55 namespace Resource
56 {
57  class ResourceSystem;
58 }
59 
60 namespace SDLUtil
61 {
62  class SDLCursorManager;
63 }
64 
65 namespace osgMyGUI
66 {
67  class Platform;
68 }
69 
70 namespace Gui
71 {
72  class FontLoader;
73 }
74 
75 namespace MWRender
76 {
77  class LocalMap;
78 }
79 
80 namespace MWGui
81 {
82  class WindowBase;
83  class HUD;
84  class MapWindow;
85  class MainMenu;
86  class StatsWindow;
87  class InventoryWindow;
88  struct JournalWindow;
89  class CharacterCreation;
90  class DragAndDrop;
91  class ToolTips;
92  class TextInputDialog;
93  class InfoBoxDialog;
94  class MessageBoxManager;
95  class SettingsWindow;
96  class AlchemyWindow;
97  class QuickKeysMenu;
98  class LoadingScreen;
99  class LevelupDialog;
100  class WaitDialog;
101  class SpellCreationDialog;
102  class EnchantingDialog;
103  class TrainingWindow;
104  class SpellIcons;
105  class MerchantRepair;
106  class Repair;
107  class SoulgemDialog;
108  class Recharge;
109  class CompanionWindow;
110  class VideoWidget;
111  class WindowModal;
112  class ScreenFader;
113  class DebugWindow;
114  class JailScreen;
115 
117  {
118  public:
119  typedef std::pair<std::string, int> Faction;
120  typedef std::vector<Faction> FactionList;
121 
122  WindowManager(osgViewer::Viewer* viewer, osg::Group* guiRoot, Resource::ResourceSystem* resourceSystem,
123  const std::string& logpath, const std::string& cacheDir, bool consoleOnlyScripts,
124  Translation::Storage& translationDataStorage, ToUTF8::FromType encoding, bool exportFonts, const std::map<std::string,std::string>& fallbackMap, const std::string& versionDescription);
125  virtual ~WindowManager();
126 
128  void setStore (const MWWorld::ESMStore& store);
129 
130  void initUI();
131  void renderWorldMap();
132 
134 
137  virtual void playVideo(const std::string& name, bool allowSkipping);
138 
144  virtual void update();
145 
147  virtual void setKeyFocusWidget (MyGUI::Widget* widget);
148 
149  virtual void setNewGame(bool newgame);
150 
151  virtual void pushGuiMode(GuiMode mode);
152  virtual void popGuiMode();
153  virtual void removeGuiMode(GuiMode mode);
154 
155  virtual void goToJail(int days);
156 
157  virtual GuiMode getMode() const;
158  virtual bool containsMode(GuiMode mode) const;
159 
160  virtual bool isGuiMode() const;
161 
162  virtual bool isConsoleMode() const;
163 
164  virtual void toggleVisible(GuiWindow wnd);
165 
166  virtual void forceHide(MWGui::GuiWindow wnd);
167  virtual void unsetForceHide(MWGui::GuiWindow wnd);
168 
170  virtual void disallowAll();
171 
173  virtual void allow(GuiWindow wnd);
174 
175  virtual bool isAllowed(GuiWindow wnd) const;
176 
183 
185  virtual void useItem(const MWWorld::Ptr& item);
186 
187  virtual void updateSpellWindow();
188 
189  virtual void setConsoleSelectedObject(const MWWorld::Ptr& object);
190 
192  virtual void setValue (const std::string& id, const MWMechanics::AttributeValue& value);
193  virtual void setValue (int parSkill, const MWMechanics::SkillValue& value);
194  virtual void setValue (const std::string& id, const MWMechanics::DynamicStat<float>& value);
195  virtual void setValue (const std::string& id, const std::string& value);
196  virtual void setValue (const std::string& id, int value);
197 
201  virtual void setDrowningTimeLeft (float time, float maxTime);
202 
203  virtual void setPlayerClass (const ESM::Class &class_);
204  virtual void configureSkills (const SkillList& major, const SkillList& minor);
205  virtual void updateSkillArea();
206 
207  virtual void changeCell(const MWWorld::CellStore* cell);
208 
209  virtual void setFocusObject(const MWWorld::Ptr& focus);
210  virtual void setFocusObjectScreenCoords(float min_x, float min_y, float max_x, float max_y);
211 
212  virtual void getMousePosition(int &x, int &y);
213  virtual void getMousePosition(float &x, float &y);
214  virtual void setDragDrop(bool dragDrop);
215  virtual bool getWorldMouseOver();
216 
217  virtual bool toggleFogOfWar();
218  virtual bool toggleFullHelp();
219  virtual bool getFullHelp() const;
220 
221  virtual void setActiveMap(int x, int y, bool interior);
223 
225  virtual void setDrowningBarVisibility(bool visible);
226 
227  // sets the visibility of the hud health/magicka/stamina bars
228  virtual void setHMSVisibility(bool visible);
229  // sets the visibility of the hud minimap
230  virtual void setMinimapVisibility(bool visible);
231  virtual void setWeaponVisibility(bool visible);
232  virtual void setSpellVisibility(bool visible);
233  virtual void setSneakVisibility(bool visible);
234 
235  virtual void activateQuickKey (int index);
236 
237  virtual std::string getSelectedSpell() { return mSelectedSpell; }
238  virtual void setSelectedSpell(const std::string& spellId, int successChancePercent);
239  virtual void setSelectedEnchantItem(const MWWorld::Ptr& item);
240  virtual void setSelectedWeapon(const MWWorld::Ptr& item);
241  virtual void unsetSelectedSpell();
242  virtual void unsetSelectedWeapon();
243 
244  virtual void showCrosshair(bool show);
245  virtual bool getSubtitlesEnabled();
246 
248  virtual bool toggleGui();
249 
250  virtual void disallowMouse();
251  virtual void allowMouse();
252  virtual void notifyInputActionBound();
253 
254  virtual void addVisitedLocation(const std::string& name, int x, int y);
255 
257  virtual void removeDialog(Layout* dialog);
258 
260  virtual void exitCurrentGuiMode();
261 
262  virtual void messageBox (const std::string& message, enum MWGui::ShowInDialogueMode showInDialogueMode = MWGui::ShowInDialogueMode_IfPossible);
263  virtual void staticMessageBox(const std::string& message);
264  virtual void removeStaticMessageBox();
265  virtual void interactiveMessageBox (const std::string& message,
266  const std::vector<std::string>& buttons = std::vector<std::string>(), bool block=false);
267 
268  virtual int readPressedButton ();
269 
270  virtual void onFrame (float frameDuration);
271 
273  virtual std::map<int, MWMechanics::SkillValue > getPlayerSkillValues();
274  virtual std::map<int, MWMechanics::AttributeValue > getPlayerAttributeValues();
277 
285  virtual std::string getGameSettingString(const std::string &id, const std::string &default_);
286 
287  virtual void processChangedSettings(const Settings::CategorySettingVector& changed);
288 
289  virtual void windowResized(int x, int y);
290 
291  virtual void executeInConsole (const std::string& path);
292 
293  virtual void enableRest() { mRestAllowed = true; }
294  virtual bool getRestEnabled();
295 
296  virtual bool getJournalAllowed() { return (mAllowed & GW_Magic) != 0; }
297 
298  virtual bool getPlayerSleeping();
299  virtual void wakeUpPlayer();
300 
301  virtual void updatePlayer();
302 
303  virtual void showCompanionWindow(MWWorld::Ptr actor);
304  virtual void startSpellMaking(MWWorld::Ptr actor);
305  virtual void startEnchanting(MWWorld::Ptr actor);
306  virtual void startSelfEnchanting(MWWorld::Ptr soulgem);
307  virtual void startTraining(MWWorld::Ptr actor);
308  virtual void startRepair(MWWorld::Ptr actor);
309  virtual void startRepairItem(MWWorld::Ptr item);
310  virtual void startRecharge(MWWorld::Ptr soulgem);
311  virtual void startTravel(const MWWorld::Ptr& actor);
312  virtual void startSpellBuying(const MWWorld::Ptr &actor);
313  virtual void startTrade(const MWWorld::Ptr &actor);
314  virtual void openContainer(const MWWorld::Ptr &container, bool loot);
315  virtual void showBook(const MWWorld::Ptr& item, bool showTakeButton);
316  virtual void showScroll(const MWWorld::Ptr& item, bool showTakeButton);
317 
318  virtual void showSoulgemDialog (MWWorld::Ptr item);
319 
320  virtual void changePointer (const std::string& name);
321 
322  virtual void setEnemy (const MWWorld::Ptr& enemy);
323 
324  virtual const Translation::Storage& getTranslationDataStorage() const;
325 
326  void onSoulgemDialogButtonPressed (int button);
327 
328  virtual bool getCursorVisible();
329 
331  virtual void clear();
332 
333  virtual void write (ESM::ESMWriter& writer, Loading::Listener& progress);
334  virtual void readRecord (ESM::ESMReader& reader, uint32_t type);
335  virtual int countSavedGameRecords() const;
336 
338  virtual bool isSavingAllowed() const;
339 
341  virtual void exitCurrentModal();
342 
344 
345  virtual void addCurrentModal(WindowModal* input) {mCurrentModals.push(input);}
346 
348 
350  virtual void removeCurrentModal(WindowModal* input);
351 
352  virtual void pinWindow (MWGui::GuiWindow window);
353 
355  virtual void fadeScreenIn(const float time, bool clearQueue);
357  virtual void fadeScreenOut(const float time, bool clearQueue);
359  virtual void fadeScreenTo(const int percent, const float time, bool clearQueue);
361  virtual void setBlindness(const int percent);
362 
363  virtual void activateHitOverlay(bool interrupt);
364  virtual void setWerewolfOverlay(bool set);
365 
366  virtual void toggleDebugWindow();
367 
369  virtual void cycleSpell(bool next);
371  virtual void cycleWeapon(bool next);
372 
373  // In WindowManager for now since there isn't a VFS singleton
374  virtual std::string correctIconPath(const std::string& path);
375  virtual std::string correctBookartPath(const std::string& path, int width, int height);
376  virtual std::string correctTexturePath(const std::string& path);
377  virtual bool textureExists(const std::string& path);
378 
379  void removeCell(MWWorld::CellStore* cell);
380  void writeFog(MWWorld::CellStore* cell);
381 
382  private:
385 
387  osgViewer::Viewer* mViewer;
388 
389  std::auto_ptr<Gui::FontLoader> mFontLoader;
390 
392 
393  std::map<MyGUI::Window*, std::string> mTrackedWindows;
394  void trackWindow(Layout* layout, const std::string& name);
395  void onWindowChangeCoord(MyGUI::Window* _sender);
396 
397  std::string mSelectedSpell;
398 
399  std::stack<WindowModal*> mCurrentModals;
400 
401  // Markers placed manually by the player. Must be shared between both map views (the HUD map and the map window).
403 
439  MyGUI::ImageBox* mVideoBackground;
447 
449 
451 
452  MyGUI::Widget* mInputBlocker;
453 
461 
462  void setCursorVisible(bool visible);
463 
465  // Various stats about player as needed by window manager
466  std::string mPlayerName;
467  std::string mPlayerRaceId;
468  std::map<int, MWMechanics::AttributeValue > mPlayerAttributes;
470  std::map<int, MWMechanics::SkillValue > mPlayerSkillValues;
471 
472  MyGUI::Gui *mGui; // Gui
473  std::vector<GuiMode> mGuiModes;
474 
476 
477  std::vector<Layout*> mGarbageDialogs;
478  void cleanupGarbage();
479 
480  GuiWindow mShown; // Currently shown windows in inventory mode
481  GuiWindow mForceHidden; // Hidden windows (overrides mShown)
482 
483  /* Currently ALLOWED windows in inventory mode. This is used at
484  the start of the game, when windows are enabled one by one
485  through script commands. You can manipulate this through using
486  allow() and disableAll().
487  */
489  // is the rest window allowed?
491 
492  void updateVisible(); // Update visibility of all windows based on mode, shown and allowed settings
493 
494  void updateMap();
495 
496  std::map<std::string, std::string> mFallbackMap;
497 
499 
500  std::string mVersionDescription;
501 
513  void onRetrieveTag(const MyGUI::UString& _tag, MyGUI::UString& _result);
514 
515  void onCursorChange(const std::string& name);
516  void onKeyFocusChanged(MyGUI::Widget* widget);
517 
518  // Key pressed while playing a video
519  void onVideoKeyPressed(MyGUI::Widget *_sender, MyGUI::KeyCode _key, MyGUI::Char _char);
520 
521  void sizeVideo(int screenWidth, int screenHeight);
522 
523  void onClipboardChanged(const std::string& _type, const std::string& _data);
524  void onClipboardRequested(const std::string& _type, std::string& _data);
525 
526  void createTextures();
527  void createCursors();
528  void setMenuTransparency(float value);
529  };
530 }
531 
532 #endif
osgMyGUI::Platform * mGuiPlatform
Definition: windowmanagerimp.hpp:386
Definition: tradewindow.hpp:25
virtual void startRepairItem(MWWorld::Ptr item)
Definition: windowmanagerimp.cpp:1553
SoulgemDialog * mSoulgemDialog
Definition: windowmanagerimp.hpp:435
Definition: companionwindow.hpp:16
virtual void updateSkillArea()
update display of skills, factions, birth sign, reputation and bounty
Definition: windowmanagerimp.cpp:767
WindowManager()
Definition: windowmanager.hpp:97
Definition: inventorywindow.hpp:37
virtual void fadeScreenIn(const float time, bool clearQueue)
Fade the screen in, over time seconds.
Definition: windowmanagerimp.cpp:1863
Definition: spellcreationdialog.hpp:148
virtual void configureSkills(const SkillList &major, const SkillList &minor)
configure skill groups, each set contains the skill ID for that group.
Definition: windowmanagerimp.cpp:759
void message(CodeContainer &code, Literals &literals, const std::string &message, int buttons)
Definition: generator.cpp:537
virtual bool getSubtitlesEnabled()
Definition: windowmanagerimp.cpp:1489
osgViewer::Viewer * mViewer
Definition: windowmanagerimp.hpp:387
Definition: hud.hpp:19
Definition: stat.hpp:108
Definition: videowidget.hpp:22
Definition: confirmationdialog.hpp:8
Definition: mainmenu.hpp:23
Wrapper class that constructs and provides access to the most commonly used resource subsystems...
Definition: resourcesystem.hpp:24
virtual void getMousePosition(int &x, int &y)
Definition: windowmanagerimp.cpp:1327
virtual GuiMode getMode() const
Definition: windowmanagerimp.cpp:1427
virtual void setPlayerClass(const ESM::Class &class_)
set current class of player
Definition: windowmanagerimp.cpp:754
std::vector< Layout * > mGarbageDialogs
Definition: windowmanagerimp.hpp:477
virtual void changeCell(const MWWorld::CellStore *cell)
change the active cell
Definition: windowmanagerimp.cpp:1014
Definition: quickkeysmenu.hpp:19
Definition: mapwindow.hpp:39
Resource::ResourceSystem * mResourceSystem
Definition: windowmanagerimp.hpp:384
virtual void addCurrentModal(WindowModal *input)
Sets the current Modal.
Definition: windowmanagerimp.hpp:345
JailScreen * mJailScreen
Definition: windowmanagerimp.hpp:446
void updateMap()
Definition: windowmanagerimp.cpp:926
virtual void exitCurrentModal()
Send exit command to active Modal window **/.
Definition: windowmanagerimp.cpp:1819
ScreenFader * mScreenFader
Definition: windowmanagerimp.hpp:444
virtual void updateSpellWindow()
Definition: windowmanagerimp.cpp:1953
Definition: soulgemdialog.hpp:11
void onClipboardRequested(const std::string &_type, std::string &_data)
Definition: windowmanagerimp.cpp:1917
void onCursorChange(const std::string &name)
Definition: windowmanagerimp.cpp:1240
DialogueWindow * mDialogueWindow
Definition: windowmanagerimp.hpp:413
Definition: countdialog.hpp:13
virtual void changePointer(const std::string &name)
Definition: windowmanagerimp.cpp:1570
virtual bool containsMode(GuiMode mode) const
Definition: windowmanagerimp.cpp:1470
Definition: esmreader.hpp:21
virtual void staticMessageBox(const std::string &message)
Definition: windowmanagerimp.cpp:901
virtual void readRecord(ESM::ESMReader &reader, uint32_t type)
Definition: windowmanagerimp.cpp:1715
virtual Loading::Listener * getLoadingScreen()
Definition: windowmanagerimp.cpp:1618
virtual bool getFullHelp() const
Definition: windowmanagerimp.cpp:1096
virtual int countSavedGameRecords() const
Definition: windowmanagerimp.cpp:1736
virtual void openContainer(const MWWorld::Ptr &container, bool loot)
Definition: windowmanagerimp.cpp:1977
Definition: mapwindow.hpp:193
std::vector< GuiMode > mGuiModes
Definition: windowmanagerimp.hpp:473
virtual std::string getGameSettingString(const std::string &id, const std::string &default_)
Definition: windowmanagerimp.cpp:916
MainMenu * mMenu
Definition: windowmanagerimp.hpp:407
SettingsWindow * mSettingsWindow
Definition: windowmanagerimp.hpp:423
virtual void goToJail(int days)
Definition: windowmanagerimp.cpp:1273
virtual void activateQuickKey(int index)
Definition: windowmanagerimp.cpp:1484
bool mWerewolfOverlayEnabled
Definition: windowmanagerimp.hpp:457
virtual const Translation::Storage & getTranslationDataStorage() const
Definition: windowmanagerimp.cpp:1559
virtual void setWerewolfOverlay(bool set)
Definition: windowmanagerimp.cpp:1902
virtual void startSpellBuying(const MWWorld::Ptr &actor)
Definition: windowmanagerimp.cpp:1965
Definition: waitdialog.hpp:25
Definition: myguiplatform.hpp:30
virtual void allowMouse()
Definition: windowmanagerimp.cpp:1459
Definition: sdlcursormanager.hpp:19
virtual MWGui::TradeWindow * getTradeWindow()
Definition: windowmanagerimp.cpp:1358
virtual void fadeScreenTo(const int percent, const float time, bool clearQueue)
Fade the screen to a specified percentage of black, over time seconds.
Definition: windowmanagerimp.cpp:1877
virtual MWGui::DialogueWindow * getDialogueWindow()
Definition: windowmanagerimp.cpp:1354
bool mHudEnabled
Definition: windowmanagerimp.hpp:458
Definition: bookwindow.hpp:12
virtual void startSelfEnchanting(MWWorld::Ptr soulgem)
Definition: windowmanagerimp.cpp:1536
virtual void setFocusObject(const MWWorld::Ptr &focus)
Definition: windowmanagerimp.cpp:1075
Definition: messagebox.hpp:20
virtual void executeInConsole(const std::string &path)
Definition: windowmanagerimp.cpp:1349
ScreenFader * mBlindnessFader
Definition: windowmanagerimp.hpp:442
MessageBoxManager * mMessageBoxManager
Definition: windowmanagerimp.hpp:410
virtual void setSneakVisibility(bool visible)
Definition: windowmanagerimp.cpp:1112
SkillList mPlayerMajorSkills
Definition: windowmanagerimp.hpp:469
virtual void setDrowningTimeLeft(float time, float maxTime)
Definition: windowmanagerimp.cpp:749
void onKeyFocusChanged(MyGUI::Widget *widget)
Definition: windowmanagerimp.cpp:1605
LoadingScreen * mLoadingScreen
Definition: windowmanagerimp.hpp:428
virtual bool getCursorVisible()
Should the cursor be visible?
Definition: windowmanagerimp.cpp:1628
void sizeVideo(int screenWidth, int screenHeight)
Definition: windowmanagerimp.cpp:1811
void onVideoKeyPressed(MyGUI::Widget *_sender, MyGUI::KeyCode _key, MyGUI::Char _char)
Definition: windowmanagerimp.cpp:1834
Definition: mode.hpp:61
virtual void toggleDebugWindow()
Definition: windowmanagerimp.cpp:1933
virtual void cycleWeapon(bool next)
Cycle to next or previous weapon.
Definition: windowmanagerimp.cpp:1943
Definition: translation.hpp:9
std::pair< std::string, int > Faction
Definition: windowmanagerimp.hpp:119
virtual void setMinimapVisibility(bool visible)
sets the visibility of the hud minimap
Definition: windowmanagerimp.cpp:1064
void onSoulgemDialogButtonPressed(int button)
SkillList mPlayerMinorSkills
Definition: windowmanagerimp.hpp:469
Definition: windowmanager.hpp:71
Console * mConsole
Definition: windowmanagerimp.hpp:411
Definition: loadinglistener.hpp:8
std::map< MyGUI::Window *, std::string > mTrackedWindows
Definition: windowmanagerimp.hpp:393
bool mSubtitlesEnabled
Definition: windowmanagerimp.hpp:455
virtual void setFocusObjectScreenCoords(float min_x, float min_y, float max_x, float max_y)
Definition: windowmanagerimp.cpp:1086
virtual void wakeUpPlayer()
Definition: windowmanagerimp.cpp:1514
ScrollWindow * mScrollWindow
Definition: windowmanagerimp.hpp:417
ToolTips * mToolTips
Definition: windowmanagerimp.hpp:408
virtual void addVisitedLocation(const std::string &name, int x, int y)
Definition: windowmanagerimp.cpp:1519
Definition: draganddrop.hpp:17
HUD * mHud
Definition: windowmanagerimp.hpp:404
CountDialog * mCountDialog
Definition: windowmanagerimp.hpp:419
void setMenuTransparency(float value)
Definition: windowmanagerimp.cpp:2078
DebugWindow * mDebugWindow
Definition: windowmanagerimp.hpp:445
Definition: dialogue.hpp:97
virtual void updatePlayer()
Definition: windowmanagerimp.cpp:1583
void createCursors()
Definition: windowmanagerimp.cpp:2016
virtual bool isSavingAllowed() const
Does the current stack of GUI-windows permit saving?
Definition: windowmanagerimp.cpp:1744
void updateVisible()
Definition: windowmanagerimp.cpp:491
void trackWindow(Layout *layout, const std::string &name)
Definition: windowmanagerimp.cpp:1633
void cleanupGarbage()
Definition: windowmanagerimp.cpp:471
CharacterCreation * mCharGen
Definition: windowmanagerimp.hpp:450
virtual void disallowMouse()
Definition: windowmanagerimp.cpp:1454
std::map< std::string, std::string > mFallbackMap
Definition: windowmanagerimp.hpp:496
ContainerWindow * mContainerWindow
Definition: windowmanagerimp.hpp:414
std::string mVersionDescription
Definition: windowmanagerimp.hpp:500
std::set< std::pair< std::string, std::string > > CategorySettingVector
Definition: settings.hpp:11
virtual void windowResized(int x, int y)
Definition: windowmanagerimp.cpp:1186
std::vector< Faction > FactionList
Definition: windowmanagerimp.hpp:120
Definition: recharge.hpp:17
virtual bool textureExists(const std::string &path)
Definition: windowmanagerimp.cpp:2010
std::stack< WindowModal * > mCurrentModals
Definition: windowmanagerimp.hpp:399
virtual void update()
Definition: windowmanagerimp.cpp:484
Definition: statswindow.hpp:13
WaitDialog * mWaitDialog
Definition: windowmanagerimp.hpp:430
virtual void setActiveMap(int x, int y, bool interior)
set the indices of the map texture that should be used
Definition: windowmanagerimp.cpp:1048
Definition: levelupdialog.hpp:9
std::auto_ptr< Gui::FontLoader > mFontLoader
Definition: windowmanagerimp.hpp:389
Definition: trainingwindow.hpp:12
void onRetrieveTag(const MyGUI::UString &_tag, MyGUI::UString &_result)
Definition: windowmanagerimp.cpp:1128
EnchantingDialog * mEnchantingDialog
Definition: windowmanagerimp.hpp:432
Definition: esmwriter.hpp:17
std::map< int, MWMechanics::SkillValue > mPlayerSkillValues
Definition: windowmanagerimp.hpp:470
Definition: settingswindow.hpp:13
virtual std::string correctTexturePath(const std::string &path)
Definition: windowmanagerimp.cpp:2005
virtual void notifyInputActionBound()
Definition: windowmanagerimp.cpp:1464
virtual void setEnemy(const MWWorld::Ptr &enemy)
Definition: windowmanagerimp.cpp:1613
virtual void exitCurrentGuiMode()
Gracefully attempts to exit the topmost GUI mode.
Definition: windowmanagerimp.cpp:780
bool mConsoleOnlyScripts
Definition: windowmanagerimp.hpp:391
Definition: loadingscreen.hpp:30
MapWindow * mMap
Definition: windowmanagerimp.hpp:405
virtual void forceHide(MWGui::GuiWindow wnd)
Definition: windowmanagerimp.cpp:1403
Definition: esmstore.hpp:17
std::string mSelectedSpell
Definition: windowmanagerimp.hpp:397
virtual void unsetSelectedWeapon()
Definition: windowmanagerimp.cpp:1321
ConfirmationDialog * mConfirmationDialog
Definition: windowmanagerimp.hpp:424
virtual void setNewGame(bool newgame)
Definition: windowmanagerimp.cpp:379
Definition: alchemywindow.hpp:20
Interface for widnow manager (implemented in MWGui)
Definition: windowmanager.hpp:85
SpellBuyingWindow * mSpellBuyingWindow
Definition: windowmanagerimp.hpp:421
virtual void write(ESM::ESMWriter &writer, Loading::Listener &progress)
Definition: windowmanagerimp.cpp:1694
GuiWindow
Definition: mode.hpp:55
virtual void fadeScreenOut(const float time, bool clearQueue)
Fade the screen out to black, over time seconds.
Definition: windowmanagerimp.cpp:1870
Repair * mRepair
Definition: windowmanagerimp.hpp:436
virtual void showBook(const MWWorld::Ptr &item, bool showTakeButton)
Definition: windowmanagerimp.cpp:1983
const MWWorld::ESMStore * mStore
Definition: windowmanagerimp.hpp:383
virtual void setSelectedEnchantItem(const MWWorld::Ptr &item)
Definition: windowmanagerimp.cpp:1289
Local map rendering.
Definition: localmap.hpp:36
void writeFog(MWWorld::CellStore *cell)
Definition: windowmanagerimp.cpp:2098
virtual bool toggleFullHelp()
show extra info in item tooltips (owner, script)
Definition: windowmanagerimp.cpp:1091
virtual bool isGuiMode() const
Definition: windowmanagerimp.cpp:1415
void createTextures()
Definition: windowmanagerimp.cpp:2041
virtual void onFrame(float frameDuration)
Definition: windowmanagerimp.cpp:953
AlchemyWindow * mAlchemyWindow
Definition: windowmanagerimp.hpp:425
virtual int readPressedButton()
returns the index of the pressed button or -1 if no button was pressed (->MessageBoxmanager->Interact...
Definition: windowmanagerimp.cpp:911
Definition: charactercreation.hpp:37
QuickKeysMenu * mQuickKeysMenu
Definition: windowmanagerimp.hpp:427
virtual bool toggleFogOfWar()
Definition: windowmanagerimp.cpp:1069
virtual void useItem(const MWWorld::Ptr &item)
Make the player use an item, while updating GUI state accordingly.
Definition: windowmanagerimp.cpp:1360
virtual bool toggleGui()
Turn visibility of all GUI elements on or off (HUD and all windows, except the console) ...
Definition: windowmanagerimp.cpp:1494
virtual void startTravel(const MWWorld::Ptr &actor)
Definition: windowmanagerimp.cpp:1959
Definition: enchantingdialog.hpp:16
JournalWindow * mJournal
Definition: windowmanagerimp.hpp:412
virtual void cycleSpell(bool next)
Cycle to next or previous spell.
Definition: windowmanagerimp.cpp:1938
Mutable state of a cell.
Definition: cellstore.hpp:53
InventoryWindow * mInventoryWindow
Definition: windowmanagerimp.hpp:416
ScreenFader * mWerewolfFader
Definition: windowmanagerimp.hpp:441
virtual bool getRestEnabled()
Definition: windowmanagerimp.cpp:1501
virtual bool getWorldMouseOver()
Definition: windowmanagerimp.cpp:1344
virtual void removeCurrentModal(WindowModal *input)
Removes the top Modal.
Definition: windowmanagerimp.cpp:1825
ShowInDialogueMode
Definition: windowmanager.hpp:70
bool mHitFaderEnabled
Definition: windowmanagerimp.hpp:456
Translation::Storage & mTranslationDataStorage
Definition: windowmanagerimp.hpp:448
std::map< int, MWMechanics::AttributeValue > mPlayerAttributes
Definition: windowmanagerimp.hpp:468
int mShowOwned
Definition: windowmanagerimp.hpp:498
virtual std::string correctIconPath(const std::string &path)
Definition: windowmanagerimp.cpp:1995
SpellWindow * mSpellWindow
Definition: windowmanagerimp.hpp:426
virtual void startEnchanting(MWWorld::Ptr actor)
Definition: windowmanagerimp.cpp:1530
virtual bool isAllowed(GuiWindow wnd) const
Definition: windowmanagerimp.cpp:1366
virtual void activateHitOverlay(bool interrupt)
Definition: windowmanagerimp.cpp:1889
virtual void setSpellVisibility(bool visible)
Definition: windowmanagerimp.cpp:1106
FromType
Definition: to_utf8.hpp:11
ScreenFader * mHitFader
Definition: windowmanagerimp.hpp:443
virtual void startRepair(MWWorld::Ptr actor)
Definition: windowmanagerimp.cpp:1547
virtual MWGui::ConfirmationDialog * getConfirmationDialog()
Definition: windowmanagerimp.cpp:1357
GuiWindow mAllowed
Definition: windowmanagerimp.hpp:488
virtual void processChangedSettings(const Settings::CategorySettingVector &changed)
Definition: windowmanagerimp.cpp:1170
LevelupDialog * mLevelupDialog
Definition: windowmanagerimp.hpp:429
virtual bool isConsoleMode() const
Definition: windowmanagerimp.cpp:1420
virtual void playVideo(const std::string &name, bool allowSkipping)
Definition: windowmanagerimp.cpp:1751
DragAndDrop * mDragAndDrop
Definition: windowmanagerimp.hpp:415
virtual void startTraining(MWWorld::Ptr actor)
Definition: windowmanagerimp.cpp:1541
virtual SkillList getPlayerMajorSkills()
Definition: windowmanagerimp.cpp:1449
virtual void setValue(const std::string &id, const MWMechanics::AttributeValue &value)
Set value for the given ID.
Definition: windowmanagerimp.cpp:688
virtual void setDrowningBarVisibility(bool visible)
sets the visibility of the drowning bar
Definition: windowmanagerimp.cpp:1054
StatsWindow * mStatsWindow
Definition: windowmanagerimp.hpp:409
void removeCell(MWWorld::CellStore *cell)
Definition: windowmanagerimp.cpp:2093
std::string mPlayerRaceId
Definition: windowmanagerimp.hpp:467
virtual void pushGuiMode(GuiMode mode)
Definition: windowmanagerimp.cpp:1220
virtual MWGui::InventoryWindow * getInventoryWindow()
Definition: windowmanagerimp.cpp:1355
Definition: debugwindow.hpp:9
Definition: scrollwindow.hpp:15
virtual void toggleVisible(GuiWindow wnd)
Definition: windowmanagerimp.cpp:1394
Definition: jailscreen.hpp:9
GuiWindow mForceHidden
Definition: windowmanagerimp.hpp:481
virtual void removeStaticMessageBox()
Definition: windowmanagerimp.cpp:906
Definition: spellwindow.hpp:14
bool mCrosshairEnabled
Definition: windowmanagerimp.hpp:454
virtual void showSoulgemDialog(MWWorld::Ptr item)
Definition: windowmanagerimp.cpp:1576
Definition: layout.hpp:13
virtual void showScroll(const MWWorld::Ptr &item, bool showTakeButton)
Definition: windowmanagerimp.cpp:1989
void initUI()
Definition: windowmanagerimp.cpp:277
SDLUtil::SDLCursorManager * mCursorManager
Definition: windowmanagerimp.hpp:475
virtual void setKeyFocusWidget(MyGUI::Widget *widget)
Warning: do not use MyGUI::InputManager::setKeyFocusWidget directly. Instead use this.
Definition: windowmanagerimp.cpp:1596
CustomMarkerCollection mCustomMarkers
Definition: windowmanagerimp.hpp:402
BookWindow * mBookWindow
Definition: windowmanagerimp.hpp:418
virtual std::map< int, MWMechanics::AttributeValue > getPlayerAttributeValues()
Definition: windowmanagerimp.cpp:1439
GuiMode
Definition: mode.hpp:6
virtual void setSelectedWeapon(const MWWorld::Ptr &item)
Definition: windowmanagerimp.cpp:1301
void setCursorVisible(bool visible)
Definition: windowmanagerimp.cpp:1123
GuiWindow mShown
Definition: windowmanagerimp.hpp:480
virtual void pinWindow(MWGui::GuiWindow window)
Definition: windowmanagerimp.cpp:1840
Definition: travelwindow.hpp:22
virtual void clear()
Clear all savegame-specific data.
Definition: windowmanagerimp.cpp:1662
virtual void enableRest()
Definition: windowmanagerimp.hpp:293
Definition: journalwindow.hpp:12
MyGUI::Widget * mInputBlocker
Definition: windowmanagerimp.hpp:452
virtual std::map< int, MWMechanics::SkillValue > getPlayerSkillValues()
Definition: windowmanagerimp.cpp:1434
virtual void startSpellMaking(MWWorld::Ptr actor)
Definition: windowmanagerimp.cpp:1524
virtual void setBlindness(const int percent)
Darken the screen to a specified percentage.
Definition: windowmanagerimp.cpp:1884
Definition: loadclas.hpp:18
virtual void disallowAll()
Disallow all inventory mode windows.
Definition: windowmanagerimp.cpp:1384
Recharge * mRecharge
Definition: windowmanagerimp.hpp:437
TradeWindow * mTradeWindow
Definition: windowmanagerimp.hpp:420
virtual std::string correctBookartPath(const std::string &path, int width, int height)
Definition: windowmanagerimp.cpp:2000
Definition: stat.hpp:137
VideoWidget * mVideoWidget
Definition: windowmanagerimp.hpp:440
void onWindowChangeCoord(MyGUI::Window *_sender)
Definition: windowmanagerimp.cpp:1648
virtual void allow(GuiWindow wnd)
Allow one or more windows.
Definition: windowmanagerimp.cpp:1371
virtual void showCrosshair(bool show)
Definition: windowmanagerimp.cpp:1478
virtual bool getPlayerSleeping()
Definition: windowmanagerimp.cpp:1509
MerchantRepair * mMerchantRepair
Definition: windowmanagerimp.hpp:434
std::vector< int > SkillList
Definition: windowmanager.hpp:95
bool mRestAllowed
Definition: windowmanagerimp.hpp:490
virtual void removeGuiMode(GuiMode mode)
can be anywhere in the stack
Definition: windowmanagerimp.cpp:1256
virtual bool getJournalAllowed()
Definition: windowmanagerimp.hpp:296
std::string mPlayerName
Definition: windowmanagerimp.hpp:466
virtual void showCompanionWindow(MWWorld::Ptr actor)
Definition: windowmanagerimp.cpp:1564
bool mGuiEnabled
Definition: windowmanagerimp.hpp:459
virtual void unsetSelectedSpell()
Definition: windowmanagerimp.cpp:1309
MWRender::LocalMap * mLocalMapRender
Definition: windowmanagerimp.hpp:406
Definition: console.hpp:24
Pointer to a LiveCellRef.
Definition: ptr.hpp:19
Definition: tooltips.hpp:47
TravelWindow * mTravelWindow
Definition: windowmanagerimp.hpp:422
virtual void setWeaponVisibility(bool visible)
Definition: windowmanagerimp.cpp:1101
virtual void messageBox(const std::string &message, enum MWGui::ShowInDialogueMode showInDialogueMode=MWGui::ShowInDialogueMode_IfPossible)
Definition: windowmanagerimp.cpp:892
Definition: screenfader.hpp:36
void renderWorldMap()
Definition: windowmanagerimp.cpp:374
MyGUI::ImageBox * mVideoBackground
Definition: windowmanagerimp.hpp:439
TrainingWindow * mTrainingWindow
Definition: windowmanagerimp.hpp:433
virtual void setHMSVisibility(bool visible)
sets the visibility of the hud health/magicka/stamina bars
Definition: windowmanagerimp.cpp:1059
MyGUI::Gui * mGui
Definition: windowmanagerimp.hpp:472
Definition: spellbuyingwindow.hpp:21
virtual void removeDialog(Layout *dialog)
Hides dialog and schedules dialog to be deleted.
Definition: windowmanagerimp.cpp:772
virtual void startRecharge(MWWorld::Ptr soulgem)
Definition: windowmanagerimp.cpp:1623
virtual void interactiveMessageBox(const std::string &message, const std::vector< std::string > &buttons=std::vector< std::string >(), bool block=false)
Definition: windowmanagerimp.cpp:867
CompanionWindow * mCompanionWindow
Definition: windowmanagerimp.hpp:438
void onClipboardChanged(const std::string &_type, const std::string &_data)
Definition: windowmanagerimp.cpp:1911
virtual void startTrade(const MWWorld::Ptr &actor)
Definition: windowmanagerimp.cpp:1971
virtual void setDragDrop(bool dragDrop)
Definition: windowmanagerimp.cpp:1117
virtual void popGuiMode()
Definition: windowmanagerimp.cpp:1245
virtual void unsetForceHide(MWGui::GuiWindow wnd)
Definition: windowmanagerimp.cpp:1409
KeyCode
Keyboard scan codes.
Definition: OISCompat.hpp:10
virtual void setConsoleSelectedObject(const MWWorld::Ptr &object)
Set value for the given ID.
Definition: windowmanagerimp.cpp:1948
void setStore(const MWWorld::ESMStore &store)
Set the ESMStore to use for retrieving of GUI-related strings.
Definition: windowmanagerimp.cpp:466
Definition: repair.hpp:14
virtual std::string getSelectedSpell()
Definition: windowmanagerimp.hpp:237
virtual SkillList getPlayerMinorSkills()
Definition: windowmanagerimp.cpp:1444
Definition: windowmanagerimp.hpp:116
virtual MWGui::CountDialog * getCountDialog()
Definition: windowmanagerimp.cpp:1356
bool mCursorVisible
Definition: windowmanagerimp.hpp:460
SpellCreationDialog * mSpellCreationDialog
Definition: windowmanagerimp.hpp:431
Definition: windowbase.hpp:41
const char * name
Definition: crashcatcher.cpp:59
Definition: container.hpp:31
virtual void setSelectedSpell(const std::string &spellId, int successChancePercent)
Definition: windowmanagerimp.cpp:1279
virtual ~WindowManager()
Definition: windowmanagerimp.cpp:402
Definition: merchantrepair.hpp:10