/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (https://www.swig.org).
 * Version 4.3.1
 *
 * Do not make changes to this file unless you know what you are doing - modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

#ifndef SWIG_fltk_WRAP_H_
#define SWIG_fltk_WRAP_H_

#include <map>
#include <string>


class SwigDirector_Fl_Image : public Fl_Image, public Swig::Director {

public:
    SwigDirector_Fl_Image(PyObject *self,int W,int H,int D);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_RGB_Image : public Fl_RGB_Image, public Swig::Director {

public:
    SwigDirector_Fl_RGB_Image(PyObject *self,uchar const *bits,int W,int H,int D=3,int LD=0);
    SwigDirector_Fl_RGB_Image(PyObject *self,uchar const *bits,int bits_length,int W,int H,int D,int LD);
    SwigDirector_Fl_RGB_Image(PyObject *self,Fl_Pixmap const *pxm,Fl_Color bg=FL_BACKGROUND_COLOR);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_RGB_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_RGB_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Callback_User_Data : public Fl_Callback_User_Data, public Swig::Director {

public:
    SwigDirector_Fl_Callback_User_Data(PyObject *self);
    virtual ~SwigDirector_Fl_Callback_User_Data();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;
};


class SwigDirector_Fl_Widget : public Fl_Widget, public Swig::Director {

public:
    SwigDirector_Fl_Widget(PyObject *self,int x,int y,int w,int h,char const *label=0L);
    virtual ~SwigDirector_Fl_Widget();
    virtual void draw();
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Widget doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Group : public Fl_Group, public Swig::Director {

public:
    SwigDirector_Fl_Group(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Group();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Group::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Group doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Browser_ : public Fl_Browser_, public Swig::Director {

public:
    SwigDirector_Fl_Browser_(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Browser_();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_next(void *item) const;
    virtual void *item_prev(void *item) const;
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser_::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_width(void *item) const;
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser_::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser_::item_swap(a,b);
    }
    virtual void *item_at(int index) const;
    virtual void *item_atSwigPublic(int index) const {
      return Fl_Browser_::item_at(index);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser_::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser_::incr_height();
    }
    virtual void item_select(void *item,int val=1);
    virtual void item_selectSwigPublic(void *item,int val=1) {
      Fl_Browser_::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser_::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Browser_ doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Browser : public Fl_Browser, public Swig::Director {

public:
    SwigDirector_Fl_Browser(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Browser::item_first();
    }
    virtual void *item_next(void *item) const;
    virtual void *item_nextSwigPublic(void *item) const {
      return Fl_Browser::item_next(item);
    }
    virtual void *item_prev(void *item) const;
    virtual void *item_prevSwigPublic(void *item) const {
      return Fl_Browser::item_prev(item);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_heightSwigPublic(void *item) const {
      return Fl_Browser::item_height(item);
    }
    virtual int item_width(void *item) const;
    virtual int item_widthSwigPublic(void *item) const {
      return Fl_Browser::item_width(item);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual void item_drawSwigPublic(void *item,int X,int Y,int W,int H) const {
      Fl_Browser::item_draw(item,X,Y,W,H);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser::item_swap(a,b);
    }
    virtual void *item_at(int line) const;
    virtual void *item_atSwigPublic(int line) const {
      return Fl_Browser::item_at(line);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser::incr_height();
    }
    virtual void item_select(void *item,int val);
    virtual void item_selectSwigPublic(void *item,int val) {
      Fl_Browser::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_File_Browser : public Fl_File_Browser, public Swig::Director {

public:
    SwigDirector_Fl_File_Browser(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_File_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Browser::item_first();
    }
    virtual void *item_next(void *item) const;
    virtual void *item_nextSwigPublic(void *item) const {
      return Fl_Browser::item_next(item);
    }
    virtual void *item_prev(void *item) const;
    virtual void *item_prevSwigPublic(void *item) const {
      return Fl_Browser::item_prev(item);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_heightSwigPublic(void *item) const {
      return Fl_Browser::item_height(item);
    }
    virtual int item_width(void *item) const;
    virtual int item_widthSwigPublic(void *item) const {
      return Fl_Browser::item_width(item);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual void item_drawSwigPublic(void *item,int X,int Y,int W,int H) const {
      Fl_Browser::item_draw(item,X,Y,W,H);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser::item_swap(a,b);
    }
    virtual void *item_at(int line) const;
    virtual void *item_atSwigPublic(int line) const {
      return Fl_Browser::item_at(line);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser::incr_height();
    }
    virtual void item_select(void *item,int val);
    virtual void item_selectSwigPublic(void *item,int val) {
      Fl_Browser::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_File_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Valuator : public Fl_Valuator, public Swig::Director {

public:
    SwigDirector_Fl_Valuator(PyObject *self,int X,int Y,int W,int H,char const *L);
    virtual ~SwigDirector_Fl_Valuator();
    virtual void draw();
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Valuator doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Adjuster : public Fl_Adjuster, public Swig::Director {

public:
    SwigDirector_Fl_Adjuster(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Adjuster();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Adjuster::draw();
    }
    virtual int handle(int arg0);
    virtual int handleSwigPublic(int arg0) {
      return Fl_Adjuster::handle(arg0);
    }
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Adjuster doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Bitmap : public Fl_Bitmap, public Swig::Director {

public:
    SwigDirector_Fl_Bitmap(PyObject *self,uchar const *bits,int W,int H);
    SwigDirector_Fl_Bitmap(PyObject *self,uchar const *bits,int bits_length,int W,int H);
    SwigDirector_Fl_Bitmap(PyObject *self,char const *bits,int bits_length,int W,int H);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Bitmap();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Bitmap doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_BMP_Image : public Fl_BMP_Image, public Swig::Director {

public:
    SwigDirector_Fl_BMP_Image(PyObject *self,char const *filename);
    SwigDirector_Fl_BMP_Image(PyObject *self,char const *imagename,unsigned char const *data,long const length=-1);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_BMP_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_BMP_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Box : public Fl_Box, public Swig::Director {

public:
    SwigDirector_Fl_Box(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    SwigDirector_Fl_Box(PyObject *self,Fl_Boxtype B,int X,int Y,int W,int H,char const *L);
    virtual ~SwigDirector_Fl_Box();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Box::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Box doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Button : public Fl_Button, public Swig::Director {

public:
    SwigDirector_Fl_Button(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Shortcut_Button : public Fl_Shortcut_Button, public Swig::Director {

public:
    SwigDirector_Fl_Shortcut_Button(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Shortcut_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Shortcut_Button::draw();
    }
    virtual int handle(int arg0);
    virtual int handleSwigPublic(int arg0) {
      return Fl_Shortcut_Button::handle(arg0);
    }
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Shortcut_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Chart : public Fl_Chart, public Swig::Director {

public:
    SwigDirector_Fl_Chart(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Chart();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Chart::draw();
    }
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Chart doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Check_Browser : public Fl_Check_Browser, public Swig::Director {

public:
    SwigDirector_Fl_Check_Browser(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Check_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int arg0);
    virtual int handleSwigPublic(int arg0) {
      return Fl_Check_Browser::handle(arg0);
    }
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Check_Browser::item_first();
    }
    virtual void *item_next(void *arg0) const;
    virtual void *item_nextSwigPublic(void *arg0) const {
      return Fl_Check_Browser::item_next(arg0);
    }
    virtual void *item_prev(void *arg0) const;
    virtual void *item_prevSwigPublic(void *arg0) const {
      return Fl_Check_Browser::item_prev(arg0);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser_::item_last();
    }
    virtual int item_height(void *arg0) const;
    virtual int item_heightSwigPublic(void *arg0) const {
      return Fl_Check_Browser::item_height(arg0);
    }
    virtual int item_width(void *arg0) const;
    virtual int item_widthSwigPublic(void *arg0) const {
      return Fl_Check_Browser::item_width(arg0);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *arg0,int arg1,int arg2,int arg3,int arg4) const;
    virtual void item_drawSwigPublic(void *arg0,int arg1,int arg2,int arg3,int arg4) const {
      Fl_Check_Browser::item_draw(arg0,arg1,arg2,arg3,arg4);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Check_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void *item_at(int index) const;
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser_::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser_::incr_height();
    }
    virtual void item_select(void *arg0,int arg1);
    virtual void item_selectSwigPublic(void *arg0,int arg1) {
      Fl_Check_Browser::item_select(arg0,arg1);
    }
    virtual int item_selected(void *arg0) const;
    virtual int item_selectedSwigPublic(void *arg0) const {
      return Fl_Check_Browser::item_selected(arg0);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Check_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Light_Button : public Fl_Light_Button, public Swig::Director {

public:
    SwigDirector_Fl_Light_Button(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Light_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Light_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Light_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Check_Button : public Fl_Check_Button, public Swig::Director {

public:
    SwigDirector_Fl_Check_Button(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Check_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Light_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Check_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Menu_ : public Fl_Menu_, public Swig::Director {

public:
    SwigDirector_Fl_Menu_(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Menu_();
    virtual void draw();
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Menu_ doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Choice : public Fl_Choice, public Swig::Director {

public:
    SwigDirector_Fl_Choice(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Choice();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Choice::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Choice doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Clock_Output : public Fl_Clock_Output, public Swig::Director {

public:
    SwigDirector_Fl_Clock_Output(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Clock_Output();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Clock_Output::draw();
    }
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Clock_Output doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Clock : public Fl_Clock, public Swig::Director {

public:
    SwigDirector_Fl_Clock(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    SwigDirector_Fl_Clock(PyObject *self,uchar t,int X,int Y,int W,int H,char const *L);
    virtual ~SwigDirector_Fl_Clock();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Clock_Output::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Clock doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Value_Input : public Fl_Value_Input, public Swig::Director {

public:
    SwigDirector_Fl_Value_Input(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Value_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Value_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Value_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Flcc_HueBox : public Flcc_HueBox, public Swig::Director {

public:
    SwigDirector_Flcc_HueBox(PyObject *self,int X,int Y,int W,int H);
    virtual ~SwigDirector_Flcc_HueBox();
    virtual void draw();
    virtual void drawSwigPublic() {
      Flcc_HueBox::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Flcc_HueBox doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Flcc_ValueBox : public Flcc_ValueBox, public Swig::Director {

public:
    SwigDirector_Flcc_ValueBox(PyObject *self,int X,int Y,int W,int H);
    virtual ~SwigDirector_Flcc_ValueBox();
    virtual void draw();
    virtual void drawSwigPublic() {
      Flcc_ValueBox::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Flcc_ValueBox doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Flcc_Value_Input : public Flcc_Value_Input, public Swig::Director {

public:
    SwigDirector_Flcc_Value_Input(PyObject *self,int X,int Y,int W,int H);
    virtual ~SwigDirector_Flcc_Value_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Value_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *arg0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Flcc_Value_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Color_Chooser : public Fl_Color_Chooser, public Swig::Director {

public:
    SwigDirector_Fl_Color_Chooser(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Color_Chooser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Group::draw();
    }
    virtual int handle(int e);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Color_Chooser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Counter : public Fl_Counter, public Swig::Director {

public:
    SwigDirector_Fl_Counter(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Counter();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Counter::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Counter doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Plugin : public Fl_Plugin, public Swig::Director {

public:
    SwigDirector_Fl_Plugin(PyObject *self,char const *klass,char const *name);
    virtual ~SwigDirector_Fl_Plugin();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;
};


class SwigDirector_Fl_Surface_Device : public Fl_Surface_Device, public Swig::Director {

public:
    SwigDirector_Fl_Surface_Device(PyObject *self,Fl_Graphics_Driver *graphics_driver);
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_Surface_Device();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Surface_Device doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[3];
#endif

};


class SwigDirector_Fl_Display_Device : public Fl_Display_Device, public Swig::Director {

public:
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_Display_Device();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Display_Device doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[3];
#endif

};


class SwigDirector_Fl_Device_Plugin : public Fl_Device_Plugin, public Swig::Director {

public:
    SwigDirector_Fl_Device_Plugin(PyObject *self,char const *pluginName);
    virtual ~SwigDirector_Fl_Device_Plugin();
    virtual char const *klass();
    virtual char const *name();
    virtual int print(Fl_Widget *w);
    virtual Fl_RGB_Image *rectangle_capture(Fl_Widget *widget,int x,int y,int w,int h);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Device_Plugin doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[4];
#endif

};


class SwigDirector_Fl_Dial : public Fl_Dial, public Swig::Director {

public:
    SwigDirector_Fl_Dial(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Dial();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Dial::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Dial doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Window : public Fl_Window, public Swig::Director {

public:
    SwigDirector_Fl_Window(PyObject *self,int w,int h,char const *title=0);
    SwigDirector_Fl_Window(PyObject *self,int x,int y,int w,int h,char const *title=0);
    virtual ~SwigDirector_Fl_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Double_Window : public Fl_Double_Window, public Swig::Director {

public:
    SwigDirector_Fl_Double_Window(PyObject *self,int W,int H,char const *l=0);
    SwigDirector_Fl_Double_Window(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Double_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Double_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Input_ : public Fl_Input_, public Swig::Director {

public:
    SwigDirector_Fl_Input_(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Input_();
    virtual void draw();
    virtual int handle(int event);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Input_ doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Input : public Fl_Input, public Swig::Director {

public:
    SwigDirector_Fl_Input(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_File_Input : public Fl_File_Input, public Swig::Director {

public:
    SwigDirector_Fl_File_Input(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_File_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_File_Input::draw();
    }
    virtual int handle(int event);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_File_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Fill_Dial : public Fl_Fill_Dial, public Swig::Director {

public:
    SwigDirector_Fl_Fill_Dial(PyObject *self,int X,int Y,int W,int H,char const *L=NULL);
    virtual ~SwigDirector_Fl_Fill_Dial();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Dial::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Fill_Dial doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Slider : public Fl_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Slider(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    SwigDirector_Fl_Slider(PyObject *self,uchar t,int X,int Y,int W,int H,char const *L);
    virtual ~SwigDirector_Fl_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Fill_Slider : public Fl_Fill_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Fill_Slider(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Fill_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Fill_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Flex : public Fl_Flex, public Swig::Director {

public:
    SwigDirector_Fl_Flex(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    SwigDirector_Fl_Flex(PyObject *self,int direction);
    SwigDirector_Fl_Flex(PyObject *self,int w,int h,int direction);
    SwigDirector_Fl_Flex(PyObject *self,int x,int y,int w,int h,int direction);
    virtual ~SwigDirector_Fl_Flex();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Flex::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Flex::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void end();
    virtual int alloc_size(int size) const;
    virtual int alloc_sizeSwigPublic(int size) const {
      return Fl_Flex::alloc_size(size);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Flex doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Float_Input : public Fl_Float_Input, public Swig::Director {

public:
    SwigDirector_Fl_Float_Input(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Float_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Float_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Pixmap : public Fl_Pixmap, public Swig::Director {

public:
    SwigDirector_Fl_Pixmap(PyObject *self,char const *const *D);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Pixmap();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Pixmap doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_Grid : public Fl_Grid, public Swig::Director {

public:
    SwigDirector_Fl_Grid(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Grid();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Grid::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Grid::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void layout(int rows,int cols,int margin=-1,int gap=-1);
    virtual void layout();
    virtual void clear_layout();
    virtual void draw_grid();
    virtual void draw_gridSwigPublic() {
      Fl_Grid::draw_grid();
    }
    virtual void margin(int left,int top=-1,int right=-1,int bottom=-1);
    virtual void gap(int row_gap,int col_gap=-1);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Grid doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[20];
#endif

};


class SwigDirector_Fl_GIF_Image : public Fl_GIF_Image, public Swig::Director {

public:
    SwigDirector_Fl_GIF_Image(PyObject *self,char const *filename);
    SwigDirector_Fl_GIF_Image(PyObject *self,char const *imagename,unsigned char const *data);
    SwigDirector_Fl_GIF_Image(PyObject *self,char const *imagename,unsigned char const *data,size_t const length);
    SwigDirector_Fl_GIF_Image(PyObject *self,char const *filename,bool anim);
    SwigDirector_Fl_GIF_Image(PyObject *self,char const *imagename,unsigned char const *data,size_t const length,bool anim);
    SwigDirector_Fl_GIF_Image(PyObject *self);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_GIF_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_GIF_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_Anim_GIF_Image : public Fl_Anim_GIF_Image, public Swig::Director {

public:
    SwigDirector_Fl_Anim_GIF_Image(PyObject *self,char const *filename,Fl_Widget *canvas=0,unsigned short flags=0);
    SwigDirector_Fl_Anim_GIF_Image(PyObject *self,char const *imagename,unsigned char const *data,size_t const length,Fl_Widget *canvas=0,unsigned short flags=0);
    SwigDirector_Fl_Anim_GIF_Image(PyObject *self);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Anim_GIF_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int x,int y,int w,int h,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Anim_GIF_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_ICO_Image : public Fl_ICO_Image, public Swig::Director {

public:
    SwigDirector_Fl_ICO_Image(PyObject *self,char const *filename,int id=-1,unsigned char const *data=NULL,size_t const datasize=0);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_ICO_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_ICO_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Gl_Window : public Fl_Gl_Window, public Swig::Director {

public:
    SwigDirector_Fl_Gl_Window(PyObject *self,int W,int H,char const *l=0);
    SwigDirector_Fl_Gl_Window(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Gl_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Gl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Gl_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Help_View : public Fl_Help_View, public Swig::Director {

public:
    SwigDirector_Fl_Help_View(PyObject *self,int xx,int yy,int ww,int hh,char const *l=0);
    virtual ~SwigDirector_Fl_Help_View();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Help_View::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Help_View doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Hold_Browser : public Fl_Hold_Browser, public Swig::Director {

public:
    SwigDirector_Fl_Hold_Browser(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Hold_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Browser::item_first();
    }
    virtual void *item_next(void *item) const;
    virtual void *item_nextSwigPublic(void *item) const {
      return Fl_Browser::item_next(item);
    }
    virtual void *item_prev(void *item) const;
    virtual void *item_prevSwigPublic(void *item) const {
      return Fl_Browser::item_prev(item);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_heightSwigPublic(void *item) const {
      return Fl_Browser::item_height(item);
    }
    virtual int item_width(void *item) const;
    virtual int item_widthSwigPublic(void *item) const {
      return Fl_Browser::item_width(item);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual void item_drawSwigPublic(void *item,int X,int Y,int W,int H) const {
      Fl_Browser::item_draw(item,X,Y,W,H);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser::item_swap(a,b);
    }
    virtual void *item_at(int line) const;
    virtual void *item_atSwigPublic(int line) const {
      return Fl_Browser::item_at(line);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser::incr_height();
    }
    virtual void item_select(void *item,int val);
    virtual void item_selectSwigPublic(void *item,int val) {
      Fl_Browser::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Hold_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Hor_Fill_Slider : public Fl_Hor_Fill_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Hor_Fill_Slider(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Hor_Fill_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Hor_Fill_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Hor_Nice_Slider : public Fl_Hor_Nice_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Hor_Nice_Slider(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Hor_Nice_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Hor_Nice_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Hor_Slider : public Fl_Hor_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Hor_Slider(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Hor_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Hor_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Value_Slider : public Fl_Value_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Value_Slider(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Value_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Value_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Value_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Hor_Value_Slider : public Fl_Hor_Value_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Hor_Value_Slider(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Hor_Value_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Value_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Hor_Value_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Int_Input : public Fl_Int_Input, public Swig::Director {

public:
    SwigDirector_Fl_Int_Input(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Int_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Int_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Input_Choice : public Fl_Input_Choice, public Swig::Director {

public:
    SwigDirector_Fl_Input_Choice(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Input_Choice();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input_Choice::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual int inp_x() const;
    virtual int inp_xSwigPublic() const {
      return Fl_Input_Choice::inp_x();
    }
    virtual int inp_y() const;
    virtual int inp_ySwigPublic() const {
      return Fl_Input_Choice::inp_y();
    }
    virtual int inp_w() const;
    virtual int inp_wSwigPublic() const {
      return Fl_Input_Choice::inp_w();
    }
    virtual int inp_h() const;
    virtual int inp_hSwigPublic() const {
      return Fl_Input_Choice::inp_h();
    }
    virtual int menu_x() const;
    virtual int menu_xSwigPublic() const {
      return Fl_Input_Choice::menu_x();
    }
    virtual int menu_y() const;
    virtual int menu_ySwigPublic() const {
      return Fl_Input_Choice::menu_y();
    }
    virtual int menu_w() const;
    virtual int menu_wSwigPublic() const {
      return Fl_Input_Choice::menu_w();
    }
    virtual int menu_h() const;
    virtual int menu_hSwigPublic() const {
      return Fl_Input_Choice::menu_h();
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Input_Choice doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[22];
#endif

};


class SwigDirector_Fl_JPEG_Image : public Fl_JPEG_Image, public Swig::Director {

public:
    SwigDirector_Fl_JPEG_Image(PyObject *self,char const *filename);
    SwigDirector_Fl_JPEG_Image(PyObject *self,char const *name,unsigned char const *data,int data_length=-1);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_JPEG_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_JPEG_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Line_Dial : public Fl_Line_Dial, public Swig::Director {

public:
    SwigDirector_Fl_Line_Dial(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Line_Dial();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Dial::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Line_Dial doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Menu_Bar : public Fl_Menu_Bar, public Swig::Director {

public:
    SwigDirector_Fl_Menu_Bar(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Menu_Bar();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Menu_Bar::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual void update();
    virtual void play_menu(Fl_Menu_Item const *item);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Menu_Bar doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_Fl_Menu_Button : public Fl_Menu_Button, public Swig::Director {

public:
    SwigDirector_Fl_Menu_Button(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Menu_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Menu_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Menu_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Single_Window : public Fl_Single_Window, public Swig::Director {

public:
    SwigDirector_Fl_Single_Window(PyObject *self,int W,int H,char const *l=0);
    SwigDirector_Fl_Single_Window(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Single_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Single_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Menu_Window : public Fl_Menu_Window, public Swig::Director {

public:
    SwigDirector_Fl_Menu_Window(PyObject *self,int W,int H,char const *l=0);
    SwigDirector_Fl_Menu_Window(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Menu_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Menu_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Multiline_Input : public Fl_Multiline_Input, public Swig::Director {

public:
    SwigDirector_Fl_Multiline_Input(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Multiline_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Multiline_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Output : public Fl_Output, public Swig::Director {

public:
    SwigDirector_Fl_Output(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Output();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Output doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Multiline_Output : public Fl_Multiline_Output, public Swig::Director {

public:
    SwigDirector_Fl_Multiline_Output(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Multiline_Output();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Multiline_Output doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Multi_Browser : public Fl_Multi_Browser, public Swig::Director {

public:
    SwigDirector_Fl_Multi_Browser(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Multi_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Browser::item_first();
    }
    virtual void *item_next(void *item) const;
    virtual void *item_nextSwigPublic(void *item) const {
      return Fl_Browser::item_next(item);
    }
    virtual void *item_prev(void *item) const;
    virtual void *item_prevSwigPublic(void *item) const {
      return Fl_Browser::item_prev(item);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_heightSwigPublic(void *item) const {
      return Fl_Browser::item_height(item);
    }
    virtual int item_width(void *item) const;
    virtual int item_widthSwigPublic(void *item) const {
      return Fl_Browser::item_width(item);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual void item_drawSwigPublic(void *item,int X,int Y,int W,int H) const {
      Fl_Browser::item_draw(item,X,Y,W,H);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser::item_swap(a,b);
    }
    virtual void *item_at(int line) const;
    virtual void *item_atSwigPublic(int line) const {
      return Fl_Browser::item_at(line);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser::incr_height();
    }
    virtual void item_select(void *item,int val);
    virtual void item_selectSwigPublic(void *item,int val) {
      Fl_Browser::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Multi_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Nice_Slider : public Fl_Nice_Slider, public Swig::Director {

public:
    SwigDirector_Fl_Nice_Slider(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Nice_Slider();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Slider::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Nice_Slider doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Native_File_Chooser_Driver : public Fl_Native_File_Chooser_Driver, public Swig::Director {

public:
    SwigDirector_Fl_Native_File_Chooser_Driver(PyObject *self,int arg0);
    virtual ~SwigDirector_Fl_Native_File_Chooser_Driver();
    virtual void type(int arg0);
    virtual int type() const;
    virtual void options(int arg0);
    virtual int options() const;
    virtual int count() const;
    virtual char const *filename() const;
    virtual char const *filename(int arg0) const;
    virtual void directory(char const *arg0);
    virtual char const *directory() const;
    virtual void title(char const *arg0);
    virtual char const *title() const;
    virtual char const *filter() const;
    virtual void filter(char const *arg0);
    virtual int filters() const;
    virtual void filter_value(int arg0);
    virtual int filter_value() const;
    virtual void preset_file(char const *arg0);
    virtual char const *preset_file() const;
    virtual char const *errmsg() const;
    virtual int show();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Native_File_Chooser_Driver doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[20];
#endif

};


class SwigDirector_Fl_Overlay_Window : public Fl_Overlay_Window, public Swig::Director {

public:
    SwigDirector_Fl_Overlay_Window(PyObject *self,int W,int H,char const *l=0);
    SwigDirector_Fl_Overlay_Window(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Overlay_Window();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Window::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void flush();
    virtual Fl_Overlay_Window *as_overlay_window();
    virtual Fl_Double_Window *as_double_window();
    virtual void draw_overlay();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Overlay_Window doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[17];
#endif

};


class SwigDirector_Fl_Pack : public Fl_Pack, public Swig::Director {

public:
    SwigDirector_Fl_Pack(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Pack();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Pack::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Pack doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_PNG_Image : public Fl_PNG_Image, public Swig::Director {

public:
    SwigDirector_Fl_PNG_Image(PyObject *self,char const *filename);
    SwigDirector_Fl_PNG_Image(PyObject *self,char const *name_png,unsigned char const *buffer,int datasize);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_PNG_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_PNG_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_PNM_Image : public Fl_PNM_Image, public Swig::Director {

public:
    SwigDirector_Fl_PNM_Image(PyObject *self,char const *filename);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_PNM_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_PNM_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Positioner : public Fl_Positioner, public Swig::Director {

public:
    SwigDirector_Fl_Positioner(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Positioner();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Positioner::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Positioner doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Progress : public Fl_Progress, public Swig::Director {

public:
    SwigDirector_Fl_Progress(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Progress();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Progress::draw();
    }
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Progress doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Radio_Button : public Fl_Radio_Button, public Swig::Director {

public:
    SwigDirector_Fl_Radio_Button(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Radio_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Radio_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Radio_Light_Button : public Fl_Radio_Light_Button, public Swig::Director {

public:
    SwigDirector_Fl_Radio_Light_Button(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Radio_Light_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Light_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Radio_Light_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Round_Button : public Fl_Round_Button, public Swig::Director {

public:
    SwigDirector_Fl_Round_Button(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Round_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Light_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Round_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Radio_Round_Button : public Fl_Radio_Round_Button, public Swig::Director {

public:
    SwigDirector_Fl_Radio_Round_Button(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Radio_Round_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Light_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Radio_Round_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Repeat_Button : public Fl_Repeat_Button, public Swig::Director {

public:
    SwigDirector_Fl_Repeat_Button(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Repeat_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Repeat_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Return_Button : public Fl_Return_Button, public Swig::Director {

public:
    SwigDirector_Fl_Return_Button(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Return_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Return_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Return_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_SVG_Image : public Fl_SVG_Image, public Swig::Director {

public:
    SwigDirector_Fl_SVG_Image(PyObject *self,char const *filename);
    SwigDirector_Fl_SVG_Image(PyObject *self,char const *sharedname,char const *svg_data);
    SwigDirector_Fl_SVG_Image(PyObject *self,char const *sharedname,unsigned char const *svg_data,size_t length);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_SVG_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual Fl_SVG_Image *as_svg_image();
    virtual void normalize();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_SVG_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[12];
#endif

};


class SwigDirector_Fl_Roller : public Fl_Roller, public Swig::Director {

public:
    SwigDirector_Fl_Roller(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Roller();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Roller::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Roller doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Round_Clock : public Fl_Round_Clock, public Swig::Director {

public:
    SwigDirector_Fl_Round_Clock(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Round_Clock();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Clock_Output::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Round_Clock doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Scroll : public Fl_Scroll, public Swig::Director {

public:
    SwigDirector_Fl_Scroll(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Scroll();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Scroll::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Scroll::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Scroll::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Scroll doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Scheme_Choice : public Fl_Scheme_Choice, public Swig::Director {

public:
    SwigDirector_Fl_Scheme_Choice(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Scheme_Choice();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Choice::draw();
    }
    virtual int handle(int event);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual void init_value();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Scheme_Choice doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Scrollbar : public Fl_Scrollbar, public Swig::Director {

public:
    SwigDirector_Fl_Scrollbar(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Scrollbar();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Scrollbar::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Scrollbar doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Secret_Input : public Fl_Secret_Input, public Swig::Director {

public:
    SwigDirector_Fl_Secret_Input(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Secret_Input();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Input::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Secret_Input doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Select_Browser : public Fl_Select_Browser, public Swig::Director {

public:
    SwigDirector_Fl_Select_Browser(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Select_Browser();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Browser_::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void *item_first() const;
    virtual void *item_firstSwigPublic() const {
      return Fl_Browser::item_first();
    }
    virtual void *item_next(void *item) const;
    virtual void *item_nextSwigPublic(void *item) const {
      return Fl_Browser::item_next(item);
    }
    virtual void *item_prev(void *item) const;
    virtual void *item_prevSwigPublic(void *item) const {
      return Fl_Browser::item_prev(item);
    }
    virtual void *item_last() const;
    virtual void *item_lastSwigPublic() const {
      return Fl_Browser::item_last();
    }
    virtual int item_height(void *item) const;
    virtual int item_heightSwigPublic(void *item) const {
      return Fl_Browser::item_height(item);
    }
    virtual int item_width(void *item) const;
    virtual int item_widthSwigPublic(void *item) const {
      return Fl_Browser::item_width(item);
    }
    virtual int item_quick_height(void *item) const;
    virtual int item_quick_heightSwigPublic(void *item) const {
      return Fl_Browser_::item_quick_height(item);
    }
    virtual void item_draw(void *item,int X,int Y,int W,int H) const;
    virtual void item_drawSwigPublic(void *item,int X,int Y,int W,int H) const {
      Fl_Browser::item_draw(item,X,Y,W,H);
    }
    virtual char const *item_text(void *item) const;
    virtual char const *item_textSwigPublic(void *item) const {
      return Fl_Browser::item_text(item);
    }
    virtual void item_swap(void *a,void *b);
    virtual void item_swapSwigPublic(void *a,void *b) {
      Fl_Browser::item_swap(a,b);
    }
    virtual void *item_at(int line) const;
    virtual void *item_atSwigPublic(int line) const {
      return Fl_Browser::item_at(line);
    }
    virtual int full_width() const;
    virtual int full_widthSwigPublic() const {
      return Fl_Browser_::full_width();
    }
    virtual int full_height() const;
    virtual int full_heightSwigPublic() const {
      return Fl_Browser::full_height();
    }
    virtual int incr_height() const;
    virtual int incr_heightSwigPublic() const {
      return Fl_Browser::incr_height();
    }
    virtual void item_select(void *item,int val);
    virtual void item_selectSwigPublic(void *item,int val) {
      Fl_Browser::item_select(item,val);
    }
    virtual int item_selected(void *item) const;
    virtual int item_selectedSwigPublic(void *item) const {
      return Fl_Browser::item_selected(item);
    }

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Select_Browser doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[30];
#endif

};


class SwigDirector_Fl_Shared_Image : public Fl_Shared_Image, public Swig::Director {

public:
    SwigDirector_Fl_Shared_Image(PyObject *self);
    SwigDirector_Fl_Shared_Image(PyObject *self,char const *n,Fl_Image *img=0);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Shared_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);
    virtual void reload();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Shared_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[11];
#endif

};


class SwigDirector_Fl_Spinner : public Fl_Spinner, public Swig::Director {

public:
    SwigDirector_Fl_Spinner(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Spinner();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Spinner::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Spinner doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Simple_Counter : public Fl_Simple_Counter, public Swig::Director {

public:
    SwigDirector_Fl_Simple_Counter(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Simple_Counter();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Counter::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Simple_Counter doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Sys_Menu_Bar : public Fl_Sys_Menu_Bar, public Swig::Director {

public:
    SwigDirector_Fl_Sys_Menu_Bar(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Sys_Menu_Bar();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Sys_Menu_Bar::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual void update();
    virtual void play_menu(Fl_Menu_Item const *arg0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Sys_Menu_Bar doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_Fl_Table : public Fl_Table, public Swig::Director {

public:
    SwigDirector_Fl_Table(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Table();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Table::draw();
    }
    virtual int handle(int e);
    virtual int handleSwigPublic(int e) {
      return Fl_Table::handle(e);
    }
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void draw_cell(Fl_Table::TableContext context,int R=0,int C=0,int X=0,int Y=0,int W=0,int H=0);
    virtual void draw_cellSwigPublic(Fl_Table::TableContext context,int R=0,int C=0,int X=0,int Y=0,int W=0,int H=0) {
      Fl_Table::draw_cell(context,R,C,X,Y,W,H);
    }
    virtual void clear();
    virtual void rows(int val);
    virtual void cols(int val);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Table doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[18];
#endif

};


class SwigDirector_Fl_Table_Row : public Fl_Table_Row, public Swig::Director {

public:
    SwigDirector_Fl_Table_Row(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Table_Row();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Table::draw();
    }
    virtual int handle(int event);
    virtual int handleSwigPublic(int event) {
      return Fl_Table_Row::handle(event);
    }
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void draw_cell(Fl_Table::TableContext context,int R=0,int C=0,int X=0,int Y=0,int W=0,int H=0);
    virtual void draw_cellSwigPublic(Fl_Table::TableContext context,int R=0,int C=0,int X=0,int Y=0,int W=0,int H=0) {
      Fl_Table::draw_cell(context,R,C,X,Y,W,H);
    }
    virtual void clear();
    virtual void rows(int val);
    virtual void cols(int val);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Table_Row doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[18];
#endif

};


class SwigDirector_Fl_Tabs : public Fl_Tabs, public Swig::Director {

public:
    SwigDirector_Fl_Tabs(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Tabs();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Tabs::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Tabs::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Tabs::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Tabs::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void redraw_tabs();
    virtual void redraw_tabsSwigPublic() {
      Fl_Tabs::redraw_tabs();
    }
    virtual int tab_positions();
    virtual int tab_positionsSwigPublic() {
      return Fl_Tabs::tab_positions();
    }
    virtual void clear_tab_positions();
    virtual void clear_tab_positionsSwigPublic() {
      Fl_Tabs::clear_tab_positions();
    }
    virtual void draw_tab(int x1,int x2,int W,int H,Fl_Widget *o,int flags,int sel);
    virtual void draw_tabSwigPublic(int x1,int x2,int W,int H,Fl_Widget *o,int flags,int sel) {
      Fl_Tabs::draw_tab(x1,x2,W,H,o,flags,sel);
    }
    virtual int tab_height();
    virtual int tab_heightSwigPublic() {
      return Fl_Tabs::tab_height();
    }
    virtual int hit_close(Fl_Widget *o,int event_x,int event_y);
    virtual int hit_closeSwigPublic(Fl_Widget *o,int event_x,int event_y) {
      return Fl_Tabs::hit_close(o,event_x,event_y);
    }
    virtual int hit_overflow_menu(int event_x,int event_y);
    virtual int hit_overflow_menuSwigPublic(int event_x,int event_y) {
      return Fl_Tabs::hit_overflow_menu(event_x,event_y);
    }
    virtual int hit_tabs_area(int event_x,int event_y);
    virtual int hit_tabs_areaSwigPublic(int event_x,int event_y) {
      return Fl_Tabs::hit_tabs_area(event_x,event_y);
    }
    virtual Fl_Widget *which(int event_x,int event_y);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Tabs doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[23];
#endif

};


class SwigDirector_Fl_Terminal : public Fl_Terminal, public Swig::Director {

public:
    SwigDirector_Fl_Terminal(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    SwigDirector_Fl_Terminal(PyObject *self,int X,int Y,int W,int H,char const *L,int rows,int cols,int hist);
    virtual ~SwigDirector_Fl_Terminal();
    virtual void draw();
    virtual int handle(int e);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Terminal doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Text_Display : public Fl_Text_Display, public Swig::Director {

public:
    SwigDirector_Fl_Text_Display(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Text_Display();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Text_Display::draw();
    }
    virtual int handle(int e);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void recalc_display();
    virtual void display_needs_recalc();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Text_Display doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Text_Editor : public Fl_Text_Editor, public Swig::Director {

public:
    SwigDirector_Fl_Text_Editor(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Text_Editor();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Text_Display::draw();
    }
    virtual int handle(int e);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void recalc_display();
    virtual void display_needs_recalc();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Text_Editor doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Tile : public Fl_Tile, public Swig::Director {

public:
    SwigDirector_Fl_Tile(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Tile();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Group::draw();
    }
    virtual int handle(int event);
    virtual void resize(int X,int Y,int W,int H);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Tile::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Tile::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Tile::on_remove(arg0);
    }
    virtual int delete_child(int n);
    virtual void move_intersection(int oldx,int oldy,int newx,int newy);
    virtual void drag_intersection(int oldx,int oldy,int newx,int newy);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Tile doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[16];
#endif

};


class SwigDirector_Fl_Tiled_Image : public Fl_Tiled_Image, public Swig::Director {

public:
    SwigDirector_Fl_Tiled_Image(PyObject *self,Fl_Image *i,int W=0,int H=0);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_Tiled_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Tiled_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_Toggle_Button : public Fl_Toggle_Button, public Swig::Director {

public:
    SwigDirector_Fl_Toggle_Button(PyObject *self,int X,int Y,int W,int H,char const *l=0);
    virtual ~SwigDirector_Fl_Toggle_Button();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Button::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Toggle_Button doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[13];
#endif

};


class SwigDirector_Fl_Value_Output : public Fl_Value_Output, public Swig::Director {

public:
    SwigDirector_Fl_Value_Output(PyObject *self,int x,int y,int w,int h,char const *l=0);
    virtual ~SwigDirector_Fl_Value_Output();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Value_Output::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int format(char *format_string);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Value_Output doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Wizard : public Fl_Wizard, public Swig::Director {

public:
    SwigDirector_Fl_Wizard(PyObject *self,int arg0,int arg1,int arg2,int arg3,char const *arg4=0);
    virtual ~SwigDirector_Fl_Wizard();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Wizard::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Wizard doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_XBM_Image : public Fl_XBM_Image, public Swig::Director {

public:
    SwigDirector_Fl_XBM_Image(PyObject *self,char const *filename);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_XBM_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_XBM_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_XPM_Image : public Fl_XPM_Image, public Swig::Director {

public:
    SwigDirector_Fl_XPM_Image(PyObject *self,char const *filename);
    virtual void release();
    virtual Fl_Shared_Image *as_shared_image();
    virtual ~SwigDirector_Fl_XPM_Image();
    virtual Fl_Image *copy(int W,int H) const;
    virtual void color_average(Fl_Color c,float i);
    virtual void desaturate();
    virtual void label(Fl_Widget *w);
    virtual void label(Fl_Menu_Item *m);
    virtual void draw(int X,int Y,int W,int H,int cx=0,int cy=0);
    virtual void uncache();
    virtual void scale(int width,int height,int proportional=1,int can_expand=0);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_XPM_Image doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[10];
#endif

};


class SwigDirector_Fl_Tree_Item : public Fl_Tree_Item, public Swig::Director {

public:
    SwigDirector_Fl_Tree_Item(PyObject *self,Fl_Tree_Prefs const &prefs);
    SwigDirector_Fl_Tree_Item(PyObject *self,Fl_Tree *tree);
    SwigDirector_Fl_Tree_Item(PyObject *self,Fl_Tree_Item const *o);
    virtual void draw_vertical_connector(int x,int y1,int y2,Fl_Tree_Prefs const &prefs);
    virtual void draw_vertical_connectorSwigPublic(int x,int y1,int y2,Fl_Tree_Prefs const &prefs) {
      Fl_Tree_Item::draw_vertical_connector(x,y1,y2,prefs);
    }
    virtual void draw_horizontal_connector(int x1,int x2,int y,Fl_Tree_Prefs const &prefs);
    virtual void draw_horizontal_connectorSwigPublic(int x1,int x2,int y,Fl_Tree_Prefs const &prefs) {
      Fl_Tree_Item::draw_horizontal_connector(x1,x2,y,prefs);
    }
    virtual ~SwigDirector_Fl_Tree_Item();
    virtual int draw_item_content(int render);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Tree_Item doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[3];
#endif

};


class SwigDirector_Fl_Tree : public Fl_Tree, public Swig::Director {

public:
    SwigDirector_Fl_Tree(PyObject *self,int X,int Y,int W,int H,char const *L=0);
    virtual ~SwigDirector_Fl_Tree();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Tree::draw();
    }
    virtual int handle(int e);
    virtual void resize(int arg0,int arg1,int arg2,int arg3);
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Tree doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


class SwigDirector_Fl_Paged_Device : public Fl_Paged_Device, public Swig::Director {

public:
    SwigDirector_Fl_Paged_Device(PyObject *self);
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_Paged_Device();
    virtual void translate(int x,int y);
    virtual void untranslate();
    virtual int printable_rect(int *w,int *h);
    virtual void origin(int x,int y);
    virtual void origin(int *x,int *y);
    virtual int begin_job(int pagecount=0,int *frompage=NULL,int *topage=NULL,char **perr_message=NULL);
    virtual int begin_page();
    virtual void margins(int *left,int *top,int *right,int *bottom);
    virtual void scale(float scale_x,float scale_y=0.);
    virtual void rotate(float angle);
    virtual int end_page();
    virtual void end_job();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Paged_Device doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_Fl_PDF_File_Surface : public Fl_PDF_File_Surface, public Swig::Director {

public:
    SwigDirector_Fl_PDF_File_Surface(PyObject *self);
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_PDF_File_Surface();
    virtual void translate(int x,int y);
    virtual void untranslate();
    virtual int printable_rect(int *w,int *h);
    virtual void origin(int x,int y);
    virtual void origin(int *x,int *y);
    virtual int begin_job(int arg0,int *arg1,int *arg2,char **arg3);
    virtual int begin_page();
    virtual void margins(int *left,int *top,int *right,int *bottom);
    virtual void scale(float s_x,float s_y=0);
    virtual void rotate(float angle);
    virtual int end_page();
    virtual void end_job();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_PDF_File_Surface doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_Fl_PostScript_File_Device : public Fl_PostScript_File_Device, public Swig::Director {

public:
    SwigDirector_Fl_PostScript_File_Device(PyObject *self);
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_PostScript_File_Device();
    virtual void translate(int x,int y);
    virtual void untranslate();
    virtual int printable_rect(int *w,int *h);
    virtual void origin(int x,int y);
    virtual void origin(int *x,int *y);
    virtual int begin_job(int pagecount,int *from,int *to,char **perr_message);
    virtual int begin_page();
    virtual void margins(int *left,int *top,int *right,int *bottom);
    virtual void scale(float scale_x,float scale_y=0.);
    virtual void rotate(float angle);
    virtual int end_page();
    virtual void end_job();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_PostScript_File_Device doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_Fl_Printer : public Fl_Printer, public Swig::Director {

public:
    SwigDirector_Fl_Printer(PyObject *self);
    virtual void end_current();
    virtual void end_currentSwigPublic() {
      Fl_Surface_Device::end_current();
    }
    virtual void set_current();
    virtual bool is_current();
    virtual ~SwigDirector_Fl_Printer();
    virtual void translate(int x,int y);
    virtual void untranslate();
    virtual int printable_rect(int *w,int *h);
    virtual void origin(int x,int y);
    virtual void origin(int *x,int *y);
    virtual int begin_job(int pagecount=0,int *frompage=NULL,int *topage=NULL,char **perr_message=NULL);
    virtual int begin_page();
    virtual void margins(int *left,int *top,int *right,int *bottom);
    virtual void scale(float scale_x,float scale_y=0.);
    virtual void rotate(float angle);
    virtual int end_page();
    virtual void end_job();

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class Fl_Printer doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[15];
#endif

};


class SwigDirector_ListSelect : public ListSelect, public Swig::Director {

public:
    SwigDirector_ListSelect(PyObject *self,int x,int y,int w,int h,char *topLabel=0,char *bottomLabel=0);
    virtual ~SwigDirector_ListSelect();
    virtual void draw();
    virtual void drawSwigPublic() {
      Fl_Group::draw();
    }
    virtual int handle(int arg0);
    virtual void resize(int x,int y,int w,int h);
    virtual void resizeSwigPublic(int x,int y,int w,int h) {
      ListSelect::resize(x,y,w,h);
    }
    virtual void show();
    virtual void hide();
    virtual Fl_Group *as_group();
    virtual Fl_Group const *as_group() const;
    virtual Fl_Window *as_window();
    virtual Fl_Window const *as_window() const;
    virtual Fl_Gl_Window *as_gl_window();
    virtual Fl_Gl_Window const *as_gl_window() const;
    virtual Fl_Vk_Window *as_vk_window();
    virtual Fl_Vk_Window const *as_vk_window() const;
    virtual int on_insert(Fl_Widget *arg0,int arg1);
    virtual int on_insertSwigPublic(Fl_Widget *arg0,int arg1) {
      return Fl_Group::on_insert(arg0,arg1);
    }
    virtual int on_move(int arg0,int arg1);
    virtual int on_moveSwigPublic(int arg0,int arg1) {
      return Fl_Group::on_move(arg0,arg1);
    }
    virtual void on_remove(int arg0);
    virtual void on_removeSwigPublic(int arg0) {
      Fl_Group::on_remove(arg0);
    }
    virtual int delete_child(int n);

/* Internal director utilities */
public:
    bool swig_get_inner(const char *swig_protected_method_name) const {
      std::map<std::string, bool>::const_iterator iv = swig_inner.find(swig_protected_method_name);
      return (iv != swig_inner.end() ? iv->second : false);
    }
    void swig_set_inner(const char *swig_protected_method_name, bool swig_val) const {
      swig_inner[swig_protected_method_name] = swig_val;
    }
private:
    mutable std::map<std::string, bool> swig_inner;

#if defined(SWIG_PYTHON_DIRECTOR_VTABLE)
/* VTable implementation */
    PyObject *swig_get_method(size_t method_index, const char *method_name) const {
      PyObject *method = vtable[method_index];
      if (!method) {
        swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
        method = PyObject_GetAttr(swig_get_self(), name);
        if (!method) {
          std::string msg = "Method in class ListSelect doesn't exist, undefined ";
          msg += method_name;
          Swig::DirectorMethodException::raise(msg.c_str());
        }
        vtable[method_index] = method;
      }
      return method;
    }
private:
    mutable swig::SwigVar_PyObject vtable[14];
#endif

};


#endif
