+#ifndef ACTION_H_
+#define ACTION_H_
+
+#include <string>
+#include <sigc++/sigc++.h>
+
+class Builder;
+
+class Action
+{
+public:
+ sigc::signal<void> signal_done;
+
+ virtual int check()=0;
+ virtual ~Action() { }
+protected:
+ Builder &builder;
+
+ Action(Builder &b): builder(b) { }
+ void announce(const std::string &, const std::string &, const std::string &);
+};
+
+#endif