00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef __mitkImplementor_h
00012 #define __mitkImplementor_h
00013
00014 #include "mitkVisualizationIncludes.h"
00015 #include "mitkObject.h"
00016
00017 class mitkGLWindow;
00018
00026 class mitkImplementor : public mitkObject
00027 {
00028 public:
00029 mitkImplementor(mitkGLWindow *window)
00030 {
00031 m_Window = window;
00032 }
00033 mitkImplementor()
00034 {
00035 m_Window = NULL;
00036 }
00037
00038 virtual void* GetWindowId(void) = 0;
00039 virtual void* GetParent(void) = 0;
00040 virtual void* GetApplicationId(void) { return NULL; }
00041 virtual void* GetDeviceContext(void) { return NULL; }
00042 virtual void* GetRenderContext(void) { return NULL; }
00043 virtual void SetParent(void *parentId) = 0;
00044
00045 virtual void SetPosition(int leftPos,int topPos) = 0;
00046 virtual void SetSize(int widthSize, int heightSize) = 0;
00047 virtual void SetWindowName(const char * winName) = 0;
00048
00049 virtual void Show() = 0;
00050
00051 virtual void Hide() = 0;
00052
00053 virtual void Update() = 0;
00054
00055 virtual void MakeCurrent() = 0;
00056 virtual void SwapBuffers() = 0;
00057
00058 virtual bool HasUnprocessedMouseMessage() = 0;
00059
00060 virtual void MoveMouseTo(int x, int y) = 0;
00061
00062 protected:
00063 virtual ~mitkImplementor() {}
00064 mitkGLWindow *m_Window;
00065
00066 private:
00067 mitkImplementor (const mitkImplementor&);
00068 void operator = (const mitkImplementor&);
00069
00070 };
00071
00072
00073 #endif
00074
00075