00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __itkWin32OutputWindow_h
00021 #define __itkWin32OutputWindow_h
00022
00023 #include "itkWin32Header.h"
00024 #include "itkOutputWindow.h"
00025 #include "itkObjectFactory.h"
00026 #include "itkWindows.h"
00027 namespace itk
00028 {
00029
00044 class ITKCommon_EXPORT Win32OutputWindow : public OutputWindow
00045 {
00046 public:
00048 typedef Win32OutputWindow Self;
00049 typedef OutputWindow Superclass;
00050 typedef SmartPointer<Self> Pointer;
00051 typedef SmartPointer<const Self> ConstPointer;
00052
00054 itkNewMacro(Self);
00055
00057 itkTypeMacro(Win32OutputWindow, OutputWindow);
00058
00061 virtual void DisplayText(const char*);
00062
00063 static LRESULT APIENTRY WndProc(HWND hWnd, UINT message,
00064 WPARAM wParam, LPARAM lParam);
00065 protected:
00066 Win32OutputWindow() {}
00067 virtual ~Win32OutputWindow();
00068
00069 void PromptText(const char* text);
00070 static void AddText(const char*);
00071 static int Initialize();
00072
00073 private:
00074 Win32OutputWindow(const Self&);
00075 void operator=(const Self&);
00076
00077 static HWND m_OutputWindow;
00078 };
00079
00080 }
00081 #endif // __itkWin32OutputWindow_h
00082