Author: tschmitz
Date: Thu Aug 4 00:00:19 2011
New Revision: 50576
URL: http://svn.gna.org/viewcvs/wesnoth?rev=50576&view=rev
Log:
Changed private inheritance into composition.
Modified:
trunk/src/whiteboard/mapbuilder_visitor.hpp
trunk/src/whiteboard/validate_visitor.cpp
trunk/src/whiteboard/validate_visitor.hpp
Modified: trunk/src/whiteboard/mapbuilder_visitor.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/whiteboard/mapbuilder_visitor.hpp?rev=50576&r1=50575&r2=50576&view=diff
==============================================================================
--- trunk/src/whiteboard/mapbuilder_visitor.hpp (original)
+++ trunk/src/whiteboard/mapbuilder_visitor.hpp Thu Aug 4 00:00:19 2011
@@ -36,10 +36,12 @@
* and reverts all changes on destruction.
*/
class mapbuilder_visitor
- : protected visitor
+ : private visitor
, private enable_visit_all<mapbuilder_visitor>
{
friend class enable_visit_all<mapbuilder_visitor>;
+
+ friend class validate_visitor;
public:
mapbuilder_visitor(unit_map& unit_map);
@@ -52,7 +54,7 @@
*/
void build_map();
-protected:
+private:
virtual void visit_move(move_ptr move);
virtual void visit_attack(attack_ptr attack);
virtual void visit_recruit(recruit_ptr recruit);
@@ -69,9 +71,6 @@
//Helper fcn: Temporarily resets all units' moves to max EXCEPT for
//the ones controlled by the player whose turn it is currently.
void reset_moves();
-
-private:
- void visit_all() {enable_visit_all<mapbuilder_visitor>::visit_all();}
void restore_normal_map();
Modified: trunk/src/whiteboard/validate_visitor.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/whiteboard/validate_visitor.cpp?rev=50576&r1=50575&r2=50576&view=diff
==============================================================================
--- trunk/src/whiteboard/validate_visitor.cpp (original)
+++ trunk/src/whiteboard/validate_visitor.cpp Thu Aug 4 00:00:19 2011
@@ -38,7 +38,7 @@
{
validate_visitor::validate_visitor(unit_map& unit_map)
- : mapbuilder_visitor(unit_map)
+ : builder_(unit_map)
, viewer_actions_(*viewer_actions())
, actions_to_erase_()
, arg_itor_()
@@ -48,13 +48,12 @@
validate_visitor::~validate_visitor()
{
- //~mapbuilder_visitor() gets called here automatically
}
bool validate_visitor::validate_actions()
{
//Temporarily reset all units' moves to full EXCEPT for the ones on
viewer_side().
- reset_moves(); //< protected fcn inherited from mapbuilder_visitor
+ builder_.reset_moves();
visit_all();
@@ -171,7 +170,7 @@
// Now call the superclass to apply the result of this move to
the unit map,
// so that further pathfinding takes it into account.
move->set_valid(true);
- mapbuilder_visitor::visit_move(move);
+ builder_.visit_move(move);
break;
case OBSTRUCTED:
move->set_valid(false);
@@ -253,7 +252,7 @@
if (recruit->is_valid())
{
- mapbuilder_visitor::visit_recruit(recruit);
+ builder_.visit_recruit(recruit);
}
else
{
@@ -300,7 +299,7 @@
if (recall->is_valid())
{
- mapbuilder_visitor::visit_recall(recall);
+ builder_.visit_recall(recall);
}
else
{
@@ -346,7 +345,7 @@
{
// Now call the superclass to apply the result of this move to
the unit map,
// so that further pathfinding takes it into account.
- mapbuilder_visitor::visit_suppose_dead(sup_d);
+ builder_.visit_suppose_dead(sup_d);
}
else
{
Modified: trunk/src/whiteboard/validate_visitor.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/whiteboard/validate_visitor.hpp?rev=50576&r1=50575&r2=50576&view=diff
==============================================================================
--- trunk/src/whiteboard/validate_visitor.hpp (original)
+++ trunk/src/whiteboard/validate_visitor.hpp Thu Aug 4 00:00:19 2011
@@ -35,7 +35,7 @@
* * Some invalid actions are deleted.
*/
class validate_visitor
- : private mapbuilder_visitor
+ : private visitor
, private enable_visit_all<validate_visitor>
{
friend class enable_visit_all<validate_visitor>;
@@ -62,9 +62,8 @@
//"Inherited" from enable_visit_all
bool visit(size_t team_index, team& t, side_actions& sa,
side_actions::iterator itor)
{ arg_itor_=itor; return
visitor::visit(team_index,t,sa,itor); }
- using mapbuilder_visitor::pre_visit_team;
- using enable_visit_all<validate_visitor>::post_visit_team;
- using enable_visit_all<validate_visitor>::visit_all;
+
+ mapbuilder_visitor builder_;
side_actions& viewer_actions_;
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits