System.Windows.Forms.XplatUICarbon.WaitForHwndMessage C# (CSharp) Method

WaitForHwndMessage() private method

private WaitForHwndMessage ( System.Windows.Forms.Hwnd hwnd, System.Windows.Forms.Msg message ) : void
hwnd System.Windows.Forms.Hwnd
message System.Windows.Forms.Msg
return void
		private void WaitForHwndMessage (Hwnd hwnd, Msg message) {
			MSG msg = new MSG ();

			bool done = false;
			do {
				if (GetMessage(null, ref msg, IntPtr.Zero, 0, 0)) {
					if ((Msg)msg.message == Msg.WM_QUIT) {
						PostQuitMessage (0);
						done = true;
					}
					else {
						if (msg.hwnd == hwnd.Handle) {
							if ((Msg)msg.message == message)
								break;
							else if ((Msg)msg.message == Msg.WM_DESTROY)
								done = true;
						}

						TranslateMessage (ref msg);
						DispatchMessage (ref msg);
					}
				}
			} while (!done);
		}
XplatUICarbon