// Copyright 2013 Dolphin Emulator Project // Licensed under GPLv2 // Refer to the license.txt file included. #pragma once #include #include #include #include #include #include #include "Common/CommonTypes.h" class wxWindow; class CWatchTable : public wxGridTableBase { enum { NUM_SPECIALS = 1, MAX_SPECIALS = 256, }; public: CWatchTable() { } int GetNumberCols() override { return 5; } int GetNumberRows() override { return MAX_SPECIALS; } wxString GetValue(int row, int col) override; void SetValue(int row, int col, const wxString &) override; wxGridCellAttr *GetAttr(int, int, wxGridCellAttr::wxAttrKind) override; void UpdateWatch(); private: std::array m_CachedWatch; std::array m_CachedWatchHasChanged; DECLARE_NO_COPY_CLASS(CWatchTable); }; class CWatchView : public wxGrid { public: CWatchView(wxWindow* parent, wxWindowID id); void Update() override; };