RigsofRods
Soft-body Physics Simulation
GUI_LoadingWindow.h
Go to the documentation of this file.
1 /*
2  This source file is part of Rigs of Rods
3  Copyright 2005-2012 Pierre-Michel Ricordel
4  Copyright 2007-2012 Thomas Fischer
5 
6  For more information, see http://www.rigsofrods.org/
7 
8  Rigs of Rods is free software: you can redistribute it and/or modify
9  it under the terms of the GNU General Public License version 3, as
10  published by the Free Software Foundation.
11 
12  Rigs of Rods is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with Rigs of Rods. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #pragma once
22 
23 #include "Application.h"
24 #include <OgreRoot.h>
25 #include <OgreTimer.h>
26 
27 
28 namespace RoR {
29 namespace GUI {
30 
32 {
33 public:
34  const int PERC_HIDE_PROGRESSBAR = -1;
35  const int PERC_SHOW_SPINNER = -2;
36 
37  void SetProgress(int _percent, const std::string& _text = "", bool render_frame = true);
38  void SetProgressNetConnect(const std::string& net_status);
39  void Draw();
40 
41  void SetVisible(bool v) { m_is_visible = v; }
42  bool IsVisible() const { return m_is_visible; }
43 
44 private:
46  bool m_is_visible = false;
47  std::string m_text;
48  int m_text_num_lines = -1;
49  Ogre::Timer m_timer;
50  float m_spinner_counter = 0.f;
51 };
52 
53 } // namespace GUI
54 } // namespace RoR
RoR::GUI::LoadingWindow::Draw
void Draw()
Definition: GUI_LoadingWindow.cpp:80
RoR::GUI::LoadingWindow::SetProgressNetConnect
void SetProgressNetConnect(const std::string &net_status)
Definition: GUI_LoadingWindow.cpp:73
RoR::GUI::LoadingWindow::IsVisible
bool IsVisible() const
Definition: GUI_LoadingWindow.h:42
RoR::GUI::LoadingWindow::m_percent
int m_percent
Definition: GUI_LoadingWindow.h:45
RoR::GUI::LoadingWindow::m_timer
Ogre::Timer m_timer
Definition: GUI_LoadingWindow.h:49
RoR::GUI::LoadingWindow::m_text
std::string m_text
Definition: GUI_LoadingWindow.h:47
RoR::GUI::LoadingWindow::m_is_visible
bool m_is_visible
Definition: GUI_LoadingWindow.h:46
RoR::GUI::LoadingWindow
Definition: GUI_LoadingWindow.h:31
RoR::GUI::LoadingWindow::SetVisible
void SetVisible(bool v)
Definition: GUI_LoadingWindow.h:41
RoR::GUI::LoadingWindow::SetProgress
void SetProgress(int _percent, const std::string &_text="", bool render_frame=true)
Definition: GUI_LoadingWindow.cpp:33
Application.h
Central state/object manager and communications hub.
RoR::GUI::LoadingWindow::PERC_HIDE_PROGRESSBAR
const int PERC_HIDE_PROGRESSBAR
Definition: GUI_LoadingWindow.h:34
RoR::GUI::LoadingWindow::m_spinner_counter
float m_spinner_counter
Definition: GUI_LoadingWindow.h:50
RoR::GUI::LoadingWindow::PERC_SHOW_SPINNER
const int PERC_SHOW_SPINNER
Definition: GUI_LoadingWindow.h:35
RoR
Definition: AppContext.h:36
RoR::GUI::LoadingWindow::m_text_num_lines
int m_text_num_lines
Definition: GUI_LoadingWindow.h:48