2023-11-14 22:52:30 +02:00
|
|
|
/*
|
|
|
|
* CTutorialWindow.h, part of VCMI engine
|
|
|
|
*
|
|
|
|
* Authors: listed in file AUTHORS in main folder
|
|
|
|
*
|
|
|
|
* License: GNU General Public License v2.0 or later
|
|
|
|
* Full text of license available in license.txt file, in main folder
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../windows/CWindowObject.h"
|
|
|
|
|
|
|
|
class CFilledTexture;
|
2023-11-14 23:39:11 +02:00
|
|
|
class CButton;
|
|
|
|
class CLabel;
|
|
|
|
class CMultiLineLabel;
|
2024-05-02 21:14:50 +02:00
|
|
|
class VideoWidget;
|
2023-11-14 22:52:30 +02:00
|
|
|
|
|
|
|
enum TutorialMode
|
|
|
|
{
|
2023-11-14 23:50:22 +02:00
|
|
|
TOUCH_ADVENTUREMAP,
|
|
|
|
TOUCH_BATTLE
|
2023-11-14 22:52:30 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
class CTutorialWindow : public CWindowObject
|
|
|
|
{
|
2023-11-14 23:50:22 +02:00
|
|
|
TutorialMode mode;
|
|
|
|
std::shared_ptr<CFilledTexture> background;
|
2023-11-14 22:52:30 +02:00
|
|
|
|
2023-11-14 23:50:22 +02:00
|
|
|
std::shared_ptr<CButton> buttonOk;
|
|
|
|
std::shared_ptr<CButton> buttonLeft;
|
|
|
|
std::shared_ptr<CButton> buttonRight;
|
2023-11-14 23:39:11 +02:00
|
|
|
|
|
|
|
std::shared_ptr<CLabel> labelTitle;
|
|
|
|
std::shared_ptr<CMultiLineLabel> labelInformation;
|
2024-05-02 21:14:50 +02:00
|
|
|
std::shared_ptr<VideoWidget> videoPlayer;
|
2023-11-14 23:39:11 +02:00
|
|
|
|
2023-11-16 23:39:50 +02:00
|
|
|
std::vector<std::string> videos;
|
|
|
|
|
|
|
|
int page;
|
2023-11-16 03:58:43 +02:00
|
|
|
|
2023-11-17 00:03:41 +02:00
|
|
|
void exit();
|
2023-11-14 23:50:22 +02:00
|
|
|
void next();
|
|
|
|
void previous();
|
2023-11-16 23:39:50 +02:00
|
|
|
void setContent();
|
2023-11-14 23:39:11 +02:00
|
|
|
|
2023-11-14 22:52:30 +02:00
|
|
|
public:
|
2023-11-14 23:50:22 +02:00
|
|
|
CTutorialWindow(const TutorialMode & m);
|
|
|
|
static void openWindowFirstTime(const TutorialMode & m);
|
|
|
|
};
|