--- nono/wx/wxmonitor.h 2026/04/29 17:05:12 1.1.1.8 +++ nono/wx/wxmonitor.h 2026/04/29 17:05:57 1.1.1.13 @@ -13,28 +13,29 @@ #include "wxsubwindow.h" #include "wxtextscreen.h" #include "wxscrollbar.h" -#include "monitor.h" // モニタパネル class WXMonitorPanel : public WXTextScreen { using inherited = WXTextScreen; public: - WXMonitorPanel(wxWindow *parent, Monitor& monitor_); - virtual ~WXMonitorPanel() override; + WXMonitorPanel(wxWindow *parent, Monitor *monitor_); + ~WXMonitorPanel() override; + + void FontChanged() override; // 画面を更新して再描画する。 - void DoRefresh(); + virtual void DoRefresh(); // 更新頻度設定 void SetRate(int hz); - Monitor& GetMonitor() const { return monitor; } + Monitor *GetMonitor() const { return monitor; } private: void OnTimer(wxTimerEvent&); - Monitor& monitor; + Monitor *monitor {}; wxTimer timer {}; wxDECLARE_EVENT_TABLE(); @@ -46,8 +47,8 @@ class WXMonitorWindow : public WXSubWind using inherited = WXSubWindow; public: WXMonitorWindow(wxWindow *parent, const wxString& name, - Monitor& monitor_); - virtual ~WXMonitorWindow() override; + Monitor *monitor_); + ~WXMonitorWindow() override; protected: // モニタパネル @@ -60,14 +61,18 @@ class WXScrollMonitorWindow : public WXS using inherited = WXSubWindow; public: WXScrollMonitorWindow(wxWindow *parent, const wxString& name, - Monitor& monitor_); - virtual ~WXScrollMonitorWindow() override; + Monitor *monitor_); + ~WXScrollMonitorWindow() override; + void FontChanged() override; bool Layout() override; + protected: + // モニタパネル + WXMonitorPanel *monpanel {}; + private: - // サイズ変更イベント - void OnSize(wxSizeEvent& event); + bool GetMySizeHints(wxSize *, wxSize *, wxSize *, wxSize *) override; // マウスホイールイベント void OnMouseWheel(wxMouseEvent&); @@ -78,12 +83,6 @@ class WXScrollMonitorWindow : public WXS // スクロール処理 void DoScroll(int pos); - // モニタパネル - WXMonitorPanel *monpanel {}; - // スクロールバー WXScrollBar *vscroll {}; - - // イベントテーブル - wxDECLARE_EVENT_TABLE(); };