Back to index

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

Go to the source code of this file.

Classes

class  os_wxObject

Defines

#define BM_IN_USE(map)   ((map)->selectedIntoDC)
#define ESCAPE_NO_RET_VAL   /*empty*/

Functions

os_wxObject::os_wxObject CONSTRUCTOR_ARGS (())
static Scheme_Objectos_wxObject_ConstructScheme (int n, Scheme_Object *p[])
void objscheme_setup_wxObject (Scheme_Env *env)
int objscheme_istype_wxObject (Scheme_Object *obj, const char *stop, int nullOK)
Scheme_Objectobjscheme_bundle_wxObject (class wxObject *realobj)
class wxObjectobjscheme_unbundle_wxObject (Scheme_Object *obj, const char *where, int nullOK)

Variables

static Scheme_Objectos_wxObject_class

Define Documentation

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

Definition at line 23 of file wxs_obj.cxx.

#define ESCAPE_NO_RET_VAL   /*empty*/

Definition at line 28 of file wxs_obj.cxx.


Function Documentation

os_wxObject::os_wxObject CONSTRUCTOR_ARGS ( ()  )

Definition at line 62 of file wxs_obj.cxx.

                 : wxObject())
{
}

Definition at line 133 of file wxs_obj.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_wxObject_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_wxObject ( Scheme_Object obj,
const char *  stop,
int  nullOK 
)

Definition at line 119 of file wxs_obj.cxx.

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

Here is the call graph for this function:

Here is the caller graph for this function:

class wxObject* objscheme_unbundle_wxObject ( Scheme_Object obj,
const char *  where,
int  nullOK 
)

Definition at line 160 of file wxs_obj.cxx.

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

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxObject(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_wxObject *)o->primdata;
  else
    return (wxObject *)o->primdata;
}

Here is the call graph for this function:

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

Definition at line 72 of file wxs_obj.cxx.

{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, p);
  os_wxObject *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 object%", POFFSET+0, POFFSET+0, n, p, 1));

  
  realobj = WITH_VAR_STACK(new os_wxObject CONSTRUCTOR_ARGS(()));
#ifdef MZ_PRECISE_GC
  WITH_VAR_STACK(realobj->gcInit_wxObject());
#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:


Variable Documentation

Definition at line 60 of file wxs_obj.cxx.