openMSX
Public Member Functions | Public Attributes | List of all members
openmsx::ImGuiManager Class Referencefinal

#include <ImGuiManager.hh>

Inheritance diagram for openmsx::ImGuiManager:
Inheritance graph
[legend]
Collaboration diagram for openmsx::ImGuiManager:
Collaboration graph
[legend]

Public Member Functions

 ImGuiManager (Reactor &reactor_)
 
 ImGuiManager (const ImGuiManager &)=delete
 
 ImGuiManager (ImGuiManager &&)=delete
 
ImGuiManageroperator= (const ImGuiManager &)=delete
 
ImGuiManageroperator= (ImGuiManager &&)=delete
 
 ~ImGuiManager ()
 
void registerPart (ImGuiPartInterface *part)
 
void unregisterPart (ImGuiPartInterface *part)
 
ReactorgetReactor ()
 
ShortcutsgetShortcuts ()
 
InterpretergetInterpreter ()
 
CliCommgetCliComm ()
 
std::optional< TclObjectexecute (TclObject command)
 
void executeDelayed (std::function< void()> action)
 
void executeDelayed (TclObject command, const std::function< void(const TclObject &)> &ok, const std::function< void(const std::string &)> &error)
 
void executeDelayed (TclObject command, const std::function< void(const TclObject &)> &ok={})
 
void printError (std::string_view message)
 
template<typename... Ts>
void printError (Ts &&... ts)
 
void preNewFrame ()
 
void paintImGui ()
 
void storeWindowPosition (gl::ivec2 pos)
 
gl::ivec2 retrieveWindowPosition () const
 
- Public Member Functions inherited from openmsx::ImGuiPartInterface
virtual void loadStart ()
 
virtual void showMenu (MSXMotherBoard *)
 
virtual void paint (MSXMotherBoard *)
 

Public Attributes

FilenameSetting fontPropFilename
 
FilenameSetting fontMonoFilename
 
IntegerSetting fontPropSize
 
IntegerSetting fontMonoSize
 
ImFont * fontProp = nullptr
 
ImFont * fontMono = nullptr
 
std::unique_ptr< ImGuiMachinemachine
 
std::unique_ptr< ImGuiDebuggerdebugger
 
std::unique_ptr< ImGuiBreakPointsbreakPoints
 
std::unique_ptr< ImGuiSymbolssymbols
 
std::unique_ptr< ImGuiWatchExprwatchExpr
 
std::unique_ptr< ImGuiBitmapViewerbitmap
 
std::unique_ptr< ImGuiCharactercharacter
 
std::unique_ptr< ImGuiSpriteViewersprite
 
std::unique_ptr< ImGuiVdpRegsvdpRegs
 
std::unique_ptr< ImGuiPalettepalette
 
std::unique_ptr< ImGuiReverseBarreverseBar
 
std::unique_ptr< ImGuiHelphelp
 
std::unique_ptr< ImGuiOsdIconsosdIcons
 
std::unique_ptr< ImGuiOpenFileopenFile
 
std::unique_ptr< ImGuiMediamedia
 
std::unique_ptr< ImGuiConnectorconnector
 
std::unique_ptr< ImGuiToolstools
 
std::unique_ptr< ImGuiTrainertrainer
 
std::unique_ptr< ImGuiSCCViewersccViewer
 
std::unique_ptr< ImGuiCheatFindercheatFinder
 
std::unique_ptr< ImGuiDiskManipulatordiskManipulator
 
std::unique_ptr< ImGuiSettingssettings
 
std::unique_ptr< ImGuiSoundChipsoundChip
 
std::unique_ptr< ImGuiKeyboardkeyboard
 
std::unique_ptr< ImGuiConsoleconsole
 
std::unique_ptr< ImGuiMessagesmessages
 
bool menuFade = true
 
bool needReloadFont = false
 
bool statusBarVisible = false
 
std::string loadIniFile
 

Detailed Description

Definition at line 60 of file ImGuiManager.hh.

Constructor & Destructor Documentation

◆ ImGuiManager() [1/3]

openmsx::ImGuiManager::ImGuiManager ( Reactor reactor_)
explicit

◆ ImGuiManager() [2/3]

openmsx::ImGuiManager::ImGuiManager ( const ImGuiManager )
delete

◆ ImGuiManager() [3/3]

openmsx::ImGuiManager::ImGuiManager ( ImGuiManager &&  )
delete

◆ ~ImGuiManager()

openmsx::ImGuiManager::~ImGuiManager ( )

Member Function Documentation

◆ execute()

std::optional< TclObject > openmsx::ImGuiManager::execute ( TclObject  command)

◆ executeDelayed() [1/3]

void openmsx::ImGuiManager::executeDelayed ( std::function< void()>  action)

◆ executeDelayed() [2/3]

void openmsx::ImGuiManager::executeDelayed ( TclObject  command,
const std::function< void(const TclObject &)> &  ok,
const std::function< void(const std::string &)> &  error 
)

◆ executeDelayed() [3/3]

void openmsx::ImGuiManager::executeDelayed ( TclObject  command,
const std::function< void(const TclObject &)> &  ok = {} 
)

Definition at line 347 of file ImGuiManager.cc.

References executeDelayed(), and printError().

◆ getCliComm()

CliComm & openmsx::ImGuiManager::getCliComm ( )

Definition at line 312 of file ImGuiManager.cc.

References openmsx::Reactor::getCliComm().

Referenced by printError().

◆ getInterpreter()

Interpreter & openmsx::ImGuiManager::getInterpreter ( )

◆ getReactor()

Reactor & openmsx::ImGuiManager::getReactor ( )
inline

◆ getShortcuts()

Shortcuts & openmsx::ImGuiManager::getShortcuts ( )
inline

Definition at line 74 of file ImGuiManager.hh.

References openmsx::Reactor::getShortcuts().

◆ operator=() [1/2]

ImGuiManager & openmsx::ImGuiManager::operator= ( const ImGuiManager )
delete

◆ operator=() [2/2]

ImGuiManager & openmsx::ImGuiManager::operator= ( ImGuiManager &&  )
delete

◆ paintImGui()

void openmsx::ImGuiManager::paintImGui ( )

◆ preNewFrame()

void openmsx::ImGuiManager::preNewFrame ( )

Definition at line 437 of file ImGuiManager.cc.

References loadIniFile, and needReloadFont.

◆ printError() [1/2]

void openmsx::ImGuiManager::printError ( std::string_view  message)

Definition at line 354 of file ImGuiManager.cc.

References getCliComm(), and openmsx::CliComm::printError().

Referenced by executeDelayed(), and printError().

◆ printError() [2/2]

template<typename... Ts>
void openmsx::ImGuiManager::printError ( Ts &&...  ts)
inline

Definition at line 86 of file ImGuiManager.hh.

References printError(), and tmpStrCat().

◆ registerPart()

void openmsx::ImGuiManager::registerPart ( ImGuiPartInterface part)

Definition at line 261 of file ImGuiManager.cc.

References contains().

Referenced by openmsx::ImGuiPart::ImGuiPart().

◆ retrieveWindowPosition()

gl::ivec2 openmsx::ImGuiManager::retrieveWindowPosition ( ) const
inline

Definition at line 94 of file ImGuiManager.hh.

Referenced by openmsx::Display::retrieveWindowPosition().

◆ storeWindowPosition()

void openmsx::ImGuiManager::storeWindowPosition ( gl::ivec2  pos)
inline

Definition at line 93 of file ImGuiManager.hh.

Referenced by openmsx::Display::storeWindowPosition().

◆ unregisterPart()

void openmsx::ImGuiManager::unregisterPart ( ImGuiPartInterface part)

Definition at line 268 of file ImGuiManager.cc.

References ranges::find().

Referenced by openmsx::ImGuiPart::~ImGuiPart().

Member Data Documentation

◆ bitmap

std::unique_ptr<ImGuiBitmapViewer> openmsx::ImGuiManager::bitmap

Definition at line 143 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ breakPoints

std::unique_ptr<ImGuiBreakPoints> openmsx::ImGuiManager::breakPoints

Definition at line 140 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ character

std::unique_ptr<ImGuiCharacter> openmsx::ImGuiManager::character

Definition at line 144 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ cheatFinder

std::unique_ptr<ImGuiCheatFinder> openmsx::ImGuiManager::cheatFinder

Definition at line 157 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ connector

std::unique_ptr<ImGuiConnector> openmsx::ImGuiManager::connector

Definition at line 153 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ console

std::unique_ptr<ImGuiConsole> openmsx::ImGuiManager::console

Definition at line 162 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ debugger

std::unique_ptr<ImGuiDebugger> openmsx::ImGuiManager::debugger

Definition at line 139 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ diskManipulator

std::unique_ptr<ImGuiDiskManipulator> openmsx::ImGuiManager::diskManipulator

Definition at line 158 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ fontMono

ImFont* openmsx::ImGuiManager::fontMono = nullptr

◆ fontMonoFilename

FilenameSetting openmsx::ImGuiManager::fontMonoFilename

Definition at line 132 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and ~ImGuiManager().

◆ fontMonoSize

IntegerSetting openmsx::ImGuiManager::fontMonoSize

Definition at line 134 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and ~ImGuiManager().

◆ fontProp

ImFont* openmsx::ImGuiManager::fontProp = nullptr

Definition at line 135 of file ImGuiManager.hh.

◆ fontPropFilename

FilenameSetting openmsx::ImGuiManager::fontPropFilename

Definition at line 131 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and ~ImGuiManager().

◆ fontPropSize

IntegerSetting openmsx::ImGuiManager::fontPropSize

Definition at line 133 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and ~ImGuiManager().

◆ help

std::unique_ptr<ImGuiHelp> openmsx::ImGuiManager::help

Definition at line 149 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ keyboard

std::unique_ptr<ImGuiKeyboard> openmsx::ImGuiManager::keyboard

Definition at line 161 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ loadIniFile

std::string openmsx::ImGuiManager::loadIniFile

Definition at line 168 of file ImGuiManager.hh.

Referenced by preNewFrame(), and openmsx::ImGuiSettings::showMenu().

◆ machine

std::unique_ptr<ImGuiMachine> openmsx::ImGuiManager::machine

Definition at line 138 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ media

std::unique_ptr<ImGuiMedia> openmsx::ImGuiManager::media

Definition at line 152 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and paintImGui().

◆ menuFade

bool openmsx::ImGuiManager::menuFade = true

Definition at line 165 of file ImGuiManager.hh.

Referenced by paintImGui(), and openmsx::ImGuiSettings::showMenu().

◆ messages

std::unique_ptr<ImGuiMessages> openmsx::ImGuiManager::messages

◆ needReloadFont

bool openmsx::ImGuiManager::needReloadFont = false

Definition at line 166 of file ImGuiManager.hh.

Referenced by preNewFrame().

◆ openFile

std::unique_ptr<ImGuiOpenFile> openmsx::ImGuiManager::openFile

Definition at line 151 of file ImGuiManager.hh.

Referenced by ImGuiManager(), openmsx::ImGuiSymbols::paint(), and paintImGui().

◆ osdIcons

std::unique_ptr<ImGuiOsdIcons> openmsx::ImGuiManager::osdIcons

Definition at line 150 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiSettings::showMenu().

◆ palette

std::unique_ptr<ImGuiPalette> openmsx::ImGuiManager::palette

◆ reverseBar

std::unique_ptr<ImGuiReverseBar> openmsx::ImGuiManager::reverseBar

Definition at line 148 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ sccViewer

std::unique_ptr<ImGuiSCCViewer> openmsx::ImGuiManager::sccViewer

Definition at line 156 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ settings

std::unique_ptr<ImGuiSettings> openmsx::ImGuiManager::settings

Definition at line 159 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ soundChip

std::unique_ptr<ImGuiSoundChip> openmsx::ImGuiManager::soundChip

Definition at line 160 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiSettings::showMenu().

◆ sprite

std::unique_ptr<ImGuiSpriteViewer> openmsx::ImGuiManager::sprite

Definition at line 145 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ statusBarVisible

bool openmsx::ImGuiManager::statusBarVisible = false

Definition at line 167 of file ImGuiManager.hh.

Referenced by paintImGui(), and openmsx::ImGuiSettings::showMenu().

◆ symbols

std::unique_ptr<ImGuiSymbols> openmsx::ImGuiManager::symbols

Definition at line 141 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ tools

std::unique_ptr<ImGuiTools> openmsx::ImGuiManager::tools

Definition at line 154 of file ImGuiManager.hh.

Referenced by ImGuiManager().

◆ trainer

std::unique_ptr<ImGuiTrainer> openmsx::ImGuiManager::trainer

Definition at line 155 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiTools::showMenu().

◆ vdpRegs

std::unique_ptr<ImGuiVdpRegs> openmsx::ImGuiManager::vdpRegs

Definition at line 146 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().

◆ watchExpr

std::unique_ptr<ImGuiWatchExpr> openmsx::ImGuiManager::watchExpr

Definition at line 142 of file ImGuiManager.hh.

Referenced by ImGuiManager(), and openmsx::ImGuiDebugger::showMenu().


The documentation for this class was generated from the following files: