#ifndef __creaImageIOWxGimmickPanel_h_INCLUDED__ #define __creaImageIOWxGimmickPanel_h_INCLUDED__ #ifdef USE_WXWIDGETS // Signal/slot mechanism for progress events #include #include #include #include namespace creaImageIO { /** * \ingroup GUI */ //===================================================================== //===================================================================== class CREAIMAGEIO_EXPORT WxGimmickPanel : public wxPanel { public: WxGimmickPanel(); WxGimmickPanel(wxWindow *parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, const std::string i_namedescp , const std::string i_namedb = "Local Database", int threads = 0); ~WxGimmickPanel(); //============================================= typedef boost::signal SendImageSignalType; typedef SendImageSignalType::slot_function_type SendImageCallbackType; //============================================= //================================================================== /// Adds the function f to the list of functions to call /// when the addition progresses. /// f is of type ProgressCallbackType which is: /// void (*ProgressCallbackType)(Progress&) /// To pass a member function 'f' of an instance 'c' of a class 'C' /// as callback you have to 'bind' it, i.e. call: /// ConnectSendImageObserver ( boost::bind( &C::f , c, _1 ) ); void ConnectSendImageObserver(SendImageCallbackType callback); //================================================================== //=============================================================================================== //Image Selection //=============================================================================================== void GetSelectedImages(std::vector& s, int dim) { mView->GetSelectedImages(s, dim); } //EED 28mai2010 Use new mechanism getSelected // void GetSelectedImagesInVector(std::vector& s, int dim) // { // mView->GetSelectedImagesInVector(s, dim); // } // ----get selected files in an Output structure------- // out: vector structure output < , ... > // i_attr: list of dicom tags to extract // mult: information of one file or multiple files // outmodel: xml-filename that specifies images order..(todo) void getSelected(std::vector &outG,std::vector< std::string> i_attr, bool mult, const std::string outmodel) { mView->getSelectedFiles(outG, i_attr, mult, outmodel); } void OnSelectedImage(bool t); void AddImagesToDB(std::string dir); // DECLARE_EVENT_TABLE(); private : boost::shared_ptr mGimmick; WxGimmickView* mView; ///The sendImage signal SendImageSignalType mSendImageSignal; }; // class WxGimmickPanel //===================================================================== } // EO namespace creaImageIO #endif // USE_WIDGETS // EOF #endif