OpenTTD
progress.cpp
Go to the documentation of this file.
1 /* $Id: progress.cpp 26482 2014-04-23 20:13:33Z rubidium $ */
2 
3 /*
4  * This file is part of OpenTTD.
5  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
6  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
7  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
8  */
9 
12 #include "stdafx.h"
13 #include "thread/thread.h"
14 
15 #include "safeguards.h"
16 
18 bool _in_modal_progress = false;
19 bool _first_in_modal_loop = false;
24 
30 void SetModalProgress(bool state)
31 {
32  _in_modal_progress = state;
33  _first_in_modal_loop = true;
34 }
35 
42 {
43  bool ret = _first_in_modal_loop;
44  _first_in_modal_loop = false;
45  return ret;
46 }
Cross-platform Mutex.
Definition: thread.h:56
ThreadMutex * _modal_progress_work_mutex
Rights for the performing work.
Definition: progress.cpp:21
bool IsFirstModalProgressLoop()
Check whether this is the first modal progress loop.
Definition: progress.cpp:41
Base of all threads.
Definition of base types and functions in a cross-platform compatible way.
A number of safeguards to prevent using unsafe methods.
static ThreadMutex * New()
Create a new mutex.
Definition: thread_none.cpp:32
ThreadMutex * _modal_progress_paint_mutex
Rights for the painting.
Definition: progress.cpp:23
bool _in_modal_progress
Are we in a modal progress or not?
Definition: progress.cpp:18
void SetModalProgress(bool state)
Set the modal progress state.
Definition: progress.cpp:30