X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOWxGimmickView.cpp;fp=src%2FcreaImageIOWxGimmickView.cpp;h=a5650ee32978d68830327d8b0de2b66ac7c68a68;hb=5b01ea730e863b543db933e59f63b3c18f77e8fb;hp=ffb6174f8543e05ecc6df88adbfef72cf1e86527;hpb=f72f639a852e689919393577e1afd7f1b97f0500;p=creaImageIO.git diff --git a/src/creaImageIOWxGimmickView.cpp b/src/creaImageIOWxGimmickView.cpp index ffb6174..a5650ee 100644 --- a/src/creaImageIOWxGimmickView.cpp +++ b/src/creaImageIOWxGimmickView.cpp @@ -138,7 +138,8 @@ namespace creaImageIO mProgressDialog(NULL), mConstructed(false) { - mViewer = NULL; + + mViewer = NULL; GimmickDebugMessage(1,"WxGimmickView::WxGimmickView" <GetHomeDirectory()); @@ -146,16 +147,20 @@ namespace creaImageIO // Connect the AddProgress callback gimmick->ConnectAddProgressObserver( boost::bind( &WxGimmickView::OnAddProgress , this, _1 ) ); + // Create the list of icons (mIcon) CreateIconList(); + // Global sizer msizer = new wxBoxSizer(wxVERTICAL); + // Create the tool bar - CreateToolBar(); + CreateToolBar( ); msizer->Add( mToolBar, 0, wxGROW, 0); + // Split part below toolbar into notebook for views and panel // for preview, messages... mSplitter = new wxSplitterWindow( this , -1); @@ -170,6 +175,7 @@ namespace creaImageIO mSelectionMinDimension = min_dim; // Create the views + CreateTreeViews(); // Bottom panel @@ -188,6 +194,8 @@ namespace creaImageIO mbottom_sizer->Add(mViewer,1,wxGROW,1); + + // mViewer->Show(); mText = new wxStaticText(mBottomPanel, wxID_ANY, wxT("Welcome to Gimmick!")); @@ -210,6 +218,7 @@ namespace creaImageIO mProgressDialog=NULL; SetSizer( msizer ); SetAutoLayout(true); + Layout(); //mListener=new Listener(); //mListener->ConnectObserver(boost::bind( &WxGimmickView::OnDriveMount, this, _1 ) ); @@ -235,21 +244,58 @@ namespace creaImageIO //if(mListener->IsAlive()) { mListener->Delete(); } } //====================================================================== - + + + +void WxGimmickView::AddBtnTool(wxPanel *panel, wxBoxSizer *sizerH, int id, wxString label, int idBitmap, wxString tooltip ) +{ + wxBoxSizer *sizer; + wxBitmapButton *btn; + wxBitmap bitmap; + + bitmap = mIcon->GetBitmap(idBitmap); + btn = new wxBitmapButton(mToolBar, id, bitmap, wxDefaultPosition, wxSize(50,50) , wxBU_BOTTOM ); + btn->SetToolTip( tooltip ); + sizer = new wxBoxSizer(wxVERTICAL); + sizer->Add(btn,1,wxGROW,0); + sizer->Add(new wxStaticText(mToolBar,-1,label) , 0, wxALL | wxALIGN_CENTER, 3); + sizerH->Add( sizer ,1,wxGROW,0); +} + //====================================================================== /// Creates the tool bar void WxGimmickView::CreateToolBar() { + mToolBar = new wxPanel(this,-1, wxDefaultPosition, wxSize(80,80) ); + wxBoxSizer *sizerH = new wxBoxSizer(wxHORIZONTAL); + + AddBtnTool(mToolBar, sizerH, TOOL_ADDFILES_ID , _T("Add file(s)") , Icon_page_down , _T("Add one or more file to database") ); + AddBtnTool(mToolBar, sizerH, TOOL_ADDDIR_ID , _T("Add folder") , Icon_folder_down , _T("Add the content of a folder to database") ); + AddBtnTool(mToolBar, sizerH, TOOL_ADDDATABASE_ID , _T("Open database") , Icon_database_add , _T("Open a local or distant database") ); + AddBtnTool(mToolBar, sizerH, TOOL_REMOVE_ID , _T("Remove") , Icon_remove , _T("Remove selected items") ); + AddBtnTool(mToolBar, sizerH, TOOL_SYNCHRONIZE_ID , _T("Synchronize") , Icon_synchronize , _T("Synchronizes the database with disk") ); + AddBtnTool(mToolBar, sizerH, TOOL_HELP_ID , _T("Help") , Icon_help , _T("Open help window") ); + AddBtnTool(mToolBar, sizerH, TOOL_SETTINGS_ID , _T("System settings") , Icon_settings , _T("Allows the modification of various system settings") ); + AddBtnTool(mToolBar, sizerH, TOOL_TOOLS_ID , _T("Tools") , Icon_tools , _T("Applies tools to images") ); + AddBtnTool(mToolBar, sizerH, TOOL_CREATEDB_ID , _T("Create database") , Icon_create_database , _T("Create DB from an Attributes Descriptor file") ); + #if defined(BUILD_PACS) + AddBtnTool(mToolBar, sizerH, TOOL_PACS_ID , _T("PACS Connection,"), Icon_create_database , _T("Echo, Find and Get to a PACS") ); + #endif + mToolBar->SetSizer( sizerH ); + mToolBar->Layout(); + +/* EED 2021-12-17 + The wxToolBar depends from wxFrame, in this code it is not the case. In Mac Os is not working ! + Change the mechanisme from wcToolBar to normal Buttons long style = wxTB_HORIZONTAL | wxNO_BORDER | wxTB_TEXT; - mToolBar = new wxToolBar(this,-1,wxDefaultPosition,wxDefaultSize, - style); + mToolBar = new wxToolBar(this,-1,wxDefaultPosition,wxDefaultSize,style); - mToolAddFile = mToolBar->AddTool( TOOL_ADDFILES_ID, + mToolAddFile = mToolBar->AddTool( TOOL_ADDFILES_ID, _T("Add file(s)"), mIcon->GetBitmap(Icon_page_down), _T("Add one or more file to database") ); - mToolAddDir = mToolBar->AddTool( TOOL_ADDDIR_ID, + mToolAddDir = mToolBar->AddTool( TOOL_ADDDIR_ID, _T("Add folder"), mIcon->GetBitmap(Icon_folder_down), _T("Add the content of a folder to database") @@ -297,8 +343,9 @@ namespace creaImageIO ); #endif //const wxBitmap& bitmap1, const wxString& shortHelpString = "", wxItemKind kind = wxITEM_NORMAL) + mToolBar->Realize(); - mToolBar->Realize(); + */ } //====================================================================== @@ -1349,6 +1396,20 @@ namespace creaImageIO //================================================= //================================================= + +BEGIN_EVENT_TABLE(WxGimmickView, wxPanel) + EVT_BUTTON(TOOL_CREATEDB_ID, WxGimmickView::OnCreateDB) + EVT_BUTTON(TOOL_ADDFILES_ID, WxGimmickView::OnAddFiles) + EVT_BUTTON(TOOL_ADDDIR_ID, WxGimmickView::OnAddDir) + EVT_BUTTON(TOOL_ADDDATABASE_ID, WxGimmickView::OnAddDB) + EVT_BUTTON(TOOL_REMOVE_ID, WxGimmickView::OnRemove) + EVT_BUTTON(TOOL_SYNCHRONIZE_ID, WxGimmickView::OnSynchronize) + EVT_BUTTON(TOOL_SETTINGS_ID, WxGimmickView::OnSettings) + EVT_BUTTON(TOOL_TOOLS_ID, WxGimmickView::OnTools) +END_EVENT_TABLE() + + +/* BEGIN_EVENT_TABLE(WxGimmickView, wxPanel) EVT_TOOL(TOOL_CREATEDB_ID, WxGimmickView::OnCreateDB) EVT_TOOL(TOOL_ADDFILES_ID, WxGimmickView::OnAddFiles) @@ -1359,6 +1420,7 @@ namespace creaImageIO EVT_TOOL(TOOL_SETTINGS_ID, WxGimmickView::OnSettings) EVT_TOOL(TOOL_TOOLS_ID, WxGimmickView::OnTools) END_EVENT_TABLE() +*/ //================================================= } // EO namespace creaImageIO