summaryrefslogtreecommitdiffstats
path: root/src/frontend/mame/ui/info.cpp
diff options
context:
space:
mode:
author npwoods <npwoods@mess.org>2019-06-28 17:30:09 -0400
committer R. Belmont <rb6502@users.noreply.github.com>2019-06-28 17:30:09 -0400
commit697ff7bd7149d635a838543b65409dd42d739087 (patch)
tree23d49d81fd2b87ed565fac5c758b73b678fa7ad2 /src/frontend/mame/ui/info.cpp
parentcec557538d0d55b11780e83ac60e0fef68b37e0d (diff)
Changed the various usages of UI_*COLOR to be calls to src/frontend/mame/ui/moptions.h (#5282)
* Changed the various usages of UI_*COLOR to be calls to src/frontend/mame/ui/moptions.h The various UI_*COLOR macros were implemented as calls to decode_ui_color, which cached the values for the various options in a static array, which was obviously a gross hack. This refactoring is strategic because I am trying to confine awareness of mame_ui_manager to code in src/frontend/mame/ui, and the implementation of decode_ui_color() relied on the ability to access mame_ui_manager as a singleton from outside this code. * Created a ui_colors object, so that queries for UI RGB values would not always require parsing strings * Converted a few more options().zyx_color() to colors().zyx_color() * A few more misses from earlier
Diffstat (limited to 'src/frontend/mame/ui/info.cpp')
-rw-r--r--src/frontend/mame/ui/info.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/frontend/mame/ui/info.cpp b/src/frontend/mame/ui/info.cpp
index e7235b89111..46d092722d2 100644
--- a/src/frontend/mame/ui/info.cpp
+++ b/src/frontend/mame/ui/info.cpp
@@ -58,18 +58,19 @@ constexpr std::pair<device_t::feature_type, char const *> FEATURE_NAMES[] = {
// machine_static_info - constructors
//-------------------------------------------------
-machine_static_info::machine_static_info(machine_config const &config)
- : machine_static_info(config, nullptr)
+machine_static_info::machine_static_info(const ui_options &options, machine_config const &config)
+ : machine_static_info(options, config, nullptr)
{
}
-machine_static_info::machine_static_info(machine_config const &config, ioport_list const &ports)
- : machine_static_info(config, &ports)
+machine_static_info::machine_static_info(const ui_options &options, machine_config const &config, ioport_list const &ports)
+ : machine_static_info(options, config, &ports)
{
}
-machine_static_info::machine_static_info(machine_config const &config, ioport_list const *ports)
- : m_flags(config.gamedrv().flags)
+machine_static_info::machine_static_info(const ui_options &options, machine_config const &config, ioport_list const *ports)
+ : m_options(options)
+ , m_flags(config.gamedrv().flags)
, m_unemulated_features(config.gamedrv().type.unemulated_features())
, m_imperfect_features(config.gamedrv().type.imperfect_features())
, m_has_bioses(false)
@@ -154,7 +155,7 @@ rgb_t machine_static_info::warnings_color() const
else if ((machine_flags() & MACHINE_WARNINGS) || unemulated_features() || imperfect_features())
return UI_YELLOW_COLOR;
else
- return UI_BACKGROUND_COLOR;
+ return m_options.background_color();
}
@@ -164,7 +165,7 @@ rgb_t machine_static_info::warnings_color() const
//-------------------------------------------------
machine_info::machine_info(running_machine &machine)
- : machine_static_info(machine.config(), machine.ioport().ports())
+ : machine_static_info(dynamic_cast<mame_ui_manager *>(&machine.ui())->options(), machine.config(), machine.ioport().ports())
, m_machine(machine)
{
}