00001 #ifndef __WX__IMAGE__BROWSER__WDG__ 00002 #define __WX__IMAGE__BROWSER__WDG__ 00003 00004 #include <wx/wx.h> 00005 #include <wx/image.h> 00006 #include <wx/imaglist.h> 00007 #include <wx/list.h> 00008 #include <wx/scrolwin.h> 00009 00013 class wxImageBrowserWdg : public wxScrolledWindow 00014 { 00015 public: 00016 wxImageBrowserWdg( 00017 wxWindow* parent, 00018 wxWindowID id = -1, 00019 int sx = 100, 00020 int sy = 100, 00021 int gap = 10, 00022 const wxPoint& pos = wxDefaultPosition, 00023 const wxSize& size = wxDefaultSize, 00024 long style = wxScrolledWindowStyle, 00025 const wxString& name = wxPanelNameStr 00026 ); 00027 00028 void SetVolume( 00029 unsigned short*** volume, 00030 wxArrayString& names, 00031 int width, 00032 int height, 00033 int depth, 00034 int min, 00035 int max 00036 ); 00037 00038 void SetScaleX( int sx ); 00039 void SetScaleY( int sy ); 00040 void SetGap( int gap ); 00041 int GetScaleX( ); 00042 int GetScaleY( ); 00043 int GetGap( ); 00044 00045 int GetFirst( ); 00046 int GetLast( ); 00047 00048 void GetSizeParameters( int* n, int* c, int* r ); 00049 00050 void OnDraw( wxDC& dc ); 00051 void OnSize( wxSizeEvent& event ); 00052 00053 void OnMouseLeftClick( wxMouseEvent& event ); 00054 void OnMouseRightClick( wxMouseEvent& event ); 00055 00056 // void Add( const wxImage& ima, const wxString& nrs ); 00057 00058 private: 00059 00060 int GetIndexClicked( wxMouseEvent& event ); 00061 00062 wxImageList _ima_list; 00063 wxArrayString _nrs_list; 00064 int _sx; 00065 int _sy; 00066 int _gap; 00067 int _first_selected; 00068 int _last_selected; 00069 00070 DECLARE_EVENT_TABLE( ); 00071 00072 }; 00073 00074 #endif // __WX__IMAGE__BROWSER__WDG__