--- /dev/null
+#include <creaImageIOWxGimmickPanel.h>
+#include <creaImageIOSystem.h>
+#include <creaImageIOGimmick.h>
+#ifdef _DEBUG
+#define new DEBUG_NEW
+#endif
+namespace creaImageIO
+{
+ // CTor
+ WxGimmickPanel::WxGimmickPanel(wxWindow *parent,
+ wxWindowID id,
+ const wxPoint& pos,
+ const wxSize& size,
+ const std::string i_namedescp ,
+ const std::string i_namedb ,
+ int threads)
+ : wxPanel( parent,
+ id,
+ pos,
+ size,
+ wxRESIZE_BORDER |
+ wxSYSTEM_MENU |
+ wxCLOSE_BOX |
+ wxMAXIMIZE_BOX |
+ wxMINIMIZE_BOX |
+ wxCAPTION
+ ),
+ //mGimmick(0),
+ mView(0)
+ {
+ GimmickDebugMessage(1,"WxGimmickPanel::WxGimmickPanel"
+ <<std::endl);
+ wxBoxSizer *topsizer = new wxBoxSizer(wxVERTICAL);
+
+ try {
+
+ mGimmick = boost::shared_ptr<Gimmick>(new Gimmick());
+ mGimmick->Initialize(i_namedescp,i_namedb);
+ int min_dim = GIMMICK_2D_IMAGE_SELECTION;
+ int max_dim = GIMMICK_3D_IMAGE_SELECTION;
+ mView = new WxGimmickView(mGimmick,
+ this,
+ -1,
+ wxDefaultPosition,
+ size,
+ min_dim,
+ max_dim,
+ threads);
+ mView->Initialize();
+ // Connect the AddProgress callback
+ mView->ConnectValidationObserver ( boost::bind( &WxGimmickPanel::OnSelectedImage , this, _1 ) );
+ }
+ catch (crea::Exception e)
+ {
+ e.Print();
+ return;
+ }
+
+ topsizer->Add( mView,1,wxGROW,0);
+
+ SetSizer( topsizer );
+ Layout();
+ }
+
+ /// Destructor
+ WxGimmickPanel::~WxGimmickPanel()
+ {
+ GimmickDebugMessage(1,"WxGimmickPanel::~WxGimmickPanel"
+ <<std::endl);
+ if (mView)
+ {
+ delete mView;
+ }
+ if (mGimmick)
+ {
+ mGimmick->Finalize();
+ }
+ }
+
+//======================================================================
+
+//======================================================================
+
+ ///Callback method on a selection
+ void WxGimmickPanel::OnSelectedImage(bool t)
+ {
+ mSendImageSignal(t);
+ }
+
+ void WxGimmickPanel::AddImagesToDB(std::string dir)
+ {
+ mView->AddDir(dir);
+ }
+
+ //================================================================
+ // BEGIN_EVENT_TABLE(WxGimmickPanel, wxDialog)
+ // END_EVENT_TABLE()
+ //================================================================
+
+
+ //====================================================================
+
+ //====================================================================
+ void WxGimmickPanel::ConnectSendImageObserver(SendImageCallbackType callback)
+ {
+ mSendImageSignal.connect(callback);
+ }
+
+} // EO namespace creaImageIO
+
+