--- nono/wx/wxtextscreen.h 2026/04/29 17:04:53 1.1.1.5 +++ nono/wx/wxtextscreen.h 2026/04/29 17:04:56 1.1.1.6 @@ -7,7 +7,8 @@ #pragma once #include "wxtextpanel.h" -#include "wxbmp.h" +#include "wxbitmapbuf.h" +#include "monitor.h" // // テキストスクリーンを表示するパネル @@ -23,12 +24,11 @@ class WXTextScreen : public WXTextPanel using inherited = WXTextPanel; public: - WXTextScreen(wxWindow *parent, IMonitor& monitor); + WXTextScreen(wxWindow *parent, Monitor& monitor); virtual ~WXTextScreen() override; - // 必要なら画面を更新して再描画する。 - // TextScreen が前回描画時から更新されていたら、このパネルを再描画する。 - void RefreshIfUpdated(); + // 画面を更新して再描画する。 + void DoRefresh(); // フォントサイズ変更 void SetFontSize(FontId fontid) override; @@ -36,8 +36,9 @@ class WXTextScreen : public WXTextPanel // 更新頻度設定 void SetRate(int hz); - // サイズ (桁数×行数) を取得する - const wxSize GetSize() const { return wxSize(ts.GetCol(), ts.GetRow()); } + // 桁数、行数を取得する + int GetCol() const { return ts.GetCol(); } + int GetRow() const { return ts.GetRow(); } // TextScreen のユーザデータ取得、設定 uint64 GetUserData() const { return ts.userdata; } @@ -52,11 +53,11 @@ class WXTextScreen : public WXTextPanel void Draw(wxDC& dc); // コントロール全域のビットマップ - WXBitmap bitmap {}; + WXBitmapBuf bitmap {}; std::vector prevbuf {}; - IMonitor& monitor; + Monitor& monitor; TextScreen ts {}; wxTimer timer {};