Date: Tuesday, July 26, 2011 @ 06:06:39
  Author: ibiru
Revision: 132798

add missing patch

Added:
  wesnoth/trunk/wesnoth-1.8.6-boost-foreach.patch

-----------------------------------+
 wesnoth-1.8.6-boost-foreach.patch |   70 ++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)

Added: wesnoth-1.8.6-boost-foreach.patch
===================================================================
--- wesnoth-1.8.6-boost-foreach.patch                           (rev 0)
+++ wesnoth-1.8.6-boost-foreach.patch   2011-07-26 10:06:39 UTC (rev 132798)
@@ -0,0 +1,70 @@
+--- wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp~  2011-07-21 
23:05:56.594879049 +0200
++++ wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp   2011-07-21 
23:28:07.540358742 +0200
+@@ -238,6 +238,17 @@ void ttree_view_node::clear()
+ 
+ struct ttree_view_node_implementation
+ {
++      template<class W, class It>
++      static W* find_at_aux(It begin, It end,
++                            const tpoint& coordinate, const bool 
must_be_active) {
++              for (It it = begin; it != end; ++it) {
++                      if(W* widget = it->find_at(coordinate, must_be_active)) 
{
++                              return widget;
++                      }
++              }
++              return NULL;
++      }
++
+       template<class W>
+       static W* find_at(
+                         typename tconst_duplicator<W, ttree_view_node>::type&
+@@ -255,13 +266,9 @@ struct ttree_view_node_implementation
+               }
+ 
+               typedef typename tconst_duplicator<W, ttree_view_node>::type 
thack;
+-              foreach(thack& node, tree_view_node.children_) {
+-                      if(W* widget = node.find_at(coordinate, 
must_be_active)) {
+-                              return widget;
+-                      }
+-              }
+-
+-              return NULL;
++              return find_at_aux<W>(tree_view_node.children_.begin(),
++                                    tree_view_node.children_.end(),
++                                    coordinate, must_be_active);
+       }
+ };
+ 
+@@ -313,7 +320,9 @@ tpoint ttree_view_node::get_current_size
+               return size;
+       }
+ 
+-      foreach(const ttree_view_node& node, children_) {
++      for (boost::ptr_vector<ttree_view_node>::const_iterator it
++             = children_.begin (); it != children_.end (); ++it) {
++              const ttree_view_node& node = *it;
+ 
+               if(node.grid_.get_visible() == twidget::INVISIBLE) {
+                       continue;
+@@ -344,7 +353,9 @@ tpoint ttree_view_node::get_unfolded_siz
+               size.x += (get_indention_level() - 1) * 
tree_view().indention_step_size_;
+       }
+ 
+-      foreach(const ttree_view_node& node, children_) {
++      for (boost::ptr_vector<ttree_view_node>::const_iterator it
++             = children_.begin (); it != children_.end (); ++it) {
++              const ttree_view_node& node = *it;
+ 
+               if(node.grid_.get_visible() == twidget::INVISIBLE) {
+                       continue;
+@@ -378,7 +389,9 @@ tpoint ttree_view_node::calculate_best_s
+ 
+       DBG_GUI_L << LOG_HEADER << " own grid best size " << best_size << ".\n";
+ 
+-      foreach(const ttree_view_node& node, children_) {
++      for (boost::ptr_vector<ttree_view_node>::const_iterator it
++             = children_.begin (); it != children_.end (); ++it) {
++              const ttree_view_node& node = *it;
+ 
+               if(node.grid_.get_visible() == twidget::INVISIBLE) {
+                       continue;

Reply via email to