1 #ifndef CANVAS_NATIVE_H
2 #define CANVAS_NATIVE_H
3 #include "envCanvasJNI.h"
4 #include "Displayable_A.h"
10 /*----------------------------------------------------------------------*\
12 \*---------------------------------------------------------------------*/
14 /*--------------------------------------*\
16 \*-------------------------------------*/
18 class CBI_CANVAS_JNI CanvasNative
: public Panel_A
20 /*--------------------------------------*\
22 \*-------------------------------------*/
25 CanvasNative(Displayable_A
* ptrDisplayable
);
27 virtual ~CanvasNative();
29 /*--------------------------------------*\
31 \*-------------------------------------*/
35 virtual void init(JNIEnv
*env
, jobject canvas
);
37 virtual void reshape(int w
, int h
, JNIEnv
*env
, jobject canvas
);
39 virtual void display(JNIEnv
*env
, jobject canvas
);
41 virtual void release(JNIEnv
*env
, jobject canvas
);
43 virtual void onKeyPressed(const KeyEvent
&keyEvent
, JNIEnv
*env
, jobject canvas
);
45 virtual void onMousePressed(const MouseEvent
&e
, JNIEnv
*env
, jobject canvas
);
47 virtual void onMouseReleased(const MouseEvent
&e
, JNIEnv
*env
, jobject canvas
);
49 virtual void onMouseMoved(const MouseEvent
&e
, JNIEnv
*env
, jobject canvas
);
51 virtual void onMouseWheel(const MouseWheelEvent
&e
, JNIEnv
*env
, jobject canvas
);
55 virtual void onPaintGL(JNIEnv
*env
, jobject canvas
);
57 void repaint(JNIEnv
*env
, jobject canvas
);
59 /*--------------------------------------*\
61 \*-------------------------------------*/
64 virtual TextRenderer_A
* getTextRenderer()
69 virtual FontLoader_A
* getFontLoader()
74 Displayable_A
* getDisplayable()
76 return ptrDisplayable
;
79 inline int getID() const
84 /*--------------------------------------*\
86 \*-------------------------------------*/
88 inline void setID(int id
)
96 Displayable_A
* ptrDisplayable
;
100 TextRenderer_A
* txtRender
;
101 FontLoader_A
* fontLoader
;
105 static std::atomic_int ID_COUNTER
;
110 /*----------------------------------------------------------------------*\
112 \*---------------------------------------------------------------------*/