Annotation of nono/wx/wxtvrammonitor.h, revision 1.1

1.1     ! root        1: //
        !             2: // nono
        !             3: // Copyright (C) 2020 nono project
        !             4: // Licensed under nono-license.txt
        !             5: //
        !             6: 
        !             7: //
        !             8: // TVRAM モニタ (LUNA ではビットマップモニタ)
        !             9: //
        !            10: 
        !            11: #pragma once
        !            12: 
        !            13: #include "wxscreenmonitor.h"
        !            14: #include <array>
        !            15: 
        !            16: class BT45xDevice;
        !            17: class PlaneVRAMDevice;
        !            18: class VideoCtlrDevice;
        !            19: 
        !            20: // テキスト画面パネル
        !            21: class WXTVRAMPanel : public WXScreenPanel
        !            22: {
        !            23:        using inherited = WXScreenPanel;
        !            24: 
        !            25:  public:
        !            26:        explicit WXTVRAMPanel(wxWindow *parent);
        !            27:        ~WXTVRAMPanel() override;
        !            28: 
        !            29:        void EnablePlane(int plane, bool value);
        !            30:        void EnablePalette(bool value);
        !            31: 
        !            32:  private:
        !            33:        void Draw() override;
        !            34: 
        !            35:        void OnPaletteChanged(wxCommandEvent& event);
        !            36:        void GenPalette();
        !            37: 
        !            38:        std::array<Color, 256> pal {};
        !            39:        uint32 planemask {};
        !            40:        bool apply_palette {};
        !            41: 
        !            42:        BT45xDevice *bt45x {};
        !            43:        PlaneVRAMDevice *planevram {};
        !            44:        VideoCtlrDevice *videoctlr {};
        !            45: };
        !            46: 
        !            47: // テキスト画面ウィンドウ
        !            48: class WXTVRAMWindow : public WXScreenWindow
        !            49: {
        !            50:        using inherited = WXScreenWindow;
        !            51: 
        !            52:  public:
        !            53:        WXTVRAMWindow(wxWindow *parent, const wxString& name);
        !            54:        ~WXTVRAMWindow() override;
        !            55: 
        !            56:  private:
        !            57:        void UpdateInfo(TextScreen&, int px, int py) override;
        !            58: 
        !            59:        void OnPlane(wxCommandEvent&);
        !            60:        void DoPlane(int plane, bool value);
        !            61:        void OnApplyPalette(wxCommandEvent&);
        !            62:        void DoApplyPalette(bool value);
        !            63: 
        !            64:        PlaneVRAMDevice *planevram {};
        !            65: 
        !            66:        // イベントテーブル
        !            67:        wxDECLARE_EVENT_TABLE();
        !            68: };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.