Annotation of nono/wx/wxbitmappanel.h, revision 1.1.1.3

1.1       root        1: //
                      2: // nono
                      3: // Copyright (C) 2021 nono project
                      4: // Licensed under nono-license.txt
                      5: //
                      6: 
                      7: //
1.1.1.3 ! root        8: // バックバッファが BitmapRGBX なパネル
1.1       root        9: //
                     10: 
                     11: #pragma once
                     12: 
                     13: #include "wxnono.h"
                     14: #include "bitmap.h"
                     15: 
                     16: class WXBitmapPanel : public wxPanel
                     17: {
                     18:        using inherited = wxPanel;
                     19:  public:
                     20:        WXBitmapPanel(wxWindow *parent,
1.1.1.2   root       21:                const wxPoint& position = wxDefaultPosition,
                     22:                const wxSize& size = wxDefaultSize,
                     23:                long style = wxTAB_TRAVERSAL);
1.1       root       24:        WXBitmapPanel(wxWindow *parent, wxWindowID id,
1.1.1.2   root       25:                const wxPoint& position = wxDefaultPosition,
                     26:                const wxSize& size = wxDefaultSize,
                     27:                long style = wxTAB_TRAVERSAL);
1.1       root       28:        virtual ~WXBitmapPanel() override;
                     29: 
1.1.1.2   root       30:        // 背景色を設定する
1.1       root       31:        void SetBitmapBGColor(Color c);
                     32: 
1.1.1.2   root       33:        // 背景色で塗りつぶす
                     34:        void Fill();
                     35: 
                     36:        // サイズ固定。
                     37:        // Bitmap クラスは範囲外への描画を自動クリップする機能を持っていないため、
                     38:        // ソフトウェアキーボードウィンドウが実画面サイズを超えるようなケースで
                     39:        // あっても、バックバッファは表示ウィンドウサイズと同じにするのではなく
                     40:        // 常に指定の大きさで存在していてほしい。という時に指定する。
                     41:        // バックバッファより小さいウィンドウへの描画は問題なく行えるっぽい?。
                     42:        // 一方、自前スクロールバーのように、制約なく指定サイズを受け入れる場合は
                     43:        // (0, 0) を指定する (デフォルト)。
                     44:        void SetFixedSize(const wxSize& size);
                     45: 
1.1       root       46:  protected:
                     47:        void OnSize(wxSizeEvent&);
                     48:        void OnPaint(wxPaintEvent&);
                     49: 
                     50:        virtual void Draw();
                     51: 
1.1.1.3 ! root       52:        BitmapRGBX bitmap {};
1.1       root       53: 
1.1.1.2   root       54:        // 固定サイズ指定
                     55:        wxSize fixedsize {};
                     56: 
1.1       root       57:  private:
1.1.1.3 ! root       58:        BitmapRGB bitmap24 {};
        !            59: 
1.1       root       60:        Color bitmap_bgcolor;
                     61: 
                     62:        wxDECLARE_EVENT_TABLE();
                     63: };

unix.superglobalmegacorp.com

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