diff --git a/WiiUseJ/src/wiiusej/WiiUseApi.java b/WiiUseJ/src/wiiusej/WiiUseApi.java
index 480c30d..b92ed4d 100644
--- a/WiiUseJ/src/wiiusej/WiiUseApi.java
+++ b/WiiUseJ/src/wiiusej/WiiUseApi.java
@@ -16,7 +16,7 @@
*/
package wiiusej;
-import wiiusej.wiiuseapievents.EventsGatherer;
+import wiiusej.wiiusejevents.utils.EventsGatherer;
/**
* Singleton used to manipulate WiiUse Api.
diff --git a/WiiUseJ/src/wiiusej/WiiUseApiManager.java b/WiiUseJ/src/wiiusej/WiiUseApiManager.java
index 435c68d..ad0b83a 100644
--- a/WiiUseJ/src/wiiusej/WiiUseApiManager.java
+++ b/WiiUseJ/src/wiiusej/WiiUseApiManager.java
@@ -20,10 +20,10 @@ import java.util.concurrent.atomic.AtomicBoolean;
import javax.swing.event.EventListenerList;
-import wiiusej.wiiuseapievents.EventsGatherer;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiiUseApiEvent;
-import wiiusej.wiiuseapievents.WiiUseApiListener;
+import wiiusej.wiiusejevents.utils.EventsGatherer;
+import wiiusej.wiiusejevents.utils.WiiUseApiListener;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.WiiUseApiEvent;
/**
* Class that manages the use of Wiiuse API.
diff --git a/WiiUseJ/src/wiiusej/Wiimote.java b/WiiUseJ/src/wiiusej/Wiimote.java
index dbbe291..639ca99 100644
--- a/WiiUseJ/src/wiiusej/Wiimote.java
+++ b/WiiUseJ/src/wiiusej/Wiimote.java
@@ -18,12 +18,12 @@ package wiiusej;
import javax.swing.event.EventListenerList;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiiUseApiEvent;
-import wiiusej.wiiuseapievents.WiiUseApiListener;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.utils.WiiUseApiListener;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.WiiUseApiEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.WiimoteEvent;
/**
* Class that represents a wiimote. You can register as an observer of this
diff --git a/WiiUseJ/src/wiiusej/test/Tests.java b/WiiUseJ/src/wiiusej/test/Tests.java
index d18ccae..2f05773 100644
--- a/WiiUseJ/src/wiiusej/test/Tests.java
+++ b/WiiUseJ/src/wiiusej/test/Tests.java
@@ -23,12 +23,12 @@ import java.awt.event.InputEvent;
import wiiusej.WiiUseApiManager;
import wiiusej.Wiimote;
import wiiusej.values.IRSource;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This class used to test WiiuseJ.
diff --git a/WiiUseJ/src/wiiusej/test/WiiuseJGuiTest.java b/WiiUseJ/src/wiiusej/test/WiiuseJGuiTest.java
index f2b129b..060eb93 100644
--- a/WiiUseJ/src/wiiusej/test/WiiuseJGuiTest.java
+++ b/WiiUseJ/src/wiiusej/test/WiiuseJGuiTest.java
@@ -28,12 +28,12 @@ import wiiusej.utils.ButtonsEventPanel;
import wiiusej.utils.GForcePanel;
import wiiusej.utils.IRPanel;
import wiiusej.utils.OrientationPanel;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* Gui class to test WiiuseJ.
diff --git a/WiiUseJ/src/wiiusej/utils/AccelerationPanel.java b/WiiUseJ/src/wiiusej/utils/AccelerationPanel.java
index 1be340e..6f14b74 100644
--- a/WiiUseJ/src/wiiusej/utils/AccelerationPanel.java
+++ b/WiiUseJ/src/wiiusej/utils/AccelerationPanel.java
@@ -26,12 +26,12 @@ import java.awt.geom.AffineTransform;
import java.util.ArrayList;
import wiiusej.values.RawAcceleration;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This panel is used to watch raw acceleration values from a MotionSensingEvent.
diff --git a/WiiUseJ/src/wiiusej/utils/ButtonsEventPanel.java b/WiiUseJ/src/wiiusej/utils/ButtonsEventPanel.java
index 8c0ab04..e4456fa 100644
--- a/WiiUseJ/src/wiiusej/utils/ButtonsEventPanel.java
+++ b/WiiUseJ/src/wiiusej/utils/ButtonsEventPanel.java
@@ -26,13 +26,13 @@ import java.awt.Shape;
import java.awt.Toolkit;
import java.awt.geom.AffineTransform;
-import wiiusej.wiiuseapievents.ButtonsEvent;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.ButtonsEvent;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This panel is used to see what buttons are pressed.
diff --git a/WiiUseJ/src/wiiusej/utils/GForcePanel.java b/WiiUseJ/src/wiiusej/utils/GForcePanel.java
index c5ed5be..880c332 100644
--- a/WiiUseJ/src/wiiusej/utils/GForcePanel.java
+++ b/WiiUseJ/src/wiiusej/utils/GForcePanel.java
@@ -26,12 +26,12 @@ import java.awt.geom.AffineTransform;
import java.util.ArrayList;
import wiiusej.values.GForce;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This panel is used to watch gravity force values from a MotionSensingEvent.
diff --git a/WiiUseJ/src/wiiusej/utils/IRPanel.java b/WiiUseJ/src/wiiusej/utils/IRPanel.java
index 2b14f9f..ef2a576 100644
--- a/WiiUseJ/src/wiiusej/utils/IRPanel.java
+++ b/WiiUseJ/src/wiiusej/utils/IRPanel.java
@@ -25,12 +25,12 @@ import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.geom.AffineTransform;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This panel is used to see what the IR camera of the wiimote sees.
diff --git a/WiiUseJ/src/wiiusej/utils/OrientationPanel.java b/WiiUseJ/src/wiiusej/utils/OrientationPanel.java
index a4fdd1c..3adf387 100644
--- a/WiiUseJ/src/wiiusej/utils/OrientationPanel.java
+++ b/WiiUseJ/src/wiiusej/utils/OrientationPanel.java
@@ -26,12 +26,12 @@ import java.awt.geom.AffineTransform;
import java.util.ArrayList;
import wiiusej.values.Orientation;
-import wiiusej.wiiuseapievents.DisconnectionEvent;
-import wiiusej.wiiuseapievents.WiimoteButtonsEvent;
-import wiiusej.wiiuseapievents.IREvent;
-import wiiusej.wiiuseapievents.MotionSensingEvent;
-import wiiusej.wiiuseapievents.StatusEvent;
-import wiiusej.wiiuseapievents.WiimoteListener;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.utils.WiimoteListener;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This panel is used to watch orientation values from a MotionSensingEvent.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/ButtonsEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/ButtonsEvent.java
similarity index 94%
rename from WiiUseJ/src/wiiusej/wiiusejevents/ButtonsEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/ButtonsEvent.java
index 2a3066c..a6a61bf 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/ButtonsEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/ButtonsEvent.java
@@ -14,7 +14,9 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.physicalevents;
+
+import wiiusej.wiiusejevents.GenericEvent;
/**
* Class which represents a buttons event.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/IREvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/IREvent.java
similarity index 94%
rename from WiiUseJ/src/wiiusej/wiiusejevents/IREvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/IREvent.java
index cdf753e..fee9b67 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/IREvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/IREvent.java
@@ -14,9 +14,10 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.physicalevents;
import wiiusej.values.IRSource;
+import wiiusej.wiiusejevents.GenericEvent;
/**
* Class which represents an IR event.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/MotionSensingEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/MotionSensingEvent.java
similarity index 94%
rename from WiiUseJ/src/wiiusej/wiiusejevents/MotionSensingEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/MotionSensingEvent.java
index b3b5fa8..b6da5eb 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/MotionSensingEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/MotionSensingEvent.java
@@ -14,11 +14,12 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.physicalevents;
import wiiusej.values.GForce;
import wiiusej.values.Orientation;
import wiiusej.values.RawAcceleration;
+import wiiusej.wiiusejevents.GenericEvent;
/**
* Class which represents a motion sensing event.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukButtonsEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/NunchukButtonsEvent.java
similarity index 94%
rename from WiiUseJ/src/wiiusej/wiiusejevents/NunchukButtonsEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/NunchukButtonsEvent.java
index a9d65e4..fb8a2da 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukButtonsEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/NunchukButtonsEvent.java
@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.physicalevents;
/**
* Class which represents a buttons event for a generic event. It means buttons
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteButtonsEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/WiimoteButtonsEvent.java
similarity index 95%
rename from WiiUseJ/src/wiiusej/wiiusejevents/WiimoteButtonsEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/WiimoteButtonsEvent.java
index 874499d..7ab19e7 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteButtonsEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/physicalevents/WiimoteButtonsEvent.java
@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.physicalevents;
/**
* Class which represents a buttons event for a generic event. It means buttons
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/EventsGatherer.java b/WiiUseJ/src/wiiusej/wiiusejevents/utils/EventsGatherer.java
similarity index 91%
rename from WiiUseJ/src/wiiusej/wiiusejevents/EventsGatherer.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/utils/EventsGatherer.java
index d1f4d7a..641df9f 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/EventsGatherer.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/utils/EventsGatherer.java
@@ -14,14 +14,14 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.utils;
-import wiiusej.wiiusejevents.DisconnectionEvent;
-import wiiusej.wiiusejevents.NunchukInsertedEvent;
-import wiiusej.wiiusejevents.NunchukRemovedEvent;
-import wiiusej.wiiusejevents.StatusEvent;
-import wiiusej.wiiusejevents.WiiUseApiEvent;
-import wiiusej.wiiusejevents.WiimoteEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.NunchukInsertedEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.NunchukRemovedEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.WiiUseApiEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.WiimoteEvent;
/**
* This class is used to gather events during a call to the Wiiuse API.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiListener.java b/WiiUseJ/src/wiiusej/wiiusejevents/utils/WiiUseApiListener.java
similarity index 89%
rename from WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiListener.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/utils/WiiUseApiListener.java
index 4f68837..c73e9dc 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiListener.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/utils/WiiUseApiListener.java
@@ -14,7 +14,9 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.utils;
+
+import wiiusej.wiiusejevents.wiiusejapievents.WiiUseApiEvent;
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteListener.java b/WiiUseJ/src/wiiusej/wiiusejevents/utils/WiimoteListener.java
similarity index 84%
rename from WiiUseJ/src/wiiusej/wiiusejevents/WiimoteListener.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/utils/WiimoteListener.java
index 32b754f..7a38faf 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteListener.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/utils/WiimoteListener.java
@@ -14,7 +14,13 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.utils;
+
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.DisconnectionEvent;
+import wiiusej.wiiusejevents.wiiusejapievents.StatusEvent;
/**
* This is the interface to implement to listen to events from wiimotes.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/DisconnectionEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/DisconnectionEvent.java
similarity index 92%
rename from WiiUseJ/src/wiiusej/wiiusejevents/DisconnectionEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/DisconnectionEvent.java
index 1868cb3..4020a7e 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/DisconnectionEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/DisconnectionEvent.java
@@ -14,7 +14,8 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
+
/**
* Class representing a disconnection event.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukInsertedEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukInsertedEvent.java
similarity index 93%
rename from WiiUseJ/src/wiiusej/wiiusejevents/NunchukInsertedEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukInsertedEvent.java
index 566f1aa..9ddc77f 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukInsertedEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukInsertedEvent.java
@@ -14,7 +14,8 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
+
/**
* Event that represents the connection of a nunchuk to a wiimote.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukRemovedEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukRemovedEvent.java
similarity index 93%
rename from WiiUseJ/src/wiiusej/wiiusejevents/NunchukRemovedEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukRemovedEvent.java
index 8922155..f1a9930 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/NunchukRemovedEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/NunchukRemovedEvent.java
@@ -14,7 +14,8 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
+
/**
* Event that represents the connection of a nunchuk to a wiimote.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/StatusEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/StatusEvent.java
similarity index 95%
rename from WiiUseJ/src/wiiusej/wiiusejevents/StatusEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/StatusEvent.java
index c572937..a996d4f 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/StatusEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/StatusEvent.java
@@ -14,7 +14,8 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
+
/**
* Class used to represent a status event. This class is used to know what are
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiiUseApiEvent.java
similarity index 91%
rename from WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiiUseApiEvent.java
index f1a129f..1899ec3 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/WiiUseApiEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiiUseApiEvent.java
@@ -14,7 +14,9 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
+
+import wiiusej.wiiusejevents.GenericEvent;
/**
* This class describes the structure of an event from the WiiUse API event.
diff --git a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteEvent.java b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiimoteEvent.java
similarity index 93%
rename from WiiUseJ/src/wiiusej/wiiusejevents/WiimoteEvent.java
rename to WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiimoteEvent.java
index 2bec47e..49b0b08 100644
--- a/WiiUseJ/src/wiiusej/wiiusejevents/WiimoteEvent.java
+++ b/WiiUseJ/src/wiiusej/wiiusejevents/wiiusejapievents/WiimoteEvent.java
@@ -14,9 +14,12 @@
* You should have received a copy of the GNU General Public License
* along with WiiuseJ. If not, see .
*/
-package wiiusej.wiiusejevents;
+package wiiusej.wiiusejevents.wiiusejapievents;
import wiiusej.values.Expansion;
+import wiiusej.wiiusejevents.physicalevents.IREvent;
+import wiiusej.wiiusejevents.physicalevents.MotionSensingEvent;
+import wiiusej.wiiusejevents.physicalevents.WiimoteButtonsEvent;
/**
* Class that is a bean to be filled by the wiiuse API on an event that occurs