diff --git a/.travis.yml b/.travis.yml
index 6a47d771..20ef6e32 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,8 +46,6 @@ before_install:
- cd ..
- git clone --depth=1 --branch=hotfix https://github.com/qPCR4vir/nana-demo.git nana-demo
- export PATH="$HOME/bin:$PATH"
-
- #- mkdir ~/bin #it seemd that a bin already exists from 20170901
- wget --no-check-certificate --no-clobber -O /tmp/tools/cmake https://cmake.org/files/v3.12/cmake-3.12.0-rc3-Linux-x86_64.sh || true
- chmod -R +x /tmp/tools
diff --git a/build/vc2017/nana.vcxproj b/build/vc2017/nana.vcxproj
index 911548d5..24f5ef80 100644
--- a/build/vc2017/nana.vcxproj
+++ b/build/vc2017/nana.vcxproj
@@ -256,6 +256,7 @@
+
diff --git a/build/vc2017/nana.vcxproj.filters b/build/vc2017/nana.vcxproj.filters
index e88f7ed3..4923833d 100644
--- a/build/vc2017/nana.vcxproj.filters
+++ b/build/vc2017/nana.vcxproj.filters
@@ -474,6 +474,9 @@
Include
+
+ Include\gui
+
diff --git a/include/nana/gui/dragdrop.hpp b/include/nana/gui/dragdrop.hpp
index 1eeb9541..70c91013 100644
--- a/include/nana/gui/dragdrop.hpp
+++ b/include/nana/gui/dragdrop.hpp
@@ -40,7 +40,16 @@ namespace nana
simple_dragdrop(simple_dragdrop&&) = delete;
simple_dragdrop& operator=(simple_dragdrop&&) = delete;
public:
- simple_dragdrop(window source);
+ explicit simple_dragdrop(window source);
+ simple_dragdrop(window drag_origin,
+ std::function when,
+ window drop_target,
+ std::function how)
+ : simple_dragdrop{drag_origin}
+ {
+ condition(when);
+ make_drop(drop_target, how);
+ }
~simple_dragdrop();
/// Condition checker
diff --git a/include/nana/gui/widgets/group.hpp b/include/nana/gui/widgets/group.hpp
index d62a7abf..43dd5e85 100644
--- a/include/nana/gui/widgets/group.hpp
+++ b/include/nana/gui/widgets/group.hpp
@@ -59,9 +59,8 @@ namespace nana{
group(window parent, const rectangle& = {}, bool visible = true);
/// The construction that creates the widget and set the title or caption
-
- group(window parent, ///< a handle to the parent
- ::std::string title, ///< caption of the group
+ group(window parent, ///< a handle to the parent
+ ::std::string title, ///< caption of the group
bool formatted = false, ///< Enable/disable the formatted text for the title
unsigned gap = 2, ///< between the content and the external limit
const rectangle& r = {} ,
diff --git a/include/nana/gui/widgets/listbox.hpp b/include/nana/gui/widgets/listbox.hpp
index 52680582..9a9b6206 100644
--- a/include/nana/gui/widgets/listbox.hpp
+++ b/include/nana/gui/widgets/listbox.hpp
@@ -1465,7 +1465,7 @@ the nana::detail::basic_window member pointer scheme
size_type column_size() const;
/// Move column to view_position
- void move_column(size_type abs_pos, size_type view_pos);
+ void move_column(size_type abs_pos, size_type view_pos);
/// Sort columns in range first_col to last_col inclusive using the values from a row
void reorder_columns(size_type first_col,
diff --git a/include/nana/gui/widgets/treebox.hpp b/include/nana/gui/widgets/treebox.hpp
index 4d832c27..c1edbadf 100644
--- a/include/nana/gui/widgets/treebox.hpp
+++ b/include/nana/gui/widgets/treebox.hpp
@@ -350,9 +350,9 @@ namespace nana
/// \brief Displays a hierarchical list of items, such as the files and directories on a disk.
/// See also in [documentation](http://nanapro.org/en-us/documentation/widgets/treebox.htm)
class treebox
- :public widget_object < category::widget_tag,
+ :public widget_object
+ drawerbase::treebox::treebox_events, drawerbase::treebox::scheme>
{
public:
/// A type refers to the item and is also used to iterate through the nodes.
diff --git a/source/gui/widgets/listbox.cpp b/source/gui/widgets/listbox.cpp
index 00e2052a..91ce34d8 100644
--- a/source/gui/widgets/listbox.cpp
+++ b/source/gui/widgets/listbox.cpp
@@ -549,9 +549,9 @@ namespace nana
if (!front) view++;
if (view >= cont_.size() ) return;
- auto i = std::find_if( cont_.begin(),
- cont_.end(),
- [&](const column& c){return col==c.index;});
+ auto i = std::find_if( cont_.begin(),
+ cont_.end(),
+ [&](const column& c){return col==c.index;});
if (i==cont_.end()) return;
@@ -4474,7 +4474,7 @@ namespace nana
essence_->stop_mouse_selection();
need_refresh = true;
}
-
+
if (operation_states::msup_deselect == essence_->operation.state)
{
essence_->operation.state = operation_states::none;
@@ -6193,7 +6193,7 @@ namespace nana
std::vector new_idx;
for(size_type i=first_col; i<=last_col; ++i) new_idx.push_back(i);
-
+
internal_scope_guard lock;
auto ip_row = this->at(row);
auto pnany=_m_ess().lister.anyobj(row,false);