00001
00021
00022
00023
00024
00025 #ifndef __SYNFIG_APP_ACTION_LAYERREMOVE_H
00026 #define __SYNFIG_APP_ACTION_LAYERREMOVE_H
00027
00028
00029
00030 #include <synfig/layer.h>
00031 #include <synfigapp/action.h>
00032 #include <list>
00033
00034
00035
00036
00037
00038
00039
00040 namespace synfigapp {
00041
00042 class Instance;
00043
00044 namespace Action {
00045
00046 class LayerRemove :
00047 public Undoable,
00048 public CanvasSpecific
00049 {
00050 private:
00051
00052 std::list<std::pair<synfig::Layer::Handle,int> > layer_list;
00053
00054
00055
00056
00057 public:
00058
00059 LayerRemove();
00060
00061 static ParamVocab get_param_vocab();
00062 static bool is_candidate(const ParamList &x);
00063
00064 virtual bool set_param(const synfig::String& name, const Param &);
00065 virtual bool is_ready()const;
00066
00067 virtual void perform();
00068 virtual void undo();
00069
00070 ACTION_MODULE_EXT
00071 };
00072
00073 };
00074 };
00075
00076
00077
00078 #endif