3 #include "vtkKWBlackBoxDialog.h"
5 #include "vtkObjectFactory.h"
7 //=========================================================================
9 //=========================================================================
13 //=========================================================================
14 vtkKWBlackBoxWindow::vtkKWBlackBoxWindow()
17 bbtkDebugMessage("kw",9,"vtkKWBlackBoxWindow::vtkKWBlackBoxWindow()"
19 bbtk::KW::IncNbWindowsAlive();
21 //=========================================================================
25 //=========================================================================
26 vtkKWBlackBoxWindow::~vtkKWBlackBoxWindow()
28 bbtkDebugMessage("kw",9,"vtkKWBlackBoxWindow::~vtkKWBlackBoxWindow() "
31 bbtk::KW::DecNbWindowsAlive();
34 mBox.lock()->bbSetWindow(0);
37 //=========================================================================
40 //=========================================================================
41 void vtkKWBlackBoxWindow::bbShow()
43 if (bbIsShown()) return;
44 bbtkDebugMessage("kw",9,"vtkKWBlackBoxWindow::bbShow()"<<std::endl);
45 bbtk::KW::IncNbWindowsShown();
48 //=========================================================================
50 //=========================================================================
51 void vtkKWBlackBoxWindow::bbHide()
53 if (!bbIsShown()) return;
54 bbtkDebugMessage("kw",9,"vtkKWBlackBoxWindow::bbHide()"<<std::endl);
55 bbtk::KW::DecNbWindowsShown();
58 //=========================================================================
60 //=========================================================================
61 void vtkKWBlackBoxWindow::bbClose()
64 //=========================================================================
67 //=========================================================================
68 // vtkKWBlackBoxDialog
69 //=========================================================================
71 //-------------------------------------------------------------------------
72 vtkStandardNewMacro( vtkKWBlackBoxDialog );
73 vtkCxxRevisionMacro( vtkKWBlackBoxDialog, "$Revision: 1.2 $");
74 //-------------------------------------------------------------------------
76 //=========================================================================
77 vtkKWBlackBoxDialog::vtkKWBlackBoxDialog()
80 bbtkDebugMessage("kw",9,"vtkKWBlackBoxDialog::vtkKWBlackBoxDialog()"
82 bbtk::KW::IncNbWindowsAlive();
83 this->mFrame = vtkKWFrame::New();
85 //=========================================================================
86 //=========================================================================
87 vtkKWBlackBoxDialog::~vtkKWBlackBoxDialog()
89 bbtkDebugMessage("kw",9,"~vtkKWBlackBoxDialog()"<<std::endl);
90 this->mFrame->Delete();
92 bbtk::KW::DecNbWindowsAlive();
95 mBox.lock()->bbSetWindow(0);
98 //=========================================================================
100 //=========================================================================
101 void vtkKWBlackBoxDialog::CreateWidget()
103 bbtkDebugMessage("kw",5,"vtkKWBlackBoxDialog::CreateWidget() ["
104 <<bbGetBlackBox()->bbGetFullName()<<"]"<<std::endl);
105 if (this->IsCreated())
107 vtkErrorMacro("vtkKWBlackBoxDialog already created");
111 this->Superclass::CreateWidget();
113 this->SetTitle((bbGetBlackBox()->bbGetInputWinTitle()+" - bbtk (c) CREATIS-LRMN").c_str());
115 this->mFrame->SetParent(this);
116 this->mFrame->Create();
117 this->mFrame->SetWidth ( bbGetBlackBox()->bbGetInputWinWidth() );
118 this->mFrame->SetHeight ( bbGetBlackBox()->bbGetInputWinHeight() );
120 this->Script("pack %s -side top -expand true",
121 this->mFrame->GetWidgetName());
123 //=========================================================================
126 //=========================================================================
127 void vtkKWBlackBoxDialog::Pack()
129 this->Script("pack %s -side top -expand true",
130 this->mFrame->GetWidgetName());
132 //=========================================================================
134 //=========================================================================
135 void vtkKWBlackBoxDialog::Cancel()
137 bbtkDebugMessage("kw",9,"vtkKWBlackBoxDialog::Cancel()"<<std::endl);
142 this->Done = vtkKWDialog::StatusCanceled;
143 // std::cout << "REFS= "<<this->GetReferenceCount()<<std::endl;
144 // std::cout << "WINS= "<<this->GetApplication()->GetNumberOfWindows ()<<std::endl;
148 //=========================================================================
151 //=========================================================================
152 void vtkKWBlackBoxDialog::bbShow()
154 if (bbIsShown()) return;
155 bbtkDebugMessage("kw",5,"vtkKWBlackBoxDialog::bbShow() ["
156 <<bbGetBlackBox()->bbGetFullName()<<"]"<<std::endl);
157 bbtk::KW::IncNbWindowsShown();
159 // vtkKWBlackBoxWindow::bbShow();
160 //SetReturnCode( kwDialog::ShowModal() );
165 //=========================================================================
167 //=========================================================================
168 void vtkKWBlackBoxDialog::bbHide()
170 bbtkDebugMessage("kw",9,"vtkKWBlackBoxDialog::bbHide()"<<std::endl);
171 // vtkKWBlackBoxWindow::bbHide();
172 bbtk::KW::DecNbWindowsShown();
177 //=========================================================================
179 //=========================================================================
180 void vtkKWBlackBoxDialog::bbClose()
182 bbtkDebugMessage("kw",9,"vtkKWBlackBoxDialog::bbClose()"<<std::endl);
183 this->Done = vtkKWDialog::StatusCanceled;
184 // this->Withdraw(); // this->Delete();
186 //=========================================================================
193 //=========================================================================
194 // vtkKWBlackBoxFrame
195 //=========================================================================
197 //-------------------------------------------------------------------------
198 vtkStandardNewMacro( vtkKWBlackBoxFrame );
199 vtkCxxRevisionMacro(vtkKWBlackBoxFrame, "$Revision: 1.2 $");
200 //-------------------------------------------------------------------------
201 //=========================================================================
202 vtkKWBlackBoxFrame::vtkKWBlackBoxFrame()
204 bbtkDebugMessage("kw",9,"vtkKWBlackBoxFrame::vtkKWBlackBoxFrame()"<<std::endl);
206 //=========================================================================
208 //=========================================================================
209 vtkKWBlackBoxFrame::~vtkKWBlackBoxFrame()
212 //=========================================================================
214 //=========================================================================
215 void vtkKWBlackBoxFrame::bbShow()
217 if (bbIsShown()) return;
218 bbtkDebugMessage("kw",5,"vtkKWBlackBoxFrame::bbShow("
219 <<bbGetBlackBox()->bbGetFullName()<<")"<<std::endl);
220 vtkKWBlackBoxWindow::bbShow();
221 // vtkKWFrame::Show();
223 // This Update is ** MANDATORY **
224 // to synchronize kwvtkRenderWindowInteractor objects
225 // (force kw objects creation **NOW**)
227 if (bbGetBlackBox()) bbGetBlackBox()->bbUserOnShow();
229 //=========================================================================
231 //=========================================================================
232 void vtkKWBlackBoxFrame::bbHide()
234 bbtkDebugMessage("kw",9,"vtkKWBlackBoxFrame::bbHide()"<<std::endl);
235 vtkKWBlackBoxWindow::bbHide();
236 // vtkKWFrame::Hide();
238 if (bbGetBlackBox()) bbGetBlackBox()->bbUserOnHide();
240 //=========================================================================
242 //=========================================================================
243 void vtkKWBlackBoxFrame::bbClose()
245 bbtkDebugMessage("kw",9,"vtkKWBlackBoxFrame::bbClose()"<<std::endl);
246 // vtkKWFrame::Close();
249 //=========================================================================