diff --git a/build/vc2013/nana.vcxproj b/build/vc2013/nana.vcxproj
index 9cdc46b0..610054bc 100644
--- a/build/vc2013/nana.vcxproj
+++ b/build/vc2013/nana.vcxproj
@@ -222,6 +222,7 @@
+
@@ -257,9 +258,129 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/build/vc2013/nana.vcxproj.filters b/build/vc2013/nana.vcxproj.filters
index ac073316..6ade66c7 100644
--- a/build/vc2013/nana.vcxproj.filters
+++ b/build/vc2013/nana.vcxproj.filters
@@ -58,6 +58,51 @@
{e95b4a72-643f-4416-af95-b0bbaf7f0c57}
+
+ {d421a05b-b868-4c3d-bdac-ff57d09f8d07}
+
+
+ {64c22f90-dce2-40dc-be98-edc9fe8951e8}
+
+
+ {91301ff5-79ac-40cc-a6db-bca2097ea763}
+
+
+ {81c62a28-ef5f-43f7-a6ce-e6c186cb411a}
+
+
+ {4a1db6f0-a4ee-4514-8e89-54ef9d52e3b8}
+
+
+ {c92e890a-ffd5-4efd-8b37-78ed9bbea1e1}
+
+
+ {63401f37-26a3-423e-87e6-6840344c3056}
+
+
+ {61385c08-f06b-4cf3-8e05-9b47d546164b}
+
+
+ {e9eadc97-4a14-4a4e-bb52-52d3a20e2693}
+
+
+ {5667eac1-0887-4936-9502-eac4dd8c1c1d}
+
+
+ {e6c4a4d9-b4b5-4c56-bb2a-486f3f777ecb}
+
+
+ {ac132633-f80c-4983-8e47-fa7fc17f666e}
+
+
+ {ee3e9e63-7221-409e-9659-25864e576e16}
+
+
+ {ef87057b-dff2-40aa-a05e-9dcd0b335c30}
+
+
+ {8ea232cf-bd7c-47e3-a694-6a8898b677d7}
+
@@ -74,6 +119,9 @@
Source Files\nana\detail\win32
+
+
+ Source Files\nana\filesystem
Source Files\nana\filesystem
@@ -300,18 +348,375 @@
Source Files\nana\gui\widgets
-
- Source Files\nana\filesystem
+
+
+
+ Source Files\nana\gui\widgets
-
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\widgets
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui\detail
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui
+
+
+ Header Files\gui\widgets\detail
+
+
+ Header Files\gui\widgets\detail
+
+
+ Header Files\gui\widgets\skeletons
+
+
+ Header Files\gui\widgets\skeletons
+
+
+ Header Files\gui\widgets\skeletons
+
+
+ Header Files\gui\widgets\skeletons
+
+
+ Header Files\gui\widgets\skeletons
+
+
Header Files
-
-
-
+
Header Files
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files\detail\linux_X11
+
+
+ Header Files\detail\linux_X11
+
+
+ Header Files\detail\linux_X11
+
+
+ Header Files\detail\win32
+
+
+ Header Files\extrlib
+
+
+ Header Files\extrlib
+
+
+ Header Files\extrlib
+
+
+ Header Files\extrlib
+
+
+ Header Files\filesystem
+
+
+ Header Files\filesystem
+
+
+ Header Files\filesystem
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\paint\detail
+
+
+ Header Files\pat
+
+
+ Header Files\system
+
+
+ Header Files\system
+
+
+ Header Files\system
+
+
+ Header Files\system
+
+
+ Header Files\threads
+
+
+ Header Files\gui\widgets
+
-
\ No newline at end of file
+
diff --git a/build/vc2015/nana.vcxproj b/build/vc2015/nana.vcxproj
index 94b72562..d4f7f5d3 100644
--- a/build/vc2015/nana.vcxproj
+++ b/build/vc2015/nana.vcxproj
@@ -223,6 +223,7 @@
+
@@ -257,9 +258,6 @@
-
-
-
diff --git a/build/vc2015/nana.vcxproj.filters b/build/vc2015/nana.vcxproj.filters
index cb51dab8..81495341 100644
--- a/build/vc2015/nana.vcxproj.filters
+++ b/build/vc2015/nana.vcxproj.filters
@@ -303,10 +303,8 @@
Source Files\nana\filesystem
-
-
-
- Header Files
-
+
+ Source Files\nana\gui\widgets
+
\ No newline at end of file
diff --git a/include/nana/gui/widgets/group.hpp b/include/nana/gui/widgets/group.hpp
new file mode 100644
index 00000000..19cb6dce
--- /dev/null
+++ b/include/nana/gui/widgets/group.hpp
@@ -0,0 +1,48 @@
+/**
+ * A group widget implementation
+ * Nana C++ Library(http://www.nanaro.org)
+ * Copyright(C) 2015 Jinhao(cnjinhao@hotmail.com)
+ *
+ * Distributed under the Boost Software License, Version 1.0.
+ * (See accompanying file LICENSE_1_0.txt or copy at
+ * http://www.boost.org/LICENSE_1_0.txt)
+ *
+ * @file: nana/gui/widgets/group.hpp
+ *
+ * @contributors: Stefan Pfeifer (st-321), Jinhao, Ariel Vina-Rodriguez (qPCR4vir)
+ *
+ * @brief group is a widget used to visually group and layout other widgets.
+ */
+
+#ifndef NANA_GUI_WIDGETS_GROUP_HPP
+#define NANA_GUI_WIDGETS_GROUP_HPP
+
+#include
+#include
+#include
+#include
+#include
+
+namespace nana{
+ class group
+ : public panel
+ {
+ place plc_outer{*this};
+ panel content {*this};
+ label titel/* {*this}*/;
+ place plc_inner{content};
+ unsigned int gap;
+ public:
+ group( window parent, ///<
+ string titel_ ={STR("")}, ///<
+ bool format =false, ///< Use a formated label?
+ unsigned gap =2, ///< betwen the content and the external limit
+ rectangle r ={} ///<
+ );
+ place& plc (){ return plc_inner; }
+ window inner(){ return content; }
+ label& lbl (){ return titel; }
+ };
+
+}//end namespace nana
+#endif
diff --git a/source/gui/widgets/group.cpp b/source/gui/widgets/group.cpp
new file mode 100644
index 00000000..b4905afe
--- /dev/null
+++ b/source/gui/widgets/group.cpp
@@ -0,0 +1,63 @@
+/**
+ * A group widget implementation
+ * Nana C++ Library(http://www.nanaro.org)
+ * Copyright(C) 2015 Jinhao(cnjinhao@hotmail.com)
+ *
+ * Distributed under the Boost Software License, Version 1.0.
+ * (See accompanying file LICENSE_1_0.txt or copy at
+ * http://www.boost.org/LICENSE_1_0.txt)
+ *
+ * @file: nana/gui/widgets/group.cpp
+ *
+ * @contributors: Stefan Pfeifer (st-321), Jinhao, Ariel Vina-Rodriguez (qPCR4vir)
+ *
+ * @brief group is a widget used to visually group and layout other widgets.
+ */
+
+
+#include
+
+namespace nana{
+ group::group( window parent, ///<
+ string titel_ /*={}*/, ///<
+ bool format /*=false*/, ///<
+ unsigned gap /*=2*/, ///<
+ rectangle r /*={} */ ///<
+ )
+ : panel (parent, r),
+ titel (*this, titel_)
+ {
+ titel.format(format);
+ ::nana::size sz = titel.measure(1000);
+ std::stringstream ft;
+
+ ft << "vertical margin=[0," << gap << "," << gap << "," << gap << "]"
+ << " >"
+ << " ";
+ plc_outer.div(ft.str().c_str());
+
+ plc_outer["titel" ] << titel;
+ plc_outer["content"] << content;
+ plc_outer.collocate();
+
+ color pbg = API::bgcolor( parent);
+ titel.bgcolor(pbg.blend(colors::black, 0.975) );
+ color bg=pbg.blend(colors::black, 0.950 );
+ bgcolor(pbg);
+ content.bgcolor(bg);
+
+ drawing dw(*this);
+
+ // This drawing function is owner by the onwer of dw (the outer panel of the group widget), not by dw !!
+ dw.draw([gap,sz,bg,pbg](paint::graphics& graph)
+ {
+ graph.rectangle(true, pbg);
+ graph.round_rectangle(rectangle( point ( gap-1 , sz.height/2 ),
+ nana::size (graph.width()-2*(gap-1), graph.height()-sz.height/2-(gap-1))
+ ),
+ 3,3, colors::gray_border, true, bg);
+ });
+ }
+
+}//end namespace nana
+