// license:BSD-3-Clause // copyright-holders:Andrew Gardner #ifndef MAME_DEBUGGER_QT_DEVICEINFORMATIONWINDOW_H #define MAME_DEBUGGER_QT_DEVICEINFORMATIONWINDOW_H #pragma once #include "windowqt.h" //============================================================ // The Device Information Window. //============================================================ class DeviceInformationWindow : public WindowQt { Q_OBJECT public: DeviceInformationWindow(running_machine &machine, device_t *device = nullptr, QWidget* parent=nullptr); virtual ~DeviceInformationWindow(); void set_device(const char *tag); protected: virtual void saveConfigurationToNode(util::xml::data_node &node) override; private: device_t *m_device; void fill_device_information(); }; //========================================================================= // A way to store the configuration of a window long enough to read/write. //========================================================================= class DeviceInformationWindowQtConfig : public WindowQtConfig { public: std::string m_device_tag; DeviceInformationWindowQtConfig() : WindowQtConfig(osd::debugger::WINDOW_TYPE_DEVICE_INFO_VIEWER) { } ~DeviceInformationWindowQtConfig() {} void applyToQWidget(QWidget *widget); void recoverFromXmlNode(util::xml::data_node const &node); }; #endif // MAME_DEBUGGER_QT_DEVICEINFORMATIONWINDOW_H