+/*# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Sant�)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+# This software is governed by the CeCILL-B license under French law and
+# abiding by the rules of distribution of free software. You can use,
+# modify and/ or redistribute the software under the terms of the CeCILL-B
+# license as circulated by CEA, CNRS and INRIA at the following URL
+# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+# or in the file LICENSE.txt.
+#
+# As a counterpart to the access to the source code and rights to copy,
+# modify and redistribute granted by the license, users are provided only
+# with a limited warranty and the software's author, the holder of the
+# economic rights, and the successive licensors have only limited
+# liability.
+#
+# The fact that you are presently reading this means that you have had
+# knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------ */
#include "ManualPaintControler.h"
#include "vtkInteractorManualPaint.h"
-#include "wxVtk2DBaseView.h"
#include "vtkImageActor.h"
//---------------------------------------------------------------------------
-ManualPaintControler::ManualPaintControler()
-{
- auxZ=0;
+ManualPaintControler::ManualPaintControler() {
+ auxZ = 0;
+ _wxvtk2Dbaseview = NULL;
}
//---------------------------------------------------------------------------
-ManualPaintControler::~ManualPaintControler()
-{
+ManualPaintControler::~ManualPaintControler() {
}
//---------------------------------------------------------------------------
-void ManualPaintControler::SetManualPaintModel(ManualPaintModel* manualPaintModel)
-{
- _manualPaintModel = manualPaintModel;
+void ManualPaintControler::SetManualPaintModel(
+ ManualPaintModel* manualPaintModel) {
+ _manualPaintModel = manualPaintModel;
}
//---------------------------------------------------------------------------
-void ManualPaintControler::SetManualPaintPanel(ManualPaintPanel* manualPaintPanel)
-{
- _manualPaintPanel = manualPaintPanel;
+void ManualPaintControler::SetManualPaintPanel(
+ ManualPaintPanel* manualPaintPanel) {
+ _manualPaintPanel = manualPaintPanel;
}
//---------------------------------------------------------------------------
-void ManualPaintControler::SetWxVtkBaseView(wxVtkBaseView *baseview)
-{
- _wxvtkbaseview = baseview;
+void ManualPaintControler::SetWxVtk2DBaseView(
+ wxVtk2DBaseView *wxvtk2Dbaseview) {
+ _wxvtk2Dbaseview = wxvtk2Dbaseview;
}
//---------------------------------------------------------------------------
-void ManualPaintControler::Config()
-{
- vtkInteractorManualPaint *imp = new vtkInteractorManualPaint(this);
- vtkInteractorStyleBaseView *isbv = (vtkInteractorStyleBaseView*)(_wxvtkbaseview->GetInteractorStyleBaseView());
- isbv->AddInteractorStyleMaracas(imp);
+void ManualPaintControler::Config() {
+ if (_wxvtk2Dbaseview != NULL) {
+ vtkInteractorStyleBaseView *isbv =
+ (vtkInteractorStyleBaseView*) (_wxvtk2Dbaseview->GetInteractorStyleBaseView());
+ isbv->AddInteractorStyleMaracas(new vtkInteractorManualPaint(this));
+ }
}
-
-
//---------------------------------------------------------------------------
-void ManualPaintControler::PaintImage(int px,int py, int pz)
-{
- _manualPaintModel->PaintImage(px,py,pz);
- RefreshView();
+void ManualPaintControler::PaintImage(int px, int py, int pz) {
+ _manualPaintModel->SetDirection(_wxvtk2Dbaseview->GetDirection());
+ _manualPaintModel->PaintImage(px, py, pz);
+
+ // The refresh mechanisme is made in the vtkInteractorManualPaint
+ // RefreshView();
}
//---------------------------------------------------------------------------
-void ManualPaintControler::RefreshView()
+void ManualPaintControler::SetImageUndo()
{
- wxVtk2DBaseView *wxvtk2Dbaseview = (wxVtk2DBaseView*)_wxvtkbaseview;
- vtkImageViewer2 *vtkimageviewer2 = wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2();
- vtkimageviewer2->GetWindowLevel()->Modified();
-
+ _manualPaintModel->SetUndoImage();
}
-