00001
00021
00022
00023
00024
00025 #ifndef __SYNFIG_APP_ACTION_TIMEPOINTSMOVE_H
00026 #define __SYNFIG_APP_ACTION_TIMEPOINTSMOVE_H
00027
00028
00029
00030 #include <synfigapp/action.h>
00031 #include <synfig/time.h>
00032 #include <synfig/layer.h>
00033 #include <synfig/canvas.h>
00034 #include <synfigapp/value_desc.h>
00035
00036 #include <vector>
00037 #include <set>
00038
00039
00040
00041
00042
00043
00044
00045 namespace synfigapp {
00046
00047 class Instance;
00048
00049 namespace Action {
00050
00051 class TimepointsMove :
00052 public Super
00053 {
00054 private:
00055
00056
00057 std::vector<synfig::Layer::Handle> sel_layers;
00058 std::vector<synfig::Canvas::Handle> sel_canvases;
00059 std::vector<synfigapp::ValueDesc> sel_values;
00060 std::set<synfig::Time> sel_times;
00061
00062 synfig::Time timemove;
00063
00064 public:
00065
00066 TimepointsMove();
00067
00068 static ParamVocab get_param_vocab();
00069 static bool is_candidate(const ParamList &x);
00070
00071 virtual bool set_param(const synfig::String& name, const Param &);
00072 virtual bool is_ready()const;
00073
00074 virtual void prepare();
00075 virtual void perform();
00076
00077 ACTION_MODULE_EXT
00078 };
00079
00080 };
00081 };
00082
00083
00084
00085 #endif