Back to index

plt-scheme  4.2.1
Classes | Defines | Functions | Variables
wxs_menu.cxx File Reference
#include "wx_menu.h"
#include "wxscheme.h"
#include "wxs_menu.h"

Go to the source code of this file.

Classes

class  os_wxMenu
class  os_wxMenuBar
class  wxsMenuItem
class  os_wxsMenuItem

Defines

#define BM_IN_USE(map)   ((map)->selectedIntoDC)
#define ESCAPE_NO_RET_VAL   /*empty*/
#define MAC_UNUSED(x)   x
#define WINMAC_UNUSED(x)
#define CB_FUNCTYPE   wxFunction
#define CALLBACKCLASS   os_wxMenu
#define CB_REALCLASS   wxMenu
#define CB_UNBUNDLE   objscheme_unbundle_wxMenu
#define CB_USER   METHODNAME("menu%","initialization")
#define CB_TOSCHEME   wxMenuCallbackToScheme
#define CB_TOC   wxMenuCallbackToC

Functions

static void menuSelect (wxMenu *MAC_UNUSED(m), wxMenuBar *WINMAC_UNUSED(mb))
wxCommandEventobjscheme_unbundle_wxCommandEvent (Scheme_Object *, const char *, int)
Scheme_Objectobjscheme_bundle_wxCommandEvent (wxCommandEvent *)
static void CB_TOSCHEME (CB_REALCLASS *obj, wxCommandEvent *event)
os_wxMenu::os_wxMenu CONSTRUCTOR_ARGS ((nstring x0, wxFunction x1, class wxFont *x2))
static Scheme_Objectos_wxMenumenuSelect (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuGetFont (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuSetWidth (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuSetTitle (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuSetLabel (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuSetHelpString (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuNumber (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuEnable (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuCheck (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuChecked (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuAppendSeparator (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuDeleteByPosition (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuDelete (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuAppend (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenu_ConstructScheme (int n, Scheme_Object *p[])
void objscheme_setup_wxMenu (Scheme_Env *env)
int objscheme_istype_wxMenu (Scheme_Object *obj, const char *stop, int nullOK)
Scheme_Objectobjscheme_bundle_wxMenu (class wxMenu *realobj)
class wxMenuobjscheme_unbundle_wxMenu (Scheme_Object *obj, const char *where, int nullOK)
os_wxMenuBar::os_wxMenuBar CONSTRUCTOR_ARGS (())
static Scheme_Objectos_wxMenuBarSetLabelTop (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuBarNumber (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuBarEnableTop (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuBarDelete (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuBarAppend (int n, Scheme_Object *p[])
static Scheme_Objectos_wxMenuBar_ConstructScheme (int n, Scheme_Object *p[])
void objscheme_setup_wxMenuBar (Scheme_Env *env)
int objscheme_istype_wxMenuBar (Scheme_Object *obj, const char *stop, int nullOK)
Scheme_Objectobjscheme_bundle_wxMenuBar (class wxMenuBar *realobj)
class wxMenuBarobjscheme_unbundle_wxMenuBar (Scheme_Object *obj, const char *where, int nullOK)
wxsMenuItemwxsIdToMenuItem (ExactLong id)
static Scheme_Objectos_wxsMenuItemId (int n, Scheme_Object *p[])
static Scheme_Objectos_wxsMenuItem_ConstructScheme (int n, Scheme_Object *p[])
void objscheme_setup_wxsMenuItem (Scheme_Env *env)
int objscheme_istype_wxsMenuItem (Scheme_Object *obj, const char *stop, int nullOK)
Scheme_Objectobjscheme_bundle_wxsMenuItem (class wxsMenuItem *realobj)
class wxsMenuItemobjscheme_unbundle_wxsMenuItem (Scheme_Object *obj, const char *where, int nullOK)
static Scheme_ObjectwxsMenuItemGlobalwxsIdToMenuItem (int n, Scheme_Object *p[])
void objscheme_setup_wxsMenuItemGlobal (Scheme_Env *env)

Variables

static Scheme_Objectos_wxMenu_class
static Scheme_Objectos_wxMenuBar_class
static Scheme_Objectos_wxsMenuItem_class

Define Documentation

#define BM_IN_USE (   map)    ((map)->selectedIntoDC)

Definition at line 30 of file wxs_menu.cxx.

#define CALLBACKCLASS   os_wxMenu

Definition at line 74 of file wxs_menu.cxx.

#define CB_FUNCTYPE   wxFunction

Definition at line 66 of file wxs_menu.cxx.

#define CB_REALCLASS   wxMenu

Definition at line 75 of file wxs_menu.cxx.

#define CB_TOC   wxMenuCallbackToC

Definition at line 82 of file wxs_menu.cxx.

#define CB_TOSCHEME   wxMenuCallbackToScheme

Definition at line 81 of file wxs_menu.cxx.

Definition at line 76 of file wxs_menu.cxx.

#define CB_USER   METHODNAME("menu%","initialization")

Definition at line 77 of file wxs_menu.cxx.

#define ESCAPE_NO_RET_VAL   /*empty*/

Definition at line 35 of file wxs_menu.cxx.

#define MAC_UNUSED (   x)    x

Definition at line 41 of file wxs_menu.cxx.

#define WINMAC_UNUSED (   x)

Definition at line 46 of file wxs_menu.cxx.


Function Documentation

static void CB_TOSCHEME ( CB_REALCLASS obj,
wxCommandEvent event 
) [static]

Definition at line 643 of file wxs_menu.cxx.

{
  Scheme_Object *p[2];
  Scheme_Class_Object *obj;
  mz_jmp_buf savebuf;
  Scheme_Thread *thread;
  SETUP_VAR_STACK(4);
  VAR_STACK_PUSH(0, obj);
  VAR_STACK_PUSH(1, event);
  VAR_STACK_PUSH(2, p[0]);
  VAR_STACK_PUSH(3, p[1]);

  p[0] = NULL;
  p[1] = NULL;

  obj = (Scheme_Class_Object *)realobj->__gc_external;

  if (!obj) {
    // scheme_signal_error("bad callback object");
    return;
  }

  p[0] = (Scheme_Object *)obj;
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxCommandEvent(event));

  thread = scheme_get_current_thread();
  COPY_JMPBUF(savebuf, *(thread->error_buf));

  if (!scheme_setjmp(*(thread->error_buf)))
    WITH_VAR_STACK(scheme_apply_multi(((CALLBACKCLASS *)obj->primdata)->callback_closure, 2, p));

  thread = scheme_get_current_thread();
  COPY_JMPBUF(*(thread->error_buf), savebuf);

  READY_TO_RETURN;
}

Here is the call graph for this function:

os_wxMenu::os_wxMenu CONSTRUCTOR_ARGS ( (nstring x0, wxFunction x1, class wxFont *x2)  )

Definition at line 128 of file wxs_menu.cxx.

                 : wxMenu(x0, x1, x2))
{
}
os_wxMenuBar::os_wxMenuBar CONSTRUCTOR_ARGS ( ()  )

Definition at line 709 of file wxs_menu.cxx.

                 : wxMenuBar())
{
}
static void menuSelect ( wxMenu MAC_UNUSEDm,
wxMenuBar WINMAC_UNUSEDmb 
) [static]

Definition at line 49 of file wxs_menu.cxx.

{
#ifdef wx_msw
  m->SelectMenu();
#endif
#ifdef wx_xt
  mb->SelectAMenu(m);
#endif
}

Here is the caller graph for this function:

Definition at line 513 of file wxs_evnt.cxx.

{
  Scheme_Class_Object *obj INIT_NULLED_OUT;
  Scheme_Object *sobj INIT_NULLED_OUT;

  if (!realobj) return XC_SCHEME_NULL;

  if (realobj->__gc_external)
    return (Scheme_Object *)realobj->__gc_external;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, obj);
  VAR_STACK_PUSH(1, realobj);

  if ((sobj = WITH_VAR_STACK(objscheme_bundle_by_type(realobj, realobj->__type))))
    { READY_TO_RETURN; return sobj; }
  obj = (Scheme_Class_Object *)WITH_VAR_STACK(scheme_make_uninited_object(os_wxCommandEvent_class));

  obj->primdata = realobj;
  obj->primflag = 0;

  realobj->__gc_external = (void *)obj;
  READY_TO_RETURN;
  return (Scheme_Object *)obj;
}

Definition at line 599 of file wxs_menu.cxx.

{
  Scheme_Class_Object *obj INIT_NULLED_OUT;
  Scheme_Object *sobj INIT_NULLED_OUT;

  if (!realobj) return XC_SCHEME_NULL;

  if (realobj->__gc_external)
    return (Scheme_Object *)realobj->__gc_external;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, obj);
  VAR_STACK_PUSH(1, realobj);

  if ((sobj = WITH_VAR_STACK(objscheme_bundle_by_type(realobj, realobj->__type))))
    { READY_TO_RETURN; return sobj; }
  obj = (Scheme_Class_Object *)WITH_VAR_STACK(scheme_make_uninited_object(os_wxMenu_class));

  obj->primdata = realobj;
  WITH_VAR_STACK(objscheme_register_primpointer(obj, &obj->primdata));
  obj->primflag = 0;

  realobj->__gc_external = (void *)obj;
  READY_TO_RETURN;
  return (Scheme_Object *)obj;
}

Here is the call graph for this function:

Definition at line 910 of file wxs_menu.cxx.

{
  Scheme_Class_Object *obj INIT_NULLED_OUT;
  Scheme_Object *sobj INIT_NULLED_OUT;

  if (!realobj) return XC_SCHEME_NULL;

  if (realobj->__gc_external)
    return (Scheme_Object *)realobj->__gc_external;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, obj);
  VAR_STACK_PUSH(1, realobj);

  if ((sobj = WITH_VAR_STACK(objscheme_bundle_by_type(realobj, realobj->__type))))
    { READY_TO_RETURN; return sobj; }
  obj = (Scheme_Class_Object *)WITH_VAR_STACK(scheme_make_uninited_object(os_wxMenuBar_class));

  obj->primdata = realobj;
  WITH_VAR_STACK(objscheme_register_primpointer(obj, &obj->primdata));
  obj->primflag = 0;

  realobj->__gc_external = (void *)obj;
  READY_TO_RETURN;
  return (Scheme_Object *)obj;
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1128 of file wxs_menu.cxx.

{
  Scheme_Class_Object *obj INIT_NULLED_OUT;
  Scheme_Object *sobj INIT_NULLED_OUT;

  if (!realobj) return XC_SCHEME_NULL;

  if (realobj->__gc_external)
    return (Scheme_Object *)realobj->__gc_external;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, obj);
  VAR_STACK_PUSH(1, realobj);

  if ((sobj = WITH_VAR_STACK(objscheme_bundle_by_type(realobj, realobj->__type))))
    { READY_TO_RETURN; return sobj; }
  obj = (Scheme_Class_Object *)WITH_VAR_STACK(scheme_make_uninited_object(os_wxsMenuItem_class));

  obj->primdata = realobj;
  WITH_VAR_STACK(objscheme_register_primpointer(obj, &obj->primdata));
  obj->primflag = 0;

  realobj->__gc_external = (void *)obj;
  READY_TO_RETURN;
  return (Scheme_Object *)obj;
}

Here is the call graph for this function:

Here is the caller graph for this function:

int objscheme_istype_wxMenu ( Scheme_Object obj,
const char *  stop,
int  nullOK 
)

Definition at line 585 of file wxs_menu.cxx.

{
  REMEMBER_VAR_STACK();
  if (nullOK && XC_SCHEME_NULLP(obj)) return 1;
  if (objscheme_is_a(obj,  os_wxMenu_class))
    return 1;
  else {
    if (!stop)
       return 0;
    WITH_REMEMBERED_STACK(scheme_wrong_type(stop, nullOK ? "menu% object or " XC_NULL_STR: "menu% object", -1, 0, &obj));
    return 0;
  }
}

Here is the call graph for this function:

Here is the caller graph for this function:

int objscheme_istype_wxMenuBar ( Scheme_Object obj,
const char *  stop,
int  nullOK 
)

Definition at line 896 of file wxs_menu.cxx.

{
  REMEMBER_VAR_STACK();
  if (nullOK && XC_SCHEME_NULLP(obj)) return 1;
  if (objscheme_is_a(obj,  os_wxMenuBar_class))
    return 1;
  else {
    if (!stop)
       return 0;
    WITH_REMEMBERED_STACK(scheme_wrong_type(stop, nullOK ? "menu-bar% object or " XC_NULL_STR: "menu-bar% object", -1, 0, &obj));
    return 0;
  }
}

Here is the call graph for this function:

Here is the caller graph for this function:

int objscheme_istype_wxsMenuItem ( Scheme_Object obj,
const char *  stop,
int  nullOK 
)

Definition at line 1114 of file wxs_menu.cxx.

{
  REMEMBER_VAR_STACK();
  if (nullOK && XC_SCHEME_NULLP(obj)) return 1;
  if (objscheme_is_a(obj,  os_wxsMenuItem_class))
    return 1;
  else {
    if (!stop)
       return 0;
    WITH_REMEMBERED_STACK(scheme_wrong_type(stop, nullOK ? "menu-item% object or " XC_NULL_STR: "menu-item% object", -1, 0, &obj));
    return 0;
  }
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 554 of file wxs_menu.cxx.

{
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, env);

  wxREGGLOB(os_wxMenu_class);

  os_wxMenu_class = WITH_VAR_STACK(objscheme_def_prim_class(env, "menu%", "object%", (Scheme_Method_Prim *)os_wxMenu_ConstructScheme, 14));

  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "select" " method", (Scheme_Method_Prim *)os_wxMenumenuSelect, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "get-font" " method", (Scheme_Method_Prim *)os_wxMenuGetFont, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "set-width" " method", (Scheme_Method_Prim *)os_wxMenuSetWidth, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "set-title" " method", (Scheme_Method_Prim *)os_wxMenuSetTitle, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "set-label" " method", (Scheme_Method_Prim *)os_wxMenuSetLabel, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "set-help-string" " method", (Scheme_Method_Prim *)os_wxMenuSetHelpString, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "number" " method", (Scheme_Method_Prim *)os_wxMenuNumber, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "enable" " method", (Scheme_Method_Prim *)os_wxMenuEnable, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "check" " method", (Scheme_Method_Prim *)os_wxMenuCheck, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "checked?" " method", (Scheme_Method_Prim *)os_wxMenuChecked, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "append-separator" " method", (Scheme_Method_Prim *)os_wxMenuAppendSeparator, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "delete-by-position" " method", (Scheme_Method_Prim *)os_wxMenuDeleteByPosition, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "delete" " method", (Scheme_Method_Prim *)os_wxMenuDelete, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMenu_class, "append" " method", (Scheme_Method_Prim *)os_wxMenuAppend, 2, 4));


  WITH_VAR_STACK(scheme_made_class(os_wxMenu_class));


  READY_TO_RETURN;
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1096 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 1196 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 539 of file wxs_evnt.cxx.

class wxMenu * objscheme_unbundle_wxMenu ( Scheme_Object obj,
const char *  where,
int  nullOK 
)

Definition at line 626 of file wxs_menu.cxx.

{
  if (nullOK && XC_SCHEME_NULLP(obj)) return NULL;

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxMenu(obj, where, nullOK);
  Scheme_Class_Object *o = (Scheme_Class_Object *)obj;
  WITH_REMEMBERED_STACK(objscheme_check_valid(NULL, NULL, 0, &obj));
  if (o->primflag)
    return (os_wxMenu *)o->primdata;
  else
    return (wxMenu *)o->primdata;
}

Here is the call graph for this function:

Here is the caller graph for this function:

class wxMenuBar* objscheme_unbundle_wxMenuBar ( Scheme_Object obj,
const char *  where,
int  nullOK 
)

Definition at line 937 of file wxs_menu.cxx.

{
  if (nullOK && XC_SCHEME_NULLP(obj)) return NULL;

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxMenuBar(obj, where, nullOK);
  Scheme_Class_Object *o = (Scheme_Class_Object *)obj;
  WITH_REMEMBERED_STACK(objscheme_check_valid(NULL, NULL, 0, &obj));
  if (o->primflag)
    return (os_wxMenuBar *)o->primdata;
  else
    return (wxMenuBar *)o->primdata;
}

Here is the call graph for this function:

Here is the caller graph for this function:

class wxsMenuItem* objscheme_unbundle_wxsMenuItem ( Scheme_Object obj,
const char *  where,
int  nullOK 
)

Definition at line 1155 of file wxs_menu.cxx.

{
  if (nullOK && XC_SCHEME_NULLP(obj)) return NULL;

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxsMenuItem(obj, where, nullOK);
  Scheme_Class_Object *o = (Scheme_Class_Object *)obj;
  WITH_REMEMBERED_STACK(objscheme_check_valid(NULL, NULL, 0, &obj));
  if (o->primflag)
    return (os_wxsMenuItem *)o->primdata;
  else
    return (wxsMenuItem *)o->primdata;
}

Here is the call graph for this function:

static Scheme_Object* os_wxMenu_ConstructScheme ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 507 of file wxs_menu.cxx.

{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  os_wxMenu *realobj INIT_NULLED_OUT;
  REMEMBER_VAR_STACK();
  nstring x0 INIT_NULLED_OUT;
  wxFunction x1;
  class wxFont* x2 INIT_NULLED_OUT;

  SETUP_VAR_STACK_PRE_REMEMBERED(4);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, realobj);
  VAR_STACK_PUSH(2, x0);
  VAR_STACK_PUSH(3, x2);

  int cb_pos = 0;
  if ((n > (POFFSET+3))) 
    WITH_VAR_STACK(scheme_wrong_count_m("initialization in menu%", POFFSET+POFFSET, POFFSET+3, n, p, 1));
  if (n > (POFFSET+0)) {
    x0 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[POFFSET+0], "initialization in menu%"));
  } else
    x0 = NULL;
  if (n > (POFFSET+1)) {
    x1 = (SCHEME_NULLP(p[POFFSET+1]) ? NULL : (WITH_REMEMBERED_STACK(objscheme_istype_proc2(p[POFFSET+1], CB_USER)), cb_pos = 1, (CB_FUNCTYPE)CB_TOSCHEME));
  } else
    x1 = NULL;
  if (n > (POFFSET+2)) {
    x2 = WITH_VAR_STACK(objscheme_unbundle_wxFont(p[POFFSET+2], "initialization in menu%", 1));
  } else
    x2 = NULL;

  
  realobj = WITH_VAR_STACK(new os_wxMenu CONSTRUCTOR_ARGS((x0, x1, x2)));
#ifdef MZ_PRECISE_GC
  WITH_VAR_STACK(realobj->gcInit_wxMenu(x0, x1, x2));
#endif
  realobj->__gc_external = (void *)p[0];
  
  realobj->callback_closure = p[POFFSET+cb_pos];
  READY_TO_RETURN;
  ((Scheme_Class_Object *)p[0])->primdata = realobj;
  ((Scheme_Class_Object *)p[0])->primflag = 1;
  WITH_REMEMBERED_STACK(objscheme_register_primpointer(p[0], &((Scheme_Class_Object *)p[0])->primdata));
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuAppend ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 435 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxMenu_class, "append in menu%", n, p);
  if ((n >= (POFFSET+3)) && WITH_REMEMBERED_STACK(objscheme_istype_ExactLong(p[POFFSET+0], NULL)) && WITH_REMEMBERED_STACK(objscheme_istype_string(p[POFFSET+1], NULL)) && WITH_REMEMBERED_STACK(objscheme_istype_wxMenu(p[POFFSET+2], NULL, 0))) {
    ExactLong x0;
    string x1 INIT_NULLED_OUT;
    class wxMenu* x2 INIT_NULLED_OUT;
    nstring x3 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(4);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, x1);
    VAR_STACK_PUSH(2, x2);
    VAR_STACK_PUSH(3, x3);

    
    if ((n < (POFFSET+3)) || (n > (POFFSET+4))) 
      WITH_VAR_STACK(scheme_wrong_count_m("append in menu% (submenu case)", POFFSET+3, POFFSET+4, n, p, 1));
    x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[POFFSET+0], "append in menu% (submenu case)"));
    x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+1], "append in menu% (submenu case)"));
    x2 = WITH_VAR_STACK(objscheme_unbundle_wxMenu(p[POFFSET+2], "append in menu% (submenu case)", 0));
    if (n > (POFFSET+3)) {
      x3 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[POFFSET+3], "append in menu% (submenu case)"));
    } else
      x3 = NULL;

    
    WITH_VAR_STACK(((wxMenu *)((Scheme_Class_Object *)p[0])->primdata)->Append(x0, x1, x2, x3));

    
    
    READY_TO_PRE_RETURN;
  } else  {
    ExactLong x0;
    string x1 INIT_NULLED_OUT;
    nstring x2 INIT_NULLED_OUT;
    Bool x3;

    SETUP_VAR_STACK_PRE_REMEMBERED(3);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, x1);
    VAR_STACK_PUSH(2, x2);

    
    if ((n < (POFFSET+2)) || (n > (POFFSET+4))) 
      WITH_VAR_STACK(scheme_wrong_count_m("append in menu% (string item case)", POFFSET+2, POFFSET+4, n, p, 1));
    x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[POFFSET+0], "append in menu% (string item case)"));
    x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+1], "append in menu% (string item case)"));
    if (n > (POFFSET+2)) {
      x2 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[POFFSET+2], "append in menu% (string item case)"));
    } else
      x2 = NULL;
    if (n > (POFFSET+3)) {
      x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[POFFSET+3], "append in menu% (string item case)"));
    } else
      x3 = FALSE;

    
    WITH_VAR_STACK(((wxMenu *)((Scheme_Class_Object *)p[0])->primdata)->Append(x0, x1, x2, x3));

    
    
    READY_TO_PRE_RETURN;
  }

  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuAppendSeparator ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 369 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBar_ConstructScheme ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 844 of file wxs_menu.cxx.

{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  os_wxMenuBar *realobj INIT_NULLED_OUT;
  REMEMBER_VAR_STACK();

  SETUP_VAR_STACK_PRE_REMEMBERED(2);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, realobj);

  
  if (n != (POFFSET+0)) 
    WITH_VAR_STACK(scheme_wrong_count_m("initialization in menu-bar%", POFFSET+0, POFFSET+0, n, p, 1));

  
  realobj = WITH_VAR_STACK(new os_wxMenuBar CONSTRUCTOR_ARGS(()));
#ifdef MZ_PRECISE_GC
  WITH_VAR_STACK(realobj->gcInit_wxMenuBar());
#endif
  realobj->__gc_external = (void *)p[0];
  
  
  READY_TO_RETURN;
  ((Scheme_Class_Object *)p[0])->primdata = realobj;
  ((Scheme_Class_Object *)p[0])->primflag = 1;
  WITH_REMEMBERED_STACK(objscheme_register_primpointer(p[0], &((Scheme_Class_Object *)p[0])->primdata));
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBarAppend ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 818 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxMenuBar_class, "append in menu-bar%", n, p);
  class wxMenu* x0 INIT_NULLED_OUT;
  string x1 INIT_NULLED_OUT;

  SETUP_VAR_STACK_REMEMBERED(3);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, x0);
  VAR_STACK_PUSH(2, x1);

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMenu(p[POFFSET+0], "append in menu-bar%", 0));
  x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+1], "append in menu-bar%"));

  
  WITH_VAR_STACK(((wxMenuBar *)((Scheme_Class_Object *)p[0])->primdata)->Append(x0, x1));

  
  
  READY_TO_RETURN;
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBarDelete ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 789 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(os_wxMenuBar_class, "delete in menu-bar%", n, p);
  class wxMenu* x0 INIT_NULLED_OUT;
  int x1;

  SETUP_VAR_STACK_REMEMBERED(2);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, x0);

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMenu(p[POFFSET+0], "delete in menu-bar%", 1));
  if (n > (POFFSET+1)) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+1], "delete in menu-bar%"));
  } else
    x1 = 0;

  
  r = WITH_VAR_STACK(((wxMenuBar *)((Scheme_Class_Object *)p[0])->primdata)->Delete(x0, x1));

  
  
  READY_TO_RETURN;
  return (r ? scheme_true : scheme_false);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBarEnableTop ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 765 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxMenuBar_class, "enable-top in menu-bar%", n, p);
  int x0;
  Bool x1;

  SETUP_VAR_STACK_REMEMBERED(1);
  VAR_STACK_PUSH(0, p);

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+0], "enable-top in menu-bar%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[POFFSET+1], "enable-top in menu-bar%"));

  if (x0 < 0) { READY_TO_RETURN; return scheme_void; }
  WITH_VAR_STACK(((wxMenuBar *)((Scheme_Class_Object *)p[0])->primdata)->EnableTop(x0, x1));

  
  
  READY_TO_RETURN;
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBarNumber ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 744 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuBarSetLabelTop ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 719 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxMenuBar_class, "set-label-top in menu-bar%", n, p);
  int x0;
  string x1 INIT_NULLED_OUT;

  SETUP_VAR_STACK_REMEMBERED(2);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, x1);

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+0], "set-label-top in menu-bar%"));
  x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+1], "set-label-top in menu-bar%"));

  if (x0 < 0) { READY_TO_RETURN; return scheme_void; }
  WITH_VAR_STACK(((wxMenuBar *)((Scheme_Class_Object *)p[0])->primdata)->SetLabelTop(x0, x1));

  
  
  READY_TO_RETURN;
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuCheck ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 322 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuChecked ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 346 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuDelete ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 412 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuDeleteByPosition ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 389 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuEnable ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 298 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuGetFont ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 161 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenumenuSelect ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 138 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuNumber ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 277 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuSetHelpString ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 252 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuSetLabel ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 227 of file wxs_menu.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxMenu_class, "set-label in menu%", n, p);
  ExactLong x0;
  string x1 INIT_NULLED_OUT;

  SETUP_VAR_STACK_REMEMBERED(2);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, x1);

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[POFFSET+0], "set-label in menu%"));
  x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+1], "set-label in menu%"));

  
  WITH_VAR_STACK(((wxMenu *)((Scheme_Class_Object *)p[0])->primdata)->SetLabel(x0, x1));

  
  
  READY_TO_RETURN;
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuSetTitle ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 204 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxMenuSetWidth ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 182 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxsMenuItem_ConstructScheme ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 1066 of file wxs_menu.cxx.

{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  os_wxsMenuItem *realobj INIT_NULLED_OUT;
  REMEMBER_VAR_STACK();

  SETUP_VAR_STACK_PRE_REMEMBERED(2);
  VAR_STACK_PUSH(0, p);
  VAR_STACK_PUSH(1, realobj);

  
  if (n != (POFFSET+0)) 
    WITH_VAR_STACK(scheme_wrong_count_m("initialization in menu-item%", POFFSET+0, POFFSET+0, n, p, 1));

  
  realobj = WITH_VAR_STACK(new os_wxsMenuItem CONSTRUCTOR_ARGS(()));
#ifdef MZ_PRECISE_GC
  WITH_VAR_STACK(realobj->gcInit_wxsMenuItem());
#endif
  realobj->__gc_external = (void *)p[0];
  
  
  READY_TO_RETURN;
  ((Scheme_Class_Object *)p[0])->primdata = realobj;
  ((Scheme_Class_Object *)p[0])->primflag = 1;
  WITH_REMEMBERED_STACK(objscheme_register_primpointer(p[0], &((Scheme_Class_Object *)p[0])->primdata));
  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static Scheme_Object* os_wxsMenuItemId ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 1045 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 998 of file wxs_menu.cxx.

{
#ifdef MZ_PRECISE_GC
  if (!id)
    return NULL;
  else
    return (wxsMenuItem *)gcPTR_TO_OBJ(GC_weak_box_val(*(void **)id));
#else
  return (wxsMenuItem *)id;
#endif
}

Here is the caller graph for this function:

static Scheme_Object* wxsMenuItemGlobalwxsIdToMenuItem ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 1174 of file wxs_menu.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

Definition at line 126 of file wxs_menu.cxx.

Definition at line 707 of file wxs_menu.cxx.

Definition at line 1033 of file wxs_menu.cxx.