diff --git a/data/2223_S2/version.txt b/data/2223_S2/version.txt
index a53f5f1a04c236bf000eae641e94135df37f733a..01785269972ad47b71d5e5b2ac563c11fb708009 100644
--- a/data/2223_S2/version.txt
+++ b/data/2223_S2/version.txt
@@ -1,2 +1,2 @@
-1
-220708
+2
+230519
diff --git a/shukan/Shukan.java b/shukan/Shukan.java
index f92c6e229090e7004217aea42c1a222be1bc2734..fd8fee3e68677dc2c4976d355a8cf50cb85b0c46 100644
--- a/shukan/Shukan.java
+++ b/shukan/Shukan.java
@@ -37,7 +37,7 @@ public class Shukan
         JFrame frame = new JFrame ("SHUKAN 1.6");
         JPanel global = new JPanel(new BorderLayout());
         ShukanView canvas = new ShukanView (data, io);
-        ShukanViewBar barre = new ShukanViewBar(io, data, 90);
+        ShukanViewBar mytoolbar = new ShukanViewBar(90);
 
         // Getting the display size
         GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment ();
@@ -45,14 +45,15 @@ public class Shukan
         GraphicsConfiguration[] gc = gd.getConfigurations ();
         Rectangle gcBounds = gc[0].getBounds ();
         canvas.restrictSize ((int) (gcBounds.getWidth ()) - LEFT_MARGIN,
-                (int) (gcBounds.getHeight ()) - TOP_MARGIN - barre.getHeight());
-        barre.setSize(new Dimension((int) (gcBounds.getWidth ()) - LEFT_MARGIN, barre.getHeight()));
+                (int) (gcBounds.getHeight ()) - TOP_MARGIN - mytoolbar.getHeight());
+        mytoolbar.setSize(new Dimension((int) (gcBounds.getWidth ()) - LEFT_MARGIN, mytoolbar.getHeight()));
 
         // Adding a openGL input handler (controller)
-        ShukanController myController = new ShukanController (canvas, data);
+        ShukanController myController = new ShukanController (canvas, mytoolbar, data);
         canvas.addKeyListener (myController);
         canvas.addMouseListener (myController);
-        //canvas.addMouseMotionListener (myController);
+        mytoolbar.addActionListener(myController);
+
 
         // Preparing the window closing button
         frame.addWindowListener (
@@ -67,12 +68,12 @@ public class Shukan
 
 
         // Setting the window geometry
-        global.add(barre, BorderLayout.NORTH);
+        global.add(mytoolbar, BorderLayout.NORTH);
         global.add (canvas, BorderLayout.CENTER);
         frame.add(global);
         Insets ins = frame.getInsets ();
         frame.setSize (canvas.displayWidth () + ins.left + ins.right,
-                canvas.displayHeight ()+ barre.getHeight()+ ins.top + ins.bottom);
+                canvas.displayHeight ()+ mytoolbar.getHeight()+ ins.top + ins.bottom);
         frame.setLocation (LEFT_MARGIN, 0);
         frame.setBackground (Color.white);
         frame.setVisible (true);
diff --git a/shukan/ShukanController.java b/shukan/ShukanController.java
index afc966dec2239dc8cda0c85e1456cd251c011486..310ed12153f8d0c671c993a45c093985747ef380 100644
--- a/shukan/ShukanController.java
+++ b/shukan/ShukanController.java
@@ -18,9 +18,10 @@ public class ShukanController
     * @param canvas display area.
     * @param myView OpenGL context.
     */
-  public ShukanController (ShukanView canvas, ShukanData data)
+  public ShukanController (ShukanView canvas, ShukanViewBar bar, ShukanData data)
   {
     this.canvas = canvas;
+    this.bar = bar;
     this.data = data;
   }
 
@@ -203,29 +204,20 @@ public class ShukanController
   public void actionPerformed(ActionEvent e){
     if (e.getSource()== bar.buttons[0])
         System.out.println("save");
-
-
-      /**case bar.buttons[1]:
+    else if (e.getSource()== bar.buttons[1])
         System.out.println("back");
-        break;
-      case bar.buttons[2]:
+    else if (e.getSource()==bar.buttons[2])
         System.out.println("plus");
-        break;
-      case bar.buttons[3]:
+    else if (e.getSource()==bar.buttons[3])
         System.out.println("delete");
-        break;
-      case bar.buttons[4]:
+    else if (e.getSource()==bar.buttons[4])
         System.out.println("left");
-        break;
-      case bar.buttons[5]:
+    else if (e.getSource()==bar.buttons[5])
         System.out.println("right");
-        break;
-      case bar.buttons[6]:
+    else if (e.getSource()==bar.buttons[6])
         System.out.println("export");
-        break;
-      case bar.buttons[7]:
+    else if (e.getSource()==bar.buttons[7])
         System.out.println("parameter");
-        break;*/
 
   }
 }
diff --git a/shukan/ShukanViewBar.java b/shukan/ShukanViewBar.java
index 25b5e18f16d0bc15582ff7fd95ebab05f6bb0563..c86534619e9e8c8dcba10a41ac0399498111a7ae 100644
--- a/shukan/ShukanViewBar.java
+++ b/shukan/ShukanViewBar.java
@@ -4,10 +4,7 @@ import javax.swing.*;
 import java.awt.*;
 
 public class ShukanViewBar extends JPanel {
-    /** File manager */
-    private ShukanIO myIO = null;
-    /** Displayed data */
-    private ShukanData data = null;
+
     /** Name of the images files for the buttons of the toolbar */
     private String[] imagesName = {"save", "back", "plus", "delete", "left", "right", "export", "parameter"};
     /** Buttons of the toolbar */
@@ -17,20 +14,22 @@ public class ShukanViewBar extends JPanel {
     /** height in pixel of the toolbar */
     private int height;
 
-    public ShukanViewBar(ShukanIO myIO, ShukanData data, int height){
-        this.myIO = myIO;
-        this.data = data;
+    public ShukanViewBar(int height){
+
         this.height = height;
 
         for(int i = 0; i<imagesName.length;i++){
             buttons[i] = new JButton("", new ImageIcon("data/images/"+imagesName[i]+imagesExtension));
             buttons[i].setPreferredSize(new Dimension(80,80));
-            //buttons[i].addActionListener(...);
             add(buttons[i]);
         }
     }
 
-
     public int getHeight(){return height;}
 
+    public void addActionListener(ShukanController controller){
+        for(int i =0; i<imagesName.length; i++){
+            buttons[i].addActionListener(controller);
+        }
+    }
 }