例によって適当
例によって適当
#define WM_NCLBUTTONDOWN 0x00A1#define WM_NCLBUTTONUP 0x00A2#define WM_MOVING 0x0216#define WM_EXITSIZEMOVE 0x0232#define WM_SYSKEYDOWN 0x104#define WM_SYSKEYUP 0x105#define WM_NCACTIVATE 0x0086#define WM_INITMENU 0x0116#define WM_EXITMENULOOP 0x0212#define WM_NCMOUSELEAVE 0x02A2#define WM_NCMOUSEMOVE 0x00A0#define WM_NCRBUTTONDOWN 0x00A4#define WM_INITMENUPOPUP 0x0117#define MF_SYSMENU 0x00002000#define ctype HIWORD(%1) (%1 >> 16 & $FFFF)oncmd gosub *onNCLBUTTONDOWN, WM_NCLBUTTONDOWNoncmd gosub *onNCRBUTTONDOWN, WM_NCRBUTTONDOWNoncmd gosub *onMOVING, WM_MOVINGoncmd gosub *onNCMOUSELEAVE, WM_NCMOUSELEAVEoncmd gosub *onNCMOUSEMOVE, WM_NCMOUSEMOVEoncmd gosub *onINITMENU, WM_INITMENUoncmd gosub *onINITMENUPOPUP, WM_INITMENUPOPUPoncmd gosub *onEXITMENULOOP, WM_EXITMENULOOPs = "通常", "ポーズ中(マウスによる)", "ポーズ中(メニューによる)"repeatpos 0, 0 : color 255, 255, 255 : boxf : colormes cntgosub *updatewait 12loopstop*updatetitle s(pause)return// メニューが表示されたときに飛んでくる*onINITMENUpause = 2gosub *updatereturn// ポップアップメニューが表示されたときに飛んでくる*onINITMENUPOPUP// システムメニューかどうか?if HIWORD(wparam) && MF_SYSMENU{pause = 2gosub *update}return// メニューが閉じられた時に飛んでくる*onEXITMENULOOPpause = 0gosub *updatereturn// 非クライアント領域(タイトルバー)が左クリックで押されたとき*onNCLBUTTONDOWNif pause != 2{pause = 1gosub *update}return// 非クライアント領域(タイトルバー)が右クリックで押されたとき*onNCRBUTTONDOWNif pause != 2{pause = 1gosub *update}return// ウィンドウが移動中の時(WM_MOVEだと移動中は飛んでこない?)*onMOVINGif pause != 2{pause = 1gosub *update}return// 非クライアント領域(タイトルバー)のクリックが離されたとき*onNCMOUSELEAVEif pause != 2{pause = 0gosub *update}return// 非クライアント領域(タイトルバー)上でマウスが移動したとき*onNCMOUSEMOVEif pause != 2{pause = 0gosub *update}return