Program: bbtk
Module: $RCSfile: bbtkWidgetBlackBoxWindow.txx,v $
Language: C++
- Date: $Date: 2009/04/08 07:56:11 $
- Version: $Revision: 1.1 $
+ Date: $Date: 2009/06/10 11:36:52 $
+ Version: $Revision: 1.4 $
=========================================================================*/
/* ---------------------------------------------------------------------
bbtkDebugMessage("widget",9,
"WidgetBlackBoxWindow::~WidgetBlackBoxWindow() "
<<this<<std::endl);
+ std::cout << "**** WidgetBlackBoxWindow::~WidgetBlackBoxWindow() "
+ <<this<<std::endl;
bbHide();
- mBox.lock()->DecNbWindowsAlive();
if (!mBox.expired())
{
+ mBox.lock()->DecNbWindowsAlive();
mBox.lock()->bbSetWindow(0);
}
}
template <class W>
void WidgetBlackBoxWindow<W>::bbHide()
{
- if (!bbIsShown()) return;
+ if ((!bbIsShown())||(mBox.expired())) return;
bbtkDebugMessage("widget",9,"WidgetBlackBoxWindow::bbHide() ["
<<mBox.lock()->bbGetName()<<"]"<<std::endl);
mBox.lock()->DecNbWindowsShown();
//=========================================================================
template <class W>
- void WidgetBlackBoxWindow<W>::bbClose()
+ void WidgetBlackBoxWindow<W>::bbDestroy()
{
- bbtkDebugMessage("widget",9,"WidgetBlackBoxWindow::bbClose() ["
+
+ if (mBox.expired()) return;
+ bbtkDebugMessage("widget",9,"WidgetBlackBoxWindow::bbDestroy() ["
<<mBox.lock()->bbGetName()<<"]"<<std::endl);
+ bbHide();
+ mBox.lock()->DecNbWindowsAlive();
+ mBox.lock()->bbSetWindow(0);
+
}
//=========================================================================