--- nono/wx/wxheader.h 2026/04/29 17:04:28 1.1.1.1 +++ nono/wx/wxheader.h 2026/04/29 17:05:08 1.1.1.5 @@ -1,54 +1,37 @@ // // nono -// Copyright (C) 2018 isaki@NetBSD.org +// Copyright (C) 2020 nono project +// Licensed under nono-license.txt // -#pragma once +// +// wxWidgets のヘッダをよろしく読み込むためのヘッダ +// -#include "header.h" -#include "object.h" +#pragma once -#if defined(__clang__) // wx のシステムヘッダ内で警告出られてもどうしようもないのでワーニング抑制 -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wshadow" -#pragma clang diagnostic ignored "-Wpotentially-evaluated-expression" +#if defined(__clang__) +#define PRAGMA_PUSH_WARNINGS \ + _Pragma("clang diagnostic push") \ + _Pragma("clang diagnostic ignored \"-Weverything\"") +#define PRAGMA_POP_WARNINGS \ + _Pragma("clang diagnostic pop") +#else +#define PRAGMA_PUSH_WARNINGS \ + _Pragma("GCC diagnostic push") \ + _Pragma("GCC diagnostic ignored \"-Wcast-qual\"") \ + _Pragma("GCC diagnostic ignored \"-Wignored-qualifiers\"") +#define PRAGMA_POP_WARNINGS \ + _Pragma("GCC diagnostic pop") #endif + +PRAGMA_PUSH_WARNINGS + #include #ifndef WX_PRECOMP #include #endif -#if defined(__clang__) -// ワーニング抑制ここまで -#pragma clang diagnostic pop -#endif - -// 独自のイベントタイプ -DECLARE_EVENT_TYPE(WXW_EVT_CREATE, -1); -DECLARE_EVENT_TYPE(WXW_EVT_MONITOR_UPDATE, -2); - -// OnCreate イベントがあるかのように扱う -// イベント登録 -#define EVT_CREATE(func) EVT_COMMAND(wxID_ANY, WXW_EVT_CREATE, func) -// OnCreate イベントを使う場合コンストラクタでコールしておく -#define POST_CREATE() do { \ - wxCommandEvent *event = new wxCommandEvent(WXW_EVT_CREATE); \ - QueueEvent(event); \ -} while (0) - -// フォント種別というかフォントサイズ。 -// ここでのフォントは大きさだけにフォーカスを当てているので -// 6x12 と 6x10 のような微小な違いや、フェイスの違いは持ち込まない。 -enum fontsize_t { - FONT_6x12 = 0, - FONT_8x16, - FONT_12x24, - FONT_MAX, - FONT_NONE = -1, -}; - -class WXMainFrame; -class WXMainView; -class WXTextScreen; +PRAGMA_POP_WARNINGS