Back to index

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

Go to the source code of this file.

Classes

class  os_wxButton

Defines

#define BM_IN_USE(map)   ((map)->selectedIntoDC)
#define ESCAPE_NO_RET_VAL   /*empty*/
#define CB_FUNCTYPE   wxFunction
#define CALLBACKCLASS   os_wxButton
#define CB_REALCLASS   wxButton
#define CB_UNBUNDLE   objscheme_unbundle_wxButton
#define CB_USER   METHODNAME("button%","initialization")
#define CB_TOSCHEME   wxButtonCallbackToScheme
#define CB_TOC   wxButtonCallbackToC

Functions

static void init_symset_buttonStyle (void)
static int unbundle_symset_buttonStyle (Scheme_Object *v, const char *where)
void ButtonSetBorder (wxButton *b, Bool on)
wxCommandEventobjscheme_unbundle_wxCommandEvent (Scheme_Object *, const char *, int)
Scheme_Objectobjscheme_bundle_wxCommandEvent (wxCommandEvent *)
static void CB_TOSCHEME (CB_REALCLASS *obj, wxCommandEvent *event)
os_wxButton::os_wxButton CONSTRUCTOR_ARGS ((class wxPanel *x0, wxFunction x1, string x2, int x3, int x4, int x5, int x6, int x7, class wxFont *x8, string x9))
os_wxButton::os_wxButton CONSTRUCTOR_ARGS ((class wxPanel *x0, wxFunction x1, class wxBitmap *x2, int x3, int x4, int x5, int x6, int x7, class wxFont *x8, string x9))
static Scheme_Objectos_wxButtonOnDropFile (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonPreOnEvent (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonPreOnChar (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonOnSize (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonOnSetFocus (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonOnKillFocus (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonButtonSetBorder (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButtonSetLabel (int n, Scheme_Object *p[])
static Scheme_Objectos_wxButton_ConstructScheme (int n, Scheme_Object *p[])
void objscheme_setup_wxButton (Scheme_Env *env)
int objscheme_istype_wxButton (Scheme_Object *obj, const char *stop, int nullOK)
Scheme_Objectobjscheme_bundle_wxButton (class wxButton *realobj)
class wxButtonobjscheme_unbundle_wxButton (Scheme_Object *obj, const char *where, int nullOK)

Variables

static Scheme_ObjectbuttonStyle_1_sym = NULL
static Scheme_ObjectbuttonStyle_wxINVISIBLE_sym = NULL
static Scheme_Objectos_wxButton_class

Define Documentation

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

Definition at line 23 of file wxs_butn.cxx.

#define CALLBACKCLASS   os_wxButton

Definition at line 89 of file wxs_butn.cxx.

#define CB_FUNCTYPE   wxFunction

Definition at line 81 of file wxs_butn.cxx.

#define CB_REALCLASS   wxButton

Definition at line 90 of file wxs_butn.cxx.

#define CB_TOC   wxButtonCallbackToC

Definition at line 97 of file wxs_butn.cxx.

#define CB_TOSCHEME   wxButtonCallbackToScheme

Definition at line 96 of file wxs_butn.cxx.

Definition at line 91 of file wxs_butn.cxx.

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

Definition at line 92 of file wxs_butn.cxx.

#define ESCAPE_NO_RET_VAL   /*empty*/

Definition at line 28 of file wxs_butn.cxx.


Function Documentation

void ButtonSetBorder ( wxButton b,
Bool  on 
)

Definition at line 70 of file wxs_butn.cxx.

{
#ifdef wx_mac
#else
  b->SetBorder(on);
#endif
}

Here is the call graph for this function:

Here is the caller graph for this function:

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

Definition at line 853 of file wxs_butn.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_wxButton::os_wxButton CONSTRUCTOR_ARGS ( (class wxPanel *x0, wxFunction x1, string x2, int x3, int x4, int x5, int x6, int x7, class wxFont *x8, string x9)  )

Definition at line 155 of file wxs_butn.cxx.

                 : wxButton(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9))
{
}
os_wxButton::os_wxButton CONSTRUCTOR_ARGS ( (class wxPanel *x0, wxFunction x1, class wxBitmap *x2, int x3, int x4, int x5, int x6, int x7, class wxFont *x8, string x9)  )

Definition at line 161 of file wxs_butn.cxx.

                 : wxButton(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9))
{
}
static void init_symset_buttonStyle ( void  ) [static]

Definition at line 809 of file wxs_butn.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 ((realobj->__type != wxTYPE_BUTTON) && (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_wxButton_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 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;
}

Here is the caller graph for this function:

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

Definition at line 795 of file wxs_butn.cxx.

{
  REMEMBER_VAR_STACK();
  if (nullOK && XC_SCHEME_NULLP(obj)) return 1;
  if (objscheme_is_a(obj,  os_wxButton_class))
    return 1;
  else {
    if (!stop)
       return 0;
    WITH_REMEMBERED_STACK(scheme_wrong_type(stop, nullOK ? "button% object or " XC_NULL_STR: "button% 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 769 of file wxs_butn.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

class wxButton* objscheme_unbundle_wxButton ( Scheme_Object obj,
const char *  where,
int  nullOK 
)

Definition at line 836 of file wxs_butn.cxx.

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

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxButton(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_wxButton *)o->primdata;
  else
    return (wxButton *)o->primdata;
}

Here is the call graph for this function:

Definition at line 539 of file wxs_evnt.cxx.

Here is the caller graph for this function:

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

Definition at line 627 of file wxs_butn.cxx.

{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  os_wxButton *realobj INIT_NULLED_OUT;
  REMEMBER_VAR_STACK();
  if ((n >= (POFFSET+3)) && WITH_REMEMBERED_STACK(objscheme_istype_wxPanel(p[POFFSET+0], NULL, 0)) && (SCHEME_NULLP(p[POFFSET+1]) || WITH_REMEMBERED_STACK(objscheme_istype_proc2(p[POFFSET+1], NULL))) && WITH_REMEMBERED_STACK(objscheme_istype_wxBitmap(p[POFFSET+2], NULL, 0))) {
    class wxPanel* x0 INIT_NULLED_OUT;
    wxFunction x1;
    class wxBitmap* x2 INIT_NULLED_OUT;
    int x3;
    int x4;
    int x5;
    int x6;
    int x7;
    class wxFont* x8 INIT_NULLED_OUT;
    string x9 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(6);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, realobj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x2);
    VAR_STACK_PUSH(4, x8);
    VAR_STACK_PUSH(5, x9);

    int cb_pos = 0;
    if ((n < (POFFSET+3)) || (n > (POFFSET+10))) 
      WITH_VAR_STACK(scheme_wrong_count_m("initialization in button% (bitmap label case)", POFFSET+3, POFFSET+10, n, p, 1));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxPanel(p[POFFSET+0], "initialization in button% (bitmap label case)", 0));
    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));
    x2 = WITH_VAR_STACK(objscheme_unbundle_wxBitmap(p[POFFSET+2], "initialization in button% (bitmap label case)", 0));
    if (n > (POFFSET+3)) {
      x3 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+3], "initialization in button% (bitmap label case)"));
    } else
      x3 = -1;
    if (n > (POFFSET+4)) {
      x4 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+4], "initialization in button% (bitmap label case)"));
    } else
      x4 = -1;
    if (n > (POFFSET+5)) {
      x5 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+5], "initialization in button% (bitmap label case)"));
    } else
      x5 = -1;
    if (n > (POFFSET+6)) {
      x6 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+6], "initialization in button% (bitmap label case)"));
    } else
      x6 = -1;
    if (n > (POFFSET+7)) {
      x7 = WITH_VAR_STACK(unbundle_symset_buttonStyle(p[POFFSET+7], "initialization in button% (bitmap label case)"));
    } else
      x7 = 0;
    if (n > (POFFSET+8)) {
      x8 = WITH_VAR_STACK(objscheme_unbundle_wxFont(p[POFFSET+8], "initialization in button% (bitmap label case)", 1));
    } else
      x8 = NULL;
    if (n > (POFFSET+9)) {
      x9 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+9], "initialization in button% (bitmap label case)"));
    } else
      x9 = "button";

    { if (x2 && !x2->Ok()) WITH_VAR_STACK(scheme_arg_mismatch(METHODNAME("button%","initialization"), "bad bitmap: ", p[POFFSET+2])); if (x2 && BM_SELECTED(x2)) WITH_VAR_STACK(scheme_arg_mismatch(METHODNAME("button%","initialization"), "bitmap is currently installed into a bitmap-dc%: ", p[POFFSET+2])); }if (!x5) x5 = -1;if (!x6) x6 = -1;
    realobj = WITH_VAR_STACK(new os_wxButton CONSTRUCTOR_ARGS((x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)));
#ifdef MZ_PRECISE_GC
    WITH_VAR_STACK(realobj->gcInit_wxButton(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9));
#endif
    realobj->__gc_external = (void *)p[0];
    
    realobj->callback_closure = p[POFFSET+cb_pos];
    READY_TO_PRE_RETURN;
  } else  {
    class wxPanel* x0 INIT_NULLED_OUT;
    wxFunction x1;
    string x2 INIT_NULLED_OUT;
    int x3;
    int x4;
    int x5;
    int x6;
    int x7;
    class wxFont* x8 INIT_NULLED_OUT;
    string x9 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(6);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, realobj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x2);
    VAR_STACK_PUSH(4, x8);
    VAR_STACK_PUSH(5, x9);

    int cb_pos = 0;
    if ((n < (POFFSET+3)) || (n > (POFFSET+10))) 
      WITH_VAR_STACK(scheme_wrong_count_m("initialization in button% (string label case)", POFFSET+3, POFFSET+10, n, p, 1));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxPanel(p[POFFSET+0], "initialization in button% (string label case)", 0));
    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));
    x2 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+2], "initialization in button% (string label case)"));
    if (n > (POFFSET+3)) {
      x3 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+3], "initialization in button% (string label case)"));
    } else
      x3 = -1;
    if (n > (POFFSET+4)) {
      x4 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+4], "initialization in button% (string label case)"));
    } else
      x4 = -1;
    if (n > (POFFSET+5)) {
      x5 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+5], "initialization in button% (string label case)"));
    } else
      x5 = -1;
    if (n > (POFFSET+6)) {
      x6 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+6], "initialization in button% (string label case)"));
    } else
      x6 = -1;
    if (n > (POFFSET+7)) {
      x7 = WITH_VAR_STACK(unbundle_symset_buttonStyle(p[POFFSET+7], "initialization in button% (string label case)"));
    } else
      x7 = 0;
    if (n > (POFFSET+8)) {
      x8 = WITH_VAR_STACK(objscheme_unbundle_wxFont(p[POFFSET+8], "initialization in button% (string label case)", 1));
    } else
      x8 = NULL;
    if (n > (POFFSET+9)) {
      x9 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+9], "initialization in button% (string label case)"));
    } else
      x9 = "button";

    if (!x5) x5 = -1;if (!x6) x6 = -1;
    realobj = WITH_VAR_STACK(new os_wxButton CONSTRUCTOR_ARGS((x0, x1, x2, x3, x4, x5, x6, x7, x8, x9)));
#ifdef MZ_PRECISE_GC
    WITH_VAR_STACK(realobj->gcInit_wxButton(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9));
#endif
    realobj->__gc_external = (void *)p[0];
    
    realobj->callback_closure = p[POFFSET+cb_pos];
    READY_TO_PRE_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_wxButtonButtonSetBorder ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 398 of file wxs_butn.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

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

Definition at line 468 of file wxs_butn.cxx.

Here is the call graph for this function:

Here is the caller graph for this function:

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

Definition at line 604 of file wxs_butn.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxButton_class, "on-kill-focus in button%", n, p);

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

  

  
  if (((Scheme_Class_Object *)p[0])->primflag)
    WITH_VAR_STACK(((os_wxButton *)((Scheme_Class_Object *)p[0])->primdata)->wxButton::OnKillFocus());
  else
    WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->OnKillFocus());

  
  
  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_wxButtonOnSetFocus ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 581 of file wxs_butn.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxButton_class, "on-set-focus in button%", n, p);

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

  

  
  if (((Scheme_Class_Object *)p[0])->primflag)
    WITH_VAR_STACK(((os_wxButton *)((Scheme_Class_Object *)p[0])->primdata)->wxButton::OnSetFocus());
  else
    WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->OnSetFocus());

  
  
  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_wxButtonOnSize ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 554 of file wxs_butn.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(os_wxButton_class, "on-size in button%", n, p);
  int x0;
  int x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+0], "on-size in button%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_integer(p[POFFSET+1], "on-size in button%"));

  
  if (((Scheme_Class_Object *)p[0])->primflag)
    WITH_VAR_STACK(((os_wxButton *)((Scheme_Class_Object *)p[0])->primdata)->wxButton::OnSize(x0, x1));
  else
    WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->OnSize(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_wxButtonPreOnChar ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 524 of file wxs_butn.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(os_wxButton_class, "pre-on-char in button%", n, p);
  class wxWindow* x0 INIT_NULLED_OUT;
  class wxKeyEvent* 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_wxWindow(p[POFFSET+0], "pre-on-char in button%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxKeyEvent(p[POFFSET+1], "pre-on-char in button%", 0));

  
  if (((Scheme_Class_Object *)p[0])->primflag)
    r = WITH_VAR_STACK(((os_wxButton *)((Scheme_Class_Object *)p[0])->primdata)-> wxWindow::PreOnChar(x0, x1));
  else
    r = WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->PreOnChar(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_wxButtonPreOnEvent ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 494 of file wxs_butn.cxx.

{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(os_wxButton_class, "pre-on-event in button%", n, p);
  class wxWindow* x0 INIT_NULLED_OUT;
  class wxMouseEvent* 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_wxWindow(p[POFFSET+0], "pre-on-event in button%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[POFFSET+1], "pre-on-event in button%", 0));

  
  if (((Scheme_Class_Object *)p[0])->primflag)
    r = WITH_VAR_STACK(((os_wxButton *)((Scheme_Class_Object *)p[0])->primdata)-> wxWindow::PreOnEvent(x0, x1));
  else
    r = WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->PreOnEvent(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_wxButtonSetLabel ( int  n,
Scheme_Object p[] 
) [static]

Definition at line 420 of file wxs_butn.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_wxButton_class, "set-label in button%", n, p);
  if ((n >= (POFFSET+1)) && WITH_REMEMBERED_STACK(objscheme_istype_wxBitmap(p[POFFSET+0], NULL, 0))) {
    class wxBitmap* x0 INIT_NULLED_OUT;

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

    
    if (n != (POFFSET+1)) 
      WITH_VAR_STACK(scheme_wrong_count_m("set-label in button% (bitmap label case)", POFFSET+1, POFFSET+1, n, p, 1));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxBitmap(p[POFFSET+0], "set-label in button% (bitmap label case)", 0));

    { if (x0 && !x0->Ok()) WITH_VAR_STACK(scheme_arg_mismatch(METHODNAME("button%","set-label"), "bad bitmap: ", p[POFFSET+0])); if (x0 && BM_SELECTED(x0)) WITH_VAR_STACK(scheme_arg_mismatch(METHODNAME("button%","set-label"), "bitmap is currently installed into a bitmap-dc%: ", p[POFFSET+0])); }
    WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->SetLabel(x0));

    
    
    READY_TO_PRE_RETURN;
  } else  {
    string x0 INIT_NULLED_OUT;

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

    
    if (n != (POFFSET+1)) 
      WITH_VAR_STACK(scheme_wrong_count_m("set-label in button% (string label case)", POFFSET+1, POFFSET+1, n, p, 1));
    x0 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[POFFSET+0], "set-label in button% (string label case)"));

    
    WITH_VAR_STACK(((wxButton *)((Scheme_Class_Object *)p[0])->primdata)->SetLabel(x0));

    
    
    READY_TO_PRE_RETURN;
  }

  return scheme_void;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static int unbundle_symset_buttonStyle ( Scheme_Object v,
const char *  where 
) [static]

Definition at line 49 of file wxs_butn.cxx.

                                                                            {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!buttonStyle_wxINVISIBLE_sym) WITH_VAR_STACK(init_symset_buttonStyle());
  Scheme_Object *i INIT_NULLED_OUT, *l = v;
  long result = 0;
  while (SCHEME_PAIRP(l)) {
  i = SCHEME_CAR(l);
  if (0) { }
  else if (i == buttonStyle_1_sym) { result = result | 1; }
  else if (i == buttonStyle_wxINVISIBLE_sym) { result = result | wxINVISIBLE; }
  else { break; } 
  l = SCHEME_CDR(l);
  }
  if (SCHEME_NULLP(l)) { READY_TO_RETURN; return result; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "buttonStyle symbol list", -1, 0, &v));
  READY_TO_RETURN;
  return 0;
}

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

Definition at line 38 of file wxs_butn.cxx.

Definition at line 39 of file wxs_butn.cxx.

Definition at line 153 of file wxs_butn.cxx.