diff --git a/build/wxExtendLib.vcxproj b/build/wxExtendLib.vcxproj
index ec8a8a8..a3045ec 100644
--- a/build/wxExtendLib.vcxproj
+++ b/build/wxExtendLib.vcxproj
@@ -39,6 +39,7 @@
+
diff --git a/build/wxExtendLib.vcxproj.filters b/build/wxExtendLib.vcxproj.filters
index 3c471d8..7e7b484 100644
--- a/build/wxExtendLib.vcxproj.filters
+++ b/build/wxExtendLib.vcxproj.filters
@@ -81,6 +81,9 @@
Header Files
+
+ Header Files
+
diff --git a/include/wxex/object.h b/include/wxex/object.h
new file mode 100644
index 0000000..a37dbbb
--- /dev/null
+++ b/include/wxex/object.h
@@ -0,0 +1,55 @@
+/*
+ Copyright 2015-2016 Amebis
+
+ This file is part of wxExtend.
+
+ wxExtend is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ wxExtend is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with wxExtend. If not, see .
+*/
+
+#pragma once
+
+#include "common.h"
+
+#include
+
+
+///
+/// Helper template for event user data
+///
+template
+class wxObjectWithData : public wxObject
+{
+public:
+ ///
+ /// Default constructor
+ ///
+ inline wxObjectWithData() {}
+
+ ///
+ /// Construct object with data
+ ///
+ /// \param[in] data Data to initialize object with
+ ///
+ inline wxObjectWithData(const T &data) : m_data(data) {}
+
+ ///
+ /// Construct object with data
+ ///
+ /// \param[in] data Data to move to object
+ ///
+ inline wxObjectWithData(T &&data) : m_data(std::move(data)) {}
+
+public:
+ T m_data; ///< Data
+};
diff --git a/src/stdafx.h b/src/stdafx.h
index 18cfab5..97e48fd 100644
--- a/src/stdafx.h
+++ b/src/stdafx.h
@@ -27,6 +27,7 @@
#include "../include/wxex/comutils.h"
#include "../include/wxex/crypto.h"
#include "../include/wxex/hex.h"
+#include "../include/wxex/object.h"
#include "../include/wxex/url.h"
#include "../include/wxex/valhex.h"
#include "../include/wxex/xml.h"