+class FuncRequest {
+public:
+ /// just for putting thes things in std::container
+ FuncRequest();
+ /// actions without extra argument
+ explicit FuncRequest(kb_action act);
+ /// actions without extra argument
+ FuncRequest(kb_action act, int x, int y, mouse_button::state button);
+ /// actions with extra argument
+ FuncRequest(kb_action act, string const & arg);
+ /// actions without extra argument
+ FuncRequest(BufferView * bv, kb_action act);
+ /// actions with extra argument
+ FuncRequest(BufferView * bv, kb_action act, string const & arg);
+ /// for mouse events
+ FuncRequest(BufferView * bv, kb_action act,
+ int x, int y, mouse_button::state button);
+ /// for changing requests a bit
+ FuncRequest(FuncRequest const & cmd, string const & arg);
+ /// for changing requests a bit
+ FuncRequest(FuncRequest const & cmd, BufferView * bv);