--- nono/wx/wxmonitor.h 2026/04/29 17:05:27 1.1.1.9 +++ 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_); + 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,7 +47,7 @@ class WXMonitorWindow : public WXSubWind using inherited = WXSubWindow; public: WXMonitorWindow(wxWindow *parent, const wxString& name, - Monitor& monitor_); + 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_); + 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(); };