mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-11-04 12:56:43 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#ifndef MWGUI_WAIT_DIALOG_H
 | 
						|
#define MWGUI_WAIT_DIALOG_H
 | 
						|
 | 
						|
#include "timeadvancer.hpp"
 | 
						|
 | 
						|
#include "windowbase.hpp"
 | 
						|
 | 
						|
namespace MWGui
 | 
						|
{
 | 
						|
 | 
						|
    class WaitDialogProgressBar : public WindowBase
 | 
						|
    {
 | 
						|
    public:
 | 
						|
        WaitDialogProgressBar();
 | 
						|
 | 
						|
        virtual void open();
 | 
						|
 | 
						|
        void setProgress(int cur, int total);
 | 
						|
 | 
						|
    protected:
 | 
						|
        MyGUI::ProgressBar* mProgressBar;
 | 
						|
        MyGUI::TextBox* mProgressText;
 | 
						|
    };
 | 
						|
 | 
						|
    class WaitDialog : public WindowBase
 | 
						|
    {
 | 
						|
    public:
 | 
						|
        WaitDialog();
 | 
						|
 | 
						|
        virtual void open();
 | 
						|
 | 
						|
        virtual void exit();
 | 
						|
 | 
						|
        void onFrame(float dt);
 | 
						|
 | 
						|
        void bedActivated() { setCanRest(true); }
 | 
						|
 | 
						|
        bool getSleeping() { return mTimeAdvancer.isRunning() && mSleeping; }
 | 
						|
        void wakeUp();
 | 
						|
        void autosave();
 | 
						|
 | 
						|
    protected:
 | 
						|
        MyGUI::TextBox* mDateTimeText;
 | 
						|
        MyGUI::TextBox* mRestText;
 | 
						|
        MyGUI::TextBox* mHourText;
 | 
						|
        MyGUI::Button* mUntilHealedButton;
 | 
						|
        MyGUI::Button* mWaitButton;
 | 
						|
        MyGUI::Button* mCancelButton;
 | 
						|
        MyGUI::ScrollBar* mHourSlider;
 | 
						|
 | 
						|
        TimeAdvancer mTimeAdvancer;
 | 
						|
        bool mSleeping;
 | 
						|
        int mHours;
 | 
						|
        int mManualHours; // stores the hours to rest selected via slider
 | 
						|
        float mFadeTimeRemaining;
 | 
						|
 | 
						|
        int mInterruptAt;
 | 
						|
        std::string mInterruptCreatureList;
 | 
						|
 | 
						|
        WaitDialogProgressBar mProgressBar;
 | 
						|
 | 
						|
        void onUntilHealedButtonClicked(MyGUI::Widget* sender);
 | 
						|
        void onWaitButtonClicked(MyGUI::Widget* sender);
 | 
						|
        void onCancelButtonClicked(MyGUI::Widget* sender);
 | 
						|
        void onHourSliderChangedPosition(MyGUI::ScrollBar* sender, size_t position);
 | 
						|
 | 
						|
        void onWaitingProgressChanged(int cur, int total);
 | 
						|
        void onWaitingInterrupted();
 | 
						|
        void onWaitingFinished();
 | 
						|
 | 
						|
        void setCanRest(bool canRest);
 | 
						|
 | 
						|
        void startWaiting(int hoursToWait);
 | 
						|
        void stopWaiting();
 | 
						|
    };
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
#endif
 |