openMSX
imgui
ImGuiHelp.hh
Go to the documentation of this file.
1
#ifndef IMGUI_HELP_HH
2
#define IMGUI_HELP_HH
3
4
#include "
ImGuiPart.hh
"
5
6
#include "
GLUtil.hh
"
7
8
#include <optional>
9
10
namespace
openmsx
{
11
12
// This used to be an inner class of ImGuiHelp, but for some reason that didn't compile with (some version of) clang???
13
// Moving it outside is a workaround.
14
struct
LogoImage
{
15
LogoImage
() =
default
;
16
17
gl::Texture
texture
{
gl::Null
{}};
18
gl::vec2
size
;
19
};
20
21
class
ImGuiHelp
final :
public
ImGuiPart
22
{
23
public
:
24
using
ImGuiPart::ImGuiPart
;
25
26
void
showMenu
(
MSXMotherBoard
* motherBoard)
override
;
27
void
paint
(
MSXMotherBoard
* motherBoard)
override
;
28
29
private
:
30
void
paintAbout();
31
32
private
:
33
bool
showImGuiUserGuide =
false
;
34
bool
showAboutOpenMSX =
false
;
35
bool
showAboutImGui =
false
;
36
bool
showDemoWindow =
false
;
37
38
std::optional<LogoImage> logo;
// initialized on first use
39
};
40
41
}
// namespace openmsx
42
43
#endif
GLUtil.hh
ImGuiPart.hh
gl::Texture
Most basic/generic texture: only contains a texture ID.
Definition
GLUtil.hh:40
gl::vecN
Definition
gl_vec.hh:32
openmsx::ImGuiHelp
Definition
ImGuiHelp.hh:22
openmsx::ImGuiHelp::paint
void paint(MSXMotherBoard *motherBoard) override
Definition
ImGuiHelp.cc:42
openmsx::ImGuiHelp::showMenu
void showMenu(MSXMotherBoard *motherBoard) override
Definition
ImGuiHelp.cc:20
openmsx::ImGuiPart
Definition
ImGuiPart.hh:10
openmsx::ImGuiPart::ImGuiPart
ImGuiPart(ImGuiManager &manager_)
Definition
ImGuiPart.hh:12
openmsx::MSXMotherBoard
Definition
MSXMotherBoard.hh:84
openmsx
This file implemented 3 utility functions:
Definition
Autofire.cc:11
gl::Null
Definition
GLUtil.hh:33
openmsx::LogoImage
Definition
ImGuiHelp.hh:14
openmsx::LogoImage::size
gl::vec2 size
Definition
ImGuiHelp.hh:18
openmsx::LogoImage::LogoImage
LogoImage()=default
openmsx::LogoImage::texture
gl::Texture texture
Definition
ImGuiHelp.hh:17
Generated on Sat Dec 7 2024 13:14:02 for openMSX by
1.9.8