From 839c58861fa0e01c9d9a5f60ffc108ba4c9129e7 Mon Sep 17 00:00:00 2001
From: Bert <bertrand.provot@insa-rennes.fr>
Date: Wed, 27 Jun 2018 17:48:18 +0200
Subject: [PATCH] update translations and minor fix on filter editor

---
 app/Widgets/FilterEditor.cpp |    4 +-
 app/imageinsa_en.qm          |  Bin 0 -> 45661 bytes
 app/imageinsa_en.ts          | 2058 ++++++++++++---------------------
 app/imageinsa_fr.qm          |  Bin 0 -> 48005 bytes
 app/imageinsa_fr.ts          | 2060 ++++++++++++----------------------
 5 files changed, 1473 insertions(+), 2649 deletions(-)
 create mode 100644 app/imageinsa_en.qm
 create mode 100644 app/imageinsa_fr.qm

diff --git a/app/Widgets/FilterEditor.cpp b/app/Widgets/FilterEditor.cpp
index f4a8822..c7afcea 100644
--- a/app/Widgets/FilterEditor.cpp
+++ b/app/Widgets/FilterEditor.cpp
@@ -160,9 +160,9 @@ void FilterEditor::nameChanged(QString name) {
 void FilterEditor::save()
 {
   vector<Filter*> filters;
-  if(_name->text() == "")
+  if(!regex_match(_name->text().toStdString(),regex("[!-~]+")) || _name->text()=="")
   {
-    QMessageBox msgBox(QMessageBox::Critical, tr("Error!"), tr("Your filter needs a name to be saved."));
+    QMessageBox msgBox(QMessageBox::Critical, tr("Error!"), tr("Your filter needs a valid name to be saved (no whitespace)."));
     msgBox.setStandardButtons(QMessageBox::Ok);
     msgBox.setDefaultButton(QMessageBox::Ok);
     msgBox.exec();
diff --git a/app/imageinsa_en.qm b/app/imageinsa_en.qm
new file mode 100644
index 0000000000000000000000000000000000000000..12c89e866f6dfe05edfb07b6c34e221e4c39c249
GIT binary patch
literal 45661
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

literal 0
HcmV?d00001

diff --git a/app/imageinsa_en.ts b/app/imageinsa_en.ts
index 54ebf1e..01cf3e8 100644
--- a/app/imageinsa_en.ts
+++ b/app/imageinsa_en.ts
@@ -4,77 +4,49 @@
 <context>
     <name></name>
     <message>
-        <location filename="main.cpp" line="128"/>
+        <location filename="main.cpp" line="+128"/>
         <source>&amp;Image</source>
         <oldsource>Image</oldsource>
         <translation>&amp;Image</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="146"/>
+        <location line="+18"/>
         <source>&amp;Tools</source>
         <oldsource>Tools</oldsource>
         <translation>&amp;Tools</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="159"/>
+        <location line="+13"/>
         <source>&amp;Encoding</source>
         <oldsource>Encoding</oldsource>
         <translation>&amp;Encoding</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="167"/>
+        <location line="+8"/>
         <source>Transforms</source>
         <translation>Transforms</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="175"/>
+        <location line="+8"/>
         <source>Analysis</source>
         <translation>Analysis</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="184"/>
-        <location filename="Services/FilteringService.cpp" line="39"/>
+        <location line="+9"/>
+        <location filename="Services/FilteringService.cpp" line="+37"/>
         <source>Filtering</source>
         <translation>Filtering</translation>
     </message>
 </context>
-<context>
-    <name>AboutDialog</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="27"/>
-        <source>About</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="31"/>
-        <source>This software has been developed at Insa.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="35"/>
-        <source>Main authors:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="45"/>
-        <source>Contributors:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="49"/>
-        <source>Compiled on %1 at %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>BFlit</name>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="59"/>
+        <location filename="Operations/BFlitOp.cpp" line="+59"/>
         <source>Number of point on each side : </source>
         <translation>Number of points on each side : </translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>Number of iteration : </source>
         <translation>Number of iteration : </translation>
     </message>
@@ -82,7 +54,7 @@
 <context>
     <name>CenterOp</name>
     <message>
-        <location filename="Operations/CenterOp.cpp" line="72"/>
+        <location filename="Operations/CenterOp.cpp" line="+72"/>
         <source>centered</source>
         <oldsource> - centered</oldsource>
         <translation>centered</translation>
@@ -91,19 +63,19 @@
 <context>
     <name>ClassAnalysis</name>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="60"/>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="79"/>
+        <location filename="Operations/ClassAnalysisOp.cpp" line="+60"/>
+        <location line="+19"/>
         <source>mean</source>
         <translation>mean</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="61"/>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="80"/>
+        <location line="-18"/>
+        <location line="+19"/>
         <source>standard deviation</source>
         <translation>standard deviation</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="78"/>
+        <location line="-2"/>
         <source>classified</source>
         <translation>classified</translation>
     </message>
@@ -111,55 +83,47 @@
 <context>
     <name>ClassAnalysisDialog</name>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="14"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="118"/>
+        <location filename="Operations/ClassAnalysisDialog.ui" line="+14"/>
         <source>Class analysis</source>
         <translation>Class analysis</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="22"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="119"/>
+        <location line="+8"/>
         <source>Step : </source>
         <translation>Step : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="35"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="123"/>
+        <location line="+13"/>
         <source>Classification step</source>
         <translation>Classification step</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="30"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="122"/>
+        <location line="-5"/>
         <source>Learning step</source>
         <translation>Learning step</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="40"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="124"/>
+        <location line="+10"/>
         <source>Print file info</source>
         <translation>Print file info</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="48"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="126"/>
+        <location line="+8"/>
         <source>Window size : </source>
         <translation>Window size : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="71"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="127"/>
+        <location line="+23"/>
         <source>File : </source>
         <translation>File : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="83"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="128"/>
+        <location line="+12"/>
         <source>browse</source>
         <translation>browse</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.cpp" line="35"/>
+        <location filename="Operations/ClassAnalysisDialog.cpp" line="+35"/>
         <source>Please select the image&apos;s area to classify :</source>
         <translation>Please select the image&apos;s area to classify :</translation>
     </message>
@@ -167,7 +131,7 @@
 <context>
     <name>ClassResult</name>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="81"/>
+        <location filename="Operations/ClassResultOp.cpp" line="+81"/>
         <source>
 Nombre de classes = %1 </source>
         <oldsource>
@@ -177,14 +141,14 @@ Nombre de classes = %1
 Number of classes = %1 </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="85"/>
+        <location line="+4"/>
         <source>Valeur de la classe %1 = %2</source>
         <oldsource>Valeur de la classe %1 = %2
 </oldsource>
         <translation>Value of class %1 = %2</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="80"/>
+        <location line="-5"/>
         <source>Voici les résultats du classement : 
 </source>
         <oldsource>Voici les résultats du classement : 
@@ -193,48 +157,48 @@ Number of classes = %1 </translation>
 </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="58"/>
+        <location line="-22"/>
         <source>Critère de zone intérieure : </source>
         <oldsource>Critère de zone intérieure : </oldsource>
         <translation>Inner zone criterion: </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="59"/>
+        <location line="+1"/>
         <source>Critère de zone frontière : </source>
         <oldsource>Critère de zone frontière : </oldsource>
         <translation>Border zone criterion : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>&lt;b&gt;Critère de zones (relatifs aux zones totales) : &lt;/b&gt;</source>
         <oldsource>&lt;b&gt;Critère de zones (relatifs aux zones totales) : &lt;/b&gt;</oldsource>
         <translation>&lt;b&gt;Areas&apos; criteria (relative to the whole zones) : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="62"/>
+        <location line="+2"/>
         <source>&lt;b&gt;Select the image&apos;s classes zones : &lt;/b&gt;</source>
         <translation>&lt;b&gt;Select the image&apos;s classes zones : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="121"/>
+        <location line="+59"/>
         <source>Le taux de bon classement en zone intérieure %1 vaut: %2%</source>
         <oldsource>Le taux de bon classement en zone intérieure %1 vaut: %2%</oldsource>
         <translation>The correct classification rate in inner area %1 is %2%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="124"/>
+        <location line="+3"/>
         <source>Le taux de bon classement en zone frontière %1 vaut: %2%</source>
         <oldsource>Le taux de bon classement en zone frontière %1 vaut: %2%</oldsource>
         <translation>The correct classification rate in border area %1 is %2%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="135"/>
+        <location line="+11"/>
         <source>Le taux de bon classement en zone intérieure globale vaut: %1%</source>
         <oldsource>Le taux de bon classement en zone intérieure globale vaut: %1%</oldsource>
         <translation>The global correct classification rate in inner area is %1%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="136"/>
+        <location line="+1"/>
         <source>Le taux de bon classement en zone frontière globale vaut: %1%</source>
         <oldsource>Le taux de bon classement en zone frontière globale vaut: %1%</oldsource>
         <translation>The global correct classification rate in border area is %1%</translation>
@@ -243,32 +207,32 @@ Number of classes = %1 </translation>
 <context>
     <name>Color</name>
     <message>
-        <location filename="Tools.h" line="36"/>
+        <location filename="Tools.h" line="+36"/>
         <source>Black</source>
         <translation>Black</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="37"/>
+        <location line="+1"/>
         <source>Alpha</source>
         <translation>Alpha</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+1"/>
         <source>Red</source>
         <translation>Red</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Green</source>
         <translation>Green</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Blue</source>
         <translation>Blue</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Color</source>
         <translation>Color</translation>
     </message>
@@ -276,80 +240,67 @@ Number of classes = %1 </translation>
 <context>
     <name>ColorDialog</name>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="14"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="222"/>
+        <location filename="Operations/ColorDialog.ui" line="+14"/>
         <source>RGB image generator</source>
         <translation>RGB image generator</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="20"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="223"/>
+        <location line="+6"/>
         <source>Image size</source>
         <translation>Image size</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="26"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="224"/>
+        <location line="+6"/>
         <source>Width : </source>
         <translation>Width : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="40"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="225"/>
+        <location line="+14"/>
         <source>Height : </source>
         <translation>Height : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="57"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="226"/>
+        <location line="+17"/>
         <source>Mode</source>
         <translation>Mode</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="63"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="227"/>
+        <location line="+6"/>
         <source>RGB</source>
         <translation>RGB</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="73"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="228"/>
+        <location line="+10"/>
         <source>HSV</source>
         <translation>HSV</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="86"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="229"/>
+        <location line="+13"/>
         <source>Red : </source>
         <translation>Red : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="100"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="230"/>
+        <location line="+14"/>
         <source>Green : </source>
         <translation>Green : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="114"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="231"/>
+        <location line="+14"/>
         <source>Blue : </source>
         <translation>Blue : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="147"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="232"/>
+        <location line="+33"/>
         <source>Saturation : </source>
         <translation>Saturation : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="161"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="233"/>
+        <location line="+14"/>
         <source>Value : </source>
         <translation>Value : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="175"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="234"/>
+        <location line="+14"/>
         <source>Hue : </source>
         <translation>Hue : </translation>
     </message>
@@ -358,80 +309,84 @@ Number of classes = %1 </translation>
     <name>CombineColorOp</name>
     <message>
         <source>Reconstructed color image</source>
-        <translation type="vanished">Reconstructed color image</translation>
+        <translation>Reconstructed color image</translation>
     </message>
     <message>
-        <location filename="Operations/CombineColorOp.cpp" line="95"/>
+        <location filename="Operations/CombineColorOp.cpp" line="+95"/>
         <source>Reconstructed Color image</source>
-        <translation type="unfinished"></translation>
+        <translation>Reconstructed color image</translation>
     </message>
 </context>
 <context>
     <name>CombineHsvOp</name>
     <message>
         <source>Reconstructed color image</source>
-        <translation type="vanished">Reconstructed image</translation>
+        <translation>Reconstructed image</translation>
+    </message>
+    <message>
+        <source>Reconstructed image</source>
+        <translation>Reconstructed image</translation>
     </message>
     <message>
-        <location filename="Operations/CombineHsvOp.cpp" line="101"/>
+        <location filename="Operations/CombineHsvOp.cpp" line="+101"/>
         <source>Reconstructed  image</source>
-        <translation type="unfinished"></translation>
+        <translation>Reconstructed image</translation>
     </message>
 </context>
 <context>
     <name>CroissanceOp</name>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="59"/>
+        <location filename="Operations/CroissanceOp.cpp" line="+59"/>
         <source>At origin</source>
         <translation>At origin</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>Point of lowest luminance</source>
         <translation>Point of lowest luminance</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="62"/>
+        <location line="+2"/>
         <source>| current - mean | &lt; threshold</source>
         <translation>| current - mean | &lt; threshold</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="63"/>
+        <location line="+1"/>
         <source>| current - initial | &lt; threshold</source>
         <translation>| current - initial | &lt; threshold</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="66"/>
+        <location line="+3"/>
         <source>Threshold : </source>
         <translation>Threshold : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="67"/>
+        <location line="+1"/>
         <source>Initial germ : </source>
         <translation>Initial germ : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Stopping point : </source>
         <translation>Stopping point : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="101"/>
+        <location line="+43"/>
         <source>Luminance</source>
         <translation>Luminance</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="102"/>
+        <location line="+1"/>
         <source>Color</source>
         <translation>Color</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="103"/>
+        <location line="+1"/>
         <source>Total number of area : %1</source>
-        <translation>Total number of area : %1</translation>
+        <translation>Total number of areas : %1</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="104"/>
+        <location line="+1"/>
         <source>Mean number of point per area : %1</source>
         <translation>Mean number of point per area : %1</translation>
     </message>
@@ -439,12 +394,12 @@ Number of classes = %1 </translation>
 <context>
     <name>DCT</name>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="57"/>
+        <location filename="Operations/DCTOp.cpp" line="+57"/>
         <source>DCT</source>
         <translation>DCT</translation>
     </message>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="58"/>
+        <location line="+1"/>
         <source>inverse DCT</source>
         <translation>inverse DCT</translation>
     </message>
@@ -452,44 +407,37 @@ Number of classes = %1 </translation>
 <context>
     <name>DCTDialog</name>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="14"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="172"/>
+        <location filename="Operations/DCTDialog.ui" line="+14"/>
         <source>DCT encoding</source>
         <translation>DCT with encoding</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="20"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="173"/>
+        <location line="+6"/>
         <source>Encoding mode &amp;&amp; associated parameters</source>
         <translation>Encoding mode &amp;&amp; associated parameters</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="26"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="174"/>
+        <location line="+6"/>
         <source>Coefficients truncation</source>
         <translation>Coefficients truncation</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="60"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="175"/>
+        <location line="+34"/>
         <source>Truncation limit : </source>
         <translation>Truncation limit : </translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="79"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="176"/>
+        <location line="+19"/>
         <source>Bit allocation matrice</source>
         <translation>Bit allocation matrice</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="104"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="177"/>
+        <location line="+25"/>
         <source>Initial number of bits : </source>
         <translation>Initial number of bits : </translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="141"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="178"/>
+        <location line="+37"/>
         <source>Slope value : </source>
         <translation>Slope value : </translation>
     </message>
@@ -497,7 +445,7 @@ Number of classes = %1 </translation>
 <context>
     <name>DMM</name>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="194"/>
+        <location filename="Operations/DMMOp.cpp" line="+194"/>
         <source>DMM error</source>
         <translation>DMM (error)</translation>
     </message>
@@ -505,42 +453,42 @@ Number of classes = %1 </translation>
 <context>
     <name>DMMDialog</name>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="279"/>
+        <location filename="Operations/DMMDialog.cpp" line="+44"/>
+        <location line="+235"/>
         <source>Erosion</source>
         <translation>Erosion</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="276"/>
+        <location line="-235"/>
+        <location line="+232"/>
         <source>Dilatation</source>
         <translation>Dilatation</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="282"/>
+        <location line="-232"/>
+        <location line="+238"/>
         <source>Opening</source>
         <translation>Opening</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="285"/>
+        <location line="-238"/>
+        <location line="+241"/>
         <source>Closing</source>
         <translation>Closing</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="46"/>
+        <location line="-241"/>
+        <location line="+2"/>
         <source>DMM</source>
         <translation>DMM</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="62"/>
+        <location line="+16"/>
         <source>Structuring element</source>
         <translation>Structuring element</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="128"/>
+        <location line="+66"/>
         <source>Validate</source>
         <translation>Validate</translation>
     </message>
@@ -548,27 +496,27 @@ Number of classes = %1 </translation>
 <context>
     <name>DMMOp</name>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="56"/>
+        <location filename="Operations/DMMOp.cpp" line="-138"/>
         <source>DMM (dilatation)</source>
         <translation>DMM (dilatation)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="62"/>
+        <location line="+6"/>
         <source>DMM (erosion)</source>
         <translation>DMM (erosion)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="68"/>
+        <location line="+6"/>
         <source>DMM (opening)</source>
         <translation>DMM (opening)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="74"/>
+        <location line="+6"/>
         <source>DMM (closing)</source>
         <translation>DMM (closing)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="192"/>
+        <location line="+118"/>
         <source>DMM component #%1</source>
         <translation>DMM (component #%1)</translation>
     </message>
@@ -576,128 +524,117 @@ Number of classes = %1 </translation>
 <context>
     <name>DPCM</name>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="53"/>
+        <location filename="Operations/DPCMEncodingOp.cpp" line="+53"/>
         <source>Error while loading quantification file</source>
         <translation>Error while loading quantization file</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="54"/>
+        <location line="+1"/>
         <source>The specified quantification file could not be opened !</source>
         <translation>The specified quantization file could not be opened!</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="65"/>
+        <location line="+11"/>
         <source>Prediction error image</source>
         <translation>Prediction error image</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="66"/>
+        <location line="+1"/>
         <source>Quantized prediction error image</source>
         <translation>Quantized prediction error image</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="69"/>
+        <location line="+3"/>
         <source>Coding error image</source>
         <translation>Coding error image</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="67"/>
+        <location line="-2"/>
         <source>Prediction image</source>
         <translation>Prediction image</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Reconstructed image</source>
         <translation>Reconstructed image</translation>
     </message>
     <message>
         <source>\nL&apos;entropie de l&apos;image d&apos;erreur de prediction vaut : %lf\n</source>
-        <translation type="vanished">The entropy of the prediciton error image is :%lf\n</translation>
+        <translation>The entropy of the prediciton error image is :%lf\n</translation>
     </message>
     <message>
         <source>\nL&apos;entropie de l&apos;image d&apos;erreur de prediction quantifiee vaut : %lf\n</source>
-        <translation type="vanished">The entropy of the quantized prediction error image is :%lf\n</translation>
+        <translation>The entropy of the quantized prediction error image is :%lf\n</translation>
     </message>
     <message>
         <source>seuils de decision --------------- niveaux de reconstruction\n</source>
-        <translation type="vanished">decision thresholds --------- reconstruction levels\n</translation>
+        <translation>decision thresholds --------- reconstruction levels\n</translation>
     </message>
 </context>
 <context>
     <name>DPCMDialog</name>
     <message>
-        <location filename="Operations/DPCMDialog.cpp" line="39"/>
+        <location filename="Operations/DPCMDialog.cpp" line="+39"/>
         <source>Open file</source>
         <translation>Open file</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.cpp" line="39"/>
+        <location line="+0"/>
         <source>Loi de quantification (*.loi)</source>
         <translation>Quantization file (*.loi)</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="14"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="209"/>
+        <location filename="Operations/DPCMDialog.ui" line="+14"/>
         <source>DPCM encoding</source>
         <translation>DPCM Encoding</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="35"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="211"/>
+        <location line="+21"/>
         <source>Predictor P(X)</source>
         <translation>Predictor P(X)</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="41"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="212"/>
+        <location line="+6"/>
         <source>A</source>
         <translation>A</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="51"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="213"/>
+        <location line="+10"/>
         <source>C</source>
         <translation>C</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="58"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="214"/>
+        <location line="+7"/>
         <source>( A + C ) / 2</source>
         <translation>( A + C ) / 2</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="65"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="215"/>
+        <location line="+7"/>
         <source>Modified Graham&apos;s</source>
         <translation>Modified Graham&apos;s</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="74"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="216"/>
+        <location line="+9"/>
         <source>Q = </source>
         <translation>Q = </translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="115"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="217"/>
+        <location line="+41"/>
         <source>Quantifier</source>
         <translation>Quantizer</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="121"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="218"/>
+        <location line="+6"/>
         <source>Quantification file :</source>
         <translation>Quantization file :</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="141"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="219"/>
+        <location line="+20"/>
         <source>Browse</source>
         <translation>Browse</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="169"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="220"/>
+        <location line="+28"/>
         <source>Open quantification editor</source>
         <translation>Open quantization editor</translation>
     </message>
@@ -705,32 +642,27 @@ Number of classes = %1 </translation>
 <context>
     <name>FFTDialog</name>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="14"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="92"/>
+        <location filename="Operations/FFTDialog.ui" line="+14"/>
         <source>Dialog</source>
         <translation>Dialog</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="20"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="93"/>
+        <location line="+6"/>
         <source>Résultat :</source>
         <translation>Result :</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="28"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="94"/>
+        <location line="+8"/>
         <source>Magnitude + Phase</source>
         <translation>Magnitude + Phase</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="38"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="95"/>
+        <location line="+10"/>
         <source>Real + Imaginary</source>
         <translation>Real + Imaginary</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="47"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="96"/>
+        <location line="+9"/>
         <source>Centered transform</source>
         <translation>Centered transform</translation>
     </message>
@@ -738,12 +670,12 @@ Number of classes = %1 </translation>
 <context>
     <name>FFTOp</name>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="96"/>
+        <location filename="Operations/FFTOp.cpp" line="+96"/>
         <source>DFT (phase)</source>
         <translation>DFT (phase)</translation>
     </message>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="97"/>
+        <location line="+1"/>
         <source>DFT (magnitude)</source>
         <translation>DFT (magnitude)</translation>
     </message>
@@ -751,19 +683,19 @@ Number of classes = %1 </translation>
 <context>
     <name>FlipOp</name>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location filename="Operations/FlipOp.cpp" line="+30"/>
+        <location line="+32"/>
         <source>horizontal</source>
         <translation>horizontal</translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location line="-32"/>
+        <location line="+32"/>
         <source>vertical</source>
         <translation>vertical</translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location line="+0"/>
         <source>flipped %1</source>
         <translation>flipped %1</translation>
     </message>
@@ -771,7 +703,7 @@ Number of classes = %1 </translation>
 <context>
     <name>Hadamard</name>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="55"/>
+        <location filename="Operations/HadamardOp.cpp" line="+55"/>
         <source>Transform : </source>
         <translation>Transform:</translation>
     </message>
@@ -779,32 +711,32 @@ Number of classes = %1 </translation>
 <context>
     <name>HistogramOp</name>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="42"/>
+        <location filename="Operations/HistogramOp.cpp" line="+42"/>
         <source>Histogram operations</source>
         <translation>Histogram operations</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="48"/>
+        <location line="+6"/>
         <source>Equalize</source>
         <translation>Equalize</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="49"/>
+        <location line="+1"/>
         <source>Normalize</source>
         <translation>Normalize</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="50"/>
+        <location line="+1"/>
         <source>Operation : </source>
         <translation>Operation : </translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="63"/>
+        <location line="+13"/>
         <source>equalized</source>
         <translation>equalized</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="67"/>
+        <location line="+4"/>
         <source>normalized</source>
         <translation>normalized</translation>
     </message>
@@ -812,12 +744,12 @@ Number of classes = %1 </translation>
 <context>
     <name>Hough</name>
     <message>
-        <location filename="Operations/HoughOp.cpp" line="56"/>
+        <location filename="Operations/HoughOp.cpp" line="+56"/>
         <source>Hough transform</source>
         <translation>Hough transform</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughOp.cpp" line="45"/>
+        <location filename="Operations/InverseHoughOp.cpp" line="+45"/>
         <source>Hough inverse transform</source>
         <translation>Hough inverse transform</translation>
     </message>
@@ -825,38 +757,32 @@ Number of classes = %1 </translation>
 <context>
     <name>HoughDialog</name>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="14"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="142"/>
+        <location filename="Operations/HoughDialog.ui" line="+14"/>
         <source>Hough transform</source>
         <translation>Hough transform</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="20"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="143"/>
+        <location line="+6"/>
         <source>Method</source>
         <translation>Method</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="26"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="144"/>
+        <location line="+6"/>
         <source>Method #1</source>
         <translation>Method #1</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="36"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="145"/>
+        <location line="+10"/>
         <source>Method #2</source>
         <translation>Method #2</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="57"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="146"/>
+        <location line="+21"/>
         <source>Angle step : </source>
         <translation>Angle step : </translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="93"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="147"/>
+        <location line="+36"/>
         <source>Distance step : </source>
         <translation>Distance step : </translation>
     </message>
@@ -864,42 +790,42 @@ Number of classes = %1 </translation>
 <context>
     <name>IFFTOp</name>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="55"/>
+        <location filename="Operations/IFFTOp.cpp" line="+55"/>
         <source>Magnitude/Phase</source>
         <translation>Magnitude/Phase</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="56"/>
+        <location line="+1"/>
         <source>Real/Imaginary</source>
         <translation>Real/Imaginary</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="66"/>
+        <location line="+10"/>
         <source>Magnitude : </source>
         <translation>Magnitude : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="67"/>
+        <location line="+1"/>
         <source>Phase : </source>
         <translation>Phase : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="72"/>
+        <location line="+5"/>
         <source>Real part : </source>
         <translation>Real part : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="73"/>
+        <location line="+1"/>
         <source>Imaginary part : </source>
         <translation>Imaginary part : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="79"/>
+        <location line="+6"/>
         <source>Source is centered</source>
         <translation>Source is centered</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="199"/>
+        <location line="+120"/>
         <source>DFT-reconstructed image</source>
         <translation>DFT-reconstructed image</translation>
     </message>
@@ -907,7 +833,7 @@ Number of classes = %1 </translation>
 <context>
     <name>ImageINSAService</name>
     <message>
-        <location filename="Services/ImageINSAService.cpp" line="44"/>
+        <location filename="Services/ImageINSAService.cpp" line="+44"/>
         <source>Informations</source>
         <translation>Informations</translation>
     </message>
@@ -915,31 +841,27 @@ Number of classes = %1 </translation>
 <context>
     <name>InverseHoughDialog</name>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="14"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="105"/>
+        <location filename="Operations/InverseHoughDialog.ui" line="+14"/>
         <source>Inverse hough transform</source>
         <oldsource>Hough reconstruction</oldsource>
         <translation>Inverse Hough transform</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="22"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="106"/>
+        <location line="+8"/>
         <source>Reconstructed image height : </source>
-        <translation type="unfinished"></translation>
+        <translation>Reconstructed image height : </translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="59"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="108"/>
+        <location line="+37"/>
         <source>Reconstructed image width : </source>
-        <translation type="unfinished"></translation>
+        <translation>Reconstructed image width : </translation>
     </message>
     <message>
         <source>Reconstructed image size : </source>
-        <translation type="vanished">Reconstructed image size : </translation>
+        <translation>Reconstructed image size : </translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="45"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="107"/>
+        <location line="-14"/>
         <source>Reconstruction threshold : </source>
         <translation>Reconstruction threshold : </translation>
     </message>
@@ -947,57 +869,48 @@ Number of classes = %1 </translation>
 <context>
     <name>InversePyramidDialog</name>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="14"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="109"/>
+        <location filename="Operations/InversePyramidDialog.ui" line="+14"/>
         <source>Pyramidal reconstruction</source>
         <oldsource>Pyramid reconstruction</oldsource>
         <translation>Pyramidal reconstruction</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="20"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="110"/>
+        <location line="+6"/>
         <source>Filter : </source>
         <translation>Filter : </translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="28"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="113"/>
+        <location line="+8"/>
         <source>triangular</source>
         <translation>triangular</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="33"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="114"/>
+        <location line="+5"/>
         <source>gaussian</source>
         <translation>gaussian</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="38"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="115"/>
+        <location line="+5"/>
         <source>trimodal</source>
         <translation>trimodal</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="43"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="116"/>
+        <location line="+5"/>
         <source>rectangular</source>
         <translation>rectangular</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="48"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="117"/>
+        <location line="+5"/>
         <source>qmf</source>
         <translation>qmf</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="69"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="119"/>
+        <location line="+21"/>
         <source>Number of steps in the pyramid : </source>
         <translation>Number of steps in the pyramid : </translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="102"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="120"/>
+        <location line="+33"/>
         <source>Step to reconstruct :</source>
         <translation>Step to reconstruct :</translation>
     </message>
@@ -1005,7 +918,7 @@ Number of classes = %1 </translation>
 <context>
     <name>MeanSquareErrorOp</name>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="84"/>
+        <location filename="Operations/MeanSquaredErrorOp.cpp" line="+84"/>
         <source>Mean squarred error : %1 (mean error : %2)</source>
         <translation>Mean squarred error : %1 (mean error : %2)</translation>
     </message>
@@ -1013,72 +926,67 @@ Number of classes = %1 </translation>
 <context>
     <name>MedianDialog</name>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="14"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="79"/>
+        <location filename="Operations/MedianDialog.ui" line="+14"/>
         <source>Dialog</source>
-        <translation type="unfinished">Dialog</translation>
+        <translation>Dialog</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="26"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="80"/>
+        <location line="+12"/>
         <source>Forme</source>
-        <translation type="unfinished"></translation>
+        <translation>Shape</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="38"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="81"/>
+        <location line="+12"/>
         <source>Croix</source>
-        <translation type="unfinished"></translation>
+        <translation>Cross</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="54"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="82"/>
+        <location line="+16"/>
         <source>Carré</source>
-        <translation type="unfinished"></translation>
+        <translation>Square</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="96"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="83"/>
+        <location line="+42"/>
         <source>Taille</source>
-        <translation type="unfinished"></translation>
+        <translation>Size</translation>
     </message>
 </context>
 <context>
     <name>NoiseOp</name>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="54"/>
+        <location filename="Operations/NoiseOp.cpp" line="+54"/>
         <source>Impulse noise</source>
         <translation>Impulse noise</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="55"/>
+        <location line="+1"/>
         <source>Gaussian noise</source>
         <translation>Gaussian noise</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="67"/>
+        <location line="+12"/>
         <source>Mean : </source>
         <translation>Mean : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Standard deviation : </source>
         <translation>Standard deviation : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="76"/>
+        <location line="+8"/>
         <source>Percent of image : </source>
         <translation>Percent of image : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="118"/>
-        <location filename="Operations/NoiseOp.cpp" line="134"/>
+        <location line="+42"/>
+        <location line="+16"/>
         <source>impulse noise</source>
         <translation>impulse noise</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="152"/>
-        <location filename="Operations/NoiseOp.cpp" line="161"/>
+        <location line="+18"/>
+        <location line="+9"/>
         <source>gaussian noise</source>
         <translation>gaussian noise</translation>
     </message>
@@ -1086,129 +994,129 @@ Number of classes = %1 </translation>
 <context>
     <name>Operations</name>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="37"/>
+        <location filename="Operations/BFlitOp.cpp" line="-23"/>
         <source>BFilt</source>
         <oldsource>BFlit</oldsource>
         <translation>BFilt</translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="49"/>
-        <location filename="Operations/CombineColorOp.cpp" line="49"/>
-        <location filename="Operations/CombineHsvOp.cpp" line="49"/>
-        <location filename="Operations/IFFTOp.cpp" line="49"/>
-        <location filename="Operations/NoiseOp.cpp" line="49"/>
-        <location filename="Operations/PointOp.cpp" line="116"/>
+        <location line="+12"/>
+        <location filename="Operations/CombineColorOp.cpp" line="-46"/>
+        <location filename="Operations/CombineHsvOp.cpp" line="-52"/>
+        <location filename="Operations/IFFTOp.cpp" line="-150"/>
+        <location filename="Operations/NoiseOp.cpp" line="-112"/>
+        <location filename="Operations/PointOp.cpp" line="+116"/>
         <source>Parameters</source>
         <translation>Parameters</translation>
     </message>
     <message>
         <source>Magnitude/Phase</source>
-        <translation type="vanished">Magnitude/Phase</translation>
+        <translation>Magnitude/Phase</translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="62"/>
-        <location filename="Operations/NoiseOp.cpp" line="90"/>
-        <location filename="Operations/PointOp.cpp" line="205"/>
-        <location filename="Operations/RandomImgOp.cpp" line="105"/>
+        <location line="+13"/>
+        <location filename="Operations/NoiseOp.cpp" line="+41"/>
+        <location filename="Operations/PointOp.cpp" line="+89"/>
+        <location filename="Operations/RandomImgOp.cpp" line="+105"/>
         <source>Validate</source>
         <translation>Validate</translation>
     </message>
     <message>
-        <location filename="Operations/CombineColorOp.cpp" line="38"/>
+        <location filename="Operations/CombineColorOp.cpp" line="-11"/>
         <source>Combine color planes</source>
         <translation>Combine RGB planes</translation>
     </message>
     <message>
-        <location filename="Operations/CombineHsvOp.cpp" line="38"/>
+        <location filename="Operations/CombineHsvOp.cpp" line="-11"/>
         <source>Combine HSV planes</source>
         <translation>Combine HSV planes</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="37"/>
-        <location filename="Operations/CroissanceOp.cpp" line="48"/>
+        <location filename="Operations/CroissanceOp.cpp" line="-77"/>
+        <location line="+11"/>
         <source>Croissance</source>
         <translation>Croissance</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="33"/>
+        <location filename="Operations/DMMOp.cpp" line="-159"/>
         <source>DMM</source>
         <translation>DMM</translation>
     </message>
     <message>
-        <location filename="Operations/DoubleEntropyOp.cpp" line="35"/>
+        <location filename="Operations/DoubleEntropyOp.cpp" line="+35"/>
         <source>Calcul d&apos;entropie (image double)</source>
         <translation>Entropy calculation (double image)</translation>
     </message>
     <message>
-        <location filename="Operations/DoubleEntropyOp.cpp" line="56"/>
-        <location filename="Operations/EntropyOp.cpp" line="54"/>
+        <location line="+21"/>
+        <location filename="Operations/EntropyOp.cpp" line="+54"/>
         <source>Entropy of the image (sum of channels entropy) = %1</source>
-        <translation type="unfinished"></translation>
+        <translation>Entropy of the image (sum of channels entropy) = %1</translation>
     </message>
     <message>
         <source>Entropy of the image = %1</source>
-        <translation type="vanished">Entropy of the image = %1</translation>
+        <translation>Entropy of the image = %1</translation>
     </message>
     <message>
-        <location filename="Operations/EntropyOp.cpp" line="35"/>
+        <location filename="Operations/EntropyOp.cpp" line="-19"/>
         <source>Calcul d&apos;entropie (image standard)</source>
         <translation>Entropy calculation (standard image)</translation>
     </message>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="28"/>
+        <location filename="Operations/FFTOp.cpp" line="-69"/>
         <source>Fourier transform</source>
         <oldsource>Discrete Fourier transform</oldsource>
         <translation>Fourier transform</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="32"/>
+        <location filename="Operations/HistogramOp.cpp" line="-35"/>
         <source>Histogram operations</source>
         <translation>Histogram operations</translation>
     </message>
     <message>
-        <location filename="Operations/HuffmanOp.cpp" line="29"/>
+        <location filename="Operations/HuffmanOp.cpp" line="+29"/>
         <source>Huffman</source>
         <translation>Huffman</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="34"/>
+        <location filename="Operations/MeanSquaredErrorOp.cpp" line="-50"/>
         <source>Mean squared error</source>
         <translation>Mean squared error</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="45"/>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="46"/>
+        <location line="+11"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+46"/>
         <source>Compare to...</source>
         <translation>Compare to...</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="53"/>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="54"/>
+        <location line="+8"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+8"/>
         <source>Compare %1 to : </source>
         <translation>Compare %1 to : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="42"/>
+        <location filename="Operations/NoiseOp.cpp" line="-48"/>
         <source>Add noise</source>
         <translation>Add noise</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="44"/>
+        <location filename="Operations/PointOp.cpp" line="-161"/>
         <source>Pixel operations</source>
         <translation>Pixel operations</translation>
     </message>
     <message>
-        <location filename="Operations/PseudoColorOp.cpp" line="28"/>
+        <location filename="Operations/PseudoColorOp.cpp" line="+28"/>
         <source>Pseudo color</source>
         <translation>Pseudo color</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="31"/>
+        <location filename="Operations/QuantificationOp.cpp" line="+31"/>
         <source>Quantification</source>
         <translation>Quantization</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="44"/>
+        <location line="+13"/>
         <source>
 Canal%d : 
 </source>
@@ -1217,239 +1125,240 @@ Channel %d :
 </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="49"/>
+        <location line="+5"/>
         <source>             Valeurs :  </source>
         <translation>             Values  :      </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="64"/>
+        <location line="+15"/>
         <source>             Seuils    :       </source>
         <translation>             Thresholds :    </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="140"/>
+        <location line="+76"/>
         <source>Canal : %d           Centroïd : %.2f %          Plus proche voisin : %.2f %
 </source>
         <translation>Channel : %d           Centroid : %.2f %          Nearest neighbor : %.2f %
 </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="199"/>
+        <location line="+59"/>
         <source>Respect des proprietes du quantificateur optimal : </source>
         <translation>Respect of the optimal quantizer properties : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="37"/>
+        <location filename="Operations/RandomImgOp.cpp" line="-68"/>
         <source>Generate random image</source>
         <translation>Generate random image</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="129"/>
-        <location filename="Operations/RandomImgOp.cpp" line="149"/>
+        <location line="+92"/>
+        <location line="+20"/>
         <source>Random image</source>
         <translation>Random image</translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="36"/>
-        <location filename="Operations/RejectionRingOp.cpp" line="42"/>
+        <location filename="Operations/RejectionRingOp.cpp" line="+36"/>
+        <location line="+6"/>
         <source>Rejection ring</source>
         <translation>Rejection ring</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="34"/>
+        <location filename="Operations/RotateOp.cpp" line="+34"/>
         <source>Rotation</source>
         <translation>Rotation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="42"/>
-        <location filename="Operations/ScalingOp.cpp" line="57"/>
+        <location filename="Operations/ScalingOp.cpp" line="+42"/>
+        <location line="+15"/>
         <source>Scaling</source>
         <translation>Scaling</translation>
     </message>
     <message>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="34"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="-20"/>
         <source>Signal-to-noise ratio</source>
         <translation>Signal-to-noise ratio</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="39"/>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="145"/>
+        <location filename="Operations/SinusSynthesisOp.cpp" line="+39"/>
+        <location line="+106"/>
         <source>Sinus synthesis</source>
         <translation>Sinus synthesis</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdOp.cpp" line="11"/>
+        <location filename="Operations/ThresholdOp.cpp" line="+11"/>
         <source>Thresholding</source>
         <translation>Thresholding</translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="12"/>
+        <location filename="Operations/TranslateOp.cpp" line="+12"/>
         <source>Translation</source>
         <translation>Translation</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="33"/>
+        <location filename="Operations/ZeroCrossingOp.cpp" line="+33"/>
         <source>Zero crossing</source>
         <translation>Zero crossing</translation>
     </message>
     <message>
-        <location filename="Operations/CenterOp.cpp" line="32"/>
+        <location filename="Operations/CenterOp.cpp" line="-40"/>
         <source>Center</source>
         <translation>Center</translation>
     </message>
     <message>
-        <location filename="Operations/SplitColorOp.cpp" line="31"/>
+        <location filename="Operations/SplitColorOp.cpp" line="+31"/>
         <source>Split color planes</source>
         <translation>Split RGB planes</translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
+        <location filename="Operations/FlipOp.cpp" line="-32"/>
         <source>Flip %1</source>
         <translation>Flip %1</translation>
     </message>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="30"/>
+        <location filename="Operations/DCTOp.cpp" line="-28"/>
         <source>Discrete cosinus transform</source>
         <translation>DCT 16x16 with coef. reduction</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="39"/>
-        <location filename="Operations/HadamardOp.cpp" line="51"/>
+        <location filename="Operations/HadamardOp.cpp" line="-16"/>
+        <location line="+12"/>
         <source>8x8 transforms</source>
         <translation>8x8 transforms (Haar, Hadamard, DCT)</translation>
     </message>
     <message>
-        <location filename="Operations/HoughOp.cpp" line="30"/>
+        <location filename="Operations/HoughOp.cpp" line="-26"/>
         <source>Hough transform</source>
         <translation>Hough transform</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughOp.cpp" line="28"/>
+        <location filename="Operations/InverseHoughOp.cpp" line="-17"/>
         <source>Inverse Hough transform</source>
         <translation>Inverse Hough transform</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="31"/>
+        <location filename="Operations/InversePyramidOp.cpp" line="+31"/>
         <source>Pyramidal reconstruction</source>
         <oldsource>Reconstruct pyramid</oldsource>
         <translation>Pyramidal reconstruction</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="41"/>
-        <location filename="Operations/InversePyramidOp.cpp" line="46"/>
-        <location filename="Operations/PyramidOp.cpp" line="43"/>
-        <location filename="Operations/PyramidOp.cpp" line="48"/>
+        <location line="+10"/>
+        <location line="+5"/>
+        <location filename="Operations/PyramidOp.cpp" line="+43"/>
+        <location line="+5"/>
         <source>The operation can&apos;t be applied on this image</source>
         <translation>The operation can&apos;t be applied on this image</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="42"/>
+        <location line="-4"/>
         <source>The image width must be twice the image height.</source>
         <translation>The image width must be twice the image height.</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="47"/>
-        <location filename="Operations/PyramidOp.cpp" line="49"/>
+        <location line="+5"/>
+        <location filename="Operations/PyramidOp.cpp" line="+1"/>
         <source>The image dimensions must be power of 2.</source>
         <translation>The image dimensions must be power of 2.</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="32"/>
+        <location filename="Operations/PyramidOp.cpp" line="-17"/>
         <source>Pyramidal decomposition</source>
         <translation>Pyramidal decomposition</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="44"/>
+        <location line="+12"/>
         <source>The image width must equal the image height.</source>
         <translation>The image width must equal the image height.</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="69"/>
-        <location filename="Operations/PyramidOp.cpp" line="79"/>
+        <location line="+25"/>
+        <location line="+10"/>
         <source>Gaussian</source>
         <translation>Gaussian</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="73"/>
-        <location filename="Operations/PyramidOp.cpp" line="83"/>
+        <location line="-6"/>
+        <location line="+10"/>
         <source>Laplacian</source>
         <translation>Laplacian</translation>
     </message>
     <message>
         <source>Gaussian filter</source>
-        <translation type="vanished">Gaussian filter</translation>
+        <translation>Gaussian filter</translation>
     </message>
     <message>
         <source>Trimodal filter</source>
-        <translation type="vanished">Trimodal filter</translation>
+        <translation>Trimodal filter</translation>
     </message>
     <message>
         <source>Rectangular filter</source>
-        <translation type="vanished">Rectangular filter</translation>
+        <translation>Rectangular filter</translation>
     </message>
     <message>
         <source>QMF filter</source>
-        <translation type="vanished">QMF filter</translation>
+        <translation>QMF filter</translation>
     </message>
     <message>
         <source>Triangular filter</source>
-        <translation type="vanished">Triangular filter</translation>
+        <translation>Triangular filter</translation>
     </message>
     <message>
         <source>Gaussian pyramidal decomposition</source>
-        <translation type="vanished">Gaussian pyramidal decomposition</translation>
+        <translation>Gaussian pyramidal decomposition</translation>
     </message>
     <message>
         <source>Laplacian pyramidal decomposition</source>
-        <translation type="vanished">Laplacian pyramidal decomposition</translation>
+        <translation>Laplacian pyramidal decomposition</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="37"/>
+        <location filename="Operations/ClassResultOp.cpp" line="-99"/>
         <source>Classification results</source>
         <translation>Classification results</translation>
     </message>
     <message>
-        <location filename="Operations/ColorimetryOp.cpp" line="34"/>
+        <location filename="Operations/ColorimetryOp.cpp" line="+34"/>
         <source>Generate RGB image</source>
         <translation>Generate RGB image</translation>
     </message>
     <message>
-        <location filename="Operations/ColorimetryOp.cpp" line="45"/>
+        <location line="+11"/>
         <source>RGB image generator</source>
         <translation>RGB image generator</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="38"/>
+        <location filename="Operations/IFFTOp.cpp" line="-11"/>
         <source>Inverse Fourier transform</source>
         <translation>Inverse Fourier transform</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="33"/>
+        <location filename="Operations/ClassAnalysisOp.cpp" line="-45"/>
         <source>Supervised classification</source>
         <translation>Supervised classification</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="32"/>
+        <location filename="Operations/DPCMEncodingOp.cpp" line="-36"/>
         <source>DPCM Encoding</source>
         <translation>DPCM Encoding</translation>
     </message>
     <message>
-        <location filename="Operations/Huffman.cpp" line="98"/>
+        <location filename="Operations/Huffman.cpp" line="+98"/>
         <source>
  debit(huffman) = %.4f
 </source>
         <translation>
- Flow(Huffman) = %.4f</translation>
+ Throughput(Huffman) = %.4f</translation>
     </message>
     <message>
-        <location filename="Algorithms/Pyramid.cpp" line="662"/>
+        <location filename="Algorithms/Pyramid.cpp" line="+664"/>
+        <location line="+20"/>
         <source>L&apos;entropie de l&apos;etage %d est %1f
 </source>
         <translation>The stage %d entropy is %1f
 </translation>
     </message>
     <message>
-        <location filename="Operations/Transforms.cpp" line="468"/>
+        <location filename="Operations/Transforms.cpp" line="+468"/>
         <source>
 
 matrice de transformation utilisee : 
@@ -1460,17 +1369,17 @@ Used transformation matrix :
 </translation>
     </message>
     <message>
-        <location filename="Algorithms/DCT.cpp" line="191"/>
-        <location filename="Algorithms/DCT.cpp" line="231"/>
+        <location filename="Algorithms/DCT.cpp" line="+191"/>
+        <location line="+40"/>
         <source>
 Le debit vaut : %5.2f
 
 </source>
-        <translation>The flow is : %5.2f
+        <translation>The throughput is : %5.2f
 </translation>
     </message>
     <message>
-        <location filename="Algorithms/DCT.cpp" line="209"/>
+        <location line="-22"/>
         <source>
 ---------Matrice d&apos;allocation de bits---------
 
@@ -1481,71 +1390,69 @@ Le debit vaut : %5.2f
 </translation>
     </message>
     <message>
-        <location filename="Operations/MedianOp.cpp" line="12"/>
-        <location filename="Operations/MedianOp.cpp" line="36"/>
-        <source>Median Filter</source>
-        <translation type="unfinished"></translation>
+        <location filename="Operations/SplitHsvOp.cpp" line="+33"/>
+        <source>Split HSV planes</source>
+        <translation>Split HSV planes</translation>
     </message>
     <message>
-        <location filename="Operations/SplitHsvOp.cpp" line="33"/>
-        <source>Split HSV planes</source>
-        <translation type="unfinished"></translation>
+        <location filename="Operations/MedianOp.cpp" line="+12"/>
+        <location line="+24"/>
+        <source>Median Filter</source>
+        <translation>Median filter</translation>
     </message>
 </context>
 <context>
     <name>PlugOperation</name>
     <message>
-        <location filename="../core/PlugOperation.cpp" line="77"/>
         <source>Parameters</source>
-        <translation type="unfinished">Parameters</translation>
+        <translation>Parameters</translation>
     </message>
     <message>
-        <location filename="../core/PlugOperation.cpp" line="86"/>
         <source>Validate</source>
-        <translation type="unfinished">Validate</translation>
+        <translation>Validate</translation>
     </message>
 </context>
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="Services/PluginManager.cpp" line="41"/>
+        <location filename="Services/PluginManager.cpp" line="+41"/>
         <source>&amp;Plugin</source>
         <translation>&amp;Plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="43"/>
+        <location line="+2"/>
         <source>&amp;Load plugin</source>
         <translation>&amp;Load plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="44"/>
+        <location line="+1"/>
         <source>&amp;Unload all plugins</source>
         <translation>&amp;Unload all plugins</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="83"/>
+        <location line="+39"/>
         <source>Load plugin</source>
         <translation>Load plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="83"/>
+        <location line="+0"/>
         <source>Plugin (*.dll *.so *.dylib)</source>
         <translation>Plugin (*.dll *.so *.dylib)</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="178"/>
-        <location filename="Services/PluginManager.cpp" line="189"/>
-        <location filename="Services/PluginManager.cpp" line="201"/>
+        <location line="+95"/>
+        <location line="+11"/>
+        <location line="+12"/>
         <source>Error loading plugin</source>
         <translation>Error loading plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="189"/>
+        <location line="-12"/>
         <source>Could not find the plugin&apos;s entry point &quot;loadPlugin&quot;</source>
         <translation>Could not find the plugin&apos;s entry point &quot;loadPlugin&quot;</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="201"/>
+        <location line="+12"/>
         <source>The getPlugin entry point does not return a valid Plugin</source>
         <translation>The getPlugin entry point does not return a valid Plugin</translation>
     </message>
@@ -1553,27 +1460,27 @@ Le debit vaut : %5.2f
 <context>
     <name>PointOp</name>
     <message>
-        <location filename="Operations/PointOp.cpp" line="121"/>
+        <location filename="Operations/PointOp.cpp" line="+77"/>
         <source>Second operand</source>
         <translation>Second operand</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="122"/>
+        <location line="+1"/>
         <source>Value</source>
         <translation>Value</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>Image</source>
         <translation>Image</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="130"/>
+        <location line="+7"/>
         <source>Explode colors</source>
         <translation>Explode colors</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="135"/>
+        <location line="+5"/>
         <source>Double Result</source>
         <translation>Double Result</translation>
     </message>
@@ -1581,7 +1488,7 @@ Le debit vaut : %5.2f
 <context>
     <name>PseudoColorOp</name>
     <message>
-        <location filename="Operations/PseudoColorOp.cpp" line="53"/>
+        <location filename="Operations/PseudoColorOp.cpp" line="+25"/>
         <source>Pseudo color</source>
         <translation>Pseudo color</translation>
     </message>
@@ -1589,110 +1496,98 @@ Le debit vaut : %5.2f
 <context>
     <name>PyramidDialog</name>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="14"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="139"/>
+        <location filename="Operations/PyramidDialog.ui" line="+14"/>
         <source>Pyramidal decomposition</source>
         <translation>Pyramidal decomposition</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="20"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="140"/>
+        <location line="+6"/>
         <source>Type of pyramid</source>
         <translation>Type of pyramid</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="26"/>
-        <location filename="Operations/PyramidDialog.ui" line="61"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="141"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="147"/>
+        <location line="+6"/>
+        <location line="+35"/>
         <source>gaussian</source>
         <translation>gaussian</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="36"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="142"/>
+        <location line="-25"/>
         <source>laplacian</source>
         <translation>laplacian</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="48"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="143"/>
+        <location line="+12"/>
         <source>Filter : </source>
         <translation>Filter : </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="56"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="146"/>
+        <location line="+8"/>
         <source>triangular</source>
         <translation>triangular</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="66"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="148"/>
+        <location line="+10"/>
         <source>trimodal</source>
         <translation>trimodal</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="71"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="149"/>
+        <location line="+5"/>
         <source>rectangular</source>
         <translation>rectangular</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="76"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="150"/>
+        <location line="+5"/>
         <source>qmf</source>
         <translation>qmf</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="84"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="152"/>
+        <location line="+8"/>
         <source>Number of steps : </source>
         <translation>Number of steps : </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="105"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="153"/>
+        <location line="+21"/>
         <source>Create only one step :</source>
         <translation>Create only one step :</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="41"/>
+        <location filename="Operations/PyramidDialog.cpp" line="+41"/>
         <source>Decomposition pyramidale avec filtre gaussien :
 </source>
         <translation>Pyramidal decomposition with gaussian filter :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="44"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre trimodal :
 </source>
         <translation>Pyramidal decomposition with trimodal filter :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="47"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre rectangulaire :
 </source>
         <translation>Pyramidal decomposition with rectangular filter :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="50"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre qmf :
 </source>
         <translation>Pyramidal decomposition with QMF filter :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="53"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre triangulaire :
 </source>
         <translation>Pyramidal decomposition with triangular filter :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="57"/>
+        <location line="+4"/>
         <source>Filtre non trouvé. Décomposition avec filtre gaussien par défaut. 
 </source>
         <translation>Filter not found. Default decomposition with gaussian filter.
@@ -1702,100 +1597,100 @@ Le debit vaut : %5.2f
 <context>
     <name>QuantificationDialog</name>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="40"/>
+        <location filename="Operations/QuantificationDialog.cpp" line="+40"/>
         <source>Quantification file editor</source>
         <translation>Quantization file editor</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="43"/>
+        <location line="+3"/>
         <source>Quantification of %1</source>
         <translation>Quantization of %1</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="53"/>
+        <location line="+10"/>
         <source>Linear with centered value</source>
         <translation>Linear with centered value</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="55"/>
+        <location line="+2"/>
         <source>Non linear with centered value</source>
         <translation>Non linear with centered value</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="56"/>
+        <location line="+1"/>
         <source>Non linear with mean value</source>
         <translation>Non linear with mean value</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="58"/>
+        <location line="+2"/>
         <source>Custom</source>
         <translation>Custom</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="59"/>
+        <location line="+1"/>
         <source>LloydMax</source>
-        <translation type="unfinished"></translation>
+        <translation>LloydMax</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="61"/>
+        <location line="+2"/>
         <source>Quantification : </source>
         <translation>Quantization : </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="62"/>
+        <location line="+1"/>
         <source>Number of values : </source>
         <translation>Number of values : </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="88"/>
+        <location line="+26"/>
         <source>Exit</source>
         <translation>Exit</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="91"/>
+        <location line="+3"/>
         <source>Apply</source>
         <translation>Apply</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="107"/>
+        <location line="+16"/>
         <source>Quantification non lineaire a valeurs centrees :</source>
         <oldsource>quantificiatQuantification non lineaire a valeurs centrees :</oldsource>
         <translation>Non-linear quantization with centered values :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="111"/>
+        <location line="+4"/>
         <source>Quantification non lineaire a valeurs moyennes :</source>
         <oldsource>Quantification non lineaire a valeurs moyennes : </oldsource>
         <translation>Non-linear quantization with mean values :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="115"/>
+        <location line="+4"/>
         <source>Quantification personnalisee :</source>
         <translation>Custom quantization :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="119"/>
+        <location line="+4"/>
         <source>Quantification LloydMax :</source>
         <translation>LloydMax quantization :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="125"/>
+        <location line="+6"/>
         <source>Quantification lineaire a valeurs centrees :</source>
         <translation>Linear quantization with centered values :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="142"/>
+        <location line="+17"/>
         <source>Open a file</source>
         <translation>Open a file</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="142"/>
-        <location filename="Operations/QuantificationDialog.cpp" line="151"/>
+        <location line="+0"/>
+        <location line="+9"/>
         <source>Loi de quantification (*.loi)</source>
         <translation>Quantization file (*.loi)</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="151"/>
+        <location line="+0"/>
         <source>Save to file</source>
         <translation>Save to file</translation>
     </message>
@@ -1804,40 +1699,40 @@ Le debit vaut : %5.2f
     <name>QuantificationOp</name>
     <message>
         <source>quantified</source>
-        <translation type="vanished">quantified</translation>
+        <translation>quantified</translation>
     </message>
     <message>
         <source>Quantification non lineaire a valeur centree</source>
-        <translation type="vanished">Non linear quantization with centered values</translation>
+        <translation>Non linear quantization with centered values</translation>
     </message>
     <message>
         <source>Quantification non lineaire a moyennes</source>
-        <translation type="vanished">Non linear quantization with mean values</translation>
+        <translation>Non linear quantization with mean values</translation>
     </message>
     <message>
         <source>Quantification personnalisee</source>
-        <translation type="vanished">Custom quantization</translation>
+        <translation>Custom quantization</translation>
     </message>
     <message>
         <source>Quantification LloydMax</source>
-        <translation type="vanished">LloydMax quantization</translation>
+        <translation>LloydMax quantization</translation>
     </message>
     <message>
         <source>Quantification lineaire a valeurs centrees</source>
-        <translation type="vanished">Linear quantization with centered values</translation>
+        <translation>Linear quantization with centered values</translation>
     </message>
 </context>
 <context>
     <name>QuantificationWidget</name>
     <message>
-        <location filename="Operations/QuantificationWidget.cpp" line="43"/>
+        <location filename="Operations/QuantificationWidget.cpp" line="+43"/>
         <source>Thresholds
 (low to high)</source>
         <translation>Thresholds
 (low to high)</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationWidget.cpp" line="45"/>
+        <location line="+2"/>
         <source>Values</source>
         <translation>Values</translation>
     </message>
@@ -1845,49 +1740,49 @@ Le debit vaut : %5.2f
 <context>
     <name>RandomImgOp</name>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="43"/>
+        <location filename="Operations/RandomImgOp.cpp" line="-106"/>
         <source>Parameters</source>
         <translation>Parameters</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="47"/>
+        <location line="+4"/>
         <source>Image type</source>
         <translation>Image type</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="48"/>
+        <location line="+1"/>
         <source>8-bit integer</source>
         <translation>8-bit integer</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="49"/>
+        <location line="+1"/>
         <source>Floating point</source>
         <translation>Floating point</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="59"/>
+        <location line="+10"/>
         <source>Width : </source>
         <translation>Width : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="64"/>
+        <location line="+5"/>
         <source>Height : </source>
         <translation>Height : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="69"/>
+        <location line="+5"/>
         <source>Number of channels : </source>
         <translation>Number of channels : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="79"/>
-        <location filename="Operations/RandomImgOp.cpp" line="93"/>
+        <location line="+10"/>
+        <location line="+14"/>
         <source>Range : </source>
         <translation>Range of values: </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="81"/>
-        <location filename="Operations/RandomImgOp.cpp" line="95"/>
+        <location line="-12"/>
+        <location line="+14"/>
         <source> to </source>
         <translation> to </translation>
     </message>
@@ -1895,22 +1790,22 @@ Le debit vaut : %5.2f
 <context>
     <name>RejectionRingOp</name>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="49"/>
+        <location filename="Operations/RejectionRingOp.cpp" line="+7"/>
         <source>Width=Height : </source>
         <translation>Width=Height : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="53"/>
+        <location line="+4"/>
         <source>Radius : </source>
         <translation>Radius : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="57"/>
+        <location line="+4"/>
         <source>Thickness (beyond radius) : </source>
         <translation>Thickness (beyond radius) : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="99"/>
+        <location line="+42"/>
         <source>Rejection ring (%1 %2 %3)</source>
         <translation>Rejection ring (%1 %2 %3)</translation>
     </message>
@@ -1918,27 +1813,27 @@ Le debit vaut : %5.2f
 <context>
     <name>Rotation</name>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="60"/>
+        <location filename="Operations/RotateOp.cpp" line="+26"/>
         <source>Rotating %1</source>
         <translation>Rotating %1</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="69"/>
+        <location line="+9"/>
         <source>Expand image</source>
         <translation>Expand image</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="78"/>
+        <location line="+9"/>
         <source>Rotation angle : </source>
         <translation>Rotation angle : </translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="80"/>
+        <location line="+2"/>
         <source>Fill value : </source>
         <translation>Fill value : </translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="152"/>
+        <location line="+72"/>
         <source>rotated %1</source>
         <translation>rotated %1</translation>
     </message>
@@ -1946,67 +1841,67 @@ Le debit vaut : %5.2f
 <context>
     <name>ScalingOp</name>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="70"/>
+        <location filename="Operations/ScalingOp.cpp" line="+13"/>
         <source>Nearest neighboor (standard)</source>
         <translation>Nearest neighbor (standard)</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="71"/>
+        <location line="+1"/>
         <source>Bi-linear</source>
         <translation>Bi-linear</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="72"/>
+        <location line="+1"/>
         <source>Parabolic</source>
         <translation>Parabolic</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="73"/>
+        <location line="+1"/>
         <source>Spline</source>
         <translation>Spline</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="74"/>
+        <location line="+1"/>
         <source>Interpolation : </source>
         <translation>Interpolation : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="75"/>
+        <location line="+1"/>
         <source>X scale factor : </source>
         <translation>X scale factor : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="76"/>
+        <location line="+1"/>
         <source>Y scale factor : </source>
         <translation>Y scale factor : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="119"/>
+        <location line="+43"/>
         <source>Bilinear Interpolation</source>
         <translation>Bilinear interpolation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="120"/>
+        <location line="+1"/>
         <source>Parabolic Interpolation</source>
         <translation>Parabolic interpolation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="121"/>
+        <location line="+1"/>
         <source>Spline Interpolation</source>
         <translation>Spline interpolation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="122"/>
+        <location line="+1"/>
         <source>Nearest Interpolation</source>
         <translation>Nearest neighbor interpolation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>Scaled</source>
         <translation>Scaled</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="129"/>
+        <location line="+6"/>
         <source>scaled</source>
         <translation>scaled</translation>
     </message>
@@ -2014,7 +1909,7 @@ Le debit vaut : %5.2f
 <context>
     <name>SignalToNoiseOp</name>
     <message>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="84"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+50"/>
         <source>Signal-to-noise ratio : %1</source>
         <translation>Signal-to-noise ratio : %1</translation>
     </message>
@@ -2022,47 +1917,47 @@ Le debit vaut : %5.2f
 <context>
     <name>SinusSynthesisOp</name>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="50"/>
+        <location filename="Operations/SinusSynthesisOp.cpp" line="-95"/>
         <source>Sinus synthesis</source>
         <translation>Sinus synthesis</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="56"/>
+        <location line="+6"/>
         <source>Linear</source>
         <translation>Linear</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="57"/>
+        <location line="+1"/>
         <source>Circular</source>
         <translation>Circular</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="71"/>
+        <location line="+14"/>
         <source>256</source>
         <translation>256</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="72"/>
+        <location line="+1"/>
         <source>2 (Black and white)</source>
         <translation>2 (Black and white)</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="74"/>
+        <location line="+2"/>
         <source>Image size (width=height) : </source>
         <translation>Image size (width=height) : </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="75"/>
+        <location line="+1"/>
         <source>Signal period (pixel) : </source>
         <translation>Signal period (pixel) : </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="76"/>
+        <location line="+1"/>
         <source>Orientation (°): </source>
-        <translation type="unfinished"></translation>
+        <translation>Orientation (°): </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="78"/>
+        <location line="+2"/>
         <source>Niveaux de gris : </source>
         <translation>Grayscale levels : </translation>
     </message>
@@ -2070,60 +1965,60 @@ Le debit vaut : %5.2f
 <context>
     <name>StructElemWindow</name>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="41"/>
+        <location filename="Widgets/StructElemWindow.cpp" line="+38"/>
         <source>&amp;Open file</source>
         <translation>&amp;Open file</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="42"/>
+        <location line="+1"/>
         <source>&amp;Save as...</source>
         <translation>&amp;Save as...</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="53"/>
+        <location line="+13"/>
         <source>Basic shapes :</source>
         <translation>Basic shapes :</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="56"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="196"/>
+        <location line="+3"/>
+        <location line="+139"/>
         <source>Diamond</source>
         <translation>Diamond</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="57"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="176"/>
+        <location line="-138"/>
+        <location line="+118"/>
         <source>Disc</source>
         <translation>Disc</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="58"/>
+        <location line="-117"/>
         <source>Empty</source>
         <translation>Empty</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="65"/>
+        <location line="+7"/>
         <source>Generate</source>
         <translation>Generate</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="76"/>
+        <location line="+11"/>
         <source>Scale :</source>
         <translation>Scale :</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="249"/>
+        <location line="+172"/>
         <source>Open a file</source>
         <translation>Open a file</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="249"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="270"/>
+        <location line="+0"/>
+        <location line="+21"/>
         <source>Images (*.png *.bmp *.jpg *.jpeg)</source>
         <translation>Images (*.png *.bmp *.jpg *.jpeg)</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="270"/>
+        <location line="+0"/>
         <source>Save file</source>
         <translation>Save file</translation>
     </message>
@@ -2131,72 +2026,72 @@ Le debit vaut : %5.2f
 <context>
     <name>ThresholdDialog</name>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="49"/>
+        <location filename="Operations/ThresholdDialog.cpp" line="+49"/>
         <source>Threshold #1 : </source>
         <translation>Threshold #1 : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="53"/>
-        <location filename="Operations/ThresholdDialog.cpp" line="109"/>
+        <location line="+4"/>
+        <location line="+56"/>
         <source>Threshold : </source>
         <translation>Threshold : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="92"/>
+        <location line="-17"/>
         <source>ThresholdOp</source>
         <translation>Thresholding</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="100"/>
+        <location line="+8"/>
         <source>&lt;font color=red&gt;&lt;i&gt;Information : The input image has been converted to grayscale.&lt;/i&gt;&lt;/font&gt;</source>
         <translation>&lt;font color=red&gt;&lt;i&gt;Information : The input image has been converted to grayscale.&lt;/i&gt;&lt;/font&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="102"/>
+        <location line="+2"/>
         <source>Threshold</source>
         <translation>Threshold</translation>
     </message>
     <message>
         <source>Double threshold</source>
-        <translation type="vanished">Double threshold</translation>
+        <translation>Double threshold</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="104"/>
+        <location line="+2"/>
         <source>Double threshold (right clic to move the second threshold)</source>
-        <translation type="unfinished"></translation>
+        <translation>Double threshold (right clic to move the second threshold)</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="113"/>
+        <location line="+9"/>
         <source>Otsu</source>
         <translation>Otsu</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="120"/>
+        <location line="+7"/>
         <source>Threshold #2 : </source>
         <translation>Threshold #2 : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="131"/>
+        <location line="+11"/>
         <source>Color between thresholds :</source>
         <translation>Color between thresholds :</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="132"/>
+        <location line="+1"/>
         <source>White</source>
         <translation>White</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="133"/>
+        <location line="+1"/>
         <source>Black</source>
         <translation>Black</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="169"/>
+        <location line="+36"/>
         <source>Aperçu</source>
-        <translation type="unfinished"></translation>
+        <translation>Preview</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="177"/>
+        <location line="+8"/>
         <source>Validate</source>
         <translation>Validate</translation>
     </message>
@@ -2204,47 +2099,47 @@ Le debit vaut : %5.2f
 <context>
     <name>Transforms</name>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="57"/>
+        <location filename="Operations/HadamardOp.cpp" line="+6"/>
         <source>&lt;b&gt;Select the coefficients to keep : &lt;/b&gt;</source>
         <translation>&lt;b&gt;Select the coefficients to keep : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="62"/>
+        <location line="+5"/>
         <source>Clear selection</source>
         <translation>Clear selection</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="63"/>
+        <location line="+1"/>
         <source>Invert selection</source>
         <translation>Invert selection</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="112"/>
+        <location line="+49"/>
         <source>Hadamard transform</source>
         <translation>Hadamard transform</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="113"/>
+        <location line="+1"/>
         <source>Hadamard reconstruction</source>
         <translation>Hadamard reconstruction</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="117"/>
+        <location line="+4"/>
         <source>Haar transform</source>
         <translation>Haar transform</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="118"/>
+        <location line="+1"/>
         <source>Haar reconstruction</source>
         <translation>Haar reconstruction</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="122"/>
+        <location line="+4"/>
         <source>cosinus transform</source>
         <translation>cosinus transform</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>cosinus reconstruction</source>
         <translation>cosinus reconstruction</translation>
     </message>
@@ -2252,27 +2147,27 @@ Le debit vaut : %5.2f
 <context>
     <name>TranslateOp</name>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="34"/>
+        <location filename="Operations/TranslateOp.cpp" line="+22"/>
         <source>Expand image</source>
         <translation>Expand image</translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="42"/>
+        <location line="+8"/>
         <source>X offset : </source>
         <translation>X offset : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="43"/>
+        <location line="+1"/>
         <source>Y offset : </source>
         <translation>Y offset : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="45"/>
+        <location line="+2"/>
         <source>Fill value : </source>
         <translation>Fill value : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="85"/>
+        <location line="+40"/>
         <source>Translated %1:%2</source>
         <translation>Translated %1:%2</translation>
     </message>
@@ -2280,7 +2175,7 @@ Le debit vaut : %5.2f
 <context>
     <name>Translation</name>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="24"/>
+        <location line="-61"/>
         <source>Translating %1</source>
         <translation>Translating %1</translation>
     </message>
@@ -2288,22 +2183,22 @@ Le debit vaut : %5.2f
 <context>
     <name>ZeroCrossingOp</name>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="44"/>
+        <location filename="Operations/ZeroCrossingOp.cpp" line="+11"/>
         <source>Zero crossing</source>
         <translation>Zero crossing</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="52"/>
+        <location line="+8"/>
         <source>Threshold : </source>
         <translation>Threshold : </translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="110"/>
+        <location line="+58"/>
         <source>contours bruts</source>
         <translation>Raw edges</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="111"/>
+        <location line="+1"/>
         <source>contours nettoyes</source>
         <translation>Cleaned edges</translation>
     </message>
@@ -2311,195 +2206,397 @@ Le debit vaut : %5.2f
 <context>
     <name>filtrme::FilterChoice</name>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="74"/>
+        <location filename="Widgets/FilterChoice.cpp" line="+76"/>
+        <location/>
+        <location line="+0"/>
         <source>FilterChoice</source>
         <translation>Filter choice</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="82"/>
+        <location line="+9"/>
+        <location line="+0"/>
+        <source>Select custom or standard filter</source>
+        <translation>Select custom or standard filter</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location line="+0"/>
+        <source>Custom filter</source>
+        <translation>Custom filter</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter configuration</source>
         <translation>Filter configuration</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="86"/>
+        <location line="+6"/>
+        <location line="+0"/>
+        <source>Path to custom filter:</source>
+        <translation>Path to custom filter:</translation>
+    </message>
+    <message>
+        <location line="+17"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter:</source>
         <translation>Filter:</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="95"/>
+        <location line="+14"/>
+        <location/>
+        <location line="+0"/>
         <source>Edge policy: </source>
         <translation>Edge policy: </translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+2"/>
+        <location/>
+        <location line="+0"/>
         <source>Black</source>
         <translation>Black</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Mirror</source>
         <translation>Mirror</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Nearest</source>
         <translation>Nearest</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Spherical</source>
         <translation>Spherical</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="103"/>
+        <location line="+6"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter size:</source>
         <translation>Filter size:</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="109"/>
+        <location line="+6"/>
+        <location/>
+        <location line="+0"/>
         <source>Standard deviation : </source>
         <translation>Standard deviation : </translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="118"/>
+        <location line="+9"/>
+        <location/>
+        <location line="+0"/>
         <source>Resulting image type</source>
         <translation>Resulting image type</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="119"/>
+        <location line="+1"/>
+        <location line="+0"/>
         <source>UChar</source>
-        <translation type="unfinished"></translation>
+        <translation>UChar</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="120"/>
+        <location line="+1"/>
+        <location line="+0"/>
         <source>Double</source>
-        <translation type="unfinished"></translation>
+        <translation>Double</translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <location line="+0"/>
+        <source>Options</source>
+        <translation>Options</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location line="+0"/>
+        <source>Offset</source>
+        <translation>Offset</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Scaling</source>
+        <translation>Scaling</translation>
+    </message>
+    <message>
+        <location line="+431"/>
+        <location line="+0"/>
+        <source>Open a file</source>
+        <translation>Open a file</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>XML Documents (*.xml)</source>
+        <translation>XML Documents (*.xml)</translation>
     </message>
     <message>
         <source>Standard</source>
-        <translation type="vanished">Standard</translation>
+        <translation>Standard</translation>
     </message>
     <message>
         <source>Floating point</source>
-        <translation type="vanished">Floating point</translation>
+        <translation>Floating point</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="163"/>
+        <location line="-379"/>
+        <location/>
+        <location line="+0"/>
         <source>Apply filter</source>
         <translation>Apply filter</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="164"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Delete filter</source>
         <translation>Delete filter</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+21"/>
+        <location/>
+        <location line="+0"/>
         <source>Uniform</source>
         <translation>Uniform</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Gaussian</source>
         <translation>Gaussian</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Prewitt</source>
         <translation>Prewitt</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Roberts</source>
         <translation>Roberts</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Sobel</source>
         <translation>Sobel</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>SquareLaplacien</source>
         <translation>SquareLaplacien</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="339"/>
+        <location line="+134"/>
+        <location line="+0"/>
+        <source>Error!</source>
+        <translation>Error!</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>Filter application is impossible.</source>
+        <translation>Could not apply filter.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Filter selection is empty, please select a filter.</source>
+        <translation>No filter selected, please select a filter.</translation>
+    </message>
+    <message>
+        <location line="+56"/>
+        <location/>
+        <location line="+0"/>
         <source>Warning!</source>
         <translation>Warning!</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="339"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>This filter will be permanently deleted ?</source>
         <translation>This filter will be permanently deleted !</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="340"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Do you want to continue?</source>
         <translation>Do you want to continue?</translation>
     </message>
+    <message>
+        <location line="-345"/>
+        <source>Standard filter</source>
+        <translation>Standard filter</translation>
+    </message>
 </context>
 <context>
     <name>filtrme::FilterEditor</name>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="69"/>
         <source>Name:</source>
         <translation>Name:</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="72"/>
+        <location filename="Widgets/FilterEditor.cpp" line="+76"/>
+        <location line="+0"/>
+        <source>Filter file:</source>
+        <translation>Filter file:</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Select a filter file:</source>
+        <translation>Select a filter file:</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>No XML file selected!</source>
+        <translation>No XML file selected!</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <location line="+0"/>
+        <source>Name of your filter:</source>
+        <translation>Name of your filter:</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <location/>
+        <location line="+0"/>
         <source>Number of filters:</source>
         <translation>Number of filters:</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="105"/>
+        <location line="+17"/>
+        <location line="+0"/>
+        <source>You need to select a file and a name for your filter to save it</source>
+        <translation>You need to select a file and a name for your filter to save it</translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <location/>
+        <location line="+0"/>
         <source>FilterEditor</source>
         <translation>Filter editor</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="117"/>
-        <location filename="Widgets/FilterEditor.cpp" line="240"/>
+        <location line="+13"/>
+        <location line="+0"/>
+        <source>Chose a file filter</source>
+        <translation>Chose a file filter</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>XML Files (*.xml)</source>
+        <translation>XML Files (*.xml)</translation>
+    </message>
+    <message>
+        <location line="+21"/>
+        <location/>
+        <location line="+0"/>
+        <location line="+8"/>
+        <location line="+134"/>
         <source>Error!</source>
         <translation>Error!</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="117"/>
+        <location line="-142"/>
+        <location line="+0"/>
+        <source>Your filter needs a valid name to be saved (no whitespace).</source>
+        <translation>Your filter needs a valid name to be saved (no whitespace).</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <location line="+0"/>
+        <source>Your file needs .xml format.</source>
+        <translation>Your file needs .xml format.</translation>
+    </message>
+    <message>
+        <location line="+55"/>
+        <location line="+0"/>
+        <source>This filter name is already used.</source>
+        <translation>This filter name is already used.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Do you want to overwrite it?</source>
+        <translation>Do you want to overwrite it?</translation>
+    </message>
+    <message>
+        <location line="+78"/>
+        <location line="+0"/>
+        <source>Every square has to be filled with an integer.</source>
+        <translation>Every square has to be filled with an integer.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Filter %1 is not a valid filter.</source>
+        <translation>Filter %1 is not a valid filter.</translation>
+    </message>
+    <message>
         <source>Your filter has to have a name to be saved.</source>
         <translation>Your filter has to have a name to be saved.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="166"/>
-        <location filename="Widgets/FilterEditor.cpp" line="254"/>
+        <location line="-80"/>
+        <location/>
+        <location line="+0"/>
+        <location line="+98"/>
         <source>Warning!</source>
         <translation>Warning!</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="166"/>
         <source>This filter name is already use.</source>
         <translation>This filter name is already use.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="167"/>
         <source>Do you want to replace it?</source>
         <translation>Do you want to replace it?</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="240"/>
         <source>Every square have to be completed by int value.</source>
         <translation>Every square have to be completed by int value.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="241"/>
         <source>Filter %1 isn&apos;t ok.</source>
         <translation>Filter %1 isn&apos;t ok.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="254"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Unsaved changes will be lost.</source>
         <translation>Unsaved changes will be lost.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="255"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Do you want to continue?</source>
         <translation>Do you want to continue?</translation>
     </message>
@@ -2507,12 +2604,16 @@ Le debit vaut : %5.2f
 <context>
     <name>filtrme::FilterEditorItem</name>
     <message>
-        <location filename="Widgets/FilterEditorItem.cpp" line="80"/>
+        <location filename="Widgets/FilterEditorItem.cpp" line="+85"/>
+        <location/>
+        <location line="+0"/>
         <source>Width:</source>
         <translation>Width:</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditorItem.cpp" line="83"/>
+        <location line="+3"/>
+        <location/>
+        <location line="+0"/>
         <source>Height:</source>
         <translation>Height:</translation>
     </message>
@@ -2520,805 +2621,108 @@ Le debit vaut : %5.2f
 <context>
     <name>filtrme::FilteringService</name>
     <message>
-        <location filename="Services/FilteringService.cpp" line="40"/>
+        <location filename="Services/FilteringService.cpp" line="+1"/>
         <source>&amp;Apply filter</source>
         <translation>&amp;Apply filter</translation>
     </message>
     <message>
-        <location filename="Services/FilteringService.cpp" line="42"/>
+        <location line="+2"/>
         <source>&amp;Edit filters</source>
         <translation>&amp;Edit filters</translation>
     </message>
 </context>
-<context>
-    <name>genericinterface::ColumnView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="28"/>
-        <source>Column Profile for column number %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="29"/>
-        <source>Pixel Value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="30"/>
-        <source>Line number</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ColumnWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnWindow.cpp" line="28"/>
-        <source>Column profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>genericinterface::DoubleImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="77"/>
-        <source>Disable Offset</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="84"/>
-        <source>Offset (127)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="87"/>
-        <source>Crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="88"/>
-        <source>Copy &amp; crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="89"/>
-        <source>Convert to Rgb Image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="117"/>
-        <source>Selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="126"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="141"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="236"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="264"/>
         <source>Color</source>
-        <translation type="unfinished">Color</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="132"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="193"/>
-        <source>Pixels Grid</source>
-        <translation type="unfinished"></translation>
+        <translation>Color</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::FileService</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="43"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="93"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="98"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="44"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="75"/>
-        <source>&amp;Open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="49"/>
-        <source>Save &amp;As</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="55"/>
-        <source>&amp;Copy</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="80"/>
-        <source>Language</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="200"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="200"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="234"/>
-        <source>&amp;%1 %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="254"/>
         <source>Open a file</source>
-        <translation type="unfinished">Open a file</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="254"/>
-        <source>Supported image (*.png *.bmp *.jpg *.jpeg *.vff);; PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="273"/>
-        <source>Change current language</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="274"/>
-        <source>The current language will be modified at next startup. Would you like to restart now?</source>
-        <translation type="unfinished"></translation>
+        <translation>Open a file</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::GenericHistogramView</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="129"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="134"/>
-        <source>Number of specimen</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="135"/>
-        <source>Pixel value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="195"/>
         <source>Black</source>
-        <translation type="unfinished">Black</translation>
+        <translation>Black</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="197"/>
         <source>Red</source>
-        <translation type="unfinished">Red</translation>
+        <translation>Red</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="201"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="209"/>
         <source>Alpha</source>
-        <translation type="unfinished">Alpha</translation>
+        <translation>Alpha</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="203"/>
         <source>Green</source>
-        <translation type="unfinished">Green</translation>
+        <translation>Green</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="206"/>
         <source>Blue</source>
-        <translation type="unfinished">Blue</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="212"/>
-        <source>Channel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::GenericHistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="78"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="228"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="83"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="233"/>
-        <source>Value 1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="88"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="238"/>
-        <source>Value 2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="94"/>
-        <source>Save As Image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="161"/>
-        <source>Bad object type</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="161"/>
-        <source>Only images can be saved to a file.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="166"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="181"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="181"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="246"/>
-        <source>C: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="247"/>
-        <source>C: %1, A: %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="248"/>
-        <source>R: %1, G: %2, B: %3</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="249"/>
-        <source>R: %1, G: %2, B: %3, A: %4</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::GenericInterface</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="56"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="236"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="237"/>
-        <source>&amp;Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="56"/>
-        <source>&amp;About</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="88"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="188"/>
-        <source>Interface&apos;s integrity compromised</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="89"/>
-        <source>An error occurred in the addition of a new service. The interface may not offer all the expected features. See the log file for more informations.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="189"/>
-        <source>An error occurred in the addition of a service. The interface may not offer all the expected features. See the log file for more informations.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="233"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="234"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="283"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="284"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="284"/>
-        <source>&amp;Exit</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::HistogramView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="30"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="41"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="33"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="44"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::HistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="29"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="40"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="32"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="43"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
+        <translation>Blue</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::ImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="86"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="186"/>
-        <source>Save As</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="89"/>
-        <source>Zoom + (Ctrl+Scroll Wheel)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="90"/>
-        <source>Zoom - (Ctrl+Scroll Wheel)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="92"/>
-        <source>Rename</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="94"/>
-        <source>Apply mask</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="96"/>
-        <source>Copy image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="131"/>
         <source>Image</source>
-        <translation type="unfinished">Image</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="142"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="412"/>
-        <source>Zoom</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="148"/>
-        <source>Selection mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="155"/>
-        <source>Hand mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="163"/>
-        <source>Select all</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="171"/>
-        <source>Zoom +</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="179"/>
-        <source>Zoom -</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="328"/>
-        <source>Bad object type</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="328"/>
-        <source>Only images can be saved to a file.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="333"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="347"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="347"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="442"/>
-        <source>Rename image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="443"/>
-        <source>New name:</source>
-        <translation type="unfinished"></translation>
+        <translation>Image</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::MorphoMatService</name>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="58"/>
+        <location filename="Services/MorphoMatService.cpp" line="+58"/>
         <source>&amp;Erosion</source>
         <translation>&amp;Erosion</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="59"/>
+        <location line="+1"/>
         <source>&amp;Dilatation</source>
         <translation>&amp;Dilatation</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="60"/>
+        <location line="+1"/>
         <source>&amp;Opening</source>
         <translation>&amp;Opening</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="61"/>
+        <location line="+1"/>
         <source>&amp;Closing</source>
         <translation>&amp;Closing</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="62"/>
+        <location line="+1"/>
         <source>&amp;Gradient</source>
         <translation>&amp;Gradient</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="63"/>
+        <location line="+1"/>
         <source>&amp;White top hat</source>
         <translation>&amp;White top hat</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="64"/>
+        <location line="+1"/>
         <source>&amp;Black top hat</source>
         <translation>&amp;Black top hat</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="66"/>
+        <location line="+2"/>
         <source>&amp;Structuring element</source>
         <translation>&amp;Structuring element</translation>
     </message>
 </context>
-<context>
-    <name>genericinterface::NavigationDock</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/NavBar/NavigationDock.cpp" line="45"/>
-        <source>Close all image from the selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ProjectionHistogramView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="29"/>
-        <source>Horizontal Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="30"/>
-        <source>Line number</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="33"/>
-        <source>Vertical Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="34"/>
-        <source>Column number</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="37"/>
-        <source>Number of pixels &gt;= %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ProjectionHistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramWindow.cpp" line="29"/>
-        <source>Horizontal Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramWindow.cpp" line="31"/>
-        <source>Vertical Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RadioPanel</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="60"/>
-        <source>R</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="61"/>
-        <source>G</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="62"/>
-        <source>B</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RowView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="28"/>
-        <source>Line Profile for line number %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="29"/>
-        <source>Pixel Value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="30"/>
-        <source>Column number</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RowWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowWindow.cpp" line="28"/>
-        <source>Row profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::SelectionWidget</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="43"/>
-        <source>Selection : </source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="44"/>
-        <source>x:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="46"/>
-        <source>y:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="48"/>
-        <source>width:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="50"/>
-        <source>height:</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>genericinterface::StandardImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="47"/>
-        <source>Unknown file format !</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="59"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="63"/>
-        <source>Error while opening file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="102"/>
-        <source>Crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="103"/>
-        <source>Copy &amp; crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="105"/>
-        <source>Convert to grayscale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="106"/>
-        <source>Convert to binary</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="108"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="109"/>
-        <source>Column Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="110"/>
-        <source>Line Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="138"/>
-        <source>Selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="147"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="162"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="287"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="302"/>
         <source>Color</source>
-        <translation type="unfinished">Color</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="153"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="200"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="212"/>
-        <source>Threshold selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="200"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="212"/>
-        <source>Enter the threshold value
-(only pixels superior or equal to this value will be counted)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="224"/>
-        <source>Line selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="224"/>
-        <source>Select the line to project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="237"/>
-        <source>Column selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="237"/>
-        <source>Select the column to project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="249"/>
-        <source>Pixels Grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::UtilityService</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="30"/>
-        <source>&amp;Show</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="31"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="32"/>
-        <source>Horizontal projection histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="33"/>
-        <source>Vertical projection histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="34"/>
-        <source>Pixels grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::WindowService</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="43"/>
-        <source>Images</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="46"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="52"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="46"/>
-        <source>&amp;Tile windows</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="52"/>
-        <source>&amp;Cascade windows</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="348"/>
-        <source>Attention</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="348"/>
-        <source>You&apos;re going to close all the relative windows, are you sure you want to continue ?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="500"/>
-        <source>Mask to apply : </source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="564"/>
-        <source> - masked</source>
-        <translation type="unfinished"></translation>
+        <translation>Color</translation>
     </message>
 </context>
 </TS>
diff --git a/app/imageinsa_fr.qm b/app/imageinsa_fr.qm
new file mode 100644
index 0000000000000000000000000000000000000000..78c9a21026d1bb06f6c44691e7b0b202e418f62c
GIT binary patch
literal 48005
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

literal 0
HcmV?d00001

diff --git a/app/imageinsa_fr.ts b/app/imageinsa_fr.ts
index 23ddda8..09a52d6 100644
--- a/app/imageinsa_fr.ts
+++ b/app/imageinsa_fr.ts
@@ -4,77 +4,49 @@
 <context>
     <name></name>
     <message>
-        <location filename="main.cpp" line="128"/>
+        <location filename="main.cpp" line="+128"/>
         <source>&amp;Image</source>
         <oldsource>Image</oldsource>
         <translation>&amp;Image</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="146"/>
+        <location line="+18"/>
         <source>&amp;Tools</source>
         <oldsource>Tools</oldsource>
         <translation>Ou&amp;tils</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="159"/>
+        <location line="+13"/>
         <source>&amp;Encoding</source>
         <oldsource>Encoding</oldsource>
         <translation>&amp;Encodage</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="167"/>
+        <location line="+8"/>
         <source>Transforms</source>
         <translation>Transformées</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="175"/>
+        <location line="+8"/>
         <source>Analysis</source>
         <translation>Analyse</translation>
     </message>
     <message>
-        <location filename="main.cpp" line="184"/>
-        <location filename="Services/FilteringService.cpp" line="39"/>
+        <location line="+9"/>
+        <location filename="Services/FilteringService.cpp" line="+37"/>
         <source>Filtering</source>
         <translation>Filtrage</translation>
     </message>
 </context>
-<context>
-    <name>AboutDialog</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="27"/>
-        <source>About</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="31"/>
-        <source>This software has been developed at Insa.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="35"/>
-        <source>Main authors:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="45"/>
-        <source>Contributors:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/AboutDialog.cpp" line="49"/>
-        <source>Compiled on %1 at %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>BFlit</name>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="59"/>
+        <location filename="Operations/BFlitOp.cpp" line="+59"/>
         <source>Number of point on each side : </source>
         <translation>Nombre de points de chaque côté : </translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>Number of iteration : </source>
         <translation>Nombre d&apos;itérations : </translation>
     </message>
@@ -82,7 +54,7 @@
 <context>
     <name>CenterOp</name>
     <message>
-        <location filename="Operations/CenterOp.cpp" line="72"/>
+        <location filename="Operations/CenterOp.cpp" line="+72"/>
         <source>centered</source>
         <oldsource> - centered</oldsource>
         <translation>centrée</translation>
@@ -91,19 +63,19 @@
 <context>
     <name>ClassAnalysis</name>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="60"/>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="79"/>
+        <location filename="Operations/ClassAnalysisOp.cpp" line="+60"/>
+        <location line="+19"/>
         <source>mean</source>
         <translation>moyenne</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="61"/>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="80"/>
+        <location line="-18"/>
+        <location line="+19"/>
         <source>standard deviation</source>
         <translation>écart-type</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="78"/>
+        <location line="-2"/>
         <source>classified</source>
         <translation>classifiée</translation>
     </message>
@@ -111,55 +83,47 @@
 <context>
     <name>ClassAnalysisDialog</name>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="14"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="118"/>
+        <location filename="Operations/ClassAnalysisDialog.ui" line="+14"/>
         <source>Class analysis</source>
         <translation>Classification</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="22"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="119"/>
+        <location line="+8"/>
         <source>Step : </source>
         <translation>Étape : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="35"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="123"/>
+        <location line="+13"/>
         <source>Classification step</source>
         <translation>Étape de classification</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="30"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="122"/>
+        <location line="-5"/>
         <source>Learning step</source>
         <translation>Étape d&apos;apprentissage</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="40"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="124"/>
+        <location line="+10"/>
         <source>Print file info</source>
         <translation>Afficher les info. du fichier</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="48"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="126"/>
+        <location line="+8"/>
         <source>Window size : </source>
         <translation>Taille de la fenêtre : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="71"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="127"/>
+        <location line="+23"/>
         <source>File : </source>
         <translation>Fichier : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.ui" line="83"/>
-        <location filename="../build/app/ui_ClassAnalysisDialog.h" line="128"/>
+        <location line="+12"/>
         <source>browse</source>
         <translation>parcourir</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisDialog.cpp" line="35"/>
+        <location filename="Operations/ClassAnalysisDialog.cpp" line="+35"/>
         <source>Please select the image&apos;s area to classify :</source>
         <translation>Veuillez sélectionner les zones de l&apos;image à classifier : </translation>
     </message>
@@ -167,7 +131,7 @@
 <context>
     <name>ClassResult</name>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="81"/>
+        <location filename="Operations/ClassResultOp.cpp" line="+81"/>
         <source>
 Nombre de classes = %1 </source>
         <oldsource>
@@ -177,14 +141,14 @@ Nombre de classes = %1
 Nombre de classes = %1 </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="85"/>
+        <location line="+4"/>
         <source>Valeur de la classe %1 = %2</source>
         <oldsource>Valeur de la classe %1 = %2
 </oldsource>
         <translation>Valeur de la classe %1 = %2</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="80"/>
+        <location line="-5"/>
         <source>Voici les résultats du classement : 
 </source>
         <oldsource>Voici les résultats du classement : 
@@ -193,48 +157,48 @@ Nombre de classes = %1 </translation>
 </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="58"/>
+        <location line="-22"/>
         <source>Critère de zone intérieure : </source>
         <oldsource>Critère de zone intérieure : </oldsource>
         <translation>Critère de zone intérieure : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="59"/>
+        <location line="+1"/>
         <source>Critère de zone frontière : </source>
         <oldsource>Critère de zone frontière : </oldsource>
         <translation>Critère de zone frontière : </translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>&lt;b&gt;Critère de zones (relatifs aux zones totales) : &lt;/b&gt;</source>
         <oldsource>&lt;b&gt;Critère de zones (relatifs aux zones totales) : &lt;/b&gt;</oldsource>
         <translation>&lt;b&gt;Critère de zones (relatifs aux zones totales) : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="62"/>
+        <location line="+2"/>
         <source>&lt;b&gt;Select the image&apos;s classes zones : &lt;/b&gt;</source>
         <translation>&lt;b&gt;Sélectionner les zones des classes de l&apos;image : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="121"/>
+        <location line="+59"/>
         <source>Le taux de bon classement en zone intérieure %1 vaut: %2%</source>
         <oldsource>Le taux de bon classement en zone intérieure %1 vaut: %2%</oldsource>
         <translation>Le taux de bon classement en zone intérieure %1 vaut : %2%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="124"/>
+        <location line="+3"/>
         <source>Le taux de bon classement en zone frontière %1 vaut: %2%</source>
         <oldsource>Le taux de bon classement en zone frontière %1 vaut: %2%</oldsource>
         <translation>Le taux de bon classement en zone frontière %1 vaut : %2%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="135"/>
+        <location line="+11"/>
         <source>Le taux de bon classement en zone intérieure globale vaut: %1%</source>
         <oldsource>Le taux de bon classement en zone intérieure globale vaut: %1%</oldsource>
         <translation>Le taux de bon classement en zone intérieure globale vaut : %1%</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="136"/>
+        <location line="+1"/>
         <source>Le taux de bon classement en zone frontière globale vaut: %1%</source>
         <oldsource>Le taux de bon classement en zone frontière globale vaut: %1%</oldsource>
         <translation>Le taux de bon classement en zone frontière globale vaut : %1%</translation>
@@ -243,32 +207,32 @@ Nombre de classes = %1 </translation>
 <context>
     <name>Color</name>
     <message>
-        <location filename="Tools.h" line="36"/>
+        <location filename="Tools.h" line="+36"/>
         <source>Black</source>
         <translation>Noir</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="37"/>
+        <location line="+1"/>
         <source>Alpha</source>
         <translation>Alpha</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+1"/>
         <source>Red</source>
         <translation>Rouge</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Green</source>
         <translation>Vert</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Blue</source>
         <translation>Bleu</translation>
     </message>
     <message>
-        <location filename="Tools.h" line="38"/>
+        <location line="+0"/>
         <source>Color</source>
         <translation>Couleur</translation>
     </message>
@@ -276,80 +240,67 @@ Nombre de classes = %1 </translation>
 <context>
     <name>ColorDialog</name>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="14"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="222"/>
+        <location filename="Operations/ColorDialog.ui" line="+14"/>
         <source>RGB image generator</source>
         <translation>Générateur d&apos;image RVB</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="20"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="223"/>
+        <location line="+6"/>
         <source>Image size</source>
         <translation>Taille de l&apos;image</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="26"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="224"/>
+        <location line="+6"/>
         <source>Width : </source>
         <translation>Largeur : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="40"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="225"/>
+        <location line="+14"/>
         <source>Height : </source>
         <translation>Hauteur : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="57"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="226"/>
+        <location line="+17"/>
         <source>Mode</source>
         <translation>Mode</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="63"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="227"/>
+        <location line="+6"/>
         <source>RGB</source>
         <translation>RVB</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="73"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="228"/>
+        <location line="+10"/>
         <source>HSV</source>
         <translation>TSV</translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="86"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="229"/>
+        <location line="+13"/>
         <source>Red : </source>
         <translation>Rouge : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="100"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="230"/>
+        <location line="+14"/>
         <source>Green : </source>
         <translation>Vert : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="114"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="231"/>
+        <location line="+14"/>
         <source>Blue : </source>
         <translation>Bleu : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="147"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="232"/>
+        <location line="+33"/>
         <source>Saturation : </source>
         <translation>Saturation : </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="161"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="233"/>
+        <location line="+14"/>
         <source>Value : </source>
         <translation>Valeur :  </translation>
     </message>
     <message>
-        <location filename="Operations/ColorDialog.ui" line="175"/>
-        <location filename="../build/app/ui_ColorDialog.h" line="234"/>
+        <location line="+14"/>
         <source>Hue : </source>
         <translation>Teinte : </translation>
     </message>
@@ -358,80 +309,84 @@ Nombre de classes = %1 </translation>
     <name>CombineColorOp</name>
     <message>
         <source>Reconstructed color image</source>
-        <translation type="vanished">Image couleur reconstituée</translation>
+        <translation>Image couleur reconstituée</translation>
     </message>
     <message>
-        <location filename="Operations/CombineColorOp.cpp" line="95"/>
+        <location filename="Operations/CombineColorOp.cpp" line="+95"/>
         <source>Reconstructed Color image</source>
-        <translation type="unfinished"></translation>
+        <translation>Image couleur reconstituée</translation>
     </message>
 </context>
 <context>
     <name>CombineHsvOp</name>
     <message>
         <source>Reconstructed image</source>
-        <translation type="vanished">Image reconstituée</translation>
+        <translation>Image reconstituée</translation>
     </message>
     <message>
-        <location filename="Operations/CombineHsvOp.cpp" line="101"/>
+        <source>Reconstructed color image</source>
+        <translation>Image couleur reconstituée</translation>
+    </message>
+    <message>
+        <location filename="Operations/CombineHsvOp.cpp" line="+101"/>
         <source>Reconstructed  image</source>
-        <translation type="unfinished"></translation>
+        <translation>Image reconstituée</translation>
     </message>
 </context>
 <context>
     <name>CroissanceOp</name>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="59"/>
+        <location filename="Operations/CroissanceOp.cpp" line="+59"/>
         <source>At origin</source>
         <translation>A l&apos;origine</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="60"/>
+        <location line="+1"/>
         <source>Point of lowest luminance</source>
         <translation>Point de luminance minimale</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="62"/>
+        <location line="+2"/>
         <source>| current - mean | &lt; threshold</source>
         <translation>| actuel - moyenne | &lt; seuil</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="63"/>
+        <location line="+1"/>
         <source>| current - initial | &lt; threshold</source>
         <translation>| actuel - initial | &lt; seuil</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="66"/>
+        <location line="+3"/>
         <source>Threshold : </source>
         <translation>Seuil : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="67"/>
+        <location line="+1"/>
         <source>Initial germ : </source>
         <translation>Germe initial : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Stopping point : </source>
         <translation>Point d&apos;arrêt : </translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="101"/>
+        <location line="+43"/>
         <source>Luminance</source>
         <translation>Luminance</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="102"/>
+        <location line="+1"/>
         <source>Color</source>
         <translation>Couleur</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="103"/>
+        <location line="+1"/>
         <source>Total number of area : %1</source>
-        <translation>Nombre total de zone : %1</translation>
+        <translation>Nombre total de zones : %1</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="104"/>
+        <location line="+1"/>
         <source>Mean number of point per area : %1</source>
         <translation>Nombre moyen de points par zone : %1</translation>
     </message>
@@ -439,12 +394,12 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DCT</name>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="57"/>
+        <location filename="Operations/DCTOp.cpp" line="+57"/>
         <source>DCT</source>
         <translation>DCT</translation>
     </message>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="58"/>
+        <location line="+1"/>
         <source>inverse DCT</source>
         <translation>DCT inverse</translation>
     </message>
@@ -452,44 +407,37 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DCTDialog</name>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="14"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="172"/>
+        <location filename="Operations/DCTDialog.ui" line="+14"/>
         <source>DCT encoding</source>
         <translation>DCT avec encodage</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="20"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="173"/>
+        <location line="+6"/>
         <source>Encoding mode &amp;&amp; associated parameters</source>
         <translation>Mode d&apos;encodage &amp;&amp; paramètres associés</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="26"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="174"/>
+        <location line="+6"/>
         <source>Coefficients truncation</source>
         <translation>Troncature des coefficients</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="60"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="175"/>
+        <location line="+34"/>
         <source>Truncation limit : </source>
         <translation>Limite de troncature : </translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="79"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="176"/>
+        <location line="+19"/>
         <source>Bit allocation matrice</source>
         <translation>Matrice d&apos;allocation de bits</translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="104"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="177"/>
+        <location line="+25"/>
         <source>Initial number of bits : </source>
         <translation>Nombre de bits initial : </translation>
     </message>
     <message>
-        <location filename="Operations/DCTDialog.ui" line="141"/>
-        <location filename="../build/app/ui_DCTDialog.h" line="178"/>
+        <location line="+37"/>
         <source>Slope value : </source>
         <translation>Valeur de la pente : </translation>
     </message>
@@ -497,7 +445,7 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DMM</name>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="194"/>
+        <location filename="Operations/DMMOp.cpp" line="+194"/>
         <source>DMM error</source>
         <translation>DMM (erreur)</translation>
     </message>
@@ -505,42 +453,42 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DMMDialog</name>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="279"/>
+        <location filename="Operations/DMMDialog.cpp" line="+44"/>
+        <location line="+235"/>
         <source>Erosion</source>
         <translation>Erosion</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="276"/>
+        <location line="-235"/>
+        <location line="+232"/>
         <source>Dilatation</source>
         <translation>Dilatation</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="282"/>
+        <location line="-232"/>
+        <location line="+238"/>
         <source>Opening</source>
         <translation>Ouverture</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="285"/>
+        <location line="-238"/>
+        <location line="+241"/>
         <source>Closing</source>
         <translation>Fermeture</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="44"/>
-        <location filename="Operations/DMMDialog.cpp" line="46"/>
+        <location line="-241"/>
+        <location line="+2"/>
         <source>DMM</source>
         <translation>DMM</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="62"/>
+        <location line="+16"/>
         <source>Structuring element</source>
         <translation>Elément structurant</translation>
     </message>
     <message>
-        <location filename="Operations/DMMDialog.cpp" line="128"/>
+        <location line="+66"/>
         <source>Validate</source>
         <translation>Valider</translation>
     </message>
@@ -548,27 +496,27 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DMMOp</name>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="56"/>
+        <location filename="Operations/DMMOp.cpp" line="-138"/>
         <source>DMM (dilatation)</source>
         <translation>DMM (dilatation)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="62"/>
+        <location line="+6"/>
         <source>DMM (erosion)</source>
         <translation>DMM (erosion)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="68"/>
+        <location line="+6"/>
         <source>DMM (opening)</source>
         <translation>DMM (opening)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="74"/>
+        <location line="+6"/>
         <source>DMM (closing)</source>
         <translation>DMM (closing)</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="192"/>
+        <location line="+118"/>
         <source>DMM component #%1</source>
         <translation>DMM (composante %1)</translation>
     </message>
@@ -576,116 +524,117 @@ Nombre de classes = %1 </translation>
 <context>
     <name>DPCM</name>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="53"/>
+        <location filename="Operations/DPCMEncodingOp.cpp" line="+53"/>
         <source>Error while loading quantification file</source>
         <translation>Erreur lors du chargement du fichier de quantification</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="54"/>
+        <location line="+1"/>
         <source>The specified quantification file could not be opened !</source>
         <translation>Le fichier de quantification spécifié n&apos;a pas pu être ouvert !</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="65"/>
+        <location line="+11"/>
         <source>Prediction error image</source>
         <translation>Image d&apos;erreur de prédiction</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="66"/>
+        <location line="+1"/>
         <source>Quantized prediction error image</source>
         <translation>Image d&apos;erreur de prédiction quantifiée</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="69"/>
+        <location line="+3"/>
         <source>Coding error image</source>
         <translation>Image d&apos;erreur de codage</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="67"/>
+        <location line="-2"/>
         <source>Prediction image</source>
         <translation>Image de prédiction</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Reconstructed image</source>
         <translation>Image reconstruite</translation>
     </message>
+    <message>
+        <source>\nL&apos;entropie de l&apos;image d&apos;erreur de prediction vaut : %lf\n</source>
+        <translation>\nL&apos;entropie de l&apos;image d&apos;erreur de prédiction vaut : %lf\n</translation>
+    </message>
+    <message>
+        <source>\nL&apos;entropie de l&apos;image d&apos;erreur de prediction quantifiee vaut : %lf\n</source>
+        <translation>\nL&apos;entropie de l&apos;image d&apos;erreur de prédiction quantifiée vaut : %lf\n</translation>
+    </message>
+    <message>
+        <source>seuils de decision --------------- niveaux de reconstruction\n</source>
+        <translation>seuils de decision --------------- niveaux de reconstruction\n</translation>
+    </message>
 </context>
 <context>
     <name>DPCMDialog</name>
     <message>
-        <location filename="Operations/DPCMDialog.cpp" line="39"/>
+        <location filename="Operations/DPCMDialog.cpp" line="+39"/>
         <source>Open file</source>
         <translation>Ouvrir un fichier</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.cpp" line="39"/>
+        <location line="+0"/>
         <source>Loi de quantification (*.loi)</source>
         <translation>Loi de quantification (*.loi)</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="14"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="209"/>
+        <location filename="Operations/DPCMDialog.ui" line="+14"/>
         <source>DPCM encoding</source>
         <translation>Encodage MICD</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="35"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="211"/>
+        <location line="+21"/>
         <source>Predictor P(X)</source>
         <translation>Prédicteur P(X)</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="41"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="212"/>
+        <location line="+6"/>
         <source>A</source>
         <translation>A</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="51"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="213"/>
+        <location line="+10"/>
         <source>C</source>
         <translation>C</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="58"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="214"/>
+        <location line="+7"/>
         <source>( A + C ) / 2</source>
         <translation>( A + C ) / 2</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="65"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="215"/>
+        <location line="+7"/>
         <source>Modified Graham&apos;s</source>
         <translation>Graham modifié</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="74"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="216"/>
+        <location line="+9"/>
         <source>Q = </source>
         <translation>Q = </translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="115"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="217"/>
+        <location line="+41"/>
         <source>Quantifier</source>
         <translation>Quantifieur</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="121"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="218"/>
+        <location line="+6"/>
         <source>Quantification file :</source>
         <translation>Fichier de quantification : </translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="141"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="219"/>
+        <location line="+20"/>
         <source>Browse</source>
         <translation>Parcourir</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMDialog.ui" line="169"/>
-        <location filename="../build/app/ui_DPCMDialog.h" line="220"/>
+        <location line="+28"/>
         <source>Open quantification editor</source>
         <translation>Ouvrir l&apos;éditeur de quantification</translation>
     </message>
@@ -693,32 +642,27 @@ Nombre de classes = %1 </translation>
 <context>
     <name>FFTDialog</name>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="14"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="92"/>
+        <location filename="Operations/FFTDialog.ui" line="+14"/>
         <source>Dialog</source>
         <translation>Dialog</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="20"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="93"/>
+        <location line="+6"/>
         <source>Résultat :</source>
         <translation>Résultat :</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="28"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="94"/>
+        <location line="+8"/>
         <source>Magnitude + Phase</source>
         <translation>Amplitude + Phase</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="38"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="95"/>
+        <location line="+10"/>
         <source>Real + Imaginary</source>
         <translation>Réel + Imaginaire</translation>
     </message>
     <message>
-        <location filename="Operations/FFTDialog.ui" line="47"/>
-        <location filename="../build/app/ui_FFTDialog.h" line="96"/>
+        <location line="+9"/>
         <source>Centered transform</source>
         <translation>Transformée centrée</translation>
     </message>
@@ -726,12 +670,12 @@ Nombre de classes = %1 </translation>
 <context>
     <name>FFTOp</name>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="96"/>
+        <location filename="Operations/FFTOp.cpp" line="+96"/>
         <source>DFT (phase)</source>
         <translation>DFT (phase)</translation>
     </message>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="97"/>
+        <location line="+1"/>
         <source>DFT (magnitude)</source>
         <translation>DFT (magnitude)</translation>
     </message>
@@ -739,19 +683,19 @@ Nombre de classes = %1 </translation>
 <context>
     <name>FlipOp</name>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location filename="Operations/FlipOp.cpp" line="+30"/>
+        <location line="+32"/>
         <source>horizontal</source>
         <translation>horizontale</translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location line="-32"/>
+        <location line="+32"/>
         <source>vertical</source>
         <translation>verticale</translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="62"/>
+        <location line="+0"/>
         <source>flipped %1</source>
         <translation>symétrie %1</translation>
     </message>
@@ -759,7 +703,7 @@ Nombre de classes = %1 </translation>
 <context>
     <name>Hadamard</name>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="55"/>
+        <location filename="Operations/HadamardOp.cpp" line="+55"/>
         <source>Transform : </source>
         <translation>Transformation :</translation>
     </message>
@@ -767,32 +711,32 @@ Nombre de classes = %1 </translation>
 <context>
     <name>HistogramOp</name>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="42"/>
+        <location filename="Operations/HistogramOp.cpp" line="+42"/>
         <source>Histogram operations</source>
         <translation>Opérations sur histogramme</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="48"/>
+        <location line="+6"/>
         <source>Equalize</source>
         <translation>Egaliser</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="49"/>
+        <location line="+1"/>
         <source>Normalize</source>
         <translation>Normaliser</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="50"/>
+        <location line="+1"/>
         <source>Operation : </source>
         <translation>Opération : </translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="63"/>
+        <location line="+13"/>
         <source>equalized</source>
         <translation>égalisée</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="67"/>
+        <location line="+4"/>
         <source>normalized</source>
         <translation>normalisée</translation>
     </message>
@@ -800,12 +744,12 @@ Nombre de classes = %1 </translation>
 <context>
     <name>Hough</name>
     <message>
-        <location filename="Operations/HoughOp.cpp" line="56"/>
+        <location filename="Operations/HoughOp.cpp" line="+56"/>
         <source>Hough transform</source>
-        <translation>Transformé de Hough</translation>
+        <translation>Transformée de Hough</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughOp.cpp" line="45"/>
+        <location filename="Operations/InverseHoughOp.cpp" line="+45"/>
         <source>Hough inverse transform</source>
         <translation>Transformée de Hough inverse</translation>
     </message>
@@ -813,38 +757,32 @@ Nombre de classes = %1 </translation>
 <context>
     <name>HoughDialog</name>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="14"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="142"/>
+        <location filename="Operations/HoughDialog.ui" line="+14"/>
         <source>Hough transform</source>
-        <translation>Transformé de Hough</translation>
+        <translation>Transformée de Hough</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="20"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="143"/>
+        <location line="+6"/>
         <source>Method</source>
         <translation>Méthode</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="26"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="144"/>
+        <location line="+6"/>
         <source>Method #1</source>
         <translation>Méthode n°1</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="36"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="145"/>
+        <location line="+10"/>
         <source>Method #2</source>
         <translation>Méthode n°2</translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="57"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="146"/>
+        <location line="+21"/>
         <source>Angle step : </source>
         <translation>Pas pour les angles : </translation>
     </message>
     <message>
-        <location filename="Operations/HoughDialog.ui" line="93"/>
-        <location filename="../build/app/ui_HoughDialog.h" line="147"/>
+        <location line="+36"/>
         <source>Distance step : </source>
         <translation>Pas pour les distances : </translation>
     </message>
@@ -852,42 +790,42 @@ Nombre de classes = %1 </translation>
 <context>
     <name>IFFTOp</name>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="55"/>
+        <location filename="Operations/IFFTOp.cpp" line="+55"/>
         <source>Magnitude/Phase</source>
         <translation>Amplitude/Phase</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="56"/>
+        <location line="+1"/>
         <source>Real/Imaginary</source>
         <translation>Réelle/Imaginaire</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="66"/>
+        <location line="+10"/>
         <source>Magnitude : </source>
         <translation>Amplitude : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="67"/>
+        <location line="+1"/>
         <source>Phase : </source>
         <translation>Phase : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="72"/>
+        <location line="+5"/>
         <source>Real part : </source>
         <translation>Partie réelle : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="73"/>
+        <location line="+1"/>
         <source>Imaginary part : </source>
         <translation>Partie imaginaire : </translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="79"/>
+        <location line="+6"/>
         <source>Source is centered</source>
         <translation>La source est centrée</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="199"/>
+        <location line="+120"/>
         <source>DFT-reconstructed image</source>
         <translation>Image DFT reconstruite</translation>
     </message>
@@ -895,7 +833,7 @@ Nombre de classes = %1 </translation>
 <context>
     <name>ImageINSAService</name>
     <message>
-        <location filename="Services/ImageINSAService.cpp" line="44"/>
+        <location filename="Services/ImageINSAService.cpp" line="+44"/>
         <source>Informations</source>
         <translation>Informations</translation>
     </message>
@@ -903,31 +841,27 @@ Nombre de classes = %1 </translation>
 <context>
     <name>InverseHoughDialog</name>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="14"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="105"/>
+        <location filename="Operations/InverseHoughDialog.ui" line="+14"/>
         <source>Inverse hough transform</source>
         <oldsource>Hough reconstruction</oldsource>
         <translation>Transformée de Hough inverse</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="22"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="106"/>
+        <location line="+8"/>
         <source>Reconstructed image height : </source>
-        <translation type="unfinished"></translation>
+        <translation>Hauteur de l&apos;image reconstituée : </translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="59"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="108"/>
+        <location line="+37"/>
         <source>Reconstructed image width : </source>
-        <translation type="unfinished"></translation>
+        <translation>Largeur de l&apos;image reconstruite : </translation>
     </message>
     <message>
         <source>Reconstructed image size : </source>
-        <translation type="vanished">Taille de l&apos;image reconstruite : </translation>
+        <translation>Taille de l&apos;image reconstruite : </translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughDialog.ui" line="45"/>
-        <location filename="../build/app/ui_InverseHoughDialog.h" line="107"/>
+        <location line="-14"/>
         <source>Reconstruction threshold : </source>
         <translation>Seuil de reconstruction : </translation>
     </message>
@@ -935,57 +869,48 @@ Nombre de classes = %1 </translation>
 <context>
     <name>InversePyramidDialog</name>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="14"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="109"/>
+        <location filename="Operations/InversePyramidDialog.ui" line="+14"/>
         <source>Pyramidal reconstruction</source>
         <oldsource>Pyramid reconstruction</oldsource>
         <translation>Reconstruction pyramidale</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="20"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="110"/>
+        <location line="+6"/>
         <source>Filter : </source>
         <translation>Filtre : </translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="28"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="113"/>
+        <location line="+8"/>
         <source>triangular</source>
         <translation>triangulaire</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="33"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="114"/>
+        <location line="+5"/>
         <source>gaussian</source>
         <translation>gaussien</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="38"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="115"/>
+        <location line="+5"/>
         <source>trimodal</source>
         <translation>trimodal</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="43"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="116"/>
+        <location line="+5"/>
         <source>rectangular</source>
         <translation>rectangulaire</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="48"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="117"/>
+        <location line="+5"/>
         <source>qmf</source>
         <translation>qmf</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="69"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="119"/>
+        <location line="+21"/>
         <source>Number of steps in the pyramid : </source>
         <translation>Nombre d&apos;étages dans la pyramide : </translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidDialog.ui" line="102"/>
-        <location filename="../build/app/ui_InversePyramidDialog.h" line="120"/>
+        <location line="+33"/>
         <source>Step to reconstruct :</source>
         <translation>Étage à reconstruire : </translation>
     </message>
@@ -993,7 +918,7 @@ Nombre de classes = %1 </translation>
 <context>
     <name>MeanSquareErrorOp</name>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="84"/>
+        <location filename="Operations/MeanSquaredErrorOp.cpp" line="+84"/>
         <source>Mean squarred error : %1 (mean error : %2)</source>
         <translation>Erreur quadratique moyenne : %1 (erreur moyenne : %2)</translation>
     </message>
@@ -1001,72 +926,67 @@ Nombre de classes = %1 </translation>
 <context>
     <name>MedianDialog</name>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="14"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="79"/>
+        <location filename="Operations/MedianDialog.ui" line="+14"/>
         <source>Dialog</source>
-        <translation type="unfinished">Dialog</translation>
+        <translation>Fenêtre</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="26"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="80"/>
+        <location line="+12"/>
         <source>Forme</source>
-        <translation type="unfinished"></translation>
+        <translation>Forme</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="38"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="81"/>
+        <location line="+12"/>
         <source>Croix</source>
-        <translation type="unfinished"></translation>
+        <translation>Croix</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="54"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="82"/>
+        <location line="+16"/>
         <source>Carré</source>
-        <translation type="unfinished"></translation>
+        <translation>Carré</translation>
     </message>
     <message>
-        <location filename="Operations/MedianDialog.ui" line="96"/>
-        <location filename="../build/app/ui_MedianDialog.h" line="83"/>
+        <location line="+42"/>
         <source>Taille</source>
-        <translation type="unfinished"></translation>
+        <translation>Taille</translation>
     </message>
 </context>
 <context>
     <name>NoiseOp</name>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="54"/>
+        <location filename="Operations/NoiseOp.cpp" line="+54"/>
         <source>Impulse noise</source>
         <translation>Bruit impulsionnel</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="55"/>
+        <location line="+1"/>
         <source>Gaussian noise</source>
         <translation>Bruit gaussien</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="67"/>
+        <location line="+12"/>
         <source>Mean : </source>
         <translation>Moyenne : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="68"/>
+        <location line="+1"/>
         <source>Standard deviation : </source>
         <translation>Equart type : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="76"/>
+        <location line="+8"/>
         <source>Percent of image : </source>
         <translation>Pourcentage de l&apos;image : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="118"/>
-        <location filename="Operations/NoiseOp.cpp" line="134"/>
+        <location line="+42"/>
+        <location line="+16"/>
         <source>impulse noise</source>
         <translation>bruit impulsionnel</translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="152"/>
-        <location filename="Operations/NoiseOp.cpp" line="161"/>
+        <location line="+18"/>
+        <location line="+9"/>
         <source>gaussian noise</source>
         <translation>bruit gaussien</translation>
     </message>
@@ -1074,124 +994,124 @@ Nombre de classes = %1 </translation>
 <context>
     <name>Operations</name>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="37"/>
+        <location filename="Operations/BFlitOp.cpp" line="-23"/>
         <source>BFilt</source>
         <oldsource>BFlit</oldsource>
         <translation>BFilt</translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="49"/>
-        <location filename="Operations/CombineColorOp.cpp" line="49"/>
-        <location filename="Operations/CombineHsvOp.cpp" line="49"/>
-        <location filename="Operations/IFFTOp.cpp" line="49"/>
-        <location filename="Operations/NoiseOp.cpp" line="49"/>
-        <location filename="Operations/PointOp.cpp" line="116"/>
+        <location line="+12"/>
+        <location filename="Operations/CombineColorOp.cpp" line="-46"/>
+        <location filename="Operations/CombineHsvOp.cpp" line="-52"/>
+        <location filename="Operations/IFFTOp.cpp" line="-150"/>
+        <location filename="Operations/NoiseOp.cpp" line="-112"/>
+        <location filename="Operations/PointOp.cpp" line="+116"/>
         <source>Parameters</source>
         <translation>Paramètres</translation>
     </message>
     <message>
         <source>Magnitude/Phase</source>
-        <translation type="vanished">Amplitude/phase</translation>
+        <translation>Amplitude/phase</translation>
     </message>
     <message>
-        <location filename="Operations/BFlitOp.cpp" line="62"/>
-        <location filename="Operations/NoiseOp.cpp" line="90"/>
-        <location filename="Operations/PointOp.cpp" line="205"/>
-        <location filename="Operations/RandomImgOp.cpp" line="105"/>
+        <location line="+13"/>
+        <location filename="Operations/NoiseOp.cpp" line="+41"/>
+        <location filename="Operations/PointOp.cpp" line="+89"/>
+        <location filename="Operations/RandomImgOp.cpp" line="+105"/>
         <source>Validate</source>
         <translation>Valider</translation>
     </message>
     <message>
-        <location filename="Operations/CombineColorOp.cpp" line="38"/>
+        <location filename="Operations/CombineColorOp.cpp" line="-11"/>
         <source>Combine color planes</source>
         <translation>Combiner les plans RVB</translation>
     </message>
     <message>
-        <location filename="Operations/CombineHsvOp.cpp" line="38"/>
+        <location filename="Operations/CombineHsvOp.cpp" line="-11"/>
         <source>Combine HSV planes</source>
         <translation>Combiner les plans TSV</translation>
     </message>
     <message>
-        <location filename="Operations/CroissanceOp.cpp" line="37"/>
-        <location filename="Operations/CroissanceOp.cpp" line="48"/>
+        <location filename="Operations/CroissanceOp.cpp" line="-77"/>
+        <location line="+11"/>
         <source>Croissance</source>
         <translation>Croissance</translation>
     </message>
     <message>
-        <location filename="Operations/DMMOp.cpp" line="33"/>
+        <location filename="Operations/DMMOp.cpp" line="-159"/>
         <source>DMM</source>
         <translation>DMM</translation>
     </message>
     <message>
-        <location filename="Operations/DoubleEntropyOp.cpp" line="35"/>
+        <location filename="Operations/DoubleEntropyOp.cpp" line="+35"/>
         <source>Calcul d&apos;entropie (image double)</source>
         <translation>Calcul d&apos;entropie (image double)</translation>
     </message>
     <message>
-        <location filename="Operations/DoubleEntropyOp.cpp" line="56"/>
-        <location filename="Operations/EntropyOp.cpp" line="54"/>
+        <location line="+21"/>
+        <location filename="Operations/EntropyOp.cpp" line="+54"/>
         <source>Entropy of the image (sum of channels entropy) = %1</source>
         <translation>Entropie de l&apos;image (somme des entropies des canaux) = %1</translation>
     </message>
     <message>
         <source>Entropy of the image = %1</source>
-        <translation type="vanished">Entropie de l&apos;image = %1</translation>
+        <translation>Entropie de l&apos;image = %1</translation>
     </message>
     <message>
-        <location filename="Operations/FFTOp.cpp" line="28"/>
+        <location filename="Operations/FFTOp.cpp" line="-69"/>
         <source>Fourier transform</source>
         <oldsource>Discrete Fourier transform</oldsource>
         <translation>Transformée de Fourrier</translation>
     </message>
     <message>
-        <location filename="Operations/HistogramOp.cpp" line="32"/>
+        <location filename="Operations/HistogramOp.cpp" line="-35"/>
         <source>Histogram operations</source>
         <translation>Opérations sur histogramme</translation>
     </message>
     <message>
-        <location filename="Operations/HuffmanOp.cpp" line="29"/>
+        <location filename="Operations/HuffmanOp.cpp" line="+29"/>
         <source>Huffman</source>
         <translation>Huffman</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="34"/>
+        <location filename="Operations/MeanSquaredErrorOp.cpp" line="-50"/>
         <source>Mean squared error</source>
         <translation>Erreur quadratique moyenne</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="45"/>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="46"/>
+        <location line="+11"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+46"/>
         <source>Compare to...</source>
         <translation>Comparer à...</translation>
     </message>
     <message>
-        <location filename="Operations/MeanSquaredErrorOp.cpp" line="53"/>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="54"/>
+        <location line="+8"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+8"/>
         <source>Compare %1 to : </source>
         <translation>Comparer %1 à : </translation>
     </message>
     <message>
-        <location filename="Operations/NoiseOp.cpp" line="42"/>
+        <location filename="Operations/NoiseOp.cpp" line="-48"/>
         <source>Add noise</source>
         <translation>Ajouter du bruit</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="44"/>
+        <location filename="Operations/PointOp.cpp" line="-161"/>
         <source>Pixel operations</source>
         <translation>Opération sur les pixels</translation>
     </message>
     <message>
-        <location filename="Operations/PseudoColorOp.cpp" line="28"/>
+        <location filename="Operations/PseudoColorOp.cpp" line="+28"/>
         <source>Pseudo color</source>
         <translation>Pseudo-couleur</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="31"/>
+        <location filename="Operations/QuantificationOp.cpp" line="+31"/>
         <source>Quantification</source>
         <translation>Quantification</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="44"/>
+        <location line="+13"/>
         <source>
 Canal%d : 
 </source>
@@ -1200,229 +1120,229 @@ Canal %d :
 </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="49"/>
+        <location line="+5"/>
         <source>             Valeurs :  </source>
         <translation>             Valeurs :  </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="64"/>
+        <location line="+15"/>
         <source>             Seuils    :       </source>
         <translation>             Seuils    :       </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="140"/>
+        <location line="+76"/>
         <source>Canal : %d           Centroïd : %.2f %          Plus proche voisin : %.2f %
 </source>
         <translation>Canal : %d           Centroïd : %.2f %          Plus proche voisin : %.2f %
 </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationOp.cpp" line="199"/>
+        <location line="+59"/>
         <source>Respect des proprietes du quantificateur optimal : </source>
         <translation>Respect des propriétés du quantificateur optimal : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="37"/>
+        <location filename="Operations/RandomImgOp.cpp" line="-68"/>
         <source>Generate random image</source>
         <translation>Générer une image aléatoire</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="129"/>
-        <location filename="Operations/RandomImgOp.cpp" line="149"/>
+        <location line="+92"/>
+        <location line="+20"/>
         <source>Random image</source>
         <translation>Image aléatoire</translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="36"/>
-        <location filename="Operations/RejectionRingOp.cpp" line="42"/>
+        <location filename="Operations/RejectionRingOp.cpp" line="+36"/>
+        <location line="+6"/>
         <source>Rejection ring</source>
         <translation>Anneau de réjection</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="34"/>
+        <location filename="Operations/RotateOp.cpp" line="+34"/>
         <source>Rotation</source>
         <translation>Rotation</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="42"/>
-        <location filename="Operations/ScalingOp.cpp" line="57"/>
+        <location filename="Operations/ScalingOp.cpp" line="+42"/>
+        <location line="+15"/>
         <source>Scaling</source>
         <translation>Echantillonage</translation>
     </message>
     <message>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="34"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="-20"/>
         <source>Signal-to-noise ratio</source>
         <translation>Rapport signal-bruit</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="39"/>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="145"/>
+        <location filename="Operations/SinusSynthesisOp.cpp" line="+39"/>
+        <location line="+106"/>
         <source>Sinus synthesis</source>
         <translation>Synthèse image sinus</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdOp.cpp" line="11"/>
+        <location filename="Operations/ThresholdOp.cpp" line="+11"/>
         <source>Thresholding</source>
         <translation>Seuillage</translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="12"/>
+        <location filename="Operations/TranslateOp.cpp" line="+12"/>
         <source>Translation</source>
         <translation>Translation</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="33"/>
+        <location filename="Operations/ZeroCrossingOp.cpp" line="+33"/>
         <source>Zero crossing</source>
         <translation>Passages par zéro</translation>
     </message>
     <message>
-        <location filename="Operations/CenterOp.cpp" line="32"/>
+        <location filename="Operations/CenterOp.cpp" line="-40"/>
         <source>Center</source>
         <translation>Centrer</translation>
     </message>
     <message>
-        <location filename="Operations/SplitColorOp.cpp" line="31"/>
+        <location filename="Operations/SplitColorOp.cpp" line="+31"/>
         <source>Split color planes</source>
         <translation>Séparer les plans RVB</translation>
     </message>
     <message>
-        <location filename="Operations/SplitHsvOp.cpp" line="33"/>
+        <location filename="Operations/SplitHsvOp.cpp" line="+33"/>
         <source>Split HSV planes</source>
         <translation>Séparer les plans TSV </translation>
     </message>
     <message>
-        <location filename="Operations/FlipOp.cpp" line="30"/>
+        <location filename="Operations/FlipOp.cpp" line="-32"/>
         <source>Flip %1</source>
         <translation>Symétrie %1</translation>
     </message>
     <message>
-        <location filename="Operations/DCTOp.cpp" line="30"/>
+        <location filename="Operations/DCTOp.cpp" line="-28"/>
         <source>Discrete cosinus transform</source>
         <translation>DCT 16x16 avec réduction des coefficients</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="39"/>
-        <location filename="Operations/HadamardOp.cpp" line="51"/>
+        <location filename="Operations/HadamardOp.cpp" line="-16"/>
+        <location line="+12"/>
         <source>8x8 transforms</source>
         <translation>Transformées 8x8 (Haar, Hadamard, DCT)</translation>
     </message>
     <message>
-        <location filename="Operations/HoughOp.cpp" line="30"/>
+        <location filename="Operations/HoughOp.cpp" line="-26"/>
         <source>Hough transform</source>
         <translation>Transformée de Hough</translation>
     </message>
     <message>
-        <location filename="Operations/InverseHoughOp.cpp" line="28"/>
+        <location filename="Operations/InverseHoughOp.cpp" line="-17"/>
         <source>Inverse Hough transform</source>
         <translation>Transformée de Hough inverse</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="31"/>
+        <location filename="Operations/InversePyramidOp.cpp" line="+31"/>
         <source>Pyramidal reconstruction</source>
         <oldsource>Reconstruct pyramid</oldsource>
         <translation>Reconstruction pyramidale</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="41"/>
-        <location filename="Operations/InversePyramidOp.cpp" line="46"/>
-        <location filename="Operations/PyramidOp.cpp" line="43"/>
-        <location filename="Operations/PyramidOp.cpp" line="48"/>
+        <location line="+10"/>
+        <location line="+5"/>
+        <location filename="Operations/PyramidOp.cpp" line="+43"/>
+        <location line="+5"/>
         <source>The operation can&apos;t be applied on this image</source>
         <translation>L&apos;opération ne peut pas être appliquée sur cette image</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="42"/>
+        <location line="-4"/>
         <source>The image width must be twice the image height.</source>
         <translation>La largeur de l&apos;image doit être deux fois la hauteur de l&apos;image.</translation>
     </message>
     <message>
-        <location filename="Operations/InversePyramidOp.cpp" line="47"/>
-        <location filename="Operations/PyramidOp.cpp" line="49"/>
+        <location line="+5"/>
+        <location filename="Operations/PyramidOp.cpp" line="+1"/>
         <source>The image dimensions must be power of 2.</source>
         <translation>Les dimensions de l&apos;images doivent être puissances de 2.</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="32"/>
+        <location filename="Operations/PyramidOp.cpp" line="-17"/>
         <source>Pyramidal decomposition</source>
         <translation>Décomposition pyramidale</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="44"/>
+        <location line="+12"/>
         <source>The image width must equal the image height.</source>
         <translation>La largeur de l&apos;image doit être égale à sa hauteur.</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="69"/>
-        <location filename="Operations/PyramidOp.cpp" line="79"/>
+        <location line="+25"/>
+        <location line="+10"/>
         <source>Gaussian</source>
         <translation>Gaussien</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidOp.cpp" line="73"/>
-        <location filename="Operations/PyramidOp.cpp" line="83"/>
+        <location line="-6"/>
+        <location line="+10"/>
         <source>Laplacian</source>
         <translation>Laplacien</translation>
     </message>
     <message>
         <source>Gaussian filter</source>
-        <translation type="vanished">Filtre gaussien</translation>
+        <translation>Filtre gaussien</translation>
     </message>
     <message>
         <source>Trimodal filter</source>
-        <translation type="vanished">Filtre trimodal</translation>
+        <translation>Filtre trimodal</translation>
     </message>
     <message>
         <source>Rectangular filter</source>
-        <translation type="vanished">Filtre rectangulaire</translation>
+        <translation>Filtre rectangulaire</translation>
     </message>
     <message>
         <source>QMF filter</source>
-        <translation type="vanished">QMF Filter</translation>
+        <translation>QMF Filter</translation>
     </message>
     <message>
         <source>Triangular filter</source>
-        <translation type="vanished">Filtre triangulaire</translation>
+        <translation>Filtre triangulaire</translation>
     </message>
     <message>
         <source>Gaussian pyramidal decomposition</source>
-        <translation type="vanished">Décomposition pyramidale gaussienne</translation>
+        <translation>Décomposition pyramidale gaussienne</translation>
     </message>
     <message>
         <source>Laplacian pyramidal decomposition</source>
-        <translation type="vanished">Décomposition pyamidale laplacienne</translation>
+        <translation>Décomposition pyamidale laplacienne</translation>
     </message>
     <message>
-        <location filename="Operations/ClassResultOp.cpp" line="37"/>
+        <location filename="Operations/ClassResultOp.cpp" line="-99"/>
         <source>Classification results</source>
         <translation>Résultats de classification</translation>
     </message>
     <message>
-        <location filename="Operations/ColorimetryOp.cpp" line="34"/>
+        <location filename="Operations/ColorimetryOp.cpp" line="+34"/>
         <source>Generate RGB image</source>
         <translation>Générer une image RVB</translation>
     </message>
     <message>
-        <location filename="Operations/ColorimetryOp.cpp" line="45"/>
+        <location line="+11"/>
         <source>RGB image generator</source>
         <translation>Générateur d&apos;image RVB</translation>
     </message>
     <message>
-        <location filename="Operations/IFFTOp.cpp" line="38"/>
+        <location filename="Operations/IFFTOp.cpp" line="-11"/>
         <source>Inverse Fourier transform</source>
         <translation>Transformée de Fourier inverse</translation>
     </message>
     <message>
-        <location filename="Operations/ClassAnalysisOp.cpp" line="33"/>
+        <location filename="Operations/ClassAnalysisOp.cpp" line="-45"/>
         <source>Supervised classification</source>
         <translation>Classification supervisée</translation>
     </message>
     <message>
-        <location filename="Operations/DPCMEncodingOp.cpp" line="32"/>
+        <location filename="Operations/DPCMEncodingOp.cpp" line="-36"/>
         <source>DPCM Encoding</source>
         <translation>Encodage MICD</translation>
     </message>
     <message>
-        <location filename="Operations/Huffman.cpp" line="98"/>
+        <location filename="Operations/Huffman.cpp" line="+98"/>
         <source>
  debit(huffman) = %.4f
 </source>
@@ -1430,14 +1350,15 @@ Canal %d :
  Débit(Huffman) = %.4f</translation>
     </message>
     <message>
-        <location filename="Algorithms/Pyramid.cpp" line="662"/>
+        <location filename="Algorithms/Pyramid.cpp" line="+664"/>
+        <location line="+20"/>
         <source>L&apos;entropie de l&apos;etage %d est %1f
 </source>
         <translation>L&apos;entropie de l&apos;étage %d est %1f
 </translation>
     </message>
     <message>
-        <location filename="Operations/Transforms.cpp" line="468"/>
+        <location filename="Operations/Transforms.cpp" line="+468"/>
         <source>
 
 matrice de transformation utilisee : 
@@ -1448,8 +1369,8 @@ Matrice de transformation utilisée :
 </translation>
     </message>
     <message>
-        <location filename="Algorithms/DCT.cpp" line="191"/>
-        <location filename="Algorithms/DCT.cpp" line="231"/>
+        <location filename="Algorithms/DCT.cpp" line="+191"/>
+        <location line="+40"/>
         <source>
 Le debit vaut : %5.2f
 
@@ -1459,7 +1380,7 @@ Le débit vaut : %5.2f
 </translation>
     </message>
     <message>
-        <location filename="Algorithms/DCT.cpp" line="209"/>
+        <location line="-22"/>
         <source>
 ---------Matrice d&apos;allocation de bits---------
 
@@ -1470,71 +1391,69 @@ Le débit vaut : %5.2f
 </translation>
     </message>
     <message>
-        <location filename="Operations/EntropyOp.cpp" line="35"/>
+        <location filename="Operations/EntropyOp.cpp" line="-19"/>
         <source>Calcul d&apos;entropie (image standard)</source>
-        <translation type="unfinished"></translation>
+        <translation>Calcul d&apos;entropie (image standard)</translation>
     </message>
     <message>
-        <location filename="Operations/MedianOp.cpp" line="12"/>
-        <location filename="Operations/MedianOp.cpp" line="36"/>
+        <location filename="Operations/MedianOp.cpp" line="+12"/>
+        <location line="+24"/>
         <source>Median Filter</source>
-        <translation type="unfinished"></translation>
+        <translation>Filtre médian</translation>
     </message>
 </context>
 <context>
     <name>PlugOperation</name>
     <message>
-        <location filename="../core/PlugOperation.cpp" line="77"/>
         <source>Parameters</source>
-        <translation type="unfinished">Paramètres</translation>
+        <translation>Paramètres</translation>
     </message>
     <message>
-        <location filename="../core/PlugOperation.cpp" line="86"/>
         <source>Validate</source>
-        <translation type="unfinished">Valider</translation>
+        <translation>Valider</translation>
     </message>
 </context>
 <context>
     <name>PluginManager</name>
     <message>
-        <location filename="Services/PluginManager.cpp" line="41"/>
+        <location filename="Services/PluginManager.cpp" line="+41"/>
         <source>&amp;Plugin</source>
         <translation>&amp;Plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="43"/>
+        <location line="+2"/>
         <source>&amp;Load plugin</source>
         <translation>&amp;Charger un plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="44"/>
+        <location line="+1"/>
         <source>&amp;Unload all plugins</source>
         <translation>&amp;Décharger tous les plugins</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="83"/>
+        <location line="+39"/>
         <source>Load plugin</source>
         <translation>Charger un plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="83"/>
+        <location line="+0"/>
         <source>Plugin (*.dll *.so *.dylib)</source>
         <translation>Plugin (*.dll *.so *.dylib)</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="178"/>
-        <location filename="Services/PluginManager.cpp" line="189"/>
-        <location filename="Services/PluginManager.cpp" line="201"/>
+        <location line="+95"/>
+        <location line="+11"/>
+        <location line="+12"/>
         <source>Error loading plugin</source>
         <translation>Erreur lors du chargement d&apos;un plugin</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="189"/>
+        <location line="-12"/>
         <source>Could not find the plugin&apos;s entry point &quot;loadPlugin&quot;</source>
         <translation>Point d&apos;entrée &quot;loadPlugin&quot; introuvable</translation>
     </message>
     <message>
-        <location filename="Services/PluginManager.cpp" line="201"/>
+        <location line="+12"/>
         <source>The getPlugin entry point does not return a valid Plugin</source>
         <translation>Le point d&apos;entrée getPlugin ne retourne pas un Plugin valide</translation>
     </message>
@@ -1542,27 +1461,27 @@ Le débit vaut : %5.2f
 <context>
     <name>PointOp</name>
     <message>
-        <location filename="Operations/PointOp.cpp" line="121"/>
+        <location filename="Operations/PointOp.cpp" line="+77"/>
         <source>Second operand</source>
         <translation>Second opérande</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="122"/>
+        <location line="+1"/>
         <source>Value</source>
         <translation>Valeur</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>Image</source>
         <translation>Image</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="130"/>
+        <location line="+7"/>
         <source>Explode colors</source>
         <translation>Eclater les couleurs</translation>
     </message>
     <message>
-        <location filename="Operations/PointOp.cpp" line="135"/>
+        <location line="+5"/>
         <source>Double Result</source>
         <translation>Résultat Double</translation>
     </message>
@@ -1570,7 +1489,7 @@ Le débit vaut : %5.2f
 <context>
     <name>PseudoColorOp</name>
     <message>
-        <location filename="Operations/PseudoColorOp.cpp" line="53"/>
+        <location filename="Operations/PseudoColorOp.cpp" line="+25"/>
         <source>Pseudo color</source>
         <translation>Pseudo-couleur</translation>
     </message>
@@ -1578,110 +1497,98 @@ Le débit vaut : %5.2f
 <context>
     <name>PyramidDialog</name>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="14"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="139"/>
+        <location filename="Operations/PyramidDialog.ui" line="+14"/>
         <source>Pyramidal decomposition</source>
         <translation>Décomposition pyramidale</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="20"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="140"/>
+        <location line="+6"/>
         <source>Type of pyramid</source>
         <translation>Type de pyramide</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="26"/>
-        <location filename="Operations/PyramidDialog.ui" line="61"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="141"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="147"/>
+        <location line="+6"/>
+        <location line="+35"/>
         <source>gaussian</source>
         <translation>gaussien</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="36"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="142"/>
+        <location line="-25"/>
         <source>laplacian</source>
         <translation>laplacien</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="48"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="143"/>
+        <location line="+12"/>
         <source>Filter : </source>
         <translation>Filtre : </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="56"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="146"/>
+        <location line="+8"/>
         <source>triangular</source>
         <translation>triangulaire</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="66"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="148"/>
+        <location line="+10"/>
         <source>trimodal</source>
         <translation>trimodal</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="71"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="149"/>
+        <location line="+5"/>
         <source>rectangular</source>
         <translation>rectangulaire</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="76"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="150"/>
+        <location line="+5"/>
         <source>qmf</source>
         <translation>qmf</translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="84"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="152"/>
+        <location line="+8"/>
         <source>Number of steps : </source>
         <translation>Nombre d&apos;étage : </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.ui" line="105"/>
-        <location filename="../build/app/ui_PyramidDialog.h" line="153"/>
+        <location line="+21"/>
         <source>Create only one step :</source>
         <translation>Créer unique l&apos;étage : </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="41"/>
+        <location filename="Operations/PyramidDialog.cpp" line="+41"/>
         <source>Decomposition pyramidale avec filtre gaussien :
 </source>
         <translation>Décomposition pyramidale avec filtre gaussien :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="44"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre trimodal :
 </source>
         <translation>Décomposition pyramidale avec filtre trimodal :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="47"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre rectangulaire :
 </source>
         <translation>Décomposition pyramidale avec filtre rectangulaire :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="50"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre qmf :
 </source>
         <translation>Décomposition pyramidale avec filtre QMF :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="53"/>
+        <location line="+3"/>
         <source>Decomposition pyramidale avec filtre triangulaire :
 </source>
         <translation>Décomposition pyramidale avec filtre rectangulaire :
 </translation>
     </message>
     <message>
-        <location filename="Operations/PyramidDialog.cpp" line="57"/>
+        <location line="+4"/>
         <source>Filtre non trouvé. Décomposition avec filtre gaussien par défaut. 
 </source>
         <translation>Filtre non trouvé. Décomposition avec filtre gaussien par défaut. 
@@ -1691,100 +1598,100 @@ Le débit vaut : %5.2f
 <context>
     <name>QuantificationDialog</name>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="40"/>
+        <location filename="Operations/QuantificationDialog.cpp" line="+40"/>
         <source>Quantification file editor</source>
         <translation>Éditeur de fichiers de quantification</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="43"/>
+        <location line="+3"/>
         <source>Quantification of %1</source>
         <translation>Quantification de %1</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="53"/>
+        <location line="+10"/>
         <source>Linear with centered value</source>
         <translation>Linéaire à valeurs centrées</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="55"/>
+        <location line="+2"/>
         <source>Non linear with centered value</source>
         <translation>Non linéaire à valeurs centrées</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="56"/>
+        <location line="+1"/>
         <source>Non linear with mean value</source>
         <translation>Non linéaire à valeurs moyennes</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="58"/>
+        <location line="+2"/>
         <source>Custom</source>
         <translation>Personnalisée</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="59"/>
+        <location line="+1"/>
         <source>LloydMax</source>
-        <translation type="unfinished"></translation>
+        <translation>LloydMax</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="61"/>
+        <location line="+2"/>
         <source>Quantification : </source>
         <translation>Quantification : </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="62"/>
+        <location line="+1"/>
         <source>Number of values : </source>
         <translation>Nombre de valeurs : </translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="88"/>
+        <location line="+26"/>
         <source>Exit</source>
         <translation>Quitter</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="91"/>
+        <location line="+3"/>
         <source>Apply</source>
         <translation>Appliquer</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="107"/>
+        <location line="+16"/>
         <source>Quantification non lineaire a valeurs centrees :</source>
         <oldsource>quantificiatQuantification non lineaire a valeurs centrees :</oldsource>
         <translation>Quantification non linéaire à valeurs centrées :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="111"/>
+        <location line="+4"/>
         <source>Quantification non lineaire a valeurs moyennes :</source>
         <oldsource>Quantification non lineaire a valeurs moyennes : </oldsource>
         <translation>Quantification non linéaire à valeurs moyennes :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="115"/>
+        <location line="+4"/>
         <source>Quantification personnalisee :</source>
         <translation>Quantification personnalisée :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="119"/>
+        <location line="+4"/>
         <source>Quantification LloydMax :</source>
         <translation>Quantification LloydMax :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="125"/>
+        <location line="+6"/>
         <source>Quantification lineaire a valeurs centrees :</source>
         <translation>Quantification linéaire à valeurs centrées :</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="142"/>
+        <location line="+17"/>
         <source>Open a file</source>
         <translation>Ouvrir un fichier</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="142"/>
-        <location filename="Operations/QuantificationDialog.cpp" line="151"/>
+        <location line="+0"/>
+        <location line="+9"/>
         <source>Loi de quantification (*.loi)</source>
         <translation>Loi de quantification (*.loi)</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationDialog.cpp" line="151"/>
+        <location line="+0"/>
         <source>Save to file</source>
         <translation>Enregistrer dans un fichier</translation>
     </message>
@@ -1793,40 +1700,40 @@ Le débit vaut : %5.2f
     <name>QuantificationOp</name>
     <message>
         <source>quantified</source>
-        <translation type="vanished">quantifiée</translation>
+        <translation>quantifiée</translation>
     </message>
     <message>
         <source>Quantification non lineaire a valeur centree</source>
-        <translation type="vanished">Quantification non-linéaire à valeurs centrées</translation>
+        <translation>Quantification non-linéaire à valeurs centrées</translation>
     </message>
     <message>
         <source>Quantification non lineaire a moyennes</source>
-        <translation type="vanished">Quantification non linéaire à valeurs moyennes</translation>
+        <translation>Quantification non linéaire à valeurs moyennes</translation>
     </message>
     <message>
         <source>Quantification personnalisee</source>
-        <translation type="vanished">Quantification personnalisée</translation>
+        <translation>Quantification personnalisée</translation>
     </message>
     <message>
         <source>Quantification LloydMax</source>
-        <translation type="vanished">Quantification LloydMax</translation>
+        <translation>Quantification LloydMax</translation>
     </message>
     <message>
         <source>Quantification lineaire a valeurs centrees</source>
-        <translation type="vanished">Quantification linéaire à valeurs centrées</translation>
+        <translation>Quantification linéaire à valeurs centrées</translation>
     </message>
 </context>
 <context>
     <name>QuantificationWidget</name>
     <message>
-        <location filename="Operations/QuantificationWidget.cpp" line="43"/>
+        <location filename="Operations/QuantificationWidget.cpp" line="+43"/>
         <source>Thresholds
 (low to high)</source>
         <translation>Seuils
 (ordre croissant)</translation>
     </message>
     <message>
-        <location filename="Operations/QuantificationWidget.cpp" line="45"/>
+        <location line="+2"/>
         <source>Values</source>
         <translation>Valeurs</translation>
     </message>
@@ -1834,49 +1741,49 @@ Le débit vaut : %5.2f
 <context>
     <name>RandomImgOp</name>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="43"/>
+        <location filename="Operations/RandomImgOp.cpp" line="-106"/>
         <source>Parameters</source>
         <translation>Paramètres</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="47"/>
+        <location line="+4"/>
         <source>Image type</source>
         <translation>Type d&apos;image</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="48"/>
+        <location line="+1"/>
         <source>8-bit integer</source>
         <translation>Entier 8 bit</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="49"/>
+        <location line="+1"/>
         <source>Floating point</source>
         <translation>Nombre flottant</translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="59"/>
+        <location line="+10"/>
         <source>Width : </source>
         <translation>Largeur : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="64"/>
+        <location line="+5"/>
         <source>Height : </source>
         <translation>Hauteur : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="69"/>
+        <location line="+5"/>
         <source>Number of channels : </source>
         <translation>Nombre de canaux : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="79"/>
-        <location filename="Operations/RandomImgOp.cpp" line="93"/>
+        <location line="+10"/>
+        <location line="+14"/>
         <source>Range : </source>
         <translation>Plage de valeurs : </translation>
     </message>
     <message>
-        <location filename="Operations/RandomImgOp.cpp" line="81"/>
-        <location filename="Operations/RandomImgOp.cpp" line="95"/>
+        <location line="-12"/>
+        <location line="+14"/>
         <source> to </source>
         <translation> à </translation>
     </message>
@@ -1884,22 +1791,22 @@ Le débit vaut : %5.2f
 <context>
     <name>RejectionRingOp</name>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="49"/>
+        <location filename="Operations/RejectionRingOp.cpp" line="+7"/>
         <source>Width=Height : </source>
         <translation>Largeur=Hauteur : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="53"/>
+        <location line="+4"/>
         <source>Radius : </source>
         <translation>Rayon : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="57"/>
+        <location line="+4"/>
         <source>Thickness (beyond radius) : </source>
         <translation>Epaisseur (au delà du rayon) : </translation>
     </message>
     <message>
-        <location filename="Operations/RejectionRingOp.cpp" line="99"/>
+        <location line="+42"/>
         <source>Rejection ring (%1 %2 %3)</source>
         <translation>Anneau de réjection (%1 %2 %3)</translation>
     </message>
@@ -1907,27 +1814,27 @@ Le débit vaut : %5.2f
 <context>
     <name>Rotation</name>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="60"/>
+        <location filename="Operations/RotateOp.cpp" line="+26"/>
         <source>Rotating %1</source>
         <translation>Rotation %1</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="69"/>
+        <location line="+9"/>
         <source>Expand image</source>
         <translation>Agrandir l&apos;image</translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="78"/>
+        <location line="+9"/>
         <source>Rotation angle : </source>
         <translation>Angle de rotation : </translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="80"/>
+        <location line="+2"/>
         <source>Fill value : </source>
         <translation>Valeur de remplissage : </translation>
     </message>
     <message>
-        <location filename="Operations/RotateOp.cpp" line="152"/>
+        <location line="+72"/>
         <source>rotated %1</source>
         <translation>rotation-%1</translation>
     </message>
@@ -1935,67 +1842,67 @@ Le débit vaut : %5.2f
 <context>
     <name>ScalingOp</name>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="70"/>
+        <location filename="Operations/ScalingOp.cpp" line="+13"/>
         <source>Nearest neighboor (standard)</source>
         <translation>Standard (plus proche voisin)</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="71"/>
+        <location line="+1"/>
         <source>Bi-linear</source>
         <translation>Bilinéaire</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="72"/>
+        <location line="+1"/>
         <source>Parabolic</source>
         <translation>Parabolique</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="73"/>
+        <location line="+1"/>
         <source>Spline</source>
         <translation>Spline</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="74"/>
+        <location line="+1"/>
         <source>Interpolation : </source>
         <translation>Interpolation : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="75"/>
+        <location line="+1"/>
         <source>X scale factor : </source>
         <translation>Facteur d&apos;échelle en X : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="76"/>
+        <location line="+1"/>
         <source>Y scale factor : </source>
         <translation>Facteur d&apos;echelle en Y : </translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="119"/>
+        <location line="+43"/>
         <source>Bilinear Interpolation</source>
         <translation>Interpolation bilinéaire</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="120"/>
+        <location line="+1"/>
         <source>Parabolic Interpolation</source>
         <translation>Interpolation parabolique</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="121"/>
+        <location line="+1"/>
         <source>Spline Interpolation</source>
         <translation>Interpolation spline</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="122"/>
+        <location line="+1"/>
         <source>Nearest Interpolation</source>
         <translation>Interpolation au plus proche voisin</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>Scaled</source>
         <translation>Echantillonné</translation>
     </message>
     <message>
-        <location filename="Operations/ScalingOp.cpp" line="129"/>
+        <location line="+6"/>
         <source>scaled</source>
         <translation>échantillonée</translation>
     </message>
@@ -2003,7 +1910,7 @@ Le débit vaut : %5.2f
 <context>
     <name>SignalToNoiseOp</name>
     <message>
-        <location filename="Operations/SignalToNoiseOp.cpp" line="84"/>
+        <location filename="Operations/SignalToNoiseOp.cpp" line="+50"/>
         <source>Signal-to-noise ratio : %1</source>
         <translation>Rapport signal-bruit : %1</translation>
     </message>
@@ -2011,47 +1918,47 @@ Le débit vaut : %5.2f
 <context>
     <name>SinusSynthesisOp</name>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="50"/>
+        <location filename="Operations/SinusSynthesisOp.cpp" line="-95"/>
         <source>Sinus synthesis</source>
         <translation>Synthèse sinus</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="56"/>
+        <location line="+6"/>
         <source>Linear</source>
         <translation>Linéaire</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="57"/>
+        <location line="+1"/>
         <source>Circular</source>
         <translation>Circulaire</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="71"/>
+        <location line="+14"/>
         <source>256</source>
         <translation>256</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="72"/>
+        <location line="+1"/>
         <source>2 (Black and white)</source>
         <translation>2 (Noir et blanc)</translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="74"/>
+        <location line="+2"/>
         <source>Image size (width=height) : </source>
         <translation>Taille de l&apos;image (hauteur=largeur) : </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="75"/>
+        <location line="+1"/>
         <source>Signal period (pixel) : </source>
         <translation>Période du signal (pixel) : </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="76"/>
+        <location line="+1"/>
         <source>Orientation (°): </source>
-        <translation type="unfinished"></translation>
+        <translation>Orientation (°): </translation>
     </message>
     <message>
-        <location filename="Operations/SinusSynthesisOp.cpp" line="78"/>
+        <location line="+2"/>
         <source>Niveaux de gris : </source>
         <translation>Niveaux de gris : </translation>
     </message>
@@ -2059,60 +1966,60 @@ Le débit vaut : %5.2f
 <context>
     <name>StructElemWindow</name>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="41"/>
+        <location filename="Widgets/StructElemWindow.cpp" line="+38"/>
         <source>&amp;Open file</source>
         <translation>&amp;Ouvrir un fichier</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="42"/>
+        <location line="+1"/>
         <source>&amp;Save as...</source>
         <translation>&amp;Enregistrer-sous...</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="53"/>
+        <location line="+13"/>
         <source>Basic shapes :</source>
         <translation>Formes simples : </translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="56"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="196"/>
+        <location line="+3"/>
+        <location line="+139"/>
         <source>Diamond</source>
         <translation>Diamant</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="57"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="176"/>
+        <location line="-138"/>
+        <location line="+118"/>
         <source>Disc</source>
         <translation>Disque</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="58"/>
+        <location line="-117"/>
         <source>Empty</source>
         <translation>Vide</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="65"/>
+        <location line="+7"/>
         <source>Generate</source>
         <translation>Génerer</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="76"/>
+        <location line="+11"/>
         <source>Scale :</source>
         <translation>Echelle :</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="249"/>
+        <location line="+172"/>
         <source>Open a file</source>
         <translation>Ouvrir un fichier</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="249"/>
-        <location filename="Widgets/StructElemWindow.cpp" line="270"/>
+        <location line="+0"/>
+        <location line="+21"/>
         <source>Images (*.png *.bmp *.jpg *.jpeg)</source>
         <translation>Images (*.png *.bmp *.jpg *.jpeg)</translation>
     </message>
     <message>
-        <location filename="Widgets/StructElemWindow.cpp" line="270"/>
+        <location line="+0"/>
         <source>Save file</source>
         <translation>Enregistrer sous</translation>
     </message>
@@ -2120,116 +2027,120 @@ Le débit vaut : %5.2f
 <context>
     <name>ThresholdDialog</name>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="49"/>
+        <location filename="Operations/ThresholdDialog.cpp" line="+49"/>
         <source>Threshold #1 : </source>
         <translation>Seuil n°1 : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="53"/>
-        <location filename="Operations/ThresholdDialog.cpp" line="109"/>
+        <location line="+4"/>
+        <location line="+56"/>
         <source>Threshold : </source>
         <translation>Seuil : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="92"/>
+        <location line="-17"/>
         <source>ThresholdOp</source>
         <translation>Seuillage</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="100"/>
+        <location line="+8"/>
         <source>&lt;font color=red&gt;&lt;i&gt;Information : The input image has been converted to grayscale.&lt;/i&gt;&lt;/font&gt;</source>
         <translation>&lt;font color=red&gt;&lt;i&gt;Information : L&apos;image d&apos;entrée a été convertie en niveaux de gris.&lt;/i&gt;&lt;/font&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="102"/>
+        <location line="+2"/>
         <source>Threshold</source>
         <translation>Seuil</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="104"/>
+        <location line="+2"/>
         <source>Double threshold (right clic to move the second threshold)</source>
         <translation>Double seuil (clic droit pour déplacer le deuxième seuil)</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="113"/>
+        <location line="+9"/>
         <source>Otsu</source>
         <translation>Otsu</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="120"/>
+        <location line="+7"/>
         <source>Threshold #2 : </source>
         <translation>Seuil n°2 : </translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="131"/>
+        <location line="+11"/>
         <source>Color between thresholds :</source>
         <translation>Couleur entre les seuils :</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="132"/>
+        <location line="+1"/>
         <source>White</source>
         <translation>Blanc</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="133"/>
+        <location line="+1"/>
         <source>Black</source>
         <translation>Noir</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="169"/>
+        <location line="+36"/>
         <source>Aperçu</source>
-        <translation type="unfinished"></translation>
+        <translation>Aperçu</translation>
     </message>
     <message>
-        <location filename="Operations/ThresholdDialog.cpp" line="177"/>
+        <location line="+8"/>
         <source>Validate</source>
         <translation>Valider</translation>
     </message>
+    <message>
+        <source>Double threshold</source>
+        <translation>Double seuil</translation>
+    </message>
 </context>
 <context>
     <name>Transforms</name>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="57"/>
+        <location filename="Operations/HadamardOp.cpp" line="+6"/>
         <source>&lt;b&gt;Select the coefficients to keep : &lt;/b&gt;</source>
         <translation>&lt;b&gt;Sélectionner les coefficients à conserver : &lt;/b&gt;</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="62"/>
+        <location line="+5"/>
         <source>Clear selection</source>
         <translation>Effacer la sélection</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="63"/>
+        <location line="+1"/>
         <source>Invert selection</source>
         <translation>Inverser la sélection</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="112"/>
+        <location line="+49"/>
         <source>Hadamard transform</source>
         <translation>Transformée d&apos;hadamard</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="113"/>
+        <location line="+1"/>
         <source>Hadamard reconstruction</source>
         <translation>Reconstruction d&apos;hadamard</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="117"/>
+        <location line="+4"/>
         <source>Haar transform</source>
         <translation>Transformée de Haar</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="118"/>
+        <location line="+1"/>
         <source>Haar reconstruction</source>
         <translation>Reconstruction de Haar</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="122"/>
+        <location line="+4"/>
         <source>cosinus transform</source>
         <translation>DCT</translation>
     </message>
     <message>
-        <location filename="Operations/HadamardOp.cpp" line="123"/>
+        <location line="+1"/>
         <source>cosinus reconstruction</source>
         <translation>DCT inverse</translation>
     </message>
@@ -2237,27 +2148,27 @@ Le débit vaut : %5.2f
 <context>
     <name>TranslateOp</name>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="34"/>
+        <location filename="Operations/TranslateOp.cpp" line="+22"/>
         <source>Expand image</source>
         <translation>Agrandir l&apos;image</translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="42"/>
+        <location line="+8"/>
         <source>X offset : </source>
         <translation>Décalage en X : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="43"/>
+        <location line="+1"/>
         <source>Y offset : </source>
         <translation>Décalage en Y : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="45"/>
+        <location line="+2"/>
         <source>Fill value : </source>
         <translation>Valeur de remplissage : </translation>
     </message>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="85"/>
+        <location line="+40"/>
         <source>Translated %1:%2</source>
         <translation>Translation %1:%2</translation>
     </message>
@@ -2265,7 +2176,7 @@ Le débit vaut : %5.2f
 <context>
     <name>Translation</name>
     <message>
-        <location filename="Operations/TranslateOp.cpp" line="24"/>
+        <location line="-61"/>
         <source>Translating %1</source>
         <translation>Translation de %1</translation>
     </message>
@@ -2273,22 +2184,22 @@ Le débit vaut : %5.2f
 <context>
     <name>ZeroCrossingOp</name>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="44"/>
+        <location filename="Operations/ZeroCrossingOp.cpp" line="+11"/>
         <source>Zero crossing</source>
         <translation>Passages par zéro</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="52"/>
+        <location line="+8"/>
         <source>Threshold : </source>
         <translation>Seuil : </translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="110"/>
+        <location line="+58"/>
         <source>contours bruts</source>
         <translation>Contours bruts</translation>
     </message>
     <message>
-        <location filename="Operations/ZeroCrossingOp.cpp" line="111"/>
+        <location line="+1"/>
         <source>contours nettoyes</source>
         <translation>Contours nettoyés</translation>
     </message>
@@ -2296,195 +2207,397 @@ Le débit vaut : %5.2f
 <context>
     <name>filtrme::FilterChoice</name>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="74"/>
+        <location filename="Widgets/FilterChoice.cpp" line="+76"/>
+        <location/>
+        <location line="+0"/>
         <source>FilterChoice</source>
         <translation>Choix du filtre</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="82"/>
+        <location line="+9"/>
+        <location line="+0"/>
+        <source>Select custom or standard filter</source>
+        <translation>Selectionnez filtre standard ou personnalisé</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location line="+0"/>
+        <source>Custom filter</source>
+        <translation>Filtre personnalisé</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter configuration</source>
         <translation>Configuration du filtre</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="86"/>
+        <location line="+6"/>
+        <location line="+0"/>
+        <source>Path to custom filter:</source>
+        <translation>Chemin vers filtre personnalisé:</translation>
+    </message>
+    <message>
+        <location line="+17"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter:</source>
         <translation>Filtre :</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="95"/>
+        <location line="+14"/>
+        <location/>
+        <location line="+0"/>
         <source>Edge policy: </source>
         <translation>Politique pour les bords : </translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+2"/>
+        <location/>
+        <location line="+0"/>
         <source>Black</source>
         <translation>Noir</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Mirror</source>
         <translation>Mirroir</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Nearest</source>
         <translation>Plus proche voisin</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="97"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Spherical</source>
         <translation>Sphérique</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="103"/>
+        <location line="+6"/>
+        <location/>
+        <location line="+0"/>
         <source>Filter size:</source>
         <translation>Taille du filtre : </translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="109"/>
+        <location line="+6"/>
+        <location/>
+        <location line="+0"/>
         <source>Standard deviation : </source>
-        <translation>Equart type : </translation>
+        <translation>Ecart type : </translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="118"/>
+        <location line="+9"/>
+        <location/>
+        <location line="+0"/>
         <source>Resulting image type</source>
         <translation>Type de l&apos;image résultat</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="119"/>
+        <location line="+1"/>
+        <location line="+0"/>
         <source>UChar</source>
-        <translation type="unfinished"></translation>
+        <translation>UChar</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="120"/>
+        <location line="+1"/>
+        <location line="+0"/>
         <source>Double</source>
-        <translation type="unfinished"></translation>
+        <translation>Double</translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <location line="+0"/>
+        <source>Options</source>
+        <translation>Options</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location line="+0"/>
+        <source>Offset</source>
+        <translation>Décallage</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Scaling</source>
+        <translation>Mise à l&apos;échelle</translation>
+    </message>
+    <message>
+        <location line="+431"/>
+        <location line="+0"/>
+        <source>Open a file</source>
+        <translation>Ouvrir un fichier</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>XML Documents (*.xml)</source>
+        <translation>Documents XML (*.xml)</translation>
     </message>
     <message>
         <source>Standard</source>
-        <translation type="vanished">Standard</translation>
+        <translation>Standard</translation>
     </message>
     <message>
         <source>Floating point</source>
-        <translation type="vanished">Nombre flottant</translation>
+        <translation>Nombre flottant</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="163"/>
+        <location line="-379"/>
+        <location/>
+        <location line="+0"/>
         <source>Apply filter</source>
         <translation>Appliquer le filtre</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="164"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Delete filter</source>
         <translation>Supprimer le filtre</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+21"/>
+        <location/>
+        <location line="+0"/>
         <source>Uniform</source>
         <translation>Uniforme</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Gaussian</source>
         <translation>Gaussien</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Prewitt</source>
         <translation>Prewitt</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Roberts</source>
         <translation>Roberts</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Sobel</source>
         <translation>Sobel</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="194"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>SquareLaplacien</source>
         <translation>SquareLaplacien</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="339"/>
+        <location line="+134"/>
+        <location line="+0"/>
+        <source>Error!</source>
+        <translation>Erreur !</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>Filter application is impossible.</source>
+        <translation>Application du filtre impossible.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Filter selection is empty, please select a filter.</source>
+        <translation>Aucun filtre sélectionné, sélectionnez un filtre.</translation>
+    </message>
+    <message>
+        <location line="+56"/>
+        <location/>
+        <location line="+0"/>
         <source>Warning!</source>
         <translation>Attention !</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="339"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>This filter will be permanently deleted ?</source>
         <translation>Ce filtre sera effacé définitivement !</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterChoice.cpp" line="340"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Do you want to continue?</source>
         <translation>Voulez-vous continuer ?</translation>
     </message>
+    <message>
+        <location line="-345"/>
+        <source>Standard filter</source>
+        <translation>Filtre standard</translation>
+    </message>
 </context>
 <context>
     <name>filtrme::FilterEditor</name>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="69"/>
         <source>Name:</source>
         <translation>Nom :</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="72"/>
+        <location filename="Widgets/FilterEditor.cpp" line="+76"/>
+        <location line="+0"/>
+        <source>Filter file:</source>
+        <translation>Fichier de filtre:</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Select a filter file:</source>
+        <translation>Sélectionnez un fichier de filtre:</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>No XML file selected!</source>
+        <translation>Aucun fichier XML sélectionné!</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <location line="+0"/>
+        <source>Name of your filter:</source>
+        <translation>Nom du filtre:</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <location/>
+        <location line="+0"/>
         <source>Number of filters:</source>
         <translation>Nombre de filtres :</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="105"/>
+        <location line="+17"/>
+        <location line="+0"/>
+        <source>You need to select a file and a name for your filter to save it</source>
+        <translation>Vous devez sélectionner un fichier de filtre et donner un nom à votre filtre pour l&apos;enregistrer</translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <location/>
+        <location line="+0"/>
         <source>FilterEditor</source>
         <translation>Editeur de filtre</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="117"/>
-        <location filename="Widgets/FilterEditor.cpp" line="240"/>
+        <location line="+13"/>
+        <location line="+0"/>
+        <source>Chose a file filter</source>
+        <translation>Choisissez un fichier de filtre</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <location line="+0"/>
+        <source>XML Files (*.xml)</source>
+        <translation>Fichiers XML (*.xml)</translation>
+    </message>
+    <message>
+        <location line="+21"/>
+        <location/>
+        <location line="+0"/>
+        <location line="+8"/>
+        <location line="+134"/>
         <source>Error!</source>
         <translation>Erreur !</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="117"/>
+        <location line="-142"/>
+        <location line="+0"/>
+        <source>Your filter needs a valid name to be saved (no whitespace).</source>
+        <translation>Votre filtre doit avoir un nom valide pour être enregistré (pas d&apos;espaces).</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <location line="+0"/>
+        <source>Your file needs .xml format.</source>
+        <translation>Votre fichier doit être au format .xml.</translation>
+    </message>
+    <message>
+        <location line="+55"/>
+        <location line="+0"/>
+        <source>This filter name is already used.</source>
+        <translation>Ce nom de filtre est déjà utilisé.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Do you want to overwrite it?</source>
+        <translation>Voulez-vous l&apos;écraser?</translation>
+    </message>
+    <message>
+        <location line="+78"/>
+        <location line="+0"/>
+        <source>Every square has to be filled with an integer.</source>
+        <translation>Chaque case doit être remplie par un entier.</translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <location line="+0"/>
+        <source>Filter %1 is not a valid filter.</source>
+        <translation>Le filtre %1 n&apos;est pas valide.</translation>
+    </message>
+    <message>
         <source>Your filter has to have a name to be saved.</source>
         <translation>Votre filtre doit avoir un nom pour être sauvegardé.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="166"/>
-        <location filename="Widgets/FilterEditor.cpp" line="254"/>
+        <location line="-80"/>
+        <location/>
+        <location line="+0"/>
+        <location line="+98"/>
         <source>Warning!</source>
         <translation>Attention !</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="166"/>
         <source>This filter name is already use.</source>
         <translation>Ce nom de filtre est déjà utilisé.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="167"/>
         <source>Do you want to replace it?</source>
         <translation>Voulez-vous le remplacer ?</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="240"/>
         <source>Every square have to be completed by int value.</source>
         <translation>Chaque case doit être complétée par une valeur.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="241"/>
         <source>Filter %1 isn&apos;t ok.</source>
         <translation>Le filtre n°%1 n&apos;est pas correct.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="254"/>
+        <location line="+0"/>
+        <location/>
+        <location line="+0"/>
         <source>Unsaved changes will be lost.</source>
         <translation>Les changements non sauvegardés seront perdus.</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditor.cpp" line="255"/>
+        <location line="+1"/>
+        <location/>
+        <location line="+0"/>
         <source>Do you want to continue?</source>
         <translation>Voulez-vous continuer ?</translation>
     </message>
@@ -2492,12 +2605,16 @@ Le débit vaut : %5.2f
 <context>
     <name>filtrme::FilterEditorItem</name>
     <message>
-        <location filename="Widgets/FilterEditorItem.cpp" line="80"/>
+        <location filename="Widgets/FilterEditorItem.cpp" line="+85"/>
+        <location/>
+        <location line="+0"/>
         <source>Width:</source>
         <translation>Largeur :</translation>
     </message>
     <message>
-        <location filename="Widgets/FilterEditorItem.cpp" line="83"/>
+        <location line="+3"/>
+        <location/>
+        <location line="+0"/>
         <source>Height:</source>
         <translation>Hauteur :</translation>
     </message>
@@ -2505,805 +2622,108 @@ Le débit vaut : %5.2f
 <context>
     <name>filtrme::FilteringService</name>
     <message>
-        <location filename="Services/FilteringService.cpp" line="40"/>
+        <location filename="Services/FilteringService.cpp" line="+1"/>
         <source>&amp;Apply filter</source>
         <translation>&amp;Appliquer un filtre</translation>
     </message>
     <message>
-        <location filename="Services/FilteringService.cpp" line="42"/>
+        <location line="+2"/>
         <source>&amp;Edit filters</source>
         <translation>&amp;Editer un filtre</translation>
     </message>
 </context>
-<context>
-    <name>genericinterface::ColumnView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="28"/>
-        <source>Column Profile for column number %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="29"/>
-        <source>Pixel Value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnView.cpp" line="30"/>
-        <source>Line number</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ColumnWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ColumnWindow.cpp" line="28"/>
-        <source>Column profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>genericinterface::DoubleImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="77"/>
-        <source>Disable Offset</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="84"/>
-        <source>Offset (127)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="87"/>
-        <source>Crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="88"/>
-        <source>Copy &amp; crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="89"/>
-        <source>Convert to Rgb Image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="117"/>
-        <source>Selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="126"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="141"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="236"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="264"/>
         <source>Color</source>
-        <translation type="unfinished">Couleur</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="132"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/DoubleImageWindow.cpp" line="193"/>
-        <source>Pixels Grid</source>
-        <translation type="unfinished"></translation>
+        <translation>Couleur</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::FileService</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="43"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="93"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="98"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="44"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="75"/>
-        <source>&amp;Open</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="49"/>
-        <source>Save &amp;As</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="55"/>
-        <source>&amp;Copy</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="80"/>
-        <source>Language</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="200"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="200"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="234"/>
-        <source>&amp;%1 %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="254"/>
         <source>Open a file</source>
-        <translation type="unfinished">Ouvrir un fichier</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="254"/>
-        <source>Supported image (*.png *.bmp *.jpg *.jpeg *.vff);; PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="273"/>
-        <source>Change current language</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/FileService.cpp" line="274"/>
-        <source>The current language will be modified at next startup. Would you like to restart now?</source>
-        <translation type="unfinished"></translation>
+        <translation>Ouvrir un fichier</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::GenericHistogramView</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="129"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="134"/>
-        <source>Number of specimen</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="135"/>
-        <source>Pixel value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="195"/>
         <source>Black</source>
-        <translation type="unfinished">Noir</translation>
+        <translation>Noir</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="197"/>
         <source>Red</source>
-        <translation type="unfinished">Rouge</translation>
+        <translation>Rouge</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="201"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="209"/>
         <source>Alpha</source>
-        <translation type="unfinished">Alpha</translation>
+        <translation>Alpha</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="203"/>
         <source>Green</source>
-        <translation type="unfinished">Vert</translation>
+        <translation>Vert</translation>
     </message>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="206"/>
         <source>Blue</source>
-        <translation type="unfinished">Bleu</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramView.cpp" line="212"/>
-        <source>Channel</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::GenericHistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="78"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="228"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="83"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="233"/>
-        <source>Value 1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="88"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="238"/>
-        <source>Value 2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="94"/>
-        <source>Save As Image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="161"/>
-        <source>Bad object type</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="161"/>
-        <source>Only images can be saved to a file.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="166"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="181"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="181"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="246"/>
-        <source>C: %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="247"/>
-        <source>C: %1, A: %2</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="248"/>
-        <source>R: %1, G: %2, B: %3</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GenericHistogramWindow.cpp" line="249"/>
-        <source>R: %1, G: %2, B: %3, A: %4</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::GenericInterface</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="56"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="236"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="237"/>
-        <source>&amp;Help</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="56"/>
-        <source>&amp;About</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="88"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="188"/>
-        <source>Interface&apos;s integrity compromised</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="89"/>
-        <source>An error occurred in the addition of a new service. The interface may not offer all the expected features. See the log file for more informations.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="189"/>
-        <source>An error occurred in the addition of a service. The interface may not offer all the expected features. See the log file for more informations.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="233"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="234"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="283"/>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="284"/>
-        <source>&amp;File</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/GenericInterface.cpp" line="284"/>
-        <source>&amp;Exit</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::HistogramView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="30"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="41"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="33"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramView.cpp" line="44"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::HistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="29"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="40"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="32"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/HistogramWindow.cpp" line="43"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
+        <translation>Bleu</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::ImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="86"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="186"/>
-        <source>Save As</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="89"/>
-        <source>Zoom + (Ctrl+Scroll Wheel)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="90"/>
-        <source>Zoom - (Ctrl+Scroll Wheel)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="92"/>
-        <source>Rename</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="94"/>
-        <source>Apply mask</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="96"/>
-        <source>Copy image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="131"/>
         <source>Image</source>
-        <translation type="unfinished">Image</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="142"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="412"/>
-        <source>Zoom</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="148"/>
-        <source>Selection mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="155"/>
-        <source>Hand mode</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="163"/>
-        <source>Select all</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="171"/>
-        <source>Zoom +</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="179"/>
-        <source>Zoom -</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="328"/>
-        <source>Bad object type</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="328"/>
-        <source>Only images can be saved to a file.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="333"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="347"/>
-        <source>Save a file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="347"/>
-        <source>PNG image (*.png);;BMP image (*.bmp);; JPEG image(*.jpg *.jpeg);; VFF image (*.vff)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="442"/>
-        <source>Rename image</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="443"/>
-        <source>New name:</source>
-        <translation type="unfinished"></translation>
+        <translation>Image</translation>
     </message>
 </context>
 <context>
     <name>genericinterface::MorphoMatService</name>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="58"/>
+        <location filename="Services/MorphoMatService.cpp" line="+58"/>
         <source>&amp;Erosion</source>
         <translation>&amp;Erosion</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="59"/>
+        <location line="+1"/>
         <source>&amp;Dilatation</source>
         <translation>&amp;Dilatation</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="60"/>
+        <location line="+1"/>
         <source>&amp;Opening</source>
         <translation>&amp;Ouverture</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="61"/>
+        <location line="+1"/>
         <source>&amp;Closing</source>
         <translation>&amp;Fermeture</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="62"/>
+        <location line="+1"/>
         <source>&amp;Gradient</source>
         <translation>&amp;Gradient</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="63"/>
+        <location line="+1"/>
         <source>&amp;White top hat</source>
         <translation>&amp;White top hat</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="64"/>
+        <location line="+1"/>
         <source>&amp;Black top hat</source>
         <translation>&amp;Black top hat</translation>
     </message>
     <message>
-        <location filename="Services/MorphoMatService.cpp" line="66"/>
+        <location line="+2"/>
         <source>&amp;Structuring element</source>
         <translation>Elément &amp;structurant</translation>
     </message>
 </context>
-<context>
-    <name>genericinterface::NavigationDock</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/NavBar/NavigationDock.cpp" line="45"/>
-        <source>Close all image from the selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ProjectionHistogramView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="29"/>
-        <source>Horizontal Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="30"/>
-        <source>Line number</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="33"/>
-        <source>Vertical Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="34"/>
-        <source>Column number</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramView.cpp" line="37"/>
-        <source>Number of pixels &gt;= %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::ProjectionHistogramWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramWindow.cpp" line="29"/>
-        <source>Horizontal Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ProjectionHistogramWindow.cpp" line="31"/>
-        <source>Vertical Projection Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RadioPanel</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="60"/>
-        <source>R</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="61"/>
-        <source>G</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/GridView.cpp" line="62"/>
-        <source>B</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RowView</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="28"/>
-        <source>Line Profile for line number %1</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="29"/>
-        <source>Pixel Value</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowView.cpp" line="30"/>
-        <source>Column number</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::RowWindow</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/RowWindow.cpp" line="28"/>
-        <source>Row profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::SelectionWidget</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="43"/>
-        <source>Selection : </source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="44"/>
-        <source>x:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="46"/>
-        <source>y:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="48"/>
-        <source>width:</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/ImageWindow.cpp" line="50"/>
-        <source>height:</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>genericinterface::StandardImageWindow</name>
     <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="47"/>
-        <source>Unknown file format !</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="59"/>
-        <source>Unknown exception</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="63"/>
-        <source>Error while opening file</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="102"/>
-        <source>Crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="103"/>
-        <source>Copy &amp; crop</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="105"/>
-        <source>Convert to grayscale</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="106"/>
-        <source>Convert to binary</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="108"/>
-        <source>Cumulated histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="109"/>
-        <source>Column Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="110"/>
-        <source>Line Profile</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="138"/>
-        <source>Selected</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="147"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="162"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="287"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="302"/>
         <source>Color</source>
-        <translation type="unfinished">Couleur</translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="153"/>
-        <source>Hovered</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="200"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="212"/>
-        <source>Threshold selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="200"/>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="212"/>
-        <source>Enter the threshold value
-(only pixels superior or equal to this value will be counted)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="224"/>
-        <source>Line selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="224"/>
-        <source>Select the line to project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="237"/>
-        <source>Column selection</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="237"/>
-        <source>Select the column to project</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Widgets/ImageWidgets/StandardImageWindow.cpp" line="249"/>
-        <source>Pixels Grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::UtilityService</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="30"/>
-        <source>&amp;Show</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="31"/>
-        <source>Histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="32"/>
-        <source>Horizontal projection histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="33"/>
-        <source>Vertical projection histogram</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/UtilityService.cpp" line="34"/>
-        <source>Pixels grid</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
-<context>
-    <name>genericinterface::WindowService</name>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="43"/>
-        <source>Images</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="46"/>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="52"/>
-        <source>&amp;Window</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="46"/>
-        <source>&amp;Tile windows</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="52"/>
-        <source>&amp;Cascade windows</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="348"/>
-        <source>Attention</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="348"/>
-        <source>You&apos;re going to close all the relative windows, are you sure you want to continue ?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="500"/>
-        <source>Mask to apply : </source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../lib/detiq-t/GenericInterface/Services/WindowService.cpp" line="564"/>
-        <source> - masked</source>
-        <translation type="unfinished"></translation>
+        <translation>Couleur</translation>
     </message>
 </context>
 </TS>
-- 
GitLab