#ifdef __cplusplus extern "C" { #endif #pragma once #include "HROOT-grafType.h" #include "HROOTGrafTPad.h" #include "HROOTCoreTVirtualPad.h" #include "HROOTCoreTObject.h" #include "HROOTCoreTAttLine.h" #include "HROOTCoreTAttFill.h" #include "HROOTCoreTAttPad.h" #include "HROOTCoreTQObject.h" #include "STDDeletable.h" #define TCANVAS_DECL_VIRT(Type) \ void Type##_ToggleEditor ( Type##_p p );\ void Type##_ToggleEventStatus ( Type##_p p );\ void Type##_ToggleToolBar ( Type##_p p );\ void Type##_ToggleToolTips ( Type##_p p ); #define TCANVAS_DECL_NONVIRT(Type) \ Type##_p Type##_newTCanvas ( const char* name, const char* title, int ww, int wh ); #define TCANVAS_DECL_ACCESSOR(Type) \ #define TCANVAS_DEF_VIRT(Type) \ void Type##_ToggleEditor ( Type##_p p ) {\ ((TYPECASTMETHOD(Type, ToggleEditor, TCanvas))(p))->ToggleEditor();\ }\ \ void Type##_ToggleEventStatus ( Type##_p p ) {\ ((TYPECASTMETHOD(Type, ToggleEventStatus, TCanvas))(p))->ToggleEventStatus();\ }\ \ void Type##_ToggleToolBar ( Type##_p p ) {\ ((TYPECASTMETHOD(Type, ToggleToolBar, TCanvas))(p))->ToggleToolBar();\ }\ \ void Type##_ToggleToolTips ( Type##_p p ) {\ ((TYPECASTMETHOD(Type, ToggleToolTips, TCanvas))(p))->ToggleToolTips();\ } #define TCANVAS_DEF_NONVIRT(Type) \ Type##_p Type##_newTCanvas ( const char* name, const char* title, int ww, int wh ) {\ Type* newp=new Type(name, title, ww, wh);return from_nonconst_to_nonconst(newp);\ } #define TCANVAS_DEF_ACCESSOR(Type) \ TPAD_DECL_VIRT(TCanvas) TVIRTUALPAD_DECL_VIRT(TCanvas) TOBJECT_DECL_VIRT(TCanvas) TATTLINE_DECL_VIRT(TCanvas) TATTFILL_DECL_VIRT(TCanvas) TATTPAD_DECL_VIRT(TCanvas) TQOBJECT_DECL_VIRT(TCanvas) DELETABLE_DECL_VIRT(TCanvas) TCANVAS_DECL_VIRT(TCanvas) TCANVAS_DECL_NONVIRT(TCanvas) TCANVAS_DECL_ACCESSOR(TCanvas) #ifdef __cplusplus } #endif