internal override void SetTimer(Timer timer) { X11ThreadQueue queue = (X11ThreadQueue)MessageQueues [timer.thread]; if (queue == null) { // This isn't really an error, MS doesn't start the timer if // it has no assosciated queue return; } queue.SetTimer(timer); }
internal X11ThreadQueue ThreadQueue(Thread thread) { X11ThreadQueue queue; queue = (X11ThreadQueue)MessageQueues[thread]; if (queue == null) { queue = new X11ThreadQueue(thread); MessageQueues[thread] = queue; } return(queue); }
public void DoEvents (X11ThreadQueue queue) { MSG msg = new MSG (); if (OverrideCursorHandle != IntPtr.Zero) OverrideCursorHandle = IntPtr.Zero; queue.DispatchIdle = false; while (PeekMessage(queue, ref msg, IntPtr.Zero, 0, 0, (uint)PeekMessageFlags.PM_REMOVE)) { TranslateMessage (ref msg); DispatchMessage (ref msg); } queue.DispatchIdle = true; }
internal override void DoEvents() { X11ThreadQueue queue = ThreadQueue(Thread.CurrentThread); display.DoEvents(queue); }
internal override void RaiseIdle(EventArgs e) { X11ThreadQueue queue = ThreadQueue(Thread.CurrentThread); queue.OnIdle(e); }
internal X11ThreadQueue ThreadQueue (Thread thread) { X11ThreadQueue queue; queue = (X11ThreadQueue)MessageQueues[thread]; if (queue == null) { queue = new X11ThreadQueue(thread); MessageQueues[thread] = queue; } return queue; }