message.cpp

来自「SimpleGraphicOperatingSystem 32位图形化操作系统 」· C++ 代码 · 共 64 行

CPP
64
字号
#include <OsDef.h>
#include <System.h>
#include <Api.h>	//Sgos api

namespace System{
	int SendMessage( void* window, Message* msg, int flag )
	{
		return KSendMessage( window, msg, flag );
	}

	int GetMessage( Message* msg, int flag )
	{
		return KGetMessage( msg, 0, flag );
	}

	int GetMessage( Message* msg, int type, int flag )
	{
		return KGetMessage( msg, type, flag );
	}

	int PostQuitMessage( int message )
	{
		return 0;
	}

	int QuickMessage( void* window, int message, int p1, int p2 )
	{
		Message msg;
		msg.message = message;
		msg.param[0]=p1;
		msg.param[1]=p2;
		SendMessage( window, &msg, 0 );
		if( Window::GetWindowOwner( window )==KGetProcessID() )
		{
			Application::DoEvents();
		}
	}


	int DispatchMessage( Message* msg )
	{
		if( !msg )
			return false;
        if( msg->window ){
            BaseWindow *win = GetWindowClass( msg->window );
            if( win == (BaseWindow*)0 ){
                DPRINT("win==null");
                return false;
            }
            return win->OnMessage( msg );
        }else{
            switch( msg->message )
            {
                case WM_TIMER:
                    Timer::Switch( msg->param[0] );
                return true;
            }
            return false;
        }
	}
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?