From: guigues Date: Wed, 14 May 2008 12:32:26 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: r0.6.1~37 X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=commitdiff_plain;h=f993478d7df1d9688c4ab93c617688c84cf2d424;p=bbtk.git *** empty log message *** --- diff --git a/kernel/src/bbtkObject.cxx b/kernel/src/bbtkObject.cxx index 7ae64a2..304fa1d 100644 --- a/kernel/src/bbtkObject.cxx +++ b/kernel/src/bbtkObject.cxx @@ -190,17 +190,21 @@ namespace bbtk if (Object::GetObjectsCount()>0) { std::cout << std::endl; - std::cout << "**************************** WARNING ********************" - <bbUserCreateWidget(); this->bbUserProcess(); bbShowWindow(); + // this->bbUserOnShow(); } //========================================================================= diff --git a/kernel/src/bbtkWxGUIScriptingInterface.cxx b/kernel/src/bbtkWxGUIScriptingInterface.cxx index 4d0a510..77a0d3a 100644 --- a/kernel/src/bbtkWxGUIScriptingInterface.cxx +++ b/kernel/src/bbtkWxGUIScriptingInterface.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkWxGUIScriptingInterface.cxx,v $ Language: C++ - Date: $Date: 2008/04/25 07:33:17 $ - Version: $Revision: 1.8 $ + Date: $Date: 2008/05/14 12:32:26 $ + Version: $Revision: 1.9 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -137,8 +137,8 @@ namespace bbtk mWxGUICommand->SetFocus(); - /* - + + mwxNotebook = new wxAuiNotebook(this, -1, wxPoint(0, 0), @@ -152,7 +152,25 @@ namespace bbtk //| wxAUI_NB_CLOSE_ON_ACTIVE_TAB //| wxAUI_NB_CLOSE_ON_ALL_TABS | wxNO_BORDER); - */ + + + mwxNotebook->AddPage(mWxGUITextEditor,_T("Files"),true); + mwxNotebook->AddPage(mWxGUIHtmlBrowser,_T("Help"),true); + + mwxNotebook->AddPage(mWxGUIOutputMessages,_T("Messages"),true); + + mwxNotebook->AddPage(mWxGUICommand,_T("Command"),true); + + m_mgr.AddPane(mwxNotebook, + wxAuiPaneInfo().Name(wxT("nb")) + .CaptionVisible(false) + .MinimizeButton(false) + .MaximizeButton(false) + .Center() + // .MinSize(wxSize(100,100)) + ); + + /* // m_mgr.AddPane(mWxGUITextEditor, wxAuiPaneInfo().Name(wxT("editor_content")) @@ -189,6 +207,7 @@ namespace bbtk .Position(1) .MinSize(wxSize(100,100)) ); + */ // m_mgr.AddPane(mwxButtonRun, // wxAuiPaneInfo().Name(wxT("button_run_content"))); @@ -202,6 +221,8 @@ namespace bbtk SetAutoLayout(true); Layout(); + mwxNotebook->SetSelection(1); + mWxGUIHtmlBrowser->GoHome(); // Refresh(); // m_mgr.Update(); } @@ -413,6 +434,8 @@ namespace bbtk && (target[s-4]=='.')) { mWxGUITextEditor->Open(target); + mwxNotebook->SetSelection(0); + mWxGUITextEditor->SetFocus(); return false; } return true; diff --git a/kernel/src/bbtkWxGUITextEditor.cxx b/kernel/src/bbtkWxGUITextEditor.cxx index a61de17..b1f95b4 100644 --- a/kernel/src/bbtkWxGUITextEditor.cxx +++ b/kernel/src/bbtkWxGUITextEditor.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkWxGUITextEditor.cxx,v $ Language: C++ - Date: $Date: 2008/04/24 12:56:40 $ - Version: $Revision: 1.11 $ + Date: $Date: 2008/05/14 12:32:26 $ + Version: $Revision: 1.12 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -209,6 +209,32 @@ namespace bbtk } //================================================================ + + + + + + + + + + + + + + + + + + + + + + //================================================================ + // WxGUITextEditor + //================================================================ + + //================================================================ WxGUITextEditor::WxGUITextEditor( wxWindow *parent, WxGUITextEditorUser* user ) @@ -216,20 +242,10 @@ namespace bbtk mUser(user), mFileNameFilter("*.*") { - // std::cout << "WxGUITextEditor::WxGUITextEditor"<SetWxGUITextEditor(this); - // mInterpreter->SetCommandLine(true); m_mgr.SetManagedWindow(this); - //============== - // Menu - wxInitAllImageHandlers(); - - - // wxFlexGridSizer *sizer= new wxFlexGridSizer(2); - wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL); - + // wxInitAllImageHandlers(); + mwxNotebook = new wxAuiNotebook(this, -1, wxPoint(0, 0), @@ -244,12 +260,18 @@ namespace bbtk //| wxAUI_NB_CLOSE_ON_ALL_TABS | wxNO_BORDER); - sizer->Add(mwxNotebook,1,wxGROW); + m_mgr.AddPane(mwxNotebook, + wxAuiPaneInfo().Name(wxT("notebook")) + .Caption(wxT("")) + .CaptionVisible(false) + .MinimizeButton(false) + .MaximizeButton(false) + .CloseButton(false) + // .Dockable(false).Float() + .Center() + .MinSize(wxSize(100,50)) + ); - - // BUTTONS - wxPanel *btnsCtrlPanel = new wxPanel(this,-1); - wxBoxSizer *btnsSizer = new wxBoxSizer(wxHORIZONTAL); /* wxBitmap bmp_new(cc_new_xpm); @@ -266,48 +288,47 @@ namespace bbtk wxBitmap bmp_saveas(filesaveas_xpm); wxBitmap bmp_run(down_xpm); - - wxSize btn_size(32,32); - mwxButtonNew = new wxBitmapButton( btnsCtrlPanel,ID_ButtonNew,bmp_new - ,wxDefaultPosition, btn_size); - btnsSizer->Add( mwxButtonNew ); - - mwxButtonOpen = new wxBitmapButton( btnsCtrlPanel,ID_ButtonOpen,bmp_open ,wxDefaultPosition, btn_size);//,_T("Open") ); - btnsSizer->Add( mwxButtonOpen ); - - mwxButtonClose = new wxBitmapButton( btnsCtrlPanel,ID_ButtonClose,bmp_close ,wxDefaultPosition, btn_size);//,_T("Open") ); - btnsSizer->Add( mwxButtonClose ); - - mwxButtonSave = new wxBitmapButton( btnsCtrlPanel,ID_ButtonSave,bmp_save ,wxDefaultPosition, btn_size);//_T("Save") ); - btnsSizer->Add( mwxButtonSave ); - - mwxButtonSaveAs = new wxBitmapButton( btnsCtrlPanel,ID_ButtonSaveAs,bmp_saveas ,wxDefaultPosition, btn_size);//_T("Save") ); - btnsSizer->Add( mwxButtonSaveAs ); - - - mwxButtonRun = new wxBitmapButton( btnsCtrlPanel,ID_ButtonRun,bmp_run ,wxDefaultPosition, btn_size);//_T("Run") ); - btnsSizer->Add( mwxButtonRun ); - /* - wxBitmap bmp_quit(cc_exit_xpm); - mwxButtonQuit = new wxBitmapButton( btnsCtrlPanel,ID_ButtonQuit,bmp_quit);//_T("Quit") ); - btnsSizer->Add( mwxButtonQuit ); - */ - - mwxPosition = new wxStaticText ( btnsCtrlPanel, -1, _T("")); - btnsSizer->Add( mwxPosition ); + mwxToolBar = new wxToolBar(this, wxID_ANY, + wxDefaultPosition, wxDefaultSize, + wxTB_FLAT | wxTB_NODIVIDER); - btnsCtrlPanel->SetSizer(btnsSizer); - btnsCtrlPanel->SetAutoLayout(true); - btnsCtrlPanel->Layout(); - - sizer->Add ( btnsCtrlPanel, 0, wxLEFT | wxRIGHT | wxBOTTOM //| wxGROW - , 10 ); - + mwxToolBar->AddTool(ID_ButtonNew, _T("New"), + bmp_new, wxNullBitmap, wxITEM_NORMAL, + _T("New file"), _T("Create a new file")); + mwxToolBar->AddTool(ID_ButtonOpen, _T("Open"), + bmp_open, wxNullBitmap, wxITEM_NORMAL, + _T("Open file"), _T("This is help for new file tool")); + mwxToolBar->AddTool(ID_ButtonClose, _T("Close"), + bmp_close, wxNullBitmap, wxITEM_NORMAL, + _T("Close file"), _T("Close current file")); + mwxToolBar->AddTool(ID_ButtonSave, _T("New"), + bmp_save, wxNullBitmap, wxITEM_NORMAL, + _T("Save file"), _T("Save current file")); + mwxToolBar->AddTool(ID_ButtonSaveAs, _T("New"), + bmp_saveas, wxNullBitmap, wxITEM_NORMAL, + _T("Save file as"), _T("Save current file as")); + mwxToolBar->AddTool(ID_ButtonRun, _T("Run"), + bmp_run, wxNullBitmap, wxITEM_NORMAL, + _T("Run file"), _T("Run current file")); + + mwxToolBar->AddSeparator(); + mwxPosition = new wxStaticText ( mwxToolBar, -1, _T("")); + mwxToolBar->AddControl(mwxPosition); + mwxToolBar->Realize(); + + m_mgr.AddPane(mwxToolBar, + wxAuiPaneInfo().Name(wxT("toolBar")) + .Caption(wxT("")) + .ToolbarPane() + .Bottom() + .MinSize(wxSize(100,50)) + .LeftDockable(false).RightDockable(false) + ); NewPage(""); UpdateInfo(); - SetSizer(sizer); + m_mgr.Update(); SetAutoLayout(true); Layout(); } @@ -357,11 +378,53 @@ namespace bbtk //================================================================ //================================================================ - void WxGUITextEditor::OnButtonOpen(wxCommandEvent& event) - { - Open(); - FocusOnCurrentPage(); - } + void WxGUITextEditor::OnToolLeftClick(wxCommandEvent& event) + { + switch (event.GetId()) + { + case ID_ButtonNew : + New(); + FocusOnCurrentPage(); + break; + case ID_ButtonOpen : + Open(); + FocusOnCurrentPage(); + break; + case ID_ButtonClose : + CloseCurrentPage(); + break; + case ID_ButtonSave : + SaveCurrentPage(); + break; + case ID_ButtonSaveAs : + if (mwxNotebook->GetPageCount()==0) break; + GetCurrentPage()->SetAskFilename(true); + SaveCurrentPage(); + break; + case ID_ButtonRun : + if ((mUser!=0) && (mwxNotebook->GetPageCount()>0)) + mUser->WxGUITextEditorRun(); + FocusOnCurrentPage(); + break; + } + } + //================================================================ + + //================================================================ + void WxGUITextEditor::OnToolRightClick(wxCommandEvent& event) + { + } + //================================================================ + + //================================================================ + void WxGUITextEditor::New() + { + NewPage(""); + UpdateInfo(); + } + //================================================================ + + //================================================================ void WxGUITextEditor::Open() { // std::cout << "-------------- OPEN ---------------"<GetPageCount()==0) return true; + if (GetCurrentPage()->IsModified()) { wxString mess = std2wx(GetCurrentPage()->GetPageName()); @@ -426,7 +483,7 @@ namespace bbtk } mwxNotebook->DeletePage(mwxNotebook->GetSelection()); FocusOnCurrentPage(); - return true; + return false; } //================================================================ @@ -447,10 +504,6 @@ namespace bbtk //================================================================ //================================================================ - void WxGUITextEditor::OnButtonSave(wxCommandEvent& event) - { - SaveCurrentPage(); - } void WxGUITextEditor::SaveCurrentPage() { if (mwxNotebook->GetPageCount()==0) return; @@ -460,42 +513,11 @@ namespace bbtk } //================================================================ - //================================================================ - void WxGUITextEditor::OnButtonSaveAs(wxCommandEvent& event) - { - if (mwxNotebook->GetPageCount()==0) return; - GetCurrentPage()->SetAskFilename(true); - SaveCurrentPage(); - } - //================================================================ //================================================================ void WxGUITextEditor::OnPageClose(wxAuiNotebookEvent& evt) { - // std::cout << "-------------- CLOSE ---------------"<GetPageCount()==0) return; - if (GetCurrentPage()->IsModified()) - { - wxMessageDialog* d = - new wxMessageDialog(this, - _T("Buffer modified. Save it ?"), - _T("Save buffer"), - wxYES_NO | wxCANCEL | wxICON_QUESTION); - switch (d->ShowModal()) - { - case wxID_CANCEL : - evt.Veto(); - break; - case wxID_YES : - GetCurrentPage()->Save(mFileNameFilter); - break; - case wxID_NO : ; - } - } - */ } //================================================================ @@ -517,12 +539,6 @@ namespace bbtk */ //================================================================ - void WxGUITextEditor::OnButtonRun(wxCommandEvent& event) - { - if ((mUser!=0) && (mwxNotebook->GetPageCount()>0)) - mUser->WxGUITextEditorRun(); - FocusOnCurrentPage(); - } /* void WxGUITextEditor::Run() @@ -554,19 +570,6 @@ namespace bbtk //================================================================ - //================================================================ - void WxGUITextEditor::OnButtonNew(wxCommandEvent& event) - { - New(); - FocusOnCurrentPage(); - } - void WxGUITextEditor::New() - { - /// std::cout << "-------------- NEW ---------------" << std::endl; - NewPage(""); - UpdateInfo(); - } - //================================================================ //================================================================ void WxGUITextEditor::UpdateInfo() @@ -631,14 +634,8 @@ namespace bbtk //================================================================ BEGIN_EVENT_TABLE(WxGUITextEditor, wxPanel) - // EVT_CHAR(WxGUITextEditor::OnKeyPress) - EVT_BUTTON(WxGUITextEditor::ID_ButtonNew, WxGUITextEditor::OnButtonNew) - EVT_BUTTON(WxGUITextEditor::ID_ButtonOpen, WxGUITextEditor::OnButtonOpen) - EVT_BUTTON(WxGUITextEditor::ID_ButtonClose, WxGUITextEditor::OnButtonClose) - EVT_BUTTON(WxGUITextEditor::ID_ButtonSave, WxGUITextEditor::OnButtonSave) - EVT_BUTTON(WxGUITextEditor::ID_ButtonSaveAs, WxGUITextEditor::OnButtonSaveAs) - EVT_BUTTON(WxGUITextEditor::ID_ButtonRun, WxGUITextEditor::OnButtonRun) - // EVT_BUTTON(WxGUITextEditor::ID_ButtonQuit, WxGUITextEditor::OnButtonQuit) + EVT_MENU(wxID_ANY, WxGUITextEditor::OnToolLeftClick) + EVT_TOOL_RCLICKED(wxID_ANY, WxGUITextEditor::OnToolRightClick) EVT_AUINOTEBOOK_PAGE_CLOSE(wxID_ANY, WxGUITextEditor::OnPageClose) END_EVENT_TABLE() //================================================================ diff --git a/kernel/src/bbtkWxGUITextEditor.h b/kernel/src/bbtkWxGUITextEditor.h index 9c0d0d5..2bc6efb 100644 --- a/kernel/src/bbtkWxGUITextEditor.h +++ b/kernel/src/bbtkWxGUITextEditor.h @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkWxGUITextEditor.h,v $ Language: C++ - Date: $Date: 2008/03/25 15:47:54 $ - Version: $Revision: 1.4 $ + Date: $Date: 2008/05/14 12:32:26 $ + Version: $Revision: 1.5 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -114,13 +114,9 @@ namespace bbtk void OnKeyDown(wxKeyEvent& event); void OnKeyUp(wxKeyEvent& event); - void OnButtonNew(wxCommandEvent& event); - void OnButtonOpen(wxCommandEvent& event); - void OnButtonClose(wxCommandEvent& event); - void OnButtonSave(wxCommandEvent& event); - void OnButtonSaveAs(wxCommandEvent& event); - void OnButtonRun(wxCommandEvent& event); - // void OnButtonQuit(wxCommandEvent& event); + void OnToolLeftClick(wxCommandEvent& event); + void OnToolRightClick(wxCommandEvent& event); + void OnPageClose(wxAuiNotebookEvent& evt); void New(); @@ -148,16 +144,8 @@ namespace bbtk wxAuiManager m_mgr; wxAuiNotebook* mwxNotebook; - // Interpreter* mInterpreter; - // wxSplitterWindow* mwxSplit; - - wxButton * mwxButtonNew; - wxButton * mwxButtonOpen; - wxButton * mwxButtonClose; - wxButton * mwxButtonSave; - wxButton * mwxButtonSaveAs; - wxButton * mwxButtonRun; - // wxButton * mwxButtonQuit; + wxToolBar* mwxToolBar; + wxStaticText* mwxPosition; std::string mFileNameFilter; diff --git a/packages/wxvtk/src/bbwxvtkViewer2D.cxx b/packages/wxvtk/src/bbwxvtkViewer2D.cxx index 2d694c4..d36fc6d 100644 --- a/packages/wxvtk/src/bbwxvtkViewer2D.cxx +++ b/packages/wxvtk/src/bbwxvtkViewer2D.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbwxvtkViewer2D.cxx,v $ Language: C++ - Date: $Date: 2008/05/14 07:01:00 $ - Version: $Revision: 1.5 $ + Date: $Date: 2008/05/14 12:32:26 $ + Version: $Revision: 1.6 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -71,7 +71,7 @@ namespace bbwxvtk // LG : because it has been allocated with operator new not method ::New // we want to force its destruction without taking care of vtk ref counting // on the contrary the following vtk objects are deleted with vtk Delete - std::cout << "Viewer2DWidget::~Viewer2DWidget()" << std::endl; + // std::cout << "Viewer2DWidget::~Viewer2DWidget()" << std::endl; if (backImageData) { // backImageData->UnRegister(NULL); @@ -81,7 +81,7 @@ namespace bbwxvtk imageViewer->Delete(); } delete wxvtkrenderwindowinteractor; - std::cout << "Viewer2DWidget::~Viewer2DWidget() OK" << std::endl; + // std::cout << "Viewer2DWidget::~Viewer2DWidget() OK" << std::endl; } //------------------------------------------------------------------------- @@ -91,8 +91,9 @@ namespace bbwxvtk void Viewer2DWidget::UpdateView() { - std::cout << "Viewer2DWidget::UpdateView() "<bbGetFullName() << std::endl; - std::cout << "slice="<bbGetInputSlice()<bbGetFullName() << std::endl; + // std::cout << "slice="<bbGetInputSlice()<bbGetInputIn()!=NULL) && (backImageData != mBox->bbGetInputIn()) ) { @@ -102,19 +103,19 @@ namespace bbwxvtk imageViewer->SetupInteractor ( wxvtkrenderwindowinteractor ); } - std::cout << "V2D b="<=ext[5]) { z=ext[5]-1; } @@ -210,7 +211,7 @@ namespace bbwxvtk // I think there is a problem with rendering before window // has been reparented ... we have to check this - ((Viewer2DWidget*)bbGetOutputWidget())->UpdateView(); + // ((Viewer2DWidget*)bbGetOutputWidget())->UpdateView(); bbSetOutputOut( bbGetInputSlice() ); }