Annotation of nono/wx/wxlcdwindow.h, revision 1.1.1.10

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2020 nono project
                      4: // Licensed under nono-license.txt
                      5: //
                      6: 
                      7: //
1.1.1.8   root        8: // LUNA LCD パネル、モニタ
1.1       root        9: //
                     10: 
                     11: #pragma once
                     12: 
                     13: #include "wxsubwindow.h"
1.1.1.6   root       14: #include "wxbitmappanel.h"
1.1.1.7   root       15: #include "wxmonitor.h"
1.1       root       16: 
1.1.1.8   root       17: class LCDDevice;
                     18: 
                     19: // LUNA 前面 LCD パネル
                     20: class WXLCDPanel : public WXTextPanel
1.1       root       21: {
1.1.1.8   root       22:        using inherited = WXTextPanel;
1.1       root       23:  public:
1.1.1.9   root       24:        explicit WXLCDPanel(wxWindow *parent);
                     25:        ~WXLCDPanel() override;
1.1       root       26: 
1.1.1.8   root       27:        void FontChanged() override;
                     28: 
1.1       root       29:  private:
1.1.1.5   root       30:        void OnLCDChanged(wxCommandEvent& event);
1.1.1.6   root       31:        void Draw() override;
                     32:        void DrawChar(int x, int y, uint8 ch);
1.1       root       33: 
                     34:        const uint8 *ddram {};
1.1.1.8   root       35: 
                     36:        int unit {};
                     37:        int u_width {};
                     38:        int u_height {};
                     39: 
                     40:        LCDDevice *lcd {};
1.1       root       41: };
                     42: 
1.1.1.8   root       43: // LUNA 前面 LCD ウィンドウ
1.1       root       44: class WXLCDWindow : public WXSubWindow
                     45: {
                     46:        using inherited = WXSubWindow;
                     47:  public:
1.1.1.9   root       48:        explicit WXLCDWindow(wxWindow *parent);
                     49:        ~WXLCDWindow() override;
1.1       root       50: };
                     51: 
1.1.1.8   root       52: // モニタの LCD キャラクタ部パネル
                     53: class WXLCDCharPanel : public WXTextPanel
1.1       root       54: {
1.1.1.8   root       55:        using inherited = WXTextPanel;
1.1       root       56:  public:
1.1.1.9   root       57:        explicit WXLCDCharPanel(wxWindow *parent);
                     58:        ~WXLCDCharPanel() override;
1.1       root       59: 
1.1.1.8   root       60:        void FontChanged() override;
                     61: 
1.1       root       62:  private:
1.1.1.6   root       63:        void Draw() override;
1.1.1.8   root       64: 
                     65:        int unit {};
                     66:        int u_width {};
                     67:        int u_height {};
                     68: 
                     69:        LCDDevice *lcd {};
1.1       root       70: };
                     71: 
1.1.1.8   root       72: // LCD モニタウィンドウ
1.1       root       73: class WXLCDMonitor : public WXSubWindow
                     74: {
                     75:        using inherited = WXSubWindow;
                     76:  public:
1.1.1.9   root       77:        explicit WXLCDMonitor(wxWindow *parent);
                     78:        ~WXLCDMonitor() override;
1.1       root       79: 
1.1.1.10! root       80:        void FontChanged() override;
        !            81:        bool Layout() override;
        !            82: 
1.1       root       83:  private:
1.1.1.7   root       84:        WXMonitorPanel *monpanel {};
1.1       root       85:        WXLCDCharPanel *chrpanel {};
1.1.1.10! root       86:        WXBitmapPanel *space {};
1.1       root       87: };

unix.superglobalmegacorp.com

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