Back to index

plt-scheme  4.2.1
Typedefs | Functions
mrdispatch.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


typedef int(* wxDispatch_Check_Fun )(void *)
typedef void(* wxDispatch_Needs_Wakeup_Fun )(void *, void *)


void wxDispatchEventsUntil (wxDispatch_Check_Fun f, void *data)
Scheme_ObjectwxDispatchEventsUntilWaitable (wxDispatch_Check_Fun f, void *data, Scheme_Object *w)

Typedef Documentation

typedef int(* wxDispatch_Check_Fun)(void *)

Definition at line 5 of file mrdispatch.h.

Definition at line 6 of file mrdispatch.h.

Function Documentation

Definition at line 1699 of file mred.cxx.

Definition at line 1664 of file mred.cxx.

  MrEdContext *c;
  Scheme_Object *result = scheme_void;
  Scheme_Thread *thread;

  c = MrEdGetContext();
#ifdef wx_mac

  thread = scheme_get_current_thread();
  if (c->ready_to_go
      || (c->handler_running != thread)) {
    /* This is not the handler thread or an event still hasn't been
       dispatched. Wait. */
    if (w) {
      Scheme_Object *a[1];
      a[0] = w;
      result = scheme_sync(1, a);
    } else {
      scheme_block_until((Scheme_Ready_Fun)f, NULL, (Scheme_Object *)data, 0.0);
  } else {
    /* This is the main thread. Handle events */
    do {
      result = MrEdDoNextEvent(c, f, data, w);
      if (result)
    } while (1);

  return result;

Here is the call graph for this function:

Here is the caller graph for this function: