/* DO NOT EDIT THIS FILE. */
/* This file was generated by xctocc from "wxs_mpb.xc". */


#if defined(_MSC_VER)
# include "wx.h"
#endif

#include "wx_media.h"




#ifdef wx_x
# define BM_SELECTED(map) ((map)->selectedTo)
#endif
#if defined(wx_mac) || defined(wx_msw)
# define BM_SELECTED(map) ((map)->selectedInto)
#endif
# define BM_IN_USE(map) ((map)->selectedIntoDC)





#include "wxscheme.h"
#include "wxs_mpb.h"

#ifdef MZ_PRECISE_GC
START_XFORM_SKIP;
#endif


static Scheme_Object *bufferType_wxEDIT_BUFFER_sym = NULL;
static Scheme_Object *bufferType_wxPASTEBOARD_BUFFER_sym = NULL;

static void init_symset_bufferType(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(bufferType_wxEDIT_BUFFER_sym);
  bufferType_wxEDIT_BUFFER_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("text"));
  wxREGGLOB(bufferType_wxPASTEBOARD_BUFFER_sym);
  bufferType_wxPASTEBOARD_BUFFER_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("pasteboard"));
}

static int unbundle_symset_bufferType(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!bufferType_wxPASTEBOARD_BUFFER_sym) WITH_VAR_STACK(init_symset_bufferType());
  if (0) { }
  else if (v == bufferType_wxEDIT_BUFFER_sym) { return wxEDIT_BUFFER; }
  else if (v == bufferType_wxPASTEBOARD_BUFFER_sym) { return wxPASTEBOARD_BUFFER; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "bufferType symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_bufferType(int v) {
  if (!bufferType_wxPASTEBOARD_BUFFER_sym) init_symset_bufferType();
  switch (v) {
  case wxEDIT_BUFFER: return bufferType_wxEDIT_BUFFER_sym;
  case wxPASTEBOARD_BUFFER: return bufferType_wxPASTEBOARD_BUFFER_sym;
  default: return NULL;
  }
}


static Scheme_Object *fileType_wxMEDIA_FF_GUESS_sym = NULL;
static Scheme_Object *fileType_wxMEDIA_FF_STD_sym = NULL;
static Scheme_Object *fileType_wxMEDIA_FF_TEXT_sym = NULL;
static Scheme_Object *fileType_wxMEDIA_FF_TEXT_FORCE_CR_sym = NULL;
static Scheme_Object *fileType_wxMEDIA_FF_SAME_sym = NULL;
static Scheme_Object *fileType_wxMEDIA_FF_COPY_sym = NULL;

static void init_symset_fileType(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(fileType_wxMEDIA_FF_GUESS_sym);
  fileType_wxMEDIA_FF_GUESS_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("guess"));
  wxREGGLOB(fileType_wxMEDIA_FF_STD_sym);
  fileType_wxMEDIA_FF_STD_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("standard"));
  wxREGGLOB(fileType_wxMEDIA_FF_TEXT_sym);
  fileType_wxMEDIA_FF_TEXT_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("text"));
  wxREGGLOB(fileType_wxMEDIA_FF_TEXT_FORCE_CR_sym);
  fileType_wxMEDIA_FF_TEXT_FORCE_CR_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("text-force-cr"));
  wxREGGLOB(fileType_wxMEDIA_FF_SAME_sym);
  fileType_wxMEDIA_FF_SAME_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("same"));
  wxREGGLOB(fileType_wxMEDIA_FF_COPY_sym);
  fileType_wxMEDIA_FF_COPY_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("copy"));
}

static int unbundle_symset_fileType(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!fileType_wxMEDIA_FF_COPY_sym) WITH_VAR_STACK(init_symset_fileType());
  if (0) { }
  else if (v == fileType_wxMEDIA_FF_GUESS_sym) { return wxMEDIA_FF_GUESS; }
  else if (v == fileType_wxMEDIA_FF_STD_sym) { return wxMEDIA_FF_STD; }
  else if (v == fileType_wxMEDIA_FF_TEXT_sym) { return wxMEDIA_FF_TEXT; }
  else if (v == fileType_wxMEDIA_FF_TEXT_FORCE_CR_sym) { return wxMEDIA_FF_TEXT_FORCE_CR; }
  else if (v == fileType_wxMEDIA_FF_SAME_sym) { return wxMEDIA_FF_SAME; }
  else if (v == fileType_wxMEDIA_FF_COPY_sym) { return wxMEDIA_FF_COPY; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "fileType symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_fileType(int v) {
  if (!fileType_wxMEDIA_FF_COPY_sym) init_symset_fileType();
  switch (v) {
  case wxMEDIA_FF_GUESS: return fileType_wxMEDIA_FF_GUESS_sym;
  case wxMEDIA_FF_STD: return fileType_wxMEDIA_FF_STD_sym;
  case wxMEDIA_FF_TEXT: return fileType_wxMEDIA_FF_TEXT_sym;
  case wxMEDIA_FF_TEXT_FORCE_CR: return fileType_wxMEDIA_FF_TEXT_FORCE_CR_sym;
  case wxMEDIA_FF_SAME: return fileType_wxMEDIA_FF_SAME_sym;
  case wxMEDIA_FF_COPY: return fileType_wxMEDIA_FF_COPY_sym;
  default: return NULL;
  }
}



static Scheme_Object *focus_wxFOCUS_IMMEDIATE_sym = NULL;
static Scheme_Object *focus_wxFOCUS_DISPLAY_sym = NULL;
static Scheme_Object *focus_wxFOCUS_GLOBAL_sym = NULL;

static void init_symset_focus(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(focus_wxFOCUS_IMMEDIATE_sym);
  focus_wxFOCUS_IMMEDIATE_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("immediate"));
  wxREGGLOB(focus_wxFOCUS_DISPLAY_sym);
  focus_wxFOCUS_DISPLAY_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("display"));
  wxREGGLOB(focus_wxFOCUS_GLOBAL_sym);
  focus_wxFOCUS_GLOBAL_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("global"));
}

static int unbundle_symset_focus(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!focus_wxFOCUS_GLOBAL_sym) WITH_VAR_STACK(init_symset_focus());
  if (0) { }
  else if (v == focus_wxFOCUS_IMMEDIATE_sym) { return wxFOCUS_IMMEDIATE; }
  else if (v == focus_wxFOCUS_DISPLAY_sym) { return wxFOCUS_DISPLAY; }
  else if (v == focus_wxFOCUS_GLOBAL_sym) { return wxFOCUS_GLOBAL; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "focus symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_focus(int v) {
  if (!focus_wxFOCUS_GLOBAL_sym) init_symset_focus();
  switch (v) {
  case wxFOCUS_IMMEDIATE: return focus_wxFOCUS_IMMEDIATE_sym;
  case wxFOCUS_DISPLAY: return focus_wxFOCUS_DISPLAY_sym;
  case wxFOCUS_GLOBAL: return focus_wxFOCUS_GLOBAL_sym;
  default: return NULL;
  }
}


# define Sym_END 1
# define Sym_START -1
# define Sym_NONE 0
static Scheme_Object *bias_Sym_START_sym = NULL;
static Scheme_Object *bias_Sym_NONE_sym = NULL;
static Scheme_Object *bias_Sym_END_sym = NULL;

static void init_symset_bias(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(bias_Sym_START_sym);
  bias_Sym_START_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("start"));
  wxREGGLOB(bias_Sym_NONE_sym);
  bias_Sym_NONE_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("none"));
  wxREGGLOB(bias_Sym_END_sym);
  bias_Sym_END_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("end"));
}

static int unbundle_symset_bias(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!bias_Sym_END_sym) WITH_VAR_STACK(init_symset_bias());
  if (0) { }
  else if (v == bias_Sym_START_sym) { return Sym_START; }
  else if (v == bias_Sym_NONE_sym) { return Sym_NONE; }
  else if (v == bias_Sym_END_sym) { return Sym_END; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "bias symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_bias(int v) {
  if (!bias_Sym_END_sym) init_symset_bias();
  switch (v) {
  case Sym_START: return bias_Sym_START_sym;
  case Sym_NONE: return bias_Sym_NONE_sym;
  case Sym_END: return bias_Sym_END_sym;
  default: return NULL;
  }
}



static Scheme_Object *caret_wxSNIP_DRAW_NO_CARET_sym = NULL;
static Scheme_Object *caret_wxSNIP_DRAW_SHOW_CARET_sym = NULL;
static Scheme_Object *caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym = NULL;

static void init_symset_caret(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(caret_wxSNIP_DRAW_NO_CARET_sym);
  caret_wxSNIP_DRAW_NO_CARET_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("no-caret"));
  wxREGGLOB(caret_wxSNIP_DRAW_SHOW_CARET_sym);
  caret_wxSNIP_DRAW_SHOW_CARET_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("show-caret"));
  wxREGGLOB(caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym);
  caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("show-inactive-caret"));
}

static int unbundle_symset_caret(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym) WITH_VAR_STACK(init_symset_caret());
  if (0) { }
  else if (v == caret_wxSNIP_DRAW_NO_CARET_sym) { return wxSNIP_DRAW_NO_CARET; }
  else if (v == caret_wxSNIP_DRAW_SHOW_CARET_sym) { return wxSNIP_DRAW_SHOW_CARET; }
  else if (v == caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym) { return wxSNIP_DRAW_SHOW_INACTIVE_CARET; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "caret symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_caret(int v) {
  if (!caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym) init_symset_caret();
  switch (v) {
  case wxSNIP_DRAW_NO_CARET: return caret_wxSNIP_DRAW_NO_CARET_sym;
  case wxSNIP_DRAW_SHOW_CARET: return caret_wxSNIP_DRAW_SHOW_CARET_sym;
  case wxSNIP_DRAW_SHOW_INACTIVE_CARET: return caret_wxSNIP_DRAW_SHOW_INACTIVE_CARET_sym;
  default: return NULL;
  }
}




#ifndef wx_mac
# define wxBITMAP_TYPE_PICT 101
#endif

#define wxBITMAP_TYPE_UNKNOWN 0

static Scheme_Object *bitmapType_wxBITMAP_TYPE_BMP_sym = NULL;
static Scheme_Object *bitmapType_wxBITMAP_TYPE_GIF_sym = NULL;
static Scheme_Object *bitmapType_wxBITMAP_TYPE_XBM_sym = NULL;
static Scheme_Object *bitmapType_wxBITMAP_TYPE_XPM_sym = NULL;
static Scheme_Object *bitmapType_wxBITMAP_TYPE_PICT_sym = NULL;
static Scheme_Object *bitmapType_wxBITMAP_TYPE_UNKNOWN_sym = NULL;

static void init_symset_bitmapType(void) {
  REMEMBER_VAR_STACK();
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_BMP_sym);
  bitmapType_wxBITMAP_TYPE_BMP_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("bmp"));
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_GIF_sym);
  bitmapType_wxBITMAP_TYPE_GIF_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("gif"));
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_XBM_sym);
  bitmapType_wxBITMAP_TYPE_XBM_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("xbm"));
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_XPM_sym);
  bitmapType_wxBITMAP_TYPE_XPM_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("xpm"));
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_PICT_sym);
  bitmapType_wxBITMAP_TYPE_PICT_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("pict"));
  wxREGGLOB(bitmapType_wxBITMAP_TYPE_UNKNOWN_sym);
  bitmapType_wxBITMAP_TYPE_UNKNOWN_sym = WITH_REMEMBERED_STACK(scheme_intern_symbol("unknown"));
}

static int unbundle_symset_bitmapType(Scheme_Object *v, const char *where) {
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, v);
  if (!bitmapType_wxBITMAP_TYPE_UNKNOWN_sym) WITH_VAR_STACK(init_symset_bitmapType());
  if (0) { }
  else if (v == bitmapType_wxBITMAP_TYPE_BMP_sym) { return wxBITMAP_TYPE_BMP; }
  else if (v == bitmapType_wxBITMAP_TYPE_GIF_sym) { return wxBITMAP_TYPE_GIF; }
  else if (v == bitmapType_wxBITMAP_TYPE_XBM_sym) { return wxBITMAP_TYPE_XBM; }
  else if (v == bitmapType_wxBITMAP_TYPE_XPM_sym) { return wxBITMAP_TYPE_XPM; }
  else if (v == bitmapType_wxBITMAP_TYPE_PICT_sym) { return wxBITMAP_TYPE_PICT; }
  else if (v == bitmapType_wxBITMAP_TYPE_UNKNOWN_sym) { return wxBITMAP_TYPE_UNKNOWN; }
  if (where) WITH_VAR_STACK(scheme_wrong_type(where, "bitmapType symbol", -1, 0, &v));
  return 0;
}

static Scheme_Object *bundle_symset_bitmapType(int v) {
  if (!bitmapType_wxBITMAP_TYPE_UNKNOWN_sym) init_symset_bitmapType();
  switch (v) {
  case wxBITMAP_TYPE_BMP: return bitmapType_wxBITMAP_TYPE_BMP_sym;
  case wxBITMAP_TYPE_GIF: return bitmapType_wxBITMAP_TYPE_GIF_sym;
  case wxBITMAP_TYPE_XBM: return bitmapType_wxBITMAP_TYPE_XBM_sym;
  case wxBITMAP_TYPE_XPM: return bitmapType_wxBITMAP_TYPE_XPM_sym;
  case wxBITMAP_TYPE_PICT: return bitmapType_wxBITMAP_TYPE_PICT_sym;
  case wxBITMAP_TYPE_UNKNOWN: return bitmapType_wxBITMAP_TYPE_UNKNOWN_sym;
  default: return NULL;
  }
}








/* 
   X = Not meant for virtual, defined in wxMediaEdit/wxMediaPasteboard
       and overloaded there
   Y = Virtual, defined in wxMediaEdit/wxMediaPasteboard
   Z = Virtual, defined in wxMediaBuffer 
*/
































  











class os_wxMediaPasteboard : public wxMediaPasteboard {
 public:

  os_wxMediaPasteboard CONSTRUCTOR_ARGS(());
  ~os_wxMediaPasteboard();
  void AfterInteractiveResize(class wxSnip* x0);
  void OnInteractiveResize(class wxSnip* x0);
  Bool CanInteractiveResize(class wxSnip* x0);
  void AfterInteractiveMove(class wxMouseEvent* x0);
  void OnInteractiveMove(class wxMouseEvent* x0);
  Bool CanInteractiveMove(class wxMouseEvent* x0);
  void InteractiveAdjustResize(class wxSnip* x0, nnfloat* x1, nnfloat* x2);
  void InteractiveAdjustMove(class wxSnip* x0, float* x1, float* x2);
  void InteractiveAdjustMouse(float* x0, float* x1);
  void OnDoubleClick(class wxSnip* x0, class wxMouseEvent* x1);
  void AfterSelect(class wxSnip* x0, Bool x1);
  void OnSelect(class wxSnip* x0, Bool x1);
  Bool CanSelect(class wxSnip* x0, Bool x1);
  void AfterResize(class wxSnip* x0, nnfloat x1, nnfloat x2, Bool x3);
  void OnResize(class wxSnip* x0, nnfloat x1, nnfloat x2);
  Bool CanResize(class wxSnip* x0, nnfloat x1, nnfloat x2);
  void AfterMoveTo(class wxSnip* x0, float x1, float x2, Bool x3);
  void OnMoveTo(class wxSnip* x0, float x1, float x2, Bool x3);
  Bool CanMoveTo(class wxSnip* x0, float x1, float x2, Bool x3);
  void AfterDelete(class wxSnip* x0);
  void OnDelete(class wxSnip* x0);
  Bool CanDelete(class wxSnip* x0);
  void AfterInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3);
  void OnInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3);
  Bool CanInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3);
  void DoPaste(ExactLong x0);
  void DoCopy(ExactLong x0, Bool x1);
  nstring PutFile(nstring x0, nstring x1);
  nstring GetFile(nstring x0);
  void AfterEditSequence();
  void OnEditSequence();
  void AfterLoadFile(Bool x0);
  void OnLoadFile(string x0, int x1);
  Bool CanLoadFile(string x0, int x1);
  void AfterSaveFile(Bool x0);
  void OnSaveFile(string x0, int x1);
  Bool CanSaveFile(string x0, int x1);
  class wxSnip* OnNewBox(int x0);
  class wxImageSnip* OnNewImageSnip(nstring x0, int x1, Bool x2, Bool x3);
  void InvalidateBitmapCache(float x0 = 0.0, float x1 = 0.0, float x2 = -1.0, float x3 = -1.0);
  void OnPaint(Bool x0, class wxDC* x1, float x2, float x3, float x4, float x5, float x6, float x7, int x8);
  Bool WriteFootersToFile(class wxMediaStreamOut* x0);
  Bool WriteHeadersToFile(class wxMediaStreamOut* x0);
  Bool ReadFooterFromFile(class wxMediaStreamIn* x0, string x1);
  Bool ReadHeaderFromFile(class wxMediaStreamIn* x0, string x1);
  void SetFilename(nstring x0, Bool x1 = FALSE);
  Bool ReleaseSnip(class wxSnip* x0);
  void SetModified(Bool x0);
  void SetSnipData(class wxSnip* x0, class wxBufferData* x1);
  class wxBufferData* GetSnipData(class wxSnip* x0);
  void NeedsUpdate(class wxSnip* x0, float x1, float x2, nnfloat x3, nnfloat x4);
  void Resized(class wxSnip* x0, Bool x1);
  void SetCaretOwner(class wxSnip* x0, int x1 = wxFOCUS_IMMEDIATE);
  Bool ScrollTo(class wxSnip* x0, float x1, float x2, nnfloat x3, nnfloat x4, Bool x5, int x6 = 0);
  void OnDisplaySize();
  void OnChange();
  void OnFocus(Bool x0);
  void OnDefaultChar(class wxKeyEvent* x0);
  void OnDefaultEvent(class wxMouseEvent* x0);
  void OnLocalChar(class wxKeyEvent* x0);
  void OnLocalEvent(class wxMouseEvent* x0);
  void SizeCacheInvalid();
  void BlinkCaret();
  void OwnCaret(Bool x0);
  void Refresh(float x0, float x1, nnfloat x2, nnfloat x3, int x4);
  class wxCursor* AdjustCursor(class wxMouseEvent* x0);
  void OnChar(class wxKeyEvent* x0);
  void OnEvent(class wxMouseEvent* x0);
  void CopySelfTo(class wxMediaBuffer* x0);
  class wxMediaBuffer* CopySelf();
#ifdef MZ_PRECISE_GC
  void gcMark();
  void gcFixup();
#endif
};

#ifdef MZ_PRECISE_GC
void os_wxMediaPasteboard::gcMark() {
  wxMediaPasteboard::gcMark();
}
void os_wxMediaPasteboard::gcFixup() {
  wxMediaPasteboard::gcFixup();
}
#endif

static Scheme_Object *os_wxMediaPasteboard_class;

os_wxMediaPasteboard::os_wxMediaPasteboard CONSTRUCTOR_ARGS(())
CONSTRUCTOR_INIT(: wxMediaPasteboard())
{
}

os_wxMediaPasteboard::~os_wxMediaPasteboard()
{
    objscheme_destroy(this, (Scheme_Object *)__gc_external);
}

void os_wxMediaPasteboard::AfterInteractiveResize(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-interactive-resize", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterInteractiveResize(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnInteractiveResize(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-interactive-resize", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnInteractiveResize(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanInteractiveResize(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-interactive-resize?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanInteractiveResize(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-interactive-resize? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterInteractiveMove(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-interactive-move", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterInteractiveMove(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnInteractiveMove(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-interactive-move", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnInteractiveMove(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanInteractiveMove(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-interactive-move?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanInteractiveMove(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-interactive-move? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::InteractiveAdjustResize(class wxSnip* x0, nnfloat* x1, nnfloat* x2)
{
  Scheme_Object *p[3] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;
  Scheme_Object *sbox_tmp;

  SETUP_VAR_STACK(8);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 3);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  VAR_STACK_PUSH(7, x2);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "interactive-adjust-resize", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::InteractiveAdjustResize(x0, x1, x2);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x1))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  p[2] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x2))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  

  v = WITH_VAR_STACK(scheme_apply(method, 3, p));
  
  if (x1) *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-resize in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(sbox_tmp, "interactive-adjust-resize in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  if (x2) *x2 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[2], "interactive-adjust-resize in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(sbox_tmp, "interactive-adjust-resize in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  
  }
}

void os_wxMediaPasteboard::InteractiveAdjustMove(class wxSnip* x0, float* x1, float* x2)
{
  Scheme_Object *p[3] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;
  Scheme_Object *sbox_tmp;

  SETUP_VAR_STACK(8);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 3);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  VAR_STACK_PUSH(7, x2);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "interactive-adjust-move", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::InteractiveAdjustMove(x0, x1, x2);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x1))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  p[2] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x2))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  

  v = WITH_VAR_STACK(scheme_apply(method, 3, p));
  
  if (x1) *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-move in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-move in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  if (x2) *x2 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[2], "interactive-adjust-move in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-move in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  
  }
}

void os_wxMediaPasteboard::InteractiveAdjustMouse(float* x0, float* x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;
  Scheme_Object *sbox_tmp;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "interactive-adjust-mouse", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::InteractiveAdjustMouse(x0, x1);
  } else {
  
  p[0] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x0))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  p[1] = (sbox_tmp = WITH_VAR_STACK(scheme_make_double((*x1))), WITH_VAR_STACK(objscheme_box(sbox_tmp)));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  if (x0) *x0 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[0], "interactive-adjust-mouse in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-mouse in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  if (x1) *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-mouse in pasteboard%"", extracting return value via box")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-mouse in pasteboard%"", extracting return value via box"", extracting boxed argument")));
  
  }
}

void os_wxMediaPasteboard::OnDoubleClick(class wxSnip* x0, class wxMouseEvent* x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-double-click", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnDoubleClick(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

void os_wxMediaPasteboard::AfterSelect(class wxSnip* x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-select", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterSelect(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

void os_wxMediaPasteboard::OnSelect(class wxSnip* x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-select", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnSelect(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanSelect(class wxSnip* x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-select?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanSelect(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-select? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterResize(class wxSnip* x0, nnfloat x1, nnfloat x2, Bool x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-resize", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterResize(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = (x3 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

void os_wxMediaPasteboard::OnResize(class wxSnip* x0, nnfloat x1, nnfloat x2)
{
  Scheme_Object *p[3] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 3);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-resize", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnResize(x0, x1, x2);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  

  v = WITH_VAR_STACK(scheme_apply(method, 3, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanResize(class wxSnip* x0, nnfloat x1, nnfloat x2)
{
  Scheme_Object *p[3] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 3);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-resize?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanResize(x0, x1, x2);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  

  v = WITH_VAR_STACK(scheme_apply(method, 3, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-resize? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterMoveTo(class wxSnip* x0, float x1, float x2, Bool x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-move-to", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterMoveTo(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = (x3 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

void os_wxMediaPasteboard::OnMoveTo(class wxSnip* x0, float x1, float x2, Bool x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-move-to", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnMoveTo(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = (x3 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanMoveTo(class wxSnip* x0, float x1, float x2, Bool x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-move-to?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanMoveTo(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = (x3 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-move-to? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterDelete(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-delete", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterDelete(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnDelete(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-delete", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnDelete(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanDelete(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-delete?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanDelete(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-delete? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-insert", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterInsert(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

void os_wxMediaPasteboard::OnInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-insert", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnInsert(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanInsert(class wxSnip* x0, class wxSnip* x1, float x2, float x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-insert?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanInsert(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-insert? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::DoPaste(ExactLong x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "do-paste", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::DoPaste(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(scheme_make_integer_value(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::DoCopy(ExactLong x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "do-copy", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::DoCopy(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(scheme_make_integer_value(x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

nstring os_wxMediaPasteboard::PutFile(nstring x0, nstring x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "put-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::PutFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_string((char *)x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(v, "put-file in pasteboard%"", extracting return value"));
  }
}

nstring os_wxMediaPasteboard::GetFile(nstring x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "get-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::GetFile(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(v, "get-file in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterEditSequence()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-edit-sequence", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterEditSequence();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::OnEditSequence()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-edit-sequence", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnEditSequence();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::AfterLoadFile(Bool x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-load-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterLoadFile(x0);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnLoadFile(string x0, int x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-load-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnLoadFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(bundle_symset_fileType(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanLoadFile(string x0, int x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-load-file?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanLoadFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(bundle_symset_fileType(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-load-file? in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::AfterSaveFile(Bool x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "after-save-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::AfterSaveFile(x0);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnSaveFile(string x0, int x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-save-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnSaveFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(bundle_symset_fileType(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

Bool os_wxMediaPasteboard::CanSaveFile(string x0, int x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "can-save-file?", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CanSaveFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(bundle_symset_fileType(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "can-save-file? in pasteboard%"", extracting return value"));
  }
}

class wxSnip* os_wxMediaPasteboard::OnNewBox(int x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-new-box", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::OnNewBox(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(bundle_symset_bufferType(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_wxSnip(v, "on-new-box in pasteboard%"", extracting return value", 0));
  }
}

class wxImageSnip* os_wxMediaPasteboard::OnNewImageSnip(nstring x0, int x1, Bool x2, Bool x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-new-image-snip", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::OnNewImageSnip(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = WITH_VAR_STACK(bundle_symset_bitmapType(x1));
  p[2] = (x2 ? scheme_true : scheme_false);
  p[3] = (x3 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_wxImageSnip(v, "on-new-image-snip in pasteboard%"", extracting return value", 0));
  }
}

void os_wxMediaPasteboard::InvalidateBitmapCache(float x0, float x1, float x2, float x3)
{
  Scheme_Object *p[4] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 4);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "invalidate-bitmap-cache", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::InvalidateBitmapCache(x0, x1, x2, x3);
  } else {
  
  p[0] = WITH_VAR_STACK(scheme_make_double(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(objscheme_bundle_nonnegative_symbol_float(x2, "end"));
  p[3] = WITH_VAR_STACK(objscheme_bundle_nonnegative_symbol_float(x3, "end"));
  

  v = WITH_VAR_STACK(scheme_apply(method, 4, p));
  
  
  }
}

void os_wxMediaPasteboard::OnPaint(Bool x0, class wxDC* x1, float x2, float x3, float x4, float x5, float x6, float x7, int x8)
{
  Scheme_Object *p[9] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 9);
  VAR_STACK_PUSH(5, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-paint", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnPaint(x0, x1, x2, x3, x4, x5, x6, x7, x8);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxDC(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  p[4] = WITH_VAR_STACK(scheme_make_double(x4));
  p[5] = WITH_VAR_STACK(scheme_make_double(x5));
  p[6] = WITH_VAR_STACK(scheme_make_double(x6));
  p[7] = WITH_VAR_STACK(scheme_make_double(x7));
  p[8] = WITH_VAR_STACK(bundle_symset_caret(x8));
  

  v = WITH_VAR_STACK(scheme_apply(method, 9, p));
  
  
  }
}

Bool os_wxMediaPasteboard::WriteFootersToFile(class wxMediaStreamOut* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "write-footers-to-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::WriteFootersToFile(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMediaStreamOut(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "write-footers-to-file in pasteboard%"", extracting return value"));
  }
}

Bool os_wxMediaPasteboard::WriteHeadersToFile(class wxMediaStreamOut* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "write-headers-to-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::WriteHeadersToFile(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMediaStreamOut(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "write-headers-to-file in pasteboard%"", extracting return value"));
  }
}

Bool os_wxMediaPasteboard::ReadFooterFromFile(class wxMediaStreamIn* x0, string x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "read-footer-from-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::ReadFooterFromFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMediaStreamIn(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_string((char *)x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "read-footer-from-file in pasteboard%"", extracting return value"));
  }
}

Bool os_wxMediaPasteboard::ReadHeaderFromFile(class wxMediaStreamIn* x0, string x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "read-header-from-file", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::ReadHeaderFromFile(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMediaStreamIn(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_string((char *)x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "read-header-from-file in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::SetFilename(nstring x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "set-filename", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::SetFilename(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_string((char *)x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

Bool os_wxMediaPasteboard::ReleaseSnip(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "release-snip", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::ReleaseSnip(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "release-snip in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::SetModified(Bool x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "set-modified", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::SetModified(x0);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::SetSnipData(class wxSnip* x0, class wxBufferData* x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(7);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  VAR_STACK_PUSH(6, x1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "set-snip-data", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::SetSnipData(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(objscheme_bundle_wxBufferData(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

class wxBufferData* os_wxMediaPasteboard::GetSnipData(class wxSnip* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "get-snip-data", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::GetSnipData(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_wxBufferData(v, "get-snip-data in pasteboard%"", extracting return value", 1));
  }
}

void os_wxMediaPasteboard::NeedsUpdate(class wxSnip* x0, float x1, float x2, nnfloat x3, nnfloat x4)
{
  Scheme_Object *p[5] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 5);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "needs-update", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::NeedsUpdate(x0, x1, x2, x3, x4);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  p[4] = WITH_VAR_STACK(scheme_make_double(x4));
  

  v = WITH_VAR_STACK(scheme_apply(method, 5, p));
  
  
  }
}

void os_wxMediaPasteboard::Resized(class wxSnip* x0, Bool x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "resized", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::Resized(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = (x1 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

void os_wxMediaPasteboard::SetCaretOwner(class wxSnip* x0, int x1)
{
  Scheme_Object *p[2] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 2);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "set-caret-owner", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::SetCaretOwner(x0, x1);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(bundle_symset_focus(x1));
  

  v = WITH_VAR_STACK(scheme_apply(method, 2, p));
  
  
  }
}

Bool os_wxMediaPasteboard::ScrollTo(class wxSnip* x0, float x1, float x2, nnfloat x3, nnfloat x4, Bool x5, int x6)
{
  Scheme_Object *p[7] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 7);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "scroll-to", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::ScrollTo(x0, x1, x2, x3, x4, x5, x6);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxSnip(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  p[4] = WITH_VAR_STACK(scheme_make_double(x4));
  p[5] = (x5 ? scheme_true : scheme_false);
  p[6] = WITH_VAR_STACK(bundle_symset_bias(x6));
  

  v = WITH_VAR_STACK(scheme_apply(method, 7, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_bool(v, "scroll-to in pasteboard%"", extracting return value"));
  }
}

void os_wxMediaPasteboard::OnDisplaySize()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-display-size", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnDisplaySize();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::OnChange()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-change", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnChange();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::OnFocus(Bool x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-focus", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnFocus(x0);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnDefaultChar(class wxKeyEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-default-char", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnDefaultChar(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxKeyEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnDefaultEvent(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-default-event", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnDefaultEvent(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnLocalChar(class wxKeyEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-local-char", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnLocalChar(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxKeyEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnLocalEvent(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-local-event", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnLocalEvent(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::SizeCacheInvalid()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "size-cache-invalid", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::SizeCacheInvalid();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::BlinkCaret()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "blink-caret", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::BlinkCaret();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  }
}

void os_wxMediaPasteboard::OwnCaret(Bool x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "own-caret", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OwnCaret(x0);
  } else {
  
  p[0] = (x0 ? scheme_true : scheme_false);
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::Refresh(float x0, float x1, nnfloat x2, nnfloat x3, int x4)
{
  Scheme_Object *p[5] INIT_NULLED_ARRAY({ NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT INA_comma NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(5);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 5);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "refresh", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::Refresh(x0, x1, x2, x3, x4);
  } else {
  
  p[0] = WITH_VAR_STACK(scheme_make_double(x0));
  p[1] = WITH_VAR_STACK(scheme_make_double(x1));
  p[2] = WITH_VAR_STACK(scheme_make_double(x2));
  p[3] = WITH_VAR_STACK(scheme_make_double(x3));
  p[4] = WITH_VAR_STACK(bundle_symset_caret(x4));
  

  v = WITH_VAR_STACK(scheme_apply(method, 5, p));
  
  
  }
}

class wxCursor* os_wxMediaPasteboard::AdjustCursor(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "adjust-cursor", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::AdjustCursor(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_wxCursor(v, "adjust-cursor in pasteboard%"", extracting return value", 1));
  }
}

void os_wxMediaPasteboard::OnChar(class wxKeyEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-char", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnChar(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxKeyEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::OnEvent(class wxMouseEvent* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "on-event", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::OnEvent(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMouseEvent(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

void os_wxMediaPasteboard::CopySelfTo(class wxMediaBuffer* x0)
{
  Scheme_Object *p[1] INIT_NULLED_ARRAY({ NULLED_OUT });
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(6);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  VAR_STACK_PUSH_ARRAY(2, p, 1);
  VAR_STACK_PUSH(5, x0);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "copy-self-to", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    ASSELF wxMediaPasteboard::CopySelfTo(x0);
  } else {
  
  p[0] = WITH_VAR_STACK(objscheme_bundle_wxMediaBuffer(x0));
  

  v = WITH_VAR_STACK(scheme_apply(method, 1, p));
  
  
  }
}

class wxMediaBuffer* os_wxMediaPasteboard::CopySelf()
{
  Scheme_Object **p = NULL;
  Scheme_Object *v;
  Scheme_Object *method INIT_NULLED_OUT;
#ifdef MZ_PRECISE_GC
  os_wxMediaPasteboard *sElF = this;
#endif
  static void *mcache = 0;

  SETUP_VAR_STACK(2);
  VAR_STACK_PUSH(0, method);
  VAR_STACK_PUSH(1, sElF);
  SET_VAR_STACK();

  method = objscheme_find_method((Scheme_Object *)__gc_external, os_wxMediaPasteboard_class, "copy-self", &mcache);
  if (!method || OBJSCHEME_PRIM_METHOD(method)) {
    SET_VAR_STACK();
    return ASSELF wxMediaPasteboard::CopySelf();
  } else {
  
  

  v = WITH_VAR_STACK(scheme_apply(method, 0, p));
  
  
  return WITH_VAR_STACK(objscheme_unbundle_wxMediaBuffer(v, "copy-self in pasteboard%"", extracting return value", 0));
  }
}

static Scheme_Object *os_wxMediaPasteboardSetScrollStep(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  nnfloat x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[0], "set-scroll-step in pasteboard%"));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetScrollStep(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardGetScrollStep(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  float r;
  objscheme_check_valid(obj);

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

  

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetScrollStep());

  
  
  return WITH_REMEMBERED_STACK(scheme_make_double(r));
}

static Scheme_Object *os_wxMediaPasteboardSetSelectionVisible(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "set-selection-visible in pasteboard%"));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetSelectionVisible(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardGetSelectionVisible(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);

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

  

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetSelectionVisible());

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardSetDragable(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "set-dragable in pasteboard%"));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetDragable(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardGetDragable(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);

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

  

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetDragable());

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterInteractiveResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-interactive-resize in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterInteractiveResize(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterInteractiveResize(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnInteractiveResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-interactive-resize in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnInteractiveResize(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnInteractiveResize(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanInteractiveResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-interactive-resize? in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanInteractiveResize(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanInteractiveResize(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterInteractiveMove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "after-interactive-move in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterInteractiveMove(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterInteractiveMove(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnInteractiveMove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "on-interactive-move in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnInteractiveMove(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnInteractiveMove(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanInteractiveMove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "can-interactive-move? in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanInteractiveMove(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanInteractiveMove(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardInteractiveAdjustResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  nnfloat _x1;
  nnfloat* x1 = &_x1;
  nnfloat _x2;
  nnfloat* x2 = &_x2;
  Scheme_Object *sbox_tmp;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "interactive-adjust-resize in pasteboard%", 0));
      *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-resize in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(sbox_tmp, "interactive-adjust-resize in pasteboard%"", extracting boxed argument")));
      *x2 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[2], "interactive-adjust-resize in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(sbox_tmp, "interactive-adjust-resize in pasteboard%"", extracting boxed argument")));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::InteractiveAdjustResize(x0, x1, x2));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->InteractiveAdjustResize(x0, x1, x2));

  
  if (n > 1)
    WITH_VAR_STACK(objscheme_set_box(p[1], WITH_VAR_STACK(scheme_make_double(_x1))));
  if (n > 2)
    WITH_VAR_STACK(objscheme_set_box(p[2], WITH_VAR_STACK(scheme_make_double(_x2))));
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardInteractiveAdjustMove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float _x1;
  float* x1 = &_x1;
  float _x2;
  float* x2 = &_x2;
  Scheme_Object *sbox_tmp;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "interactive-adjust-move in pasteboard%", 0));
      *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-move in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-move in pasteboard%"", extracting boxed argument")));
      *x2 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[2], "interactive-adjust-move in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-move in pasteboard%"", extracting boxed argument")));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::InteractiveAdjustMove(x0, x1, x2));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->InteractiveAdjustMove(x0, x1, x2));

  
  if (n > 1)
    WITH_VAR_STACK(objscheme_set_box(p[1], WITH_VAR_STACK(scheme_make_double(_x1))));
  if (n > 2)
    WITH_VAR_STACK(objscheme_set_box(p[2], WITH_VAR_STACK(scheme_make_double(_x2))));
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardInteractiveAdjustMouse(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  float _x0;
  float* x0 = &_x0;
  float _x1;
  float* x1 = &_x1;
  Scheme_Object *sbox_tmp;

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

  
      *x0 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[0], "interactive-adjust-mouse in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-mouse in pasteboard%"", extracting boxed argument")));
      *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "interactive-adjust-mouse in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "interactive-adjust-mouse in pasteboard%"", extracting boxed argument")));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::InteractiveAdjustMouse(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->InteractiveAdjustMouse(x0, x1));

  
  if (n > 0)
    WITH_VAR_STACK(objscheme_set_box(p[0], WITH_VAR_STACK(scheme_make_double(_x0))));
  if (n > 1)
    WITH_VAR_STACK(objscheme_set_box(p[1], WITH_VAR_STACK(scheme_make_double(_x1))));
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnDoubleClick(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxMouseEvent* x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-double-click in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[1], "on-double-click in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnDoubleClick(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnDoubleClick(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardAfterSelect(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-select in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "after-select in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterSelect(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterSelect(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnSelect(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-select in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "on-select in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnSelect(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnSelect(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanSelect(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-select? in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "can-select? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanSelect(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanSelect(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  nnfloat x1;
  nnfloat x2;
  Bool x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-resize in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[1], "after-resize in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "after-resize in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[3], "after-resize in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterResize(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterResize(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  nnfloat x1;
  nnfloat x2;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-resize in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[1], "on-resize in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "on-resize in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnResize(x0, x1, x2));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnResize(x0, x1, x2));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  nnfloat x1;
  nnfloat x2;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-resize? in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[1], "can-resize? in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "can-resize? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanResize(x0, x1, x2));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanResize(x0, x1, x2));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterMoveTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;
  Bool x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-move-to in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "after-move-to in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "after-move-to in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[3], "after-move-to in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterMoveTo(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterMoveTo(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnMoveTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;
  Bool x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-move-to in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "on-move-to in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "on-move-to in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[3], "on-move-to in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnMoveTo(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnMoveTo(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanMoveTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;
  Bool x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-move-to? in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "can-move-to? in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "can-move-to? in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[3], "can-move-to? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanMoveTo(x0, x1, x2, x3));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanMoveTo(x0, x1, x2, x3));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterDelete(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-delete in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterDelete(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterDelete(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnDelete(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-delete in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnDelete(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnDelete(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanDelete(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-delete? in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanDelete(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanDelete(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterInsert(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxSnip* x1 INIT_NULLED_OUT;
  float x2;
  float x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "after-insert in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "after-insert in pasteboard%", 1));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "after-insert in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_float(p[3], "after-insert in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterInsert(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterInsert(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnInsert(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxSnip* x1 INIT_NULLED_OUT;
  float x2;
  float x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "on-insert in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "on-insert in pasteboard%", 1));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "on-insert in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_float(p[3], "on-insert in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnInsert(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnInsert(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanInsert(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxSnip* x1 INIT_NULLED_OUT;
  float x2;
  float x3;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "can-insert? in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "can-insert? in pasteboard%", 1));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "can-insert? in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_float(p[3], "can-insert? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanInsert(x0, x1, x2, x3));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanInsert(x0, x1, x2, x3));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardFindNextSelectedSnip(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxSnip* r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "find-next-selected-snip in pasteboard%", 1));

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->FindNextSelectedSnip(x0));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxSnip(r));
}

static Scheme_Object *os_wxMediaPasteboardIsSelected(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "is-selected? in pasteboard%", 1));

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->IsSelected(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardFindSnip(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxSnip* r;
  objscheme_check_valid(obj);
  float x0;
  float x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_float(p[0], "find-snip in pasteboard%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "find-snip in pasteboard%"));

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->FindSnip(x0, x1));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxSnip(r));
}

static Scheme_Object *os_wxMediaPasteboardGetCenter(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  float _x0;
  float* x0 = &_x0;
  float _x1;
  float* x1 = &_x1;
  Scheme_Object *sbox_tmp;

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

  
      *x0 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[0], "get-center in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "get-center in pasteboard%"", extracting boxed argument")));
      *x1 = (sbox_tmp = WITH_VAR_STACK(objscheme_unbox(p[1], "get-center in pasteboard%")), WITH_VAR_STACK(objscheme_unbundle_float(sbox_tmp, "get-center in pasteboard%"", extracting boxed argument")));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetCenter(x0, x1));

  
  if (n > 0)
    WITH_VAR_STACK(objscheme_set_box(p[0], WITH_VAR_STACK(scheme_make_double(_x0))));
  if (n > 1)
    WITH_VAR_STACK(objscheme_set_box(p[1], WITH_VAR_STACK(scheme_make_double(_x1))));
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardRemoveSelected(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "remove-selected in pasteboard%", 0));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->RemoveSelected(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardNoSelected(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->NoSelected());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardAddSelected(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(2);
  PRE_VAR_STACK_PUSH(0, p);
  PRE_VAR_STACK_PUSH(1, obj);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  if ((n >= 1) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0))) {
    class wxSnip* x0 INIT_NULLED_OUT;

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

    
    if (n != 1) 
      WITH_VAR_STACK(scheme_wrong_count("add-selected in pasteboard% (snip% case)", 1, 1, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "add-selected in pasteboard% (snip% case)", 0));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AddSelected(x0));

    
    
  } else  {
    float x0;
    float x1;
    nnfloat x2;
    nnfloat x3;

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

    
    if (n != 4) 
      WITH_VAR_STACK(scheme_wrong_count("add-selected in pasteboard% (rectangle case)", 4, 4, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_float(p[0], "add-selected in pasteboard% (rectangle case)"));
    x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "add-selected in pasteboard% (rectangle case)"));
    x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "add-selected in pasteboard% (rectangle case)"));
    x3 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[3], "add-selected in pasteboard% (rectangle case)"));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AddSelected(x0, x1, x2, x3));

    
    
  }

  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardSetSelected(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "set-selected in pasteboard%", 0));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetSelected(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardChangeStyle(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(2);
  PRE_VAR_STACK_PUSH(0, p);
  PRE_VAR_STACK_PUSH(1, obj);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  if ((n >= 2) && WITH_REMEMBERED_STACK(objscheme_istype_wxStyleDelta(p[0], NULL, 1)) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[1], NULL, 1))) {
    class wxStyleDelta* x0 INIT_NULLED_OUT;
    class wxSnip* x1 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(4);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, obj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x1);

    
    if (n != 2) 
      WITH_VAR_STACK(scheme_wrong_count("change-style in pasteboard% (style-delta% and snip% case)", 2, 2, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxStyleDelta(p[0], "change-style in pasteboard% (style-delta% and snip% case)", 1));
    x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "change-style in pasteboard% (style-delta% and snip% case)", 1));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ChangeStyle(x0, x1));

    
    
  } else if ((n >= 1) && WITH_REMEMBERED_STACK(objscheme_istype_wxStyleDelta(p[0], NULL, 1))) {
    class wxStyleDelta* x0 INIT_NULLED_OUT;

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

    
    if (n != 1) 
      WITH_VAR_STACK(scheme_wrong_count("change-style in pasteboard% (style-delta% without position or snip% case)", 1, 1, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxStyleDelta(p[0], "change-style in pasteboard% (style-delta% without position or snip% case)", 1));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ChangeStyle(x0));

    
    
  } else  {
    class wxStyle* x0 INIT_NULLED_OUT;
    class wxSnip* x1 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(4);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, obj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x1);

    
    if ((n < 1) ||(n > 2)) 
      WITH_VAR_STACK(scheme_wrong_count("change-style in pasteboard% (style% case)", 1, 2, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxStyle(p[0], "change-style in pasteboard% (style% case)", 1));
    if (n > 1) {
      x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "change-style in pasteboard% (style% case)", 1));
    } else
      x1 = NULL;

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ChangeStyle(x0, x1));

    
    
  }

  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardSetAfter(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxSnip* x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "set-after in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "set-after in pasteboard%", 1));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetAfter(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardSetBefore(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxSnip* x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "set-before in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "set-before in pasteboard%", 1));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetBefore(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardLower(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "lower in pasteboard%", 0));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Lower(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardRaise(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "raise in pasteboard%", 0));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Raise(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardResize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  nnfloat x1;
  nnfloat x2;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "resize in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[1], "resize in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "resize in pasteboard%"));

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Resize(x0, x1, x2));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardMove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(2);
  PRE_VAR_STACK_PUSH(0, p);
  PRE_VAR_STACK_PUSH(1, obj);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  if ((n >= 1) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0))) {
    class wxSnip* x0 INIT_NULLED_OUT;
    float x1;
    float x2;

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

    
    if (n != 3) 
      WITH_VAR_STACK(scheme_wrong_count("move in pasteboard% (snip% case)", 3, 3, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "move in pasteboard% (snip% case)", 0));
    x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "move in pasteboard% (snip% case)"));
    x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "move in pasteboard% (snip% case)"));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Move(x0, x1, x2));

    
    
  } else  {
    float x0;
    float x1;

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

    
    if (n != 2) 
      WITH_VAR_STACK(scheme_wrong_count("move in pasteboard% (without snip% case)", 2, 2, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_float(p[0], "move in pasteboard% (without snip% case)"));
    x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "move in pasteboard% (without snip% case)"));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Move(x0, x1));

    
    
  }

  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardMoveTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "move-to in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "move-to in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "move-to in pasteboard%"));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->MoveTo(x0, x1, x2));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardRemove(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "remove in pasteboard%", 0));

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Remove(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardErase(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Erase());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardDoPaste(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  ExactLong x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[0], "do-paste in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::DoPaste(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->DoPaste(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardDoCopy(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  ExactLong x0;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[0], "do-copy in pasteboard%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "do-copy in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::DoCopy(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->DoCopy(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardDelete(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(2);
  PRE_VAR_STACK_PUSH(0, p);
  PRE_VAR_STACK_PUSH(1, obj);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  if ((n >= 1) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0))) {
    class wxSnip* x0 INIT_NULLED_OUT;

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

    
    if (n != 1) 
      WITH_VAR_STACK(scheme_wrong_count("delete in pasteboard% (snip% case)", 1, 1, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "delete in pasteboard% (snip% case)", 0));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Delete(x0));

    
    
  } else  {

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

    
    if (n != 0) 
      WITH_VAR_STACK(scheme_wrong_count("delete in pasteboard% (no argument case)", 0, 0, n, p));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Delete());

    
    
  }

  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardInsert(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  SETUP_PRE_VAR_STACK(2);
  PRE_VAR_STACK_PUSH(0, p);
  PRE_VAR_STACK_PUSH(1, obj);
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  if ((n >= 2) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0)) && WITH_REMEMBERED_STACK(objscheme_istype_number(p[1], NULL))) {
    class wxSnip* x0 INIT_NULLED_OUT;
    float x1;
    float x2;

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

    
    if (n != 3) 
      WITH_VAR_STACK(scheme_wrong_count("insert in pasteboard% (snip% with location case)", 3, 3, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "insert in pasteboard% (snip% with location case)", 0));
    x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "insert in pasteboard% (snip% with location case)"));
    x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "insert in pasteboard% (snip% with location case)"));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Insert(x0, x1, x2));

    
    
  } else if ((n >= 3) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0)) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[1], NULL, 1)) && WITH_REMEMBERED_STACK(objscheme_istype_number(p[2], NULL))) {
    class wxSnip* x0 INIT_NULLED_OUT;
    class wxSnip* x1 INIT_NULLED_OUT;
    float x2;
    float x3;

    SETUP_VAR_STACK_PRE_REMEMBERED(4);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, obj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x1);

    
    if (n != 4) 
      WITH_VAR_STACK(scheme_wrong_count("insert in pasteboard% (snip% with before-snip% and location case)", 4, 4, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "insert in pasteboard% (snip% with before-snip% and location case)", 0));
    x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "insert in pasteboard% (snip% with before-snip% and location case)", 1));
    x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "insert in pasteboard% (snip% with before-snip% and location case)"));
    x3 = WITH_VAR_STACK(objscheme_unbundle_float(p[3], "insert in pasteboard% (snip% with before-snip% and location case)"));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Insert(x0, x1, x2, x3));

    
    
  } else if ((n >= 2) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[0], NULL, 0)) && WITH_REMEMBERED_STACK(objscheme_istype_wxSnip(p[1], NULL, 1))) {
    class wxSnip* x0 INIT_NULLED_OUT;
    class wxSnip* x1 INIT_NULLED_OUT;

    SETUP_VAR_STACK_PRE_REMEMBERED(4);
    VAR_STACK_PUSH(0, p);
    VAR_STACK_PUSH(1, obj);
    VAR_STACK_PUSH(2, x0);
    VAR_STACK_PUSH(3, x1);

    
    if (n != 2) 
      WITH_VAR_STACK(scheme_wrong_count("insert in pasteboard% (snip% with before-snip% case)", 2, 2, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "insert in pasteboard% (snip% with before-snip% case)", 0));
    x1 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[1], "insert in pasteboard% (snip% with before-snip% case)", 1));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Insert(x0, x1));

    
    
  } else  {
    class wxSnip* x0 INIT_NULLED_OUT;

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

    
    if (n != 1) 
      WITH_VAR_STACK(scheme_wrong_count("insert in pasteboard% (snip% without position case)", 1, 1, n, p));
    x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "insert in pasteboard% (snip% without position case)", 0));

    
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Insert(x0));

    
    
  }

  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardGetFlattenedText(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  string r;
  objscheme_check_valid(obj);
  long _x0;
  long* x0 = &_x0;

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

  

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetFlattenedText(x0));

  
  
  return WITH_VAR_STACK(scheme_make_sized_string(r, _x0, 0));
}

static Scheme_Object *os_wxMediaPasteboardPutFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  nstring r;
  objscheme_check_valid(obj);
  nstring x0 INIT_NULLED_OUT;
  nstring x1 INIT_NULLED_OUT;

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

  
  x0 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[0], "put-file in pasteboard%"));
  x1 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[1], "put-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::PutFile(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->PutFile(x0, x1));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_string((char *)r));
}

static Scheme_Object *os_wxMediaPasteboardGetFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  nstring r;
  objscheme_check_valid(obj);
  nstring x0 INIT_NULLED_OUT;

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

  
  x0 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[0], "get-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::GetFile(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetFile(x0));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_string((char *)r));
}

static Scheme_Object *os_wxMediaPasteboardAfterEditSequence(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterEditSequence());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterEditSequence());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnEditSequence(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnEditSequence());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnEditSequence());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardAfterLoadFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "after-load-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterLoadFile(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterLoadFile(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnLoadFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  string x0 INIT_NULLED_OUT;
  int x1;

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

  
  x0 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[0], "on-load-file in pasteboard%"));
  x1 = WITH_VAR_STACK(unbundle_symset_fileType(p[1], "on-load-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnLoadFile(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnLoadFile(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanLoadFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  string x0 INIT_NULLED_OUT;
  int x1;

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

  
  x0 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[0], "can-load-file? in pasteboard%"));
  x1 = WITH_VAR_STACK(unbundle_symset_fileType(p[1], "can-load-file? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanLoadFile(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanLoadFile(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardAfterSaveFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "after-save-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AfterSaveFile(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AfterSaveFile(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnSaveFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  string x0 INIT_NULLED_OUT;
  int x1;

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

  
  x0 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[0], "on-save-file in pasteboard%"));
  x1 = WITH_VAR_STACK(unbundle_symset_fileType(p[1], "on-save-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnSaveFile(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnSaveFile(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCanSaveFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  string x0 INIT_NULLED_OUT;
  int x1;

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

  
  x0 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[0], "can-save-file? in pasteboard%"));
  x1 = WITH_VAR_STACK(unbundle_symset_fileType(p[1], "can-save-file? in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CanSaveFile(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CanSaveFile(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardOnNewBox(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxSnip* r;
  objscheme_check_valid(obj);
  int x0;

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

  
  x0 = WITH_VAR_STACK(unbundle_symset_bufferType(p[0], "on-new-box in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnNewBox(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnNewBox(x0));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxSnip(r));
}

static Scheme_Object *os_wxMediaPasteboardOnNewImageSnip(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxImageSnip* r;
  objscheme_check_valid(obj);
  nstring x0 INIT_NULLED_OUT;
  int x1;
  Bool x2;
  Bool x3;

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

  
  x0 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[0], "on-new-image-snip in pasteboard%"));
  x1 = WITH_VAR_STACK(unbundle_symset_bitmapType(p[1], "on-new-image-snip in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_bool(p[2], "on-new-image-snip in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_bool(p[3], "on-new-image-snip in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnNewImageSnip(x0, x1, x2, x3));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnNewImageSnip(x0, x1, x2, x3));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxImageSnip(r));
}

static Scheme_Object *os_wxMediaPasteboardInvalidateBitmapCache(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  float x0;
  float x1;
  float x2;
  float x3;

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

  
  if (n > 0) {
    x0 = WITH_VAR_STACK(objscheme_unbundle_float(p[0], "invalidate-bitmap-cache in pasteboard%"));
  } else
    x0 = 0.0;
  if (n > 1) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "invalidate-bitmap-cache in pasteboard%"));
  } else
    x1 = 0.0;
  if (n > 2) {
    x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_symbol_float(p[2], "end", "invalidate-bitmap-cache in pasteboard%"));
  } else
    x2 = -1.0;
  if (n > 3) {
    x3 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_symbol_float(p[3], "end", "invalidate-bitmap-cache in pasteboard%"));
  } else
    x3 = -1.0;

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::InvalidateBitmapCache(x0, x1, x2, x3));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->InvalidateBitmapCache(x0, x1, x2, x3));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnPaint(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;
  class wxDC* x1 INIT_NULLED_OUT;
  float x2;
  float x3;
  float x4;
  float x5;
  float x6;
  float x7;
  int x8;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "on-paint in pasteboard%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxDC(p[1], "on-paint in pasteboard%", 0));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "on-paint in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_float(p[3], "on-paint in pasteboard%"));
  x4 = WITH_VAR_STACK(objscheme_unbundle_float(p[4], "on-paint in pasteboard%"));
  x5 = WITH_VAR_STACK(objscheme_unbundle_float(p[5], "on-paint in pasteboard%"));
  x6 = WITH_VAR_STACK(objscheme_unbundle_float(p[6], "on-paint in pasteboard%"));
  x7 = WITH_VAR_STACK(objscheme_unbundle_float(p[7], "on-paint in pasteboard%"));
  x8 = WITH_VAR_STACK(unbundle_symset_caret(p[8], "on-paint in pasteboard%"));

  if (x1 && !x1->Ok()) WITH_VAR_STACK(scheme_arg_mismatch(METHODNAME("editor<%>","on-paint"), "bad device context: ", p[1]));
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnPaint(x0, x1, x2, x3, x4, x5, x6, x7, x8));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnPaint(x0, x1, x2, x3, x4, x5, x6, x7, x8));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardWriteFootersToFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamOut* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamOut(p[0], "write-footers-to-file in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::WriteFootersToFile(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->WriteFootersToFile(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardWriteHeadersToFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamOut* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamOut(p[0], "write-headers-to-file in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::WriteHeadersToFile(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->WriteHeadersToFile(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardReadFooterFromFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamIn* x0 INIT_NULLED_OUT;
  string x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamIn(p[0], "read-footer-from-file in pasteboard%", 0));
  x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[1], "read-footer-from-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::ReadFooterFromFile(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ReadFooterFromFile(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardReadHeaderFromFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamIn* x0 INIT_NULLED_OUT;
  string x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamIn(p[0], "read-header-from-file in pasteboard%", 0));
  x1 = (string)WITH_VAR_STACK(objscheme_unbundle_string(p[1], "read-header-from-file in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::ReadHeaderFromFile(x0, x1));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ReadHeaderFromFile(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardWriteToFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamOut* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamOut(p[0], "write-to-file in pasteboard%", 0));

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->WriteToFile(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardReadFromFile(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxMediaStreamIn* x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaStreamIn(p[0], "read-from-file in pasteboard%", 0));
  if (n > 1) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "read-from-file in pasteboard%"));
  } else
    x1 = FALSE;

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ReadFromFile(x0, x1));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardSetFilename(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  nstring x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = (nstring)WITH_VAR_STACK(objscheme_unbundle_nullable_string(p[0], "set-filename in pasteboard%"));
  if (n > 1) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "set-filename in pasteboard%"));
  } else
    x1 = FALSE;

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::SetFilename(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetFilename(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardReleaseSnip(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "release-snip in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::ReleaseSnip(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ReleaseSnip(x0));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardSetModified(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "set-modified in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::SetModified(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetModified(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardSetSnipData(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  class wxBufferData* x1 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "set-snip-data in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_wxBufferData(p[1], "set-snip-data in pasteboard%", 1));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::SetSnipData(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetSnipData(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardGetSnipData(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxBufferData* r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "get-snip-data in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::GetSnipData(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->GetSnipData(x0));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxBufferData(r));
}

static Scheme_Object *os_wxMediaPasteboardNeedsUpdate(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;
  nnfloat x3;
  nnfloat x4;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "needs-update in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "needs-update in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "needs-update in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[3], "needs-update in pasteboard%"));
  x4 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[4], "needs-update in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::NeedsUpdate(x0, x1, x2, x3, x4));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->NeedsUpdate(x0, x1, x2, x3, x4));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardResized(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  Bool x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "resized in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_bool(p[1], "resized in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::Resized(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Resized(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardSetCaretOwner(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  int x1;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "set-caret-owner in pasteboard%", 1));
  if (n > 1) {
    x1 = WITH_VAR_STACK(unbundle_symset_focus(p[1], "set-caret-owner in pasteboard%"));
  } else
    x1 = wxFOCUS_IMMEDIATE;

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::SetCaretOwner(x0, x1));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SetCaretOwner(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardScrollTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  Bool r;
  objscheme_check_valid(obj);
  class wxSnip* x0 INIT_NULLED_OUT;
  float x1;
  float x2;
  nnfloat x3;
  nnfloat x4;
  Bool x5;
  int x6;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxSnip(p[0], "scroll-to in pasteboard%", 0));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "scroll-to in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_float(p[2], "scroll-to in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[3], "scroll-to in pasteboard%"));
  x4 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[4], "scroll-to in pasteboard%"));
  x5 = WITH_VAR_STACK(objscheme_unbundle_bool(p[5], "scroll-to in pasteboard%"));
  if (n > 6) {
    x6 = WITH_VAR_STACK(unbundle_symset_bias(p[6], "scroll-to in pasteboard%"));
  } else
    x6 = 0;

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::ScrollTo(x0, x1, x2, x3, x4, x5, x6));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->ScrollTo(x0, x1, x2, x3, x4, x5, x6));

  
  
  return (r ? scheme_true : scheme_false);
}

static Scheme_Object *os_wxMediaPasteboardOnDisplaySize(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnDisplaySize());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnDisplaySize());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnChange(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnChange());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnChange());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnFocus(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "on-focus in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnFocus(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnFocus(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnDefaultChar(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxKeyEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxKeyEvent(p[0], "on-default-char in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnDefaultChar(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnDefaultChar(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnDefaultEvent(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "on-default-event in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnDefaultEvent(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnDefaultEvent(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnLocalChar(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxKeyEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxKeyEvent(p[0], "on-local-char in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnLocalChar(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnLocalChar(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnLocalEvent(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "on-local-event in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnLocalEvent(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnLocalEvent(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardFindFirstSnip(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxSnip* r;
  objscheme_check_valid(obj);

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

  

  
  r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->FindFirstSnip());

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxSnip(r));
}

static Scheme_Object *os_wxMediaPasteboardSizeCacheInvalid(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::SizeCacheInvalid());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->SizeCacheInvalid());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardBlinkCaret(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::BlinkCaret());
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->BlinkCaret());

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOwnCaret(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "own-caret in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OwnCaret(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OwnCaret(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardRefresh(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  float x0;
  float x1;
  nnfloat x2;
  nnfloat x3;
  int x4;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_float(p[0], "refresh in pasteboard%"));
  x1 = WITH_VAR_STACK(objscheme_unbundle_float(p[1], "refresh in pasteboard%"));
  x2 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[2], "refresh in pasteboard%"));
  x3 = WITH_VAR_STACK(objscheme_unbundle_nonnegative_float(p[3], "refresh in pasteboard%"));
  x4 = WITH_VAR_STACK(unbundle_symset_caret(p[4], "refresh in pasteboard%"));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::Refresh(x0, x1, x2, x3, x4));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Refresh(x0, x1, x2, x3, x4));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardAdjustCursor(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxCursor* r;
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "adjust-cursor in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::AdjustCursor(x0));
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->AdjustCursor(x0));

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxCursor(r));
}

static Scheme_Object *os_wxMediaPasteboardOnChar(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxKeyEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxKeyEvent(p[0], "on-char in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnChar(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnChar(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardOnEvent(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMouseEvent* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMouseEvent(p[0], "on-event in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::OnEvent(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->OnEvent(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCopySelfTo(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  class wxMediaBuffer* x0 INIT_NULLED_OUT;

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

  
  x0 = WITH_VAR_STACK(objscheme_unbundle_wxMediaBuffer(p[0], "copy-self-to in pasteboard%", 0));

  
  if (((Scheme_Class_Object *)obj)->primflag)
    WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CopySelfTo(x0));
  else
    WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CopySelfTo(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCopySelf(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  class wxMediaBuffer* r;
  objscheme_check_valid(obj);

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

  

  
  if (((Scheme_Class_Object *)obj)->primflag)
    r = WITH_VAR_STACK(((os_wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->wxMediaPasteboard::CopySelf());
  else
    r = WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->CopySelf());

  
  
  return WITH_REMEMBERED_STACK(objscheme_bundle_wxMediaBuffer(r));
}

static Scheme_Object *os_wxMediaPasteboardKill(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  ExactLong x0;

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

  
  if (n > 0) {
    x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[0], "kill in pasteboard%"));
  } else
    x0 = 0;

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Kill(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardPaste(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  ExactLong x0;

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

  
  if (n > 0) {
    x0 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[0], "paste in pasteboard%"));
  } else
    x0 = 0;

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Paste(x0));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCopy(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;
  ExactLong x1;

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

  
  if (n > 0) {
    x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "copy in pasteboard%"));
  } else
    x0 = FALSE;
  if (n > 1) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[1], "copy in pasteboard%"));
  } else
    x1 = 0;

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Copy(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboardCut(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  WXS_USE_ARGUMENT(n) WXS_USE_ARGUMENT(p)
  REMEMBER_VAR_STACK();
  objscheme_check_valid(obj);
  Bool x0;
  ExactLong x1;

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

  
  if (n > 0) {
    x0 = WITH_VAR_STACK(objscheme_unbundle_bool(p[0], "cut in pasteboard%"));
  } else
    x0 = FALSE;
  if (n > 1) {
    x1 = WITH_VAR_STACK(objscheme_unbundle_ExactLong(p[1], "cut in pasteboard%"));
  } else
    x1 = 0;

  
  WITH_VAR_STACK(((wxMediaPasteboard *)((Scheme_Class_Object *)obj)->primdata)->Cut(x0, x1));

  
  
  return scheme_void;
}

static Scheme_Object *os_wxMediaPasteboard_ConstructScheme(Scheme_Object *obj, int n,  Scheme_Object *p[])
{
  SETUP_PRE_VAR_STACK(1);
  PRE_VAR_STACK_PUSH(0, obj);
  os_wxMediaPasteboard *realobj INIT_NULLED_OUT;
  REMEMBER_VAR_STACK();

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

  
  if (n != 0) 
    WITH_VAR_STACK(scheme_wrong_count("initialization in pasteboard%", 0, 0, n, p));

  
  realobj = WITH_VAR_STACK(new os_wxMediaPasteboard CONSTRUCTOR_ARGS(()));
#ifdef MZ_PRECISE_GC
  WITH_VAR_STACK(realobj->gcInit_wxMediaPasteboard());
#endif
  realobj->__gc_external = (void *)obj;
  objscheme_note_creation(obj);
  
  
  ((Scheme_Class_Object *)obj)->primdata = realobj;
  WITH_REMEMBERED_STACK(objscheme_register_primpointer(obj, &((Scheme_Class_Object *)obj)->primdata));
  ((Scheme_Class_Object *)obj)->primflag = 1;
  return obj;
}

void objscheme_setup_wxMediaPasteboard(void *env)
{
  SETUP_VAR_STACK(1);
  VAR_STACK_PUSH(0, env);

  wxREGGLOB(os_wxMediaPasteboard_class);

  os_wxMediaPasteboard_class = WITH_VAR_STACK(objscheme_def_prim_class(env, "pasteboard%", "editor%", os_wxMediaPasteboard_ConstructScheme, 104));

  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-scroll-step", os_wxMediaPasteboardSetScrollStep, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-scroll-step", os_wxMediaPasteboardGetScrollStep, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-selection-visible", os_wxMediaPasteboardSetSelectionVisible, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-selection-visible", os_wxMediaPasteboardGetSelectionVisible, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-dragable", os_wxMediaPasteboardSetDragable, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-dragable", os_wxMediaPasteboardGetDragable, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-interactive-resize", os_wxMediaPasteboardAfterInteractiveResize, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-interactive-resize", os_wxMediaPasteboardOnInteractiveResize, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-interactive-resize?", os_wxMediaPasteboardCanInteractiveResize, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-interactive-move", os_wxMediaPasteboardAfterInteractiveMove, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-interactive-move", os_wxMediaPasteboardOnInteractiveMove, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-interactive-move?", os_wxMediaPasteboardCanInteractiveMove, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "interactive-adjust-resize", os_wxMediaPasteboardInteractiveAdjustResize, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "interactive-adjust-move", os_wxMediaPasteboardInteractiveAdjustMove, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "interactive-adjust-mouse", os_wxMediaPasteboardInteractiveAdjustMouse, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-double-click", os_wxMediaPasteboardOnDoubleClick, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-select", os_wxMediaPasteboardAfterSelect, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-select", os_wxMediaPasteboardOnSelect, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-select?", os_wxMediaPasteboardCanSelect, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-resize", os_wxMediaPasteboardAfterResize, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-resize", os_wxMediaPasteboardOnResize, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-resize?", os_wxMediaPasteboardCanResize, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-move-to", os_wxMediaPasteboardAfterMoveTo, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-move-to", os_wxMediaPasteboardOnMoveTo, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-move-to?", os_wxMediaPasteboardCanMoveTo, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-delete", os_wxMediaPasteboardAfterDelete, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-delete", os_wxMediaPasteboardOnDelete, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-delete?", os_wxMediaPasteboardCanDelete, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-insert", os_wxMediaPasteboardAfterInsert, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-insert", os_wxMediaPasteboardOnInsert, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-insert?", os_wxMediaPasteboardCanInsert, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "find-next-selected-snip", os_wxMediaPasteboardFindNextSelectedSnip, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "is-selected?", os_wxMediaPasteboardIsSelected, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "find-snip", os_wxMediaPasteboardFindSnip, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-center", os_wxMediaPasteboardGetCenter, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "remove-selected", os_wxMediaPasteboardRemoveSelected, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "no-selected", os_wxMediaPasteboardNoSelected, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "add-selected", os_wxMediaPasteboardAddSelected, 1, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-selected", os_wxMediaPasteboardSetSelected, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "change-style", os_wxMediaPasteboardChangeStyle, 1, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-after", os_wxMediaPasteboardSetAfter, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-before", os_wxMediaPasteboardSetBefore, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "lower", os_wxMediaPasteboardLower, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "raise", os_wxMediaPasteboardRaise, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "resize", os_wxMediaPasteboardResize, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "move", os_wxMediaPasteboardMove, 2, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "move-to", os_wxMediaPasteboardMoveTo, 3, 3));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "remove", os_wxMediaPasteboardRemove, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "erase", os_wxMediaPasteboardErase, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "do-paste", os_wxMediaPasteboardDoPaste, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "do-copy", os_wxMediaPasteboardDoCopy, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "delete", os_wxMediaPasteboardDelete, 0, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "insert", os_wxMediaPasteboardInsert, 1, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-flattened-text", os_wxMediaPasteboardGetFlattenedText, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "put-file", os_wxMediaPasteboardPutFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-file", os_wxMediaPasteboardGetFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-edit-sequence", os_wxMediaPasteboardAfterEditSequence, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-edit-sequence", os_wxMediaPasteboardOnEditSequence, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-load-file", os_wxMediaPasteboardAfterLoadFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-load-file", os_wxMediaPasteboardOnLoadFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-load-file?", os_wxMediaPasteboardCanLoadFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "after-save-file", os_wxMediaPasteboardAfterSaveFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-save-file", os_wxMediaPasteboardOnSaveFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "can-save-file?", os_wxMediaPasteboardCanSaveFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-new-box", os_wxMediaPasteboardOnNewBox, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-new-image-snip", os_wxMediaPasteboardOnNewImageSnip, 4, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "invalidate-bitmap-cache", os_wxMediaPasteboardInvalidateBitmapCache, 0, 4));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-paint", os_wxMediaPasteboardOnPaint, 9, 9));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "write-footers-to-file", os_wxMediaPasteboardWriteFootersToFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "write-headers-to-file", os_wxMediaPasteboardWriteHeadersToFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "read-footer-from-file", os_wxMediaPasteboardReadFooterFromFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "read-header-from-file", os_wxMediaPasteboardReadHeaderFromFile, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "write-to-file", os_wxMediaPasteboardWriteToFile, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "read-from-file", os_wxMediaPasteboardReadFromFile, 1, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-filename", os_wxMediaPasteboardSetFilename, 1, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "release-snip", os_wxMediaPasteboardReleaseSnip, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-modified", os_wxMediaPasteboardSetModified, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-snip-data", os_wxMediaPasteboardSetSnipData, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "get-snip-data", os_wxMediaPasteboardGetSnipData, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "needs-update", os_wxMediaPasteboardNeedsUpdate, 5, 5));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "resized", os_wxMediaPasteboardResized, 2, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "set-caret-owner", os_wxMediaPasteboardSetCaretOwner, 1, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "scroll-to", os_wxMediaPasteboardScrollTo, 6, 7));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-display-size", os_wxMediaPasteboardOnDisplaySize, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-change", os_wxMediaPasteboardOnChange, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-focus", os_wxMediaPasteboardOnFocus, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-default-char", os_wxMediaPasteboardOnDefaultChar, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-default-event", os_wxMediaPasteboardOnDefaultEvent, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-local-char", os_wxMediaPasteboardOnLocalChar, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-local-event", os_wxMediaPasteboardOnLocalEvent, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "find-first-snip", os_wxMediaPasteboardFindFirstSnip, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "size-cache-invalid", os_wxMediaPasteboardSizeCacheInvalid, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "blink-caret", os_wxMediaPasteboardBlinkCaret, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "own-caret", os_wxMediaPasteboardOwnCaret, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "refresh", os_wxMediaPasteboardRefresh, 5, 5));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "adjust-cursor", os_wxMediaPasteboardAdjustCursor, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-char", os_wxMediaPasteboardOnChar, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "on-event", os_wxMediaPasteboardOnEvent, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "copy-self-to", os_wxMediaPasteboardCopySelfTo, 1, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "copy-self", os_wxMediaPasteboardCopySelf, 0, 0));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "kill", os_wxMediaPasteboardKill, 0, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "paste", os_wxMediaPasteboardPaste, 0, 1));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "copy", os_wxMediaPasteboardCopy, 0, 2));
  WITH_VAR_STACK(scheme_add_method_w_arity(os_wxMediaPasteboard_class, "cut", os_wxMediaPasteboardCut, 0, 2));


  WITH_VAR_STACK(scheme_made_class(os_wxMediaPasteboard_class));

  WITH_VAR_STACK(objscheme_install_bundler((Objscheme_Bundler)objscheme_bundle_wxMediaPasteboard, wxTYPE_MEDIA_PASTEBOARD));

}

int objscheme_istype_wxMediaPasteboard(Scheme_Object *obj, const char *stop, int nullOK)
{
  REMEMBER_VAR_STACK();
  if (nullOK && XC_SCHEME_NULLP(obj)) return 1;
  if (SAME_TYPE(SCHEME_TYPE(obj), scheme_object_type)
      && scheme_is_subclass(((Scheme_Class_Object *)obj)->sclass,          os_wxMediaPasteboard_class))
    return 1;
  else {
    if (!stop)
       return 0;
    WITH_REMEMBERED_STACK(scheme_wrong_type(stop, nullOK ? "pasteboard% object or " XC_NULL_STR: "pasteboard% object", -1, 0, &obj));
    return 0;
  }
}

Scheme_Object *objscheme_bundle_wxMediaPasteboard(class wxMediaPasteboard *realobj)
{
  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_MEDIA_PASTEBOARD) && (sobj = WITH_VAR_STACK(objscheme_bundle_by_type(realobj, realobj->__type))))
    return sobj;
  obj = (Scheme_Class_Object *)WITH_VAR_STACK(scheme_make_uninited_object(os_wxMediaPasteboard_class));

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

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

class wxMediaPasteboard *objscheme_unbundle_wxMediaPasteboard(Scheme_Object *obj, const char *where, int nullOK)
{
  if (nullOK && XC_SCHEME_NULLP(obj)) return NULL;

  REMEMBER_VAR_STACK();

  (void)objscheme_istype_wxMediaPasteboard(obj, where, nullOK);
  Scheme_Class_Object *o = (Scheme_Class_Object *)obj;
  WITH_REMEMBERED_STACK(objscheme_check_valid(obj));
  if (o->primflag)
    return (os_wxMediaPasteboard *)o->primdata;
  else
    return (wxMediaPasteboard *)o->primdata;
}

#ifdef MZ_PRECISE_GC
END_XFORM_SKIP;
#endif
