X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkWxBlackBox.cxx;h=5b8e52f0efb5602342b05dae1757008387228853;hb=9a547ce682c6ca6a25a2e937c3e5bbe9b2aae3d6;hp=f214188a02121428c991d8a315fab4105c37fb1d;hpb=b0f948e65655a106e7328784444554f34da7dcac;p=bbtk.git diff --git a/kernel/src/bbtkWxBlackBox.cxx b/kernel/src/bbtkWxBlackBox.cxx index f214188..5b8e52f 100644 --- a/kernel/src/bbtkWxBlackBox.cxx +++ b/kernel/src/bbtkWxBlackBox.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkWxBlackBox.cxx,v $ Language: C++ - Date: $Date: 2008/03/10 10:01:14 $ - Version: $Revision: 1.9 $ + Date: $Date: 2008/03/10 12:28:43 $ + Version: $Revision: 1.10 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -55,7 +55,7 @@ namespace bbtk mBox->bbGetFullName()<<")"<bbSetWindow(this); Wx::IncNbWindowsAlive(); - bbtkDebugMessage("Wx",9," -> Number of windows alive = " + bbtkDebugMessage("Wx",5," -> Number of windows alive = " <bbSetWindow(0); Wx::DecNbWindowsAlive(); - bbtkDebugMessage("Wx",9," -> Number of windows alive = " + bbtkDebugMessage("Wx",5," -> Number of windows alive = " <bbGetFullName()<<"]"< Number of windows shown = " + bbtkDebugMessage("Wx",5," -> Number of windows shown = " <bbGetFullName()<<"]"< Number of windows shown = " + bbtkDebugMessage("Wx",5," -> Number of windows shown = " <bbGetFullName()<<")"<bbUserOnShow(); + // wxFrame::SetFocus(); } //========================================================================= @@ -233,7 +239,8 @@ namespace bbtk bbtkDebugMessage("Wx",9,"WxBlackBoxFrame::bbHide() ["<< bbGetBlackBox()->bbGetFullName()<<"]"<bbUserOnHide(); } //========================================================================= @@ -524,6 +531,15 @@ namespace bbtk //========================================================================= + //========================================================================= + void WxBlackBox::bbProcess() + { + if (bbGetOutputWidget()==0) this->bbUserCreateWidget(); + this->bbUserProcess(); + bbShowWindow(); + } + //========================================================================= + //================================================================== /// Specific methods for window creation during pipeline execution /// Shows the window associated to the box @@ -654,6 +670,35 @@ namespace bbtk //================================================================== + //================================================================== + WxBlackBox::Window* WxBlackBox::bbGetContainingWindow() + { + if (bbGetWindow()!=0) return bbGetWindow(); + BlackBox::OutputConnectorMapType::const_iterator i + = bbGetOutputConnectorMap().find("Widget"); + if ( i->second->GetConnectionVector().size() != 0 ) + { + return ((WxBlackBox*)i->second->GetConnectionVector().front() + ->GetBlackBoxTo())->bbGetContainingWindow(); + } + return 0; + } + //================================================================== + + + //================================================================== + wxWindow* WxBlackBox::bbGetWxParent() { return Wx::GetTopWindow(); } + //================================================================== + + + //================================================================== + bool WxBlackBox::bbIsShown() + { + if (bbGetContainingWindow()!=0) + return bbGetContainingWindow()->bbIsShown(); + return false; + } + //================================================================== }//namespace bbtk