diff --git a/Modules/Feature/Descriptors/include/otbSiftFastImageFilter.h b/Modules/Feature/Descriptors/include/otbSiftFastImageFilter.h
index 41062e2fc1bc9b36a44593084ef3e9087180030f..f0da039e286075354da3309cfc124ea0b3531224 100644
--- a/Modules/Feature/Descriptors/include/otbSiftFastImageFilter.h
+++ b/Modules/Feature/Descriptors/include/otbSiftFastImageFilter.h
@@ -88,16 +88,16 @@ public:
 
 protected:
   /** Actually process the input */
-  virtual void GenerateData();
+  void GenerateData() ITK_OVERRIDE;
 
   /** Constructor */
   SiftFastImageFilter();
 
   /** Destructor */
-  virtual ~SiftFastImageFilter() {}
+  ~SiftFastImageFilter() ITK_OVERRIDE {}
 
   /** PrintSelf method */
-  virtual void PrintSelf(std::ostream& os, itk::Indent indent) const;
+  void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;
 
 private:
   /** The number of scales */
diff --git a/Modules/Filtering/Projection/include/otbGroundSpacingImageFunction.h b/Modules/Filtering/Projection/include/otbGroundSpacingImageFunction.h
index 70e3945ae7cc62e9a37c1d3040acc87338117bdd..86d89e846e6ea7b1650735711b61f19504357ab6 100644
--- a/Modules/Filtering/Projection/include/otbGroundSpacingImageFunction.h
+++ b/Modules/Filtering/Projection/include/otbGroundSpacingImageFunction.h
@@ -81,18 +81,18 @@ public:
   itkStaticConstMacro(ImageDimension, unsigned int, InputImageType::ImageDimension);
 
   /** Evalulate the function at specified index */
-  virtual FloatType EvaluateAtIndex(const IndexType& index) const;
+  FloatType EvaluateAtIndex(const IndexType& index) const ITK_OVERRIDE;
 
   /** Evaluate the function at non-integer positions */
-  virtual FloatType Evaluate(const PointType& point) const
+  FloatType Evaluate(const PointType& point) const ITK_OVERRIDE
   {
     IndexType index;
     this->ConvertPointToNearestIndex(point, index);
     return this->EvaluateAtIndex(index);
   }
 
-  virtual FloatType EvaluateAtContinuousIndex(
-    const ContinuousIndexType& cindex) const
+  FloatType EvaluateAtContinuousIndex(
+    const ContinuousIndexType& cindex) const ITK_OVERRIDE
   {
     IndexType index;
     this->ConvertContinuousIndexToNearestIndex(cindex, index);
@@ -103,8 +103,8 @@ public:
 
 protected:
   GroundSpacingImageFunction();
-  virtual ~GroundSpacingImageFunction(){}
-  void PrintSelf(std::ostream& os, itk::Indent indent) const;
+  ~GroundSpacingImageFunction() ITK_OVERRIDE{}
+  void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;
 
 private:
   GroundSpacingImageFunction(const Self &);  //purposely not implemented
diff --git a/Modules/Filtering/Statistics/include/otbPatternSampler.h b/Modules/Filtering/Statistics/include/otbPatternSampler.h
index e341f1ef7e8a9a88764621140ddbb6eb9f0375d3..418bc968908ae66f0bff39d3ec2de6d7297bb7c1 100644
--- a/Modules/Filtering/Statistics/include/otbPatternSampler.h
+++ b/Modules/Filtering/Statistics/include/otbPatternSampler.h
@@ -86,7 +86,7 @@ public:
   /**
    * Method that resets the internal state of the sampler
    */
-  virtual void Reset(void);
+  void Reset(void) ITK_OVERRIDE;
 
   /**
    * Method to call during iteration, returns true if the sample is selected,
@@ -115,7 +115,7 @@ protected:
   PatternSampler();
 
   /** Destructor */
-  virtual ~PatternSampler() {}
+  ~PatternSampler() ITK_OVERRIDE {}
 
 private:
   // Not implemented
diff --git a/Modules/Filtering/Statistics/include/otbPeriodicSampler.h b/Modules/Filtering/Statistics/include/otbPeriodicSampler.h
index 64b12e111b7c490d86fc49207330285bf3c15e4d..3940bcd796b022d9d9ff7d9dbff42bacd9255fc4 100644
--- a/Modules/Filtering/Statistics/include/otbPeriodicSampler.h
+++ b/Modules/Filtering/Statistics/include/otbPeriodicSampler.h
@@ -80,7 +80,7 @@ public:
   /**
    * Method that resets the internal state of the sampler
    */
-  virtual void Reset(void);
+  void Reset(void) ITK_OVERRIDE;
   
   /**
    * Method to call during iteration, returns true if the sample is selected,
@@ -93,7 +93,7 @@ protected:
   PeriodicSampler();
    
   /** Destructor */
-  virtual ~PeriodicSampler() {}
+  ~PeriodicSampler() ITK_OVERRIDE {}
 
 private:
   // Not implemented
diff --git a/Modules/Filtering/Statistics/include/otbRandomSampler.h b/Modules/Filtering/Statistics/include/otbRandomSampler.h
index e132c6bee12ab11aefaf3d4f9b1a90aa8553eb09..66c1fafe71621329175a7d2a8dcea46b6909807a 100644
--- a/Modules/Filtering/Statistics/include/otbRandomSampler.h
+++ b/Modules/Filtering/Statistics/include/otbRandomSampler.h
@@ -77,7 +77,7 @@ public:
   /**
    * Reset internal counter (to be called before starting iteration)
    */
-  virtual void Reset(void);
+  void Reset(void) ITK_OVERRIDE;
 
   /**
    * Method to call during iteration, returns true if the sample is selected,
@@ -90,7 +90,7 @@ protected:
   RandomSampler();
    
   /** Destructor */
-  virtual ~RandomSampler() {}
+  ~RandomSampler() ITK_OVERRIDE {}
 
 private:
   // Not implemented
diff --git a/Modules/Filtering/Statistics/include/otbSamplerBase.h b/Modules/Filtering/Statistics/include/otbSamplerBase.h
index c152a86d8348796ba921a376932a937e2a10eb2e..b84785326bf3cc8a2ca52a96948940ef81ffd6f0 100644
--- a/Modules/Filtering/Statistics/include/otbSamplerBase.h
+++ b/Modules/Filtering/Statistics/include/otbSamplerBase.h
@@ -75,7 +75,7 @@ protected:
   SamplerBase();
    
   /** Destructor */
-  virtual ~SamplerBase() {}
+  ~SamplerBase() ITK_OVERRIDE {}
   
   /** Current count of selected elements */
   unsigned long m_ChosenElements;
diff --git a/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToReaderOptions.h b/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToReaderOptions.h
index 6807d7ede382deb80ba22ad4f0a2e32b64c9a19f..9deb9696f39eb45d0b3d9f80cdff2fc81154f00f 100644
--- a/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToReaderOptions.h
+++ b/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToReaderOptions.h
@@ -68,7 +68,7 @@ public:
   };
 
   /* Set Methods */
-  virtual void SetExtendedFileName(const char * extFname);
+  void SetExtendedFileName(const char * extFname) ITK_OVERRIDE;
   /* Get Methods */
   bool SimpleFileNameIsSet () const;
   bool ExtGEOMFileNameIsSet () const;
diff --git a/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToWriterOptions.h b/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToWriterOptions.h
index 65438ed281874b42309d46e783288e0806094f8e..3bcab732599dd4c1a95572e35070a68b5824f26a 100644
--- a/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToWriterOptions.h
+++ b/Modules/IO/ExtendedFilename/include/otbExtendedFilenameToWriterOptions.h
@@ -73,7 +73,7 @@ public:
   };
 
   /* Set Methods */
-  virtual void SetExtendedFileName(const char * extFname);
+  void SetExtendedFileName(const char * extFname) ITK_OVERRIDE;
   /* Get Methods */
   bool SimpleFileNameIsSet () const;
   bool WriteGEOMFileIsSet () const;
diff --git a/Modules/Learning/Sampling/include/otbImageSampleExtractorFilter.h b/Modules/Learning/Sampling/include/otbImageSampleExtractorFilter.h
index e0cc84306641eae3f726dd8beaf5c47ed6e575af..ed224e52b2863e2129d58fc384dd326fe683bd0c 100644
--- a/Modules/Learning/Sampling/include/otbImageSampleExtractorFilter.h
+++ b/Modules/Learning/Sampling/include/otbImageSampleExtractorFilter.h
@@ -70,10 +70,10 @@ public:
   /** Get the output samples OGR container */
   ogr::DataSource* GetOutputSamples();
 
-  virtual void Synthetize(void){}
+  void Synthetize(void) ITK_OVERRIDE{}
 
   /** Reset method called before starting the streaming*/
-  virtual void Reset(void);
+  void Reset(void) ITK_OVERRIDE;
   
   itkSetMacro(SampleFieldPrefix, std::string);
   itkGetMacro(SampleFieldPrefix, std::string);
@@ -88,14 +88,14 @@ protected:
   /** Constructor */
   PersistentImageSampleExtractorFilter();
   /** Destructor */
-  virtual ~PersistentImageSampleExtractorFilter() {}
+  ~PersistentImageSampleExtractorFilter() ITK_OVERRIDE {}
 
-  virtual void GenerateOutputInformation();
+  void GenerateOutputInformation() ITK_OVERRIDE;
 
-  virtual void GenerateInputRequestedRegion();
+  void GenerateInputRequestedRegion() ITK_OVERRIDE;
 
   /** process only points */
-  virtual void ThreadedGenerateVectorData(const ogr::Layer& layerForThread, itk::ThreadIdType threadid);
+  void ThreadedGenerateVectorData(const ogr::Layer& layerForThread, itk::ThreadIdType threadid) ITK_OVERRIDE;
 
 private:
   PersistentImageSampleExtractorFilter(const Self &); //purposely not implemented
@@ -175,7 +175,7 @@ protected:
   /** Constructor */
   ImageSampleExtractorFilter() {}
   /** Destructor */
-  virtual ~ImageSampleExtractorFilter() {}
+  ~ImageSampleExtractorFilter() ITK_OVERRIDE {}
 
 private:
   ImageSampleExtractorFilter(const Self &); //purposely not implemented
diff --git a/Modules/Learning/Sampling/include/otbOGRDataToSamplePositionFilter.h b/Modules/Learning/Sampling/include/otbOGRDataToSamplePositionFilter.h
index 7e7b9b92db373bb732e6f988413adddd032c8853..a654b79d75b633632c07d569ff3e8cf75cc0a3ff 100644
--- a/Modules/Learning/Sampling/include/otbOGRDataToSamplePositionFilter.h
+++ b/Modules/Learning/Sampling/include/otbOGRDataToSamplePositionFilter.h
@@ -85,10 +85,10 @@ public:
   /** Runtime information support. */
   itkTypeMacro(PersistentOGRDataToSamplePositionFilter, PersistentSamplingFilterBase);
 
-  virtual void Synthetize(void){}
+  void Synthetize(void) ITK_OVERRIDE{}
 
   /** Reset method called before starting the streaming*/
-  virtual void Reset(void);
+  void Reset(void) ITK_OVERRIDE;
 
   /** Get a reference to the internal samplers at a given level */
   SamplerMapType& GetSamplers(unsigned int level);
@@ -112,7 +112,7 @@ public:
 
   /** Make a DataObject of the correct type to be used as the specified
    * output. */
-  virtual itk::DataObject::Pointer MakeOutput(DataObjectPointerArraySizeType idx);
+  itk::DataObject::Pointer MakeOutput(DataObjectPointerArraySizeType idx) ITK_OVERRIDE;
   using Superclass::MakeOutput;
 
   /** Get/Set of the field name storing the original FID of each sample */
@@ -123,18 +123,18 @@ protected:
   /** Constructor */
   PersistentOGRDataToSamplePositionFilter();
   /** Destructor */
-  virtual ~PersistentOGRDataToSamplePositionFilter() {}
+  ~PersistentOGRDataToSamplePositionFilter() ITK_OVERRIDE {}
 
   /** Call samplers on a current position, for a given class */
-  virtual void ProcessSample(const ogr::Feature& feature,
+  void ProcessSample(const ogr::Feature& feature,
                              typename TInputImage::IndexType& imgIndex,
                              typename TInputImage::PointType& imgPoint,
-                             itk::ThreadIdType& threadid);
+                             itk::ThreadIdType& threadid) ITK_OVERRIDE;
 
   /** Method to split the input OGRDataSource
    *  according to the class partition
    */
-  virtual void DispatchInputVectors(void);
+  void DispatchInputVectors(void) ITK_OVERRIDE;
 
 private:
   PersistentOGRDataToSamplePositionFilter(const Self &); //purposely not implemented
@@ -249,7 +249,7 @@ protected:
   /** Constructor */
   OGRDataToSamplePositionFilter() {}
   /** Destructor */
-  virtual ~OGRDataToSamplePositionFilter() {}
+  ~OGRDataToSamplePositionFilter() ITK_OVERRIDE {}
 
 private:
   OGRDataToSamplePositionFilter(const Self &); //purposely not implemented
diff --git a/Modules/Learning/Sampling/include/otbPersistentSamplingFilterBase.h b/Modules/Learning/Sampling/include/otbPersistentSamplingFilterBase.h
index 37d40fa88eb2eec057c274655bb7f1480515df55..8d2c1a2ca1cd49bda0bf07eed1b2b8c2a2397b6f 100644
--- a/Modules/Learning/Sampling/include/otbPersistentSamplingFilterBase.h
+++ b/Modules/Learning/Sampling/include/otbPersistentSamplingFilterBase.h
@@ -94,21 +94,21 @@ protected:
   /** Constructor */
   PersistentSamplingFilterBase();
   /** Destructor */
-  virtual ~PersistentSamplingFilterBase() {}
+  ~PersistentSamplingFilterBase() ITK_OVERRIDE {}
 
   /** Use the same output information as input image, check the field index
    *  and the mask footprint */
-  virtual void GenerateOutputInformation();
+  void GenerateOutputInformation() ITK_OVERRIDE;
 
   /** Use an empty region to input image (pixel values not needed) and set
    *  the requested region for the mask */
-  virtual void GenerateInputRequestedRegion();
+  void GenerateInputRequestedRegion() ITK_OVERRIDE;
 
   /** Generate data should thread over */
-  virtual void GenerateData(void);
+  void GenerateData(void) ITK_OVERRIDE;
 
   /** Allocate in-memory layers for input and outputs */
-  virtual void AllocateOutputs(void);
+  void AllocateOutputs(void) ITK_OVERRIDE;
 
   /** Start of main processing loop */
   virtual void ThreadedGenerateVectorData(const ogr::Layer& layerForThread, itk::ThreadIdType threadid);
diff --git a/Modules/Learning/Sampling/include/otbSamplingRateCalculator.h b/Modules/Learning/Sampling/include/otbSamplingRateCalculator.h
index 7150b5259057068fa24d74f7da5f9bca99544445..2c8dcc60d8049b2d0a4a4bfc8fd408daabbdaf6a 100644
--- a/Modules/Learning/Sampling/include/otbSamplingRateCalculator.h
+++ b/Modules/Learning/Sampling/include/otbSamplingRateCalculator.h
@@ -107,10 +107,10 @@ protected:
   SamplingRateCalculator();
 
   /** Destructor */
-  virtual ~SamplingRateCalculator() {}
+  ~SamplingRateCalculator() ITK_OVERRIDE {}
 
   /**PrintSelf method */
-  virtual void PrintSelf(std::ostream& os, itk::Indent indent) const;
+  void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;
 
 private:
   SamplingRateCalculator(const Self &);    //purposely not implemented
diff --git a/Modules/Visualization/Mapla/include/mvdMaplaApplication.h b/Modules/Visualization/Mapla/include/mvdMaplaApplication.h
index 687aed14723a69551e736f05f02e8066d29728e1..0ebb64e9ec0d771ff47546624fc74332aaa3742e 100644
--- a/Modules/Visualization/Mapla/include/mvdMaplaApplication.h
+++ b/Modules/Visualization/Mapla/include/mvdMaplaApplication.h
@@ -98,7 +98,7 @@ public:
   MaplaApplication( QApplication* qtApp );
 
   /** \brief Destructor. */
-  virtual ~MaplaApplication();
+  ~MaplaApplication() ITK_OVERRIDE;
 
   //
   // STATIC METHODS.
@@ -141,7 +141,7 @@ protected:
 // Protected attributes.
 protected:
 
-  void virtual_InitializeCore();
+  void virtual_InitializeCore() ITK_OVERRIDE;
 
   /*-[ PRIVATE SECTION ]-----------------------------------------------------*/
 
diff --git a/Modules/Visualization/Mapla/include/mvdMaplaMainWindow.h b/Modules/Visualization/Mapla/include/mvdMaplaMainWindow.h
index 139b5372c2bc40b0c89f7f5a9d3762c7f5cc0fab..ac1f5e67f9356ec83f3009ce075e056963dbcb7b 100644
--- a/Modules/Visualization/Mapla/include/mvdMaplaMainWindow.h
+++ b/Modules/Visualization/Mapla/include/mvdMaplaMainWindow.h
@@ -102,7 +102,7 @@ public:
   MaplaMainWindow( QWidget* Parent =0, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~MaplaMainWindow();
+  ~MaplaMainWindow() ITK_OVERRIDE;
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
 
@@ -117,9 +117,9 @@ signals:
 protected:
 
   //
-  // QMainWindow overrides.
+  // QMainWindow methods.
 
-  void closeEvent( QCloseEvent* event );
+  void closeEvent( QCloseEvent* event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
@@ -133,11 +133,11 @@ protected slots:
 
   /**
    */
-  void OnAboutToChangeModel( const AbstractModel* );
+  void OnAboutToChangeModel( const AbstractModel* ) ITK_OVERRIDE;
 
   /**
    */
-  void OnModelChanged( AbstractModel* );
+  void OnModelChanged( AbstractModel* ) ITK_OVERRIDE;
 
   /**
    */
@@ -174,11 +174,11 @@ private:
   void InitializeCentralWidget();
 
   //
-  // I18nMainWindow overrides.
+  // I18nMainWindow methods.
 
-  virtual void virtual_SetupUI();
+  void virtual_SetupUI() ITK_OVERRIDE;
 
-  virtual void virtual_ConnectUI();
+  void virtual_ConnectUI() ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/Monteverdi/include/mvdApplication.h b/Modules/Visualization/Monteverdi/include/mvdApplication.h
index ed8f6b0abe0c64da4e77102cff13291dd5bbae19..2ab8ed241fec09b8f571123ccb43846ea0f44757 100644
--- a/Modules/Visualization/Monteverdi/include/mvdApplication.h
+++ b/Modules/Visualization/Monteverdi/include/mvdApplication.h
@@ -97,7 +97,7 @@ public:
   Application( QApplication* qtApp );
 
   /** \brief Destructor. */
-  virtual ~Application();
+  ~Application() ITK_OVERRIDE;
 
   /**
    * \return The number of outdated dataset-models present in the
@@ -158,7 +158,7 @@ protected:
 // Protected attributes.
 protected:
 
-  void virtual_InitializeCore();
+  void virtual_InitializeCore() ITK_OVERRIDE;
 
   /*-[ PRIVATE SECTION ]-----------------------------------------------------*/
 
diff --git a/Modules/Visualization/Monteverdi/include/mvdMainWindow.h b/Modules/Visualization/Monteverdi/include/mvdMainWindow.h
index 1a067a661d21636a5d6fd9d18bd84f3708744844..80fa424606db26d016dc89db7b1d4ba2d1ab870c 100644
--- a/Modules/Visualization/Monteverdi/include/mvdMainWindow.h
+++ b/Modules/Visualization/Monteverdi/include/mvdMainWindow.h
@@ -122,7 +122,7 @@ public:
   MainWindow( QWidget* p =0, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~MainWindow();
+  ~MainWindow() ITK_OVERRIDE;
 
   /**
    */
@@ -178,9 +178,9 @@ protected:
   using I18nMainWindow::ImportImage;
 
   //
-  // QMainWindow overrides.
+  // QMainWindow methods.
 
-  void closeEvent( QCloseEvent* event );
+  void closeEvent( QCloseEvent* event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
@@ -194,11 +194,11 @@ protected slots:
 
   /**
    */
-  void OnAboutToChangeModel( const AbstractModel * );
+  void OnAboutToChangeModel( const AbstractModel * ) ITK_OVERRIDE;
 
   /**
    */
-  void OnModelChanged( AbstractModel * );
+  void OnModelChanged( AbstractModel * ) ITK_OVERRIDE;
 
   /**
    */
@@ -327,13 +327,13 @@ private:
 #endif // USE_PIXEL_DESCRIPTION
 
   //
-  // I18nMainWindow overrides.
+  // I18nMainWindow methods.
 
-  virtual void virtual_SetupUI();
+  void virtual_SetupUI() ITK_OVERRIDE;
 
-  virtual void virtual_ConnectUI();
+  void virtual_ConnectUI() ITK_OVERRIDE;
 
-  virtual void virtual_InitializeUI();
+  void virtual_InitializeUI() ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/Monteverdi/include/mvdPreferencesDialog.h b/Modules/Visualization/Monteverdi/include/mvdPreferencesDialog.h
index 24a7f9adff761991ea99bd39dc17d59a14589673..da8752d389d2b63fd0b428797ba1ad5e21249218 100644
--- a/Modules/Visualization/Monteverdi/include/mvdPreferencesDialog.h
+++ b/Modules/Visualization/Monteverdi/include/mvdPreferencesDialog.h
@@ -90,7 +90,7 @@ public:
   PreferencesDialog( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** Destructor */
-  virtual ~PreferencesDialog();
+  ~PreferencesDialog() ITK_OVERRIDE;
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdAbstractImageModel.h b/Modules/Visualization/MonteverdiCore/include/mvdAbstractImageModel.h
index ff1a797972564ffc8ae7d53827bffc3b76b446a0..bc63bc117bafe075732e064e12cd3fac64766f0f 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdAbstractImageModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdAbstractImageModel.h
@@ -169,7 +169,7 @@ public:
 public:
 
   /** Destructor */
-  virtual ~AbstractImageModel();
+  ~AbstractImageModel() ITK_OVERRIDE;
 
   /** */
   inline int GetId() const;
@@ -318,9 +318,9 @@ protected:
     GetMetaDataInterface() const;
 
   //
-  // AbstractModel overrides.
+  // AbstractModel methods.
 
-  virtual void virtual_BuildModel( void* context );
+  void virtual_BuildModel( void* context ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdAbstractLayerModel.h b/Modules/Visualization/MonteverdiCore/include/mvdAbstractLayerModel.h
index a038ba4c8d29d9613d0ab471785fe32922e653be..4b3575e00bf2b92341bdc43bc58084cb8a2a993c 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdAbstractLayerModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdAbstractLayerModel.h
@@ -119,7 +119,7 @@ class OTBMonteverdiCore_EXPORT AbstractLayerModel :
 public:
 
   /** \brief Destructor. */
-  virtual ~AbstractLayerModel();
+  ~AbstractLayerModel() ITK_OVERRIDE;
 
   /**
    */
@@ -190,7 +190,7 @@ private:
 
   //
   // VisibleInterface overloads.
-  virtual void virtual_SignalVisibilityChanged( bool );
+  void virtual_SignalVisibilityChanged( bool ) ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdAbstractModel.h b/Modules/Visualization/MonteverdiCore/include/mvdAbstractModel.h
index 4574923bdc15334ed0e40d9e7eb9e5bdb0f67198..90a5a4137b8d007cdb6b64f0c5120f5374daed19 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdAbstractModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdAbstractModel.h
@@ -89,7 +89,7 @@ class OTBMonteverdiCore_EXPORT AbstractModel :
 public:
 
   /** Destructor */
-  virtual ~AbstractModel();
+  ~AbstractModel() ITK_OVERRIDE;
 
   /** */
   template< typename TModel >
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdAbstractWorker.h b/Modules/Visualization/MonteverdiCore/include/mvdAbstractWorker.h
index ba0d5b178b0f0b21a8a8df10980dac7c73908d0a..f691db82338ee3302bf0b27cfab6071c27be37bd 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdAbstractWorker.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdAbstractWorker.h
@@ -89,7 +89,7 @@ class OTBMonteverdiCore_EXPORT AbstractWorker :
 public:
 
   /** \brief Destructor. */
-  virtual ~AbstractWorker();
+  ~AbstractWorker() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdApplicationsBrowser.h b/Modules/Visualization/MonteverdiCore/include/mvdApplicationsBrowser.h
index 17c06b638e6a1273370a9263c483d775b6f573ac..ce8ce1002fb035a26fd567d8200caf29f2eb6d8f 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdApplicationsBrowser.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdApplicationsBrowser.h
@@ -110,7 +110,7 @@ public:
   ApplicationsBrowser( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~ApplicationsBrowser();
+  ~ApplicationsBrowser() ITK_OVERRIDE;
 
   /** set the path where to look for applications */
   void SetAutoLoadPath(const std::string & itk_auto_load_path);
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdBackgroundTask.h b/Modules/Visualization/MonteverdiCore/include/mvdBackgroundTask.h
index 9781590752f76fbe71c0c7dde4e3f11193b18c20..da91ad440a0a5d745c6bf693d6129b90dfa99655 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdBackgroundTask.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdBackgroundTask.h
@@ -98,7 +98,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~BackgroundTask();
+  ~BackgroundTask() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdHistogramModel.h b/Modules/Visualization/MonteverdiCore/include/mvdHistogramModel.h
index adc0e3f1aee0bccbdeeef81870ebe42cb39cdd1d..8e1bb00f1ffd0335bf72317775fe17b97ede4e81 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdHistogramModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdHistogramModel.h
@@ -174,7 +174,7 @@ public:
   HistogramModel( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~HistogramModel();
+  ~HistogramModel() ITK_OVERRIDE;
 
   /**
    */
@@ -229,10 +229,10 @@ signals:
 protected:
 
   //
-  // AbstractModel overrides.
+  // AbstractModel methods.
 
   /** */
-  virtual void virtual_BuildModel( void* context =NULL );
+  void virtual_BuildModel( void* context =NULL ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
@@ -271,12 +271,12 @@ private:
     void template_BuildModel_M( BuildContext * =NULL );
 
   //
-  // SerializableInterface overrides.
+  // SerializableInterface methods.
   //
 
-  virtual void virtual_Read( QIODevice* device );
+  void virtual_Read( QIODevice* device ) ITK_OVERRIDE;
 
-  virtual void virtual_Write( QIODevice& device ) const;
+  void virtual_Write( QIODevice& device ) const ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdI18nCoreApplication.h b/Modules/Visualization/MonteverdiCore/include/mvdI18nCoreApplication.h
index fc572d7bfad803488d5ae3879f68dc04eb1b2bae..e0e7930270cd8dfe98365cc172bdeb0ad7963a4e 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdI18nCoreApplication.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdI18nCoreApplication.h
@@ -140,7 +140,7 @@ public:
   I18nCoreApplication( QCoreApplication* qtApp );
 
   /** \brief Destructor. */
-  virtual ~I18nCoreApplication();
+  ~I18nCoreApplication() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdImageImporter.h b/Modules/Visualization/MonteverdiCore/include/mvdImageImporter.h
index 84bbb42ff59164bcae32b2c51d424e91e7f9bd2f..74631e0c6b224c8efa702285cc79c7ab2ebfc4a2 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdImageImporter.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdImageImporter.h
@@ -120,7 +120,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~ImageImporter();
+  ~ImageImporter() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -175,9 +175,9 @@ private:
   //
   // AbstractWorker oveloads.
 
-  QObject* virtual_Do();
+  QObject* virtual_Do() ITK_OVERRIDE;
 
-  QString virtual_GetFirstProgressText() const;
+  QString virtual_GetFirstProgressText() const ITK_OVERRIDE;
 
 
 //
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdMyClass.h b/Modules/Visualization/MonteverdiCore/include/mvdMyClass.h
index f87a20dcdf898e73f9211834696d09d6c50ddfc1..3887c8255f89e4a1eb835ea9074cf69a19425a31 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdMyClass.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdMyClass.h
@@ -92,7 +92,7 @@ public:
   MyClass( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~MyClass();
+  ~MyClass() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdOverviewBuilder.h b/Modules/Visualization/MonteverdiCore/include/mvdOverviewBuilder.h
index b5fc5b3308ee6dacc0bd375412000ab2c75dae36..2dac8a76f16ea88be67086049f6dd3b880528f8c 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdOverviewBuilder.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdOverviewBuilder.h
@@ -108,12 +108,12 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~OverviewBuilder();
+  ~OverviewBuilder() ITK_OVERRIDE;
 
   //
   // ProgressInterface overloads.
 
-  virtual void SetProgress( double );
+  void SetProgress( double ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -164,9 +164,9 @@ private:
   //
   // AbstractWorker oveloads.
 
-  QObject * virtual_Do();
+  QObject * virtual_Do() ITK_OVERRIDE;
 
-  QString virtual_GetFirstProgressText() const;
+  QString virtual_GetFirstProgressText() const ITK_OVERRIDE;
 
 
 //
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdProcessObjectObserver.h b/Modules/Visualization/MonteverdiCore/include/mvdProcessObjectObserver.h
index 472f7fa0e57ea66fd4a105ab2f92ed3f894f0d76..1fba5bcae565825aea0c9ad6eb251d14b43f918a 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdProcessObjectObserver.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdProcessObjectObserver.h
@@ -99,7 +99,7 @@ public:
 public:
 
   /** \brief Destructor. */
-  virtual ~ProcessObjectObserver();
+  ~ProcessObjectObserver() ITK_OVERRIDE;
 
   const ProgressInterface * GetProgressInterface() const;
   ProgressInterface * GetProgressInterface();
@@ -109,11 +109,11 @@ public:
   //
   // itk::Command overloads.
 
-  virtual void Execute( itk::Object * caller,
-			const itk::EventObject & event );
+  void Execute( itk::Object * caller,
+			const itk::EventObject & event ) ITK_OVERRIDE;
 
-  virtual void Execute( const itk::Object * caller,
-			const itk::EventObject & event );
+  void Execute( const itk::Object * caller,
+			const itk::EventObject & event ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdQuicklookModel.h b/Modules/Visualization/MonteverdiCore/include/mvdQuicklookModel.h
index 7f08dbf0dcaefca43888615e921d6f20161dc780..04452beb6b2e1347e7dbfc42013dd0447254cb29 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdQuicklookModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdQuicklookModel.h
@@ -98,7 +98,7 @@ public:
   QuicklookModel( QObject* p =NULL );
 
   /** Destructor */
-  virtual ~QuicklookModel();
+  ~QuicklookModel() ITK_OVERRIDE;
 
   /**
    * \brief Get the parent image-model of this quicklook image as an
@@ -159,7 +159,7 @@ signals:
 protected:
 
   /** */
-  virtual void virtual_BuildModel( void* context =NULL );
+  void virtual_BuildModel( void* context =NULL ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdStackedLayerModel.h b/Modules/Visualization/MonteverdiCore/include/mvdStackedLayerModel.h
index b14a6d7ecb8a5eea4d12246ae33b3bd5c28fdfaa..34b5e501f569f77f32401a0a79ebfaf6a00fbe04 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdStackedLayerModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdStackedLayerModel.h
@@ -114,7 +114,7 @@ public:
   StackedLayerModel( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~StackedLayerModel();
+  ~StackedLayerModel() ITK_OVERRIDE;
 
   inline const AbstractLayerModel * operator[]( SizeType ) const;
   inline AbstractLayerModel * operator[]( SizeType );
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdSystemError.h b/Modules/Visualization/MonteverdiCore/include/mvdSystemError.h
index 80c7df45aa1d2d8cda2aece187786aaaf41145f4..c8f8f4ae79b64ff53143505f5665f7efb402bf5b 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdSystemError.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdSystemError.h
@@ -94,7 +94,7 @@ public:
         + ": " + message) {};
 
   /** \brief Destructor. */
-  virtual ~SystemError() throw() {};
+  ~SystemError() throw() ITK_OVERRIDE {};
 
   /*-[ PROTECTED SECTION ]---------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdVectorImageModel.h b/Modules/Visualization/MonteverdiCore/include/mvdVectorImageModel.h
index 95fc79cc079756ba114332dad08e1a0107d30fcb..17f5b984bb2ab1c804fa1e65ac53b8609ce9403c 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdVectorImageModel.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdVectorImageModel.h
@@ -116,7 +116,7 @@ public:
   VectorImageModel( QObject* p =NULL );
 
   /** Destructor */
-  virtual ~VectorImageModel();
+  ~VectorImageModel() ITK_OVERRIDE;
 
   /** */
   static void EnsureValidImage( const QString& filename );
@@ -159,22 +159,22 @@ public:
   CountType ComputeBestLod( int width, int height ) const;
 
   //
-  // AbstractImageModel overrides.
+  // AbstractImageModel methods.
 
   /**
    * Get the number of available LOD.
    */
-  virtual CountType GetNbLod() const;
+  CountType GetNbLod() const ITK_OVERRIDE;
 
   /**
    * Get a smart-pointer to the current LOD image-base.
    */
-  virtual ImageBaseType::ConstPointer ToImageBase() const;
+  ImageBaseType::ConstPointer ToImageBase() const ITK_OVERRIDE;
 
   /**
    * Get a smart-pointer to the current LOD image-base.
    */
-  virtual ImageBaseType::Pointer ToImageBase();
+  ImageBaseType::Pointer ToImageBase() ITK_OVERRIDE;
 
   /**
    * Get the placename from the center pixel
@@ -182,11 +182,11 @@ public:
   std::string GetCenterPixelPlaceName();
 
   //
-  // AbstractModel overrides.
+  // AbstractModel methods.
 
-  virtual bool IsModified() const;
+  bool IsModified() const ITK_OVERRIDE;
 
-  virtual void ClearModified();
+  void ClearModified() ITK_OVERRIDE;
 
   // get image size in byte
   std::streamoff GetImageSizeInBytes()
@@ -238,12 +238,12 @@ signals:
 protected:
 
   //
-  // AbstractModel overrides.
+  // AbstractModel methods.
 
-  virtual void virtual_BuildModel( void* context =NULL );
+  void virtual_BuildModel( void* context =NULL ) ITK_OVERRIDE;
 
   //
-  // AbstractImageModel overrides.
+  // AbstractImageModel methods.
 
   void InitializeColorSetupSettings();
 
@@ -288,20 +288,20 @@ private:
   void BuildGdalOverviews();
 
   //
-  // AbstractLayerModel overrides.
+  // AbstractLayerModel methods.
 
-  virtual std::string virtual_GetWkt() const;
-  virtual bool virtual_HasKwl() const;
-  virtual void virtual_ToWgs84( const PointType &,
+  std::string virtual_GetWkt() const ITK_OVERRIDE;
+  bool virtual_HasKwl() const ITK_OVERRIDE;
+  void virtual_ToWgs84( const PointType &,
 				PointType &,
-				double & alt ) const;
+				double & alt ) const ITK_OVERRIDE;
 
   //
-  // AbstractImageModel overrides.
+  // AbstractImageModel methods.
 
-  virtual void virtual_SetCurrentLod( CountType lod );
+  void virtual_SetCurrentLod( CountType lod ) ITK_OVERRIDE;
 
-  virtual void virtual_RefreshHistogram();
+  void virtual_RefreshHistogram() ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiCore/include/mvdVectorImageSettings.h b/Modules/Visualization/MonteverdiCore/include/mvdVectorImageSettings.h
index 3d088566639cd592ec68b0ad387c3c40e0e65f2b..8532f8a5705912ea2a9f70fbd52d65a630cd4753 100644
--- a/Modules/Visualization/MonteverdiCore/include/mvdVectorImageSettings.h
+++ b/Modules/Visualization/MonteverdiCore/include/mvdVectorImageSettings.h
@@ -108,7 +108,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~VectorImageSettings();
+  ~VectorImageSettings() ITK_OVERRIDE;
 
   /**
    * \brief Assignment operator.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdAboutDialog.h b/Modules/Visualization/MonteverdiGui/include/mvdAboutDialog.h
index 54b4c9ae9fa7065fc03e768448b680f02569e34c..45a2320400ac55681807b1a607f3be82772b19ac 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdAboutDialog.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdAboutDialog.h
@@ -75,7 +75,7 @@ public:
   AboutDialog( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** Destructor */
-  virtual ~AboutDialog();
+  ~AboutDialog() ITK_OVERRIDE;
 
 //
 // SIGNALS.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdAbstractDragAndDropEventFilter.h b/Modules/Visualization/MonteverdiGui/include/mvdAbstractDragAndDropEventFilter.h
index 8ea62eeea3c215cc288fde12009597efcb2e01de..95a09b5cc9634ea4b4bd3318e61498d4b0e07755 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdAbstractDragAndDropEventFilter.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdAbstractDragAndDropEventFilter.h
@@ -88,7 +88,7 @@ class OTBMonteverdiGUI_EXPORT AbstractDragAndDropEventFilter :
 public:
 
   /** \brief Destructor. */
-  virtual ~AbstractDragAndDropEventFilter();
+  ~AbstractDragAndDropEventFilter() ITK_OVERRIDE;
 
   //
   // QObject overloads.
@@ -96,7 +96,7 @@ public:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qobject.html#eventFilter
    */
-  virtual bool eventFilter( QObject* watched, QEvent* event );
+  bool eventFilter( QObject* watched, QEvent* event ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewManipulator.h b/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewManipulator.h
index 4df51314ef5848b7a80b843870e98cf611788023..32b2470021305f6edbc1609cc31ce2d34feb613a 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewManipulator.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewManipulator.h
@@ -88,7 +88,7 @@ class OTBMonteverdiGUI_EXPORT AbstractImageViewManipulator :
 public:
 
   /** \brief Destructor. */
-  virtual ~AbstractImageViewManipulator() {};
+  ~AbstractImageViewManipulator() ITK_OVERRIDE {};
 
   //
   // Accessors
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewRenderer.h b/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewRenderer.h
index 01ead76907c39ef4b2a9352876ecc79a33ea6535..c2930c313a189aee676005b1f99461786156f89b 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewRenderer.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdAbstractImageViewRenderer.h
@@ -120,7 +120,7 @@ public:
   /**
    * Destructor.
    */
-  virtual ~AbstractImageViewRenderer(){};
+  ~AbstractImageViewRenderer() ITK_OVERRIDE{};
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdAbstractModelController.h b/Modules/Visualization/MonteverdiGui/include/mvdAbstractModelController.h
index 0161558c649a2069538bbe203071c562cced8b20..acda4b35af2c5c7f7a58f41fbf0c337a61339e56 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdAbstractModelController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdAbstractModelController.h
@@ -88,7 +88,7 @@ public:
 public:
 
   /** Destructor */
-  virtual ~AbstractModelController();
+  ~AbstractModelController() ITK_OVERRIDE;
 
   /** */
   void SetModel( AbstractModel* );
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdApplicationLauncher.h b/Modules/Visualization/MonteverdiGui/include/mvdApplicationLauncher.h
index 8d37a1f4cb0bffd394dbe8fe3047f90ac7929069..0b7314fca264e0a6b9500205139cc2335299cc90 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdApplicationLauncher.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdApplicationLauncher.h
@@ -94,7 +94,7 @@ public:
   ApplicationLauncher( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~ApplicationLauncher();
+  ~ApplicationLauncher() ITK_OVERRIDE;
 
   /**
    * \return A new instance of the automatically-generated widget of
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBox.h b/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBox.h
index 285b90e49e7a8843efde76dd80dc891db231ff2e..d9938fb2bdc1c73668dd3cd3708fcb7278d65b5e 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBox.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBox.h
@@ -97,7 +97,7 @@ public:
   ApplicationsToolBox( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~ApplicationsToolBox();
+  ~ApplicationsToolBox() ITK_OVERRIDE;
 
   /** Get TreeWidget */
   // QTreeWidget * GetAlgorithmsTree();
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBoxController.h b/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBoxController.h
index ddc85dcb2cd828f61dac6a58f32cc766ebc263f2..329d38982dbdedf9ad0394da20c5d0cd3003cf1c 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBoxController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdApplicationsToolBoxController.h
@@ -103,7 +103,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~ApplicationsToolBoxController();
+  ~ApplicationsToolBoxController() ITK_OVERRIDE;
 
   /** Get the seleceted application Gui */
   // QWidget * GetSelectedApplicationWidget(const QString& appName);
@@ -122,15 +122,15 @@ signals:
 protected:
 
   //
-  // AbstractModelController overrides.
+  // AbstractModelController methods.
 
-  virtual void Connect( AbstractModel* );
+  void Connect( AbstractModel* ) ITK_OVERRIDE;
 
-  virtual void ClearWidget();
+  void ClearWidget() ITK_OVERRIDE;
 
-  virtual void virtual_ResetWidget( bool );
+  void virtual_ResetWidget( bool ) ITK_OVERRIDE;
 
-  virtual void Disconnect( AbstractModel* );
+  void Disconnect( AbstractModel* ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdColorBandDynamicsWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdColorBandDynamicsWidget.h
index 3f061378b76340f2aa1c5be2270f2475b5e51245..3a86a1a59c649c0aeb83108de92cf86c4b9f17f6 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdColorBandDynamicsWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdColorBandDynamicsWidget.h
@@ -140,7 +140,7 @@ public:
   ColorBandDynamicsWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** Destructor */
-  virtual ~ColorBandDynamicsWidget();
+  ~ColorBandDynamicsWidget() ITK_OVERRIDE;
 
   /** */
   RgbwChannel GetChannelLabel() const;
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsController.h b/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsController.h
index 6c7fe1976d812f1fc00f3a804a86c110dfce1a95..7cad6250f3710ea8bf6f4c3f9b8cc70170f26ebd 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsController.h
@@ -96,7 +96,7 @@ public:
   ColorDynamicsController( ColorDynamicsWidget* widget, QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~ColorDynamicsController();
+  ~ColorDynamicsController() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]-----------------------------------------------**/
 
@@ -164,15 +164,15 @@ protected:
 private:
 
   //
-  // AbstractModelController overrides.
+  // AbstractModelController methods.
 
-  virtual void Connect( AbstractModel* );
+  void Connect( AbstractModel* ) ITK_OVERRIDE;
 
-  virtual void ClearWidget();
+  void ClearWidget() ITK_OVERRIDE;
 
-  virtual void virtual_ResetWidget( bool );
+  void virtual_ResetWidget( bool ) ITK_OVERRIDE;
 
-  virtual void Disconnect( AbstractModel* );
+  void Disconnect( AbstractModel* ) ITK_OVERRIDE;
 
   /**
    * \brief Reset intensity ranges to default values for given RGB
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsWidget.h
index 4a7e369b03383f54234043b72b66d337fcb9218b..3182a3ed839a5e3929f5c7679705d97fe368b3d0 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdColorDynamicsWidget.h
@@ -120,7 +120,7 @@ public:
   ColorDynamicsWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** Destructor. */
-  virtual ~ColorDynamicsWidget();
+  ~ColorDynamicsWidget() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdColorSetupController.h b/Modules/Visualization/MonteverdiGui/include/mvdColorSetupController.h
index 1e69365042dc46145c83d67dda54fc0e87037400..16033b236dc5adfa3e8a329050432374dc2fb554 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdColorSetupController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdColorSetupController.h
@@ -98,7 +98,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~ColorSetupController();
+  ~ColorSetupController() ITK_OVERRIDE;
 
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
@@ -164,15 +164,15 @@ private:
   void ResetAlpha();
 
   //
-  // AbstractModelController overrides.
+  // AbstractModelController methods.
 
-  virtual void Connect( AbstractModel* );
+  void Connect( AbstractModel* ) ITK_OVERRIDE;
 
-  virtual void ClearWidget();
+  void ClearWidget() ITK_OVERRIDE;
 
-  virtual void virtual_ResetWidget( bool );
+  void virtual_ResetWidget( bool ) ITK_OVERRIDE;
 
-  virtual void Disconnect( AbstractModel* );
+  void Disconnect( AbstractModel* ) ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdColorSetupWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdColorSetupWidget.h
index 0d97e51aac60fcb92834186512a55c2f6b45557e..25276a2257c4248216a28b1f1fd853e24487b442 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdColorSetupWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdColorSetupWidget.h
@@ -87,7 +87,7 @@ public:
   ColorSetupWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~ColorSetupWidget();
+  ~ColorSetupWidget() ITK_OVERRIDE;
 
   /**
    * \brief Set the component-name list.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdDoubleValidator.h b/Modules/Visualization/MonteverdiGui/include/mvdDoubleValidator.h
index 059eff94ffa00a8fe10bee133ee00fdf1d42c50b..f223b3eb1ef704992969b48c35ff25191d43897c 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdDoubleValidator.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdDoubleValidator.h
@@ -97,12 +97,12 @@ public:
 		   QObject *p = 0 );
 
   /** \brief Destructor. */
-  virtual ~DoubleValidator();
+  ~DoubleValidator() ITK_OVERRIDE;
 
   //
   // QDoubleValidator overloads.
 
-  virtual void fixup( QString& input ) const;
+  void fixup( QString& input ) const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdDropLineEdit.h b/Modules/Visualization/MonteverdiGui/include/mvdDropLineEdit.h
index 93e0debc805886ba75ec5f24c70f2af914763df7..df6957042469754e957a53d7c87779269df83c8d 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdDropLineEdit.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdDropLineEdit.h
@@ -98,7 +98,7 @@ public:
   DropLineEdit( const QString& contents, QWidget* p =0 );
 
   /** \brief Destructor. */
-  virtual ~DropLineEdit();
+  ~DropLineEdit() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -118,9 +118,9 @@ signals:
 // Protected methods.
 protected:
 
-  virtual void dragEnterEvent( QDragEnterEvent* event );
-  virtual void dragMoveEvent( QDragMoveEvent* event );
-  virtual void dropEvent( QDropEvent* event );
+  void dragEnterEvent( QDragEnterEvent* event ) ITK_OVERRIDE;
+  void dragMoveEvent( QDragMoveEvent* event ) ITK_OVERRIDE;
+  void dropEvent( QDropEvent* event ) ITK_OVERRIDE;
 
   /*-[ PRIVATE SECTION ]-----------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdFilenameDragAndDropEventFilter.h b/Modules/Visualization/MonteverdiGui/include/mvdFilenameDragAndDropEventFilter.h
index eafa6c6a272260e58a149424b23ffc6cb4cca383..893b2a7bed7d737558e0975ce715d18645ba98ea 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdFilenameDragAndDropEventFilter.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdFilenameDragAndDropEventFilter.h
@@ -91,7 +91,7 @@ public:
   FilenameDragAndDropEventFilter( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~FilenameDragAndDropEventFilter();
+  ~FilenameDragAndDropEventFilter() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -123,22 +123,22 @@ protected:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragEnterEvent
    */
-  virtual bool DragEnterEvent( QObject* object, QDragEnterEvent* event );
+  bool DragEnterEvent( QObject* object, QDragEnterEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragLeaveEvent
    */
-  virtual bool DragLeaveEvent( QObject* object, QDragLeaveEvent* event );
+  bool DragLeaveEvent( QObject* object, QDragLeaveEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragMoveEvent
    */
-  virtual bool DragMoveEvent( QObject* object, QDragMoveEvent* event );
+  bool DragMoveEvent( QObject* object, QDragMoveEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dropEvent
    */
-  virtual bool DropEvent( QObject* object, QDropEvent* event );
+  bool DropEvent( QObject* object, QDropEvent* event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdHistogramController.h b/Modules/Visualization/MonteverdiGui/include/mvdHistogramController.h
index a23adcc36ae5386c9a14302aa96d9ed2e83cb987..f16157b2d2b3786e2810c7520405d0d4f0b42485 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdHistogramController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdHistogramController.h
@@ -99,7 +99,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~HistogramController();
+  ~HistogramController() ITK_OVERRIDE;
 
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
@@ -130,15 +130,15 @@ private:
   void ResetWidget( RgbwChannel channel );
 
   //
-  // AbstractModelController overrides.
+  // AbstractModelController methods.
 
-  virtual void Connect( AbstractModel* );
+  void Connect( AbstractModel* ) ITK_OVERRIDE;
 
-  virtual void ClearWidget();
+  void ClearWidget() ITK_OVERRIDE;
 
-  virtual void virtual_ResetWidget( bool = false );
+  void virtual_ResetWidget( bool = false ) ITK_OVERRIDE;
 
-  virtual void Disconnect( AbstractModel* );
+  void Disconnect( AbstractModel* ) ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdHistogramPlotPicker.h b/Modules/Visualization/MonteverdiGui/include/mvdHistogramPlotPicker.h
index b600f6f489b2b3cf24f2be081658213a2501e96c..baf88090a364e608899a3dbb406e19969084055a 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdHistogramPlotPicker.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdHistogramPlotPicker.h
@@ -121,7 +121,7 @@ public:
 		       QwtPlotCanvas* canvas );
 
   /** \brief Destructor. */
-  virtual ~HistogramPlotPicker();
+  ~HistogramPlotPicker() ITK_OVERRIDE;
 
   /**
    */
@@ -132,9 +132,9 @@ public:
   void SetGrayscaleActivated( bool activated );
 
   //
-  // QwtPlotPicker overrides.
+  // QwtPlotPicker methods.
 
-  void drawRubberBand( QPainter* painter ) const;
+  void drawRubberBand( QPainter* painter ) const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -155,11 +155,11 @@ signals:
 protected:
 
   //
-  // QwtPlotPicker overrides.
+  // QwtPlotPicker methods.
 
   using QwtPlotPicker::trackerText;
 
-  virtual QwtText trackerText( const QwtDoublePoint & ) const;
+  QwtText trackerText( const QwtDoublePoint & ) const ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdHistogramWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdHistogramWidget.h
index d41059107d219cb89459686dc7e5349f4cd04ae9..bd114881c37843116fd57df1eeb89b605c7f80c0 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdHistogramWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdHistogramWidget.h
@@ -113,7 +113,7 @@ public:
   HistogramWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~HistogramWidget();
+  ~HistogramWidget() ITK_OVERRIDE;
 
   /**
    * \brief
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdI18nApplication.h b/Modules/Visualization/MonteverdiGui/include/mvdI18nApplication.h
index 39d1aa7c0b14371f644101d96615215660939686..162e97ca532f9eb4289f67a3a4edc062d77243f3 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdI18nApplication.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdI18nApplication.h
@@ -103,7 +103,7 @@ public:
   I18nApplication( QApplication* qtApp );
 
   /** \brief Destructor. */
-  virtual ~I18nApplication();
+  ~I18nApplication() ITK_OVERRIDE;
 
   //
   // APPLICATION SINGLETON.
@@ -145,7 +145,7 @@ signals:
 // Protected methods.
 protected:
 
-  virtual void virtual_InitializeCore();
+  void virtual_InitializeCore() ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdI18nMainWindow.h b/Modules/Visualization/MonteverdiGui/include/mvdI18nMainWindow.h
index 8662d42e5990d0013796274847cf9eadfd3b9995..6d2d8c58b54a7b7789df37da5669df1d8163fb26 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdI18nMainWindow.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdI18nMainWindow.h
@@ -101,7 +101,7 @@ public:
 // Public methods.
 public:
   /** \brief Destructor. */
-  virtual ~I18nMainWindow();
+  ~I18nMainWindow() ITK_OVERRIDE;
 
   /**
    */
@@ -190,9 +190,9 @@ protected:
   bool RestoreLayout( int version );
 
   //
-  // QMainWindow overrides.
+  // QMainWindow methods.
 
-  void closeEvent( QCloseEvent* event );
+  void closeEvent( QCloseEvent* event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdImageViewManipulator.h b/Modules/Visualization/MonteverdiGui/include/mvdImageViewManipulator.h
index f758fd2fc0eff24ab993413f34d5cb98fe07b809..a564f07d7ffb0bb04a96274270df26fbd52d5db4 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdImageViewManipulator.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdImageViewManipulator.h
@@ -121,7 +121,7 @@ public:
 #endif // USE_VIEW_SETTINGS_SIDE_EFFECT
 
   /** \brief Destructor. */
-  virtual ~ImageViewManipulator();
+  ~ImageViewManipulator() ITK_OVERRIDE;
 
   //
   // AbstractImageViewManipulator overloads.
@@ -130,64 +130,64 @@ public:
   //
   // Accessors.
 
-  virtual void SetViewportSize( int width, int height );
+  void SetViewportSize( int width, int height ) ITK_OVERRIDE;
 
-  virtual SizeType GetViewportSize() const;
+  SizeType GetViewportSize() const ITK_OVERRIDE;
 
-  virtual void SetOrigin( const PointType& origin );
+  void SetOrigin( const PointType& origin ) ITK_OVERRIDE;
 
-  virtual PointType GetOrigin() const;
+  PointType GetOrigin() const ITK_OVERRIDE;
 
-  virtual void SetSpacing( const SpacingType& spacing );
+  void SetSpacing( const SpacingType& spacing ) ITK_OVERRIDE;
 
-  virtual SpacingType GetSpacing() const;
+  SpacingType GetSpacing() const ITK_OVERRIDE;
 
-  virtual void SetNativeSpacing( const SpacingType& );
+  void SetNativeSpacing( const SpacingType& ) ITK_OVERRIDE;
 
-  virtual void SetWkt( const std::string& wkt );
+  void SetWkt( const std::string& wkt ) ITK_OVERRIDE;
 
-  virtual void SetKeywordList(
+  void SetKeywordList(
     const DefaultImageType::ImageKeywordlistType& kwl
-  );
+  ) ITK_OVERRIDE;
 
-  virtual PointType GetCenter() const;
+  PointType GetCenter() const ITK_OVERRIDE;
 
-  virtual ZoomType GetFixedZoomType() const;
+  ZoomType GetFixedZoomType() const ITK_OVERRIDE;
 
   //
   // Controls.
 
-  virtual
+  
     void
     SetupRenderingContext(
-      AbstractImageViewRenderer::RenderingContext * const ) const;
+      AbstractImageViewRenderer::RenderingContext * const ) const ITK_OVERRIDE;
 
-  virtual void ZoomIn();
+  void ZoomIn() ITK_OVERRIDE;
 
-  virtual void ZoomOut();
+  void ZoomOut() ITK_OVERRIDE;
 
-  virtual const PointType& Transform( PointType&, const QPoint& ) const;
+  const PointType& Transform( PointType&, const QPoint& ) const ITK_OVERRIDE;
 
-  virtual void ResetViewport();
+  void ResetViewport() ITK_OVERRIDE;
 
   //
   // Events.
 
-  virtual void MouseMoveEvent( QMouseEvent* event );
+  void MouseMoveEvent( QMouseEvent* event ) ITK_OVERRIDE;
 
-  virtual void MousePressEvent( QMouseEvent* event );
+  void MousePressEvent( QMouseEvent* event ) ITK_OVERRIDE;
 
-  virtual void MouseReleaseEvent( QMouseEvent* event );
+  void MouseReleaseEvent( QMouseEvent* event ) ITK_OVERRIDE;
 
-  virtual void MouseDoubleClickEvent( QMouseEvent * );
+  void MouseDoubleClickEvent( QMouseEvent * ) ITK_OVERRIDE;
 
-  virtual void WheelEvent( QWheelEvent* event);
+  void WheelEvent( QWheelEvent* event) ITK_OVERRIDE;
 
-  virtual void ResizeEvent( QResizeEvent* event );
+  void ResizeEvent( QResizeEvent* event ) ITK_OVERRIDE;
 
-  virtual void KeyPressEvent( QKeyEvent* event );
+  void KeyPressEvent( QKeyEvent* event ) ITK_OVERRIDE;
 
-  virtual void KeyReleaseEvent( QKeyEvent* event );
+  void KeyReleaseEvent( QKeyEvent* event ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]-----------------------------------------------**/
 
@@ -198,9 +198,9 @@ public slots:
   //
   // AbstractImageViewManipulator overloads.
 
-  virtual void CenterOn( const PointType& point );
+  void CenterOn( const PointType& point ) ITK_OVERRIDE;
 
-  virtual void ZoomTo( double scale );
+  void ZoomTo( double scale ) ITK_OVERRIDE;
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdImageViewRenderer.h b/Modules/Visualization/MonteverdiGui/include/mvdImageViewRenderer.h
index 6105285a466253a50deb9ee5d9e4ab101f28f5f0..4167861185250371a5a74ba0f3407859e58c392d 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdImageViewRenderer.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdImageViewRenderer.h
@@ -109,7 +109,7 @@ public:
 
     /**
      */
-    virtual ~RenderingContext();
+    ~RenderingContext() ITK_OVERRIDE;
 
     /**
      */
@@ -134,11 +134,11 @@ public:
   ImageViewRenderer( QObject* p = NULL );
 
   /** Destructor */
-  virtual ~ImageViewRenderer();
+  ~ImageViewRenderer() ITK_OVERRIDE;
 
   /**
    */
-  virtual bool CheckGLCapabilities( int * );
+  bool CheckGLCapabilities( int * ) ITK_OVERRIDE;
 
   /**
    */
@@ -150,45 +150,45 @@ public:
   //
   // AbstractImageViewRenderer overloads.
 
-  virtual bool GetLayerDynamics( const StackedLayerModel::KeyType & key,
+  bool GetLayerDynamics( const StackedLayerModel::KeyType & key,
 				 ParametersType & params,
-				 bool isGlobal ) const;
+				 bool isGlobal ) const ITK_OVERRIDE;
 
-  virtual const AbstractLayerModel* GetReferenceModel() const;
+  const AbstractLayerModel* GetReferenceModel() const ITK_OVERRIDE;
 
-  virtual AbstractLayerModel * GetReferenceModel();
+  AbstractLayerModel * GetReferenceModel() ITK_OVERRIDE;
 
-  virtual void GetLayerExtent( const StackedLayerModel::KeyType & key,
+  void GetLayerExtent( const StackedLayerModel::KeyType & key,
                                PointType& origin,
-                               PointType& extent ) const;
+                               PointType& extent ) const ITK_OVERRIDE;
 
-  virtual void GetReferenceExtent( PointType& origin,
-                                   PointType& extent ) const;
+  void GetReferenceExtent( PointType& origin,
+                                   PointType& extent ) const ITK_OVERRIDE;
 
-  virtual void GetViewExtent( PointType& origin,
-                              PointType& extent ) const;
+  void GetViewExtent( PointType& origin,
+                              PointType& extent ) const ITK_OVERRIDE;
 
-  virtual
-  AbstractImageViewRenderer::RenderingContext* NewRenderingContext() const;
+  
+  AbstractImageViewRenderer::RenderingContext* NewRenderingContext() const ITK_OVERRIDE;
 
-  virtual void InitializeGL();
+  void InitializeGL() ITK_OVERRIDE;
 
-  virtual void ResizeGL( int width, int height );
+  void ResizeGL( int width, int height ) ITK_OVERRIDE;
 
-  virtual
-  void PaintGL( const AbstractImageViewRenderer::RenderingContext* context );
+  
+  void PaintGL( const AbstractImageViewRenderer::RenderingContext* context ) ITK_OVERRIDE;
 
-  virtual void Pick( const PointType & view,
-                     PixelInfo::Vector & pixels ) const;
+  void Pick( const PointType & view,
+                     PixelInfo::Vector & pixels ) const ITK_OVERRIDE;
 
-  virtual void GetResolutions( PixelInfo::Vector & pixels ) const;
+  void GetResolutions( PixelInfo::Vector & pixels ) const ITK_OVERRIDE;
 
-  virtual bool TransformToView( PointType & point,
+  bool TransformToView( PointType & point,
 				const StackedLayerModel::KeyType &,
 				const IndexType &,
-				bool isPhysical ) const;
+				bool isPhysical ) const ITK_OVERRIDE;
 
-  virtual void SaveScreenshot( const QString & ) const;
+  void SaveScreenshot( const QString & ) const ITK_OVERRIDE;
 
   bool
     Reproject( PointType & center,
@@ -196,15 +196,15 @@ public:
                const PointType & vcenter,
                const SpacingType & vspacing ) const;
 
-  virtual bool IsEffectsEnabled() const;
+  bool IsEffectsEnabled() const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
 // public slots
 public slots:
-  virtual void UpdatePixelInfo( const QPoint & screen,
+  void UpdatePixelInfo( const QPoint & screen,
 				const PointType & view,
-				const PixelInfo::Vector & pixels );
+				const PixelInfo::Vector & pixels ) ITK_OVERRIDE;
 
   /*-[ SIGNALS SECTION ]-----------------------------------------------------*/
 
@@ -269,23 +269,23 @@ private:
   //
   // AbstractImageViewRenderer overloads.
 
-  virtual void virtual_UpdateScene();
-  virtual void virtual_RefreshScene();
+  void virtual_UpdateScene() ITK_OVERRIDE;
+  void virtual_RefreshScene() ITK_OVERRIDE;
 
-  virtual bool virtual_ZoomToRegion( const PointType & origin,
+  bool virtual_ZoomToRegion( const PointType & origin,
 				     const PointType & extent,
 				     PointType & center,
-				     SpacingType & spacing ) const;
+				     SpacingType & spacing ) const ITK_OVERRIDE;
 
-  virtual bool virtual_ZoomToExtent( PointType & center, SpacingType & spacing ) const;
+  bool virtual_ZoomToExtent( PointType & center, SpacingType & spacing ) const ITK_OVERRIDE;
 
-  virtual bool virtual_ZoomToLayer( const StackedLayerModel::KeyType & key,
+  bool virtual_ZoomToLayer( const StackedLayerModel::KeyType & key,
 				    PointType & center,
-				    SpacingType & spacing ) const;
+				    SpacingType & spacing ) const ITK_OVERRIDE;
 
-  virtual bool virtual_ZoomToFull( const StackedLayerModel::KeyType & key,
+  bool virtual_ZoomToFull( const StackedLayerModel::KeyType & key,
 				   PointType & center,
-				   SpacingType & spacing ) const;
+				   SpacingType & spacing ) const ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdImageViewWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdImageViewWidget.h
index f47401c8e5c92927ecb8164f18d5ccac5ee9b463..add78b1cda507501b4a1eea6a4a5f33dfe63e2fb 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdImageViewWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdImageViewWidget.h
@@ -115,7 +115,7 @@ public:
                    Qt::WindowFlags f =0 );
 
   /** \brief Destructor. */
-  virtual ~ImageViewWidget();
+  ~ImageViewWidget() ITK_OVERRIDE;
 
   /**
    */
@@ -253,21 +253,21 @@ protected:
   //
   // Qt overloads.
 
-  virtual void initializeGL();
-  virtual void resizeGL( int widgth, int height );
-  virtual void paintGL();
+  void initializeGL() ITK_OVERRIDE;
+  void resizeGL( int widgth, int height ) ITK_OVERRIDE;
+  void paintGL() ITK_OVERRIDE;
 
-  virtual void mouseMoveEvent( QMouseEvent* event );
-  virtual void mouseReleaseEvent( QMouseEvent* event );
-  virtual void mousePressEvent( QMouseEvent* event );
-  virtual void mouseDoubleClickEvent( QMouseEvent * event );
+  void mouseMoveEvent( QMouseEvent* event ) ITK_OVERRIDE;
+  void mouseReleaseEvent( QMouseEvent* event ) ITK_OVERRIDE;
+  void mousePressEvent( QMouseEvent* event ) ITK_OVERRIDE;
+  void mouseDoubleClickEvent( QMouseEvent * event ) ITK_OVERRIDE;
 
-  virtual void wheelEvent( QWheelEvent* event);
+  void wheelEvent( QWheelEvent* event) ITK_OVERRIDE;
 
-  virtual void keyPressEvent( QKeyEvent* event );
-  virtual void keyReleaseEvent( QKeyEvent* event );
+  void keyPressEvent( QKeyEvent* event ) ITK_OVERRIDE;
+  void keyReleaseEvent( QKeyEvent* event ) ITK_OVERRIDE;
 
-  virtual void resizeEvent( QResizeEvent* event );
+  void resizeEvent( QResizeEvent* event ) ITK_OVERRIDE;
 
 
 //
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdImportImagesDialog.h b/Modules/Visualization/MonteverdiGui/include/mvdImportImagesDialog.h
index e9bd891c31f1a7208bf80561a9042f3047656798..e887e4ddbc4854992e56cbc57497b140d37faf6b 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdImportImagesDialog.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdImportImagesDialog.h
@@ -103,7 +103,7 @@ public:
 		      Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~ImportImagesDialog();
+  ~ImportImagesDialog() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdImportSubDatasetDialog.h b/Modules/Visualization/MonteverdiGui/include/mvdImportSubDatasetDialog.h
index 467ccfcd32b1685f4bac028011d5345e5593278d..2c85630d19fcbac82d7a9a3747c41d7b5089b0ba 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdImportSubDatasetDialog.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdImportSubDatasetDialog.h
@@ -102,7 +102,7 @@ public:
 		     Qt::WindowFlags flags = 0 );
 
   /** \brief Destructor. */
-  virtual ~ImportSubDatasetDialog();
+  ~ImportSubDatasetDialog() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdKeymapDialog.h b/Modules/Visualization/MonteverdiGui/include/mvdKeymapDialog.h
index 7fa9852db255e0162fef2042f9f38aa185e739a5..c6942bf48ebdda095f013994583132d118980189 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdKeymapDialog.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdKeymapDialog.h
@@ -75,7 +75,7 @@ public:
   KeymapDialog( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** Destructor */
-  virtual ~KeymapDialog();
+  ~KeymapDialog() ITK_OVERRIDE;
 
 //
 // SIGNALS.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackController.h b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackController.h
index 7d168eb9d180f619a6dffd2341d84c128ab239c6..24b0cf5a7791a36fc0ad1ab25e1fc7dd47b5df57 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackController.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackController.h
@@ -91,7 +91,7 @@ public:
   LayerStackController( LayerStackWidget * widget, QObject * p =NULL );
 
   /** \brief Destructor. */
-  virtual ~LayerStackController();
+  ~LayerStackController() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -132,19 +132,19 @@ private:
 
   /**
    */
-  virtual void Connect( AbstractModel * );
+  void Connect( AbstractModel * ) ITK_OVERRIDE;
 
   /**
    */
-  virtual void Disconnect( AbstractModel * );
+  void Disconnect( AbstractModel * ) ITK_OVERRIDE;
 
   /**
    */
-  virtual void ClearWidget();
+  void ClearWidget() ITK_OVERRIDE;
 
   /**
    */
-  virtual void virtual_ResetWidget( bool );
+  void virtual_ResetWidget( bool ) ITK_OVERRIDE;
 
 
 //
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackItemModel.h b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackItemModel.h
index 177831c65040b36d799d032a523883c6200df592..3ae6c2d558ae07ec0fb508e7bfa1aba33ce073ba 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackItemModel.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackItemModel.h
@@ -134,7 +134,7 @@ public:
   LayerStackItemModel( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~LayerStackItemModel();
+  ~LayerStackItemModel() ITK_OVERRIDE;
 
   /**
    */
@@ -150,102 +150,102 @@ public:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#columnCount
    */
-  virtual int columnCount( const QModelIndex & p = QModelIndex() ) const;
+  int columnCount( const QModelIndex & p = QModelIndex() ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#data
    */
-  virtual
+  
     QVariant
-    data( const QModelIndex & index, int role = Qt::DisplayRole ) const;
+    data( const QModelIndex & index, int role = Qt::DisplayRole ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#dropMimeData
    */
-  virtual
+  
     bool
     dropMimeData( const QMimeData * data,
                   Qt::DropAction action,
                   int row,
                   int column,
-                  const QModelIndex & p );
+                  const QModelIndex & p ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#flags
    */
-  virtual Qt::ItemFlags flags( const QModelIndex & index ) const;
+  Qt::ItemFlags flags( const QModelIndex & index ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#hasChildren
    */
-  virtual bool hasChildren( const QModelIndex & p = QModelIndex() ) const;
+  bool hasChildren( const QModelIndex & p = QModelIndex() ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#headerData
    */
-  virtual QVariant headerData( int section,
+  QVariant headerData( int section,
                                Qt::Orientation orientation,
-                               int role = Qt::DisplayRole ) const;
+                               int role = Qt::DisplayRole ) const ITK_OVERRIDE;
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#index
    */
-  virtual
+  
     QModelIndex
     index( int row,
            int column,
-           const QModelIndex & p = QModelIndex() ) const;
+           const QModelIndex & p = QModelIndex() ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#insertRows
    */
-  virtual
+  
     bool
     insertRows( int row,
                 int count,
-                const QModelIndex & p = QModelIndex() );
+                const QModelIndex & p = QModelIndex() ) ITK_OVERRIDE;
 
   /**
    * \see http://doc.qt.io/qt-4.8/qabstractitemmodel.html#mimeData
    */
-  virtual QMimeData * mimeData( const QModelIndexList & indexes ) const;
+  QMimeData * mimeData( const QModelIndexList & indexes ) const ITK_OVERRIDE;
 
   /**
    * \see http://doc.qt.io/qt-4.8/qabstractitemmodel.html#mimeTypes
    */
-  virtual QStringList mimeTypes() const;
+  QStringList mimeTypes() const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#parent
    */
-  virtual QModelIndex parent( const QModelIndex & index ) const;
+  QModelIndex parent( const QModelIndex & index ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#removeRows
    */
-  virtual
+  
     bool
     removeRows( int row,
                 int count,
-                const QModelIndex & p = QModelIndex() );
+                const QModelIndex & p = QModelIndex() ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#rowCount
    */
-  virtual int rowCount( const QModelIndex & p = QModelIndex() ) const;
+  int rowCount( const QModelIndex & p = QModelIndex() ) const ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#setData
    */
-  virtual
+  
     bool
     setData( const QModelIndex & index,
              const QVariant & value,
-             int role = Qt::EditRole );
+             int role = Qt::EditRole ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qabstractitemmodel.html#supportedDropActions
    */
-  virtual Qt::DropActions supportedDropActions() const;
+  Qt::DropActions supportedDropActions() const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackWidget.h
index d39cb5d54b70d317f0e694ee291ca3abe6a3ad90..ae0a08d1ecc2f1c519e2c8030b74564e07e2bb85 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdLayerStackWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdLayerStackWidget.h
@@ -97,7 +97,7 @@ public:
   LayerStackWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~LayerStackWidget();
+  ~LayerStackWidget() ITK_OVERRIDE;
 
   /**
    */
@@ -142,7 +142,7 @@ public:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qobject.html#eventFilter
    */
-  virtual bool eventFilter( QObject * watched, QEvent * event );
+  bool eventFilter( QObject * watched, QEvent * event ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdMultiResolutionPyramidWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdMultiResolutionPyramidWidget.h
index f5edba703dd07a02c1db5853fdb4ec33de2f2f20..9ff9591cd4a8dbe59c3bc1a19f46240ecea8206c 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdMultiResolutionPyramidWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdMultiResolutionPyramidWidget.h
@@ -98,7 +98,7 @@ public:
 				Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~MultiResolutionPyramidWidget();
+  ~MultiResolutionPyramidWidget() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdOTBApplicationsModel.h b/Modules/Visualization/MonteverdiGui/include/mvdOTBApplicationsModel.h
index 4fb919228ac36bfacdca62b43d1a43a0d79b6527..af2eb95b9f3aecee3ccde6fc3823deee9184111e 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdOTBApplicationsModel.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdOTBApplicationsModel.h
@@ -97,7 +97,7 @@ public:
   OTBApplicationsModel( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~OTBApplicationsModel();
+  ~OTBApplicationsModel() ITK_OVERRIDE;
 
   /** \brief Fill Widget Tree */
   void FillTree();
@@ -131,9 +131,9 @@ signals:
 protected:
 
   //
-  // AbstractModel overrides.
+  // AbstractModel methods.
 
-  void virtual_BuildModel( void* context =NULL );
+  void virtual_BuildModel( void* context =NULL ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdPixelDescriptionWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdPixelDescriptionWidget.h
index 85e9c905c93eebeef044c3f25c64d1b41e85d88d..e7c7430e73b796fcec32524211b520400805444a 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdPixelDescriptionWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdPixelDescriptionWidget.h
@@ -93,7 +93,7 @@ public:
   PixelDescriptionWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~PixelDescriptionWidget();
+  ~PixelDescriptionWidget() ITK_OVERRIDE;
 
   /** Get TreeWidget */
   QTreeWidget * GetDescriptionTree();
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdQtWidgetView.h b/Modules/Visualization/MonteverdiGui/include/mvdQtWidgetView.h
index b63b74b3268b663de97a19752b4784f4a451cd24..417ebf0b59751a83b791feeb038fec208e450ad2 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdQtWidgetView.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdQtWidgetView.h
@@ -107,7 +107,7 @@ public:
 		Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~QtWidgetView();
+  ~QtWidgetView() ITK_OVERRIDE;
 
   /** \brief Gui Creation. */
   void CreateGui();
@@ -160,7 +160,7 @@ protected:
   //
   // QWidget overloads.
 
-  virtual void closeEvent( QCloseEvent * event );
+  void closeEvent( QCloseEvent * event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewManipulator.h b/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewManipulator.h
index 38087a4edb6b680df9e2e7b3d9a0ec03607ecf26..36feefeb3887d9799bca3abe6f7c8c378df19992 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewManipulator.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewManipulator.h
@@ -96,36 +96,36 @@ public:
 #endif // USE_VIEW_SETTINGS_SIDE_EFFECT
 
   /** \brief Destructor. */
-  virtual ~QuicklookViewManipulator();
+  ~QuicklookViewManipulator() ITK_OVERRIDE;
 
   //
   // ImageViewManipulator overloads.
 
-  virtual ZoomType GetFixedZoomType() const;
+  ZoomType GetFixedZoomType() const ITK_OVERRIDE;
 
-  virtual
+  
     void
     SetupRenderingContext(
-      AbstractImageViewRenderer::RenderingContext * const ) const;
+      AbstractImageViewRenderer::RenderingContext * const ) const ITK_OVERRIDE;
 
 
-  virtual void MousePressEvent( QMouseEvent* event );
+  void MousePressEvent( QMouseEvent* event ) ITK_OVERRIDE;
 
-  virtual void MouseMoveEvent( QMouseEvent* event );
+  void MouseMoveEvent( QMouseEvent* event ) ITK_OVERRIDE;
 
   // virtual void MousePressEvent( QMouseEvent* event );
 
   // virtual void MouseReleaseEvent( QMouseEvent* event );
 
-  virtual void MouseDoubleClickEvent( QMouseEvent * ) {};
+  void MouseDoubleClickEvent( QMouseEvent * ) ITK_OVERRIDE {};
 
-  virtual void WheelEvent( QWheelEvent* event);
+  void WheelEvent( QWheelEvent* event) ITK_OVERRIDE;
 
-  virtual void ResizeEvent( QResizeEvent * event );
+  void ResizeEvent( QResizeEvent * event ) ITK_OVERRIDE;
 
-  virtual void KeyPressEvent( QKeyEvent* event );
+  void KeyPressEvent( QKeyEvent* event ) ITK_OVERRIDE;
 
-  virtual void KeyReleaseEvent( QKeyEvent* event );
+  void KeyReleaseEvent( QKeyEvent* event ) ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]-----------------------------------------------**/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewRenderer.h b/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewRenderer.h
index 7f54b515cd08fa2c96d6727d23cccfa5c2ef363e..b6338369602d4d0655fcd3588378caac8de48568 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewRenderer.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdQuicklookViewRenderer.h
@@ -106,7 +106,7 @@ public:
       m_RoiOrigin.Fill( 0 );
     }
 
-    virtual ~RenderingContext() {}
+    ~RenderingContext() ITK_OVERRIDE {}
 
     PointType m_RoiOrigin;
     PointType m_RoiExtent;
@@ -119,13 +119,13 @@ public:
   QuicklookViewRenderer( QObject* p = NULL );
 
   /** Destructor */
-  virtual ~QuicklookViewRenderer();
+  ~QuicklookViewRenderer() ITK_OVERRIDE;
 
   //
   // ImageViewRenderer overloads.
 
-  virtual
-  AbstractImageViewRenderer::RenderingContext* NewRenderingContext() const;
+  
+  AbstractImageViewRenderer::RenderingContext* NewRenderingContext() const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -147,8 +147,8 @@ protected:
   //
   // ImageViewRenderer overloads.
 
-  virtual
-  void UpdateActors( const AbstractImageViewRenderer::RenderingContext* c );
+  
+  void UpdateActors( const AbstractImageViewRenderer::RenderingContext* c ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
@@ -167,14 +167,14 @@ private:
   void SetWktAndKwl();
 
   //
-  // ImageViewRenderer overrides.
-  virtual void virtual_SetProjection();
-  virtual void virtual_UpdateProjection();
+  // ImageViewRenderer methods.
+  void virtual_SetProjection() ITK_OVERRIDE;
+  void virtual_UpdateProjection() ITK_OVERRIDE;
 
   //
   // AbstractImageViewRenderer overloads.
   // TODO: Move virtual_*Scene() methods to protected section.
-  virtual void virtual_FinishScene();
+  void virtual_FinishScene() ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdSearchableTreeWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdSearchableTreeWidget.h
index 7066eb4d7efb6f66bd4048f36230d0b3d034cd07..3d3328305ea485830676840135adc57127b88ce1 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdSearchableTreeWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdSearchableTreeWidget.h
@@ -100,7 +100,7 @@ public:
   SearchableTreeWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~SearchableTreeWidget();
+  ~SearchableTreeWidget() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdShaderWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdShaderWidget.h
index 09a22674763398571cbacab0427d17381348b815..640131d74f778634e382588aca138f7e91f9d1ef 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdShaderWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdShaderWidget.h
@@ -99,7 +99,7 @@ public:
 		Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~ShaderWidget();
+  ~ShaderWidget() ITK_OVERRIDE;
 
   /**
    */
@@ -138,7 +138,7 @@ protected:
 private:
 
   /** */
-  virtual void virtual_SetSettings( ImageSettings * );
+  void virtual_SetSettings( ImageSettings * ) ITK_OVERRIDE;
 
 //
 // Private attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdStatusBarWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdStatusBarWidget.h
index d2209fd88b80f10f53509809bfc10646181132c7..e287ee7adb10c8fdff557620851741fbe9d1c6ff 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdStatusBarWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdStatusBarWidget.h
@@ -95,7 +95,7 @@ public:
   StatusBarWidget( QWidget* p =NULL, Qt::WindowFlags flags =0 );
 
   /** \brief Destructor. */
-  virtual ~StatusBarWidget();
+  ~StatusBarWidget() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdTaskProgressDialog.h b/Modules/Visualization/MonteverdiGui/include/mvdTaskProgressDialog.h
index 7030aba9d450c79afe9f374aba9563f5fe6a900e..0bb03796c4eafa80e2e22eb96d210d9c608714f5 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdTaskProgressDialog.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdTaskProgressDialog.h
@@ -97,7 +97,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~TaskProgressDialog();
+  ~TaskProgressDialog() ITK_OVERRIDE;
 
   /**
    */
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidget.h b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidget.h
index 322d58e6e02b0b5a7c7410a30bfa884e76789303..97fdc1ddb0e5d36dcb5306fb26ff3bc48b635fe1 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidget.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidget.h
@@ -122,7 +122,7 @@ public:
   TreeWidget( QWidget* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~TreeWidget();
+  ~TreeWidget() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -149,17 +149,17 @@ protected:
   //
   // QTreeWidget overloads.
 
-  virtual QStringList mimeTypes() const;
+  QStringList mimeTypes() const ITK_OVERRIDE;
 
-  virtual QMimeData* mimeData( const QList< QTreeWidgetItem* > items ) const;
+  QMimeData* mimeData( const QList< QTreeWidgetItem* > items ) const ITK_OVERRIDE;
 
-  virtual void dragEnterEvent( QDragEnterEvent* event );
-  virtual void dragMoveEvent( QDragMoveEvent* event );
-  virtual void dragLeaveEvent( QDragLeaveEvent* event );
-  virtual void dropEvent( QDropEvent* event );
+  void dragEnterEvent( QDragEnterEvent* event ) ITK_OVERRIDE;
+  void dragMoveEvent( QDragMoveEvent* event ) ITK_OVERRIDE;
+  void dragLeaveEvent( QDragLeaveEvent* event ) ITK_OVERRIDE;
+  void dropEvent( QDropEvent* event ) ITK_OVERRIDE;
 
-  virtual Qt::DropActions supportedDropActions() const;
-  virtual void startDrag( Qt::DropActions supportedActions );
+  Qt::DropActions supportedDropActions() const ITK_OVERRIDE;
+  void startDrag( Qt::DropActions supportedActions ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItem.h b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItem.h
index 51875e25829b8271a2176263d8104fb14077d9fc..4b70058ad04d45c789b7c0d2810cf3d87c44509d 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItem.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItem.h
@@ -118,7 +118,7 @@ public:
   /**
    * \brief Destructor.
    */
-  virtual ~TreeWidgetItem();
+  ~TreeWidgetItem() ITK_OVERRIDE;
 
   /**
    */
@@ -143,7 +143,7 @@ public:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qtreewidgetitem.html#clone
    */
-  virtual QTreeWidgetItem* clone() const;
+  QTreeWidgetItem* clone() const ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
diff --git a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItemDragAndDropEventFilter.h b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItemDragAndDropEventFilter.h
index 2b5fff90faf9470ee759e402d3d16a04aa4bd4aa..c3c798a763c81880d61804338da61a80fe1600ac 100644
--- a/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItemDragAndDropEventFilter.h
+++ b/Modules/Visualization/MonteverdiGui/include/mvdTreeWidgetItemDragAndDropEventFilter.h
@@ -91,7 +91,7 @@ public:
   TreeWidgetItemDragAndDropEventFilter( QObject* p =NULL );
 
   /** \brief Destructor. */
-  virtual ~TreeWidgetItemDragAndDropEventFilter();
+  ~TreeWidgetItemDragAndDropEventFilter() ITK_OVERRIDE;
 
   /*-[ PUBLIC SLOTS SECTION ]------------------------------------------------*/
 
@@ -119,22 +119,22 @@ protected:
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragEnterEvent
    */
-  virtual bool DragEnterEvent( QObject* object, QDragEnterEvent* event );
+  bool DragEnterEvent( QObject* object, QDragEnterEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragLeaveEvent
    */
-  virtual bool DragLeaveEvent( QObject* object, QDragLeaveEvent* event );
+  bool DragLeaveEvent( QObject* object, QDragLeaveEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dragMoveEvent
    */
-  virtual bool DragMoveEvent( QObject* object, QDragMoveEvent* event );
+  bool DragMoveEvent( QObject* object, QDragMoveEvent* event ) ITK_OVERRIDE;
 
   /**
    * \see http://qt-project.org/doc/qt-4.8/qwidget.html#dropEvent
    */
-  virtual bool DropEvent( QObject* object, QDropEvent* event );
+  bool DropEvent( QObject* object, QDropEvent* event ) ITK_OVERRIDE;
 
 //
 // Protected attributes.
diff --git a/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplicationFactory.h b/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplicationFactory.h
index b45e80a778205d022aba01fda27c0364f2a83da8..083f8150fbe5787df82f728ece2008235a9ea54d 100644
--- a/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplicationFactory.h
+++ b/Modules/Wrappers/ApplicationEngine/include/otbWrapperApplicationFactory.h
@@ -88,7 +88,7 @@ protected:
     return ret;
   }
 
-  /** This method creates all the objects with the class override of
+  /** This method creates all the objects with the new class of
    * itkclass name, which are provide by this object
    */
   std::list<LightObject::Pointer>