source: synfigstudio/trunk/fuentes/src/synfigapp/actions/layersetexcludefromrendering.h @ 481

Last change on this file since 481 was 481, checked in by jrpelegrina, 4 years ago

First release to xenial

File size: 2.5 KB
Line 
1/* === S Y N F I G ========================================================= */
2/*!     \file layersetexcludefromrendering.h
3**      \brief Template File
4**
5**      $Id$
6**
7**      \legal
8**      ......... ... 2013 Ivan Mahonin
9**
10**      This package is free software; you can redistribute it and/or
11**      modify it under the terms of the GNU General Public License as
12**      published by the Free Software Foundation; either version 2 of
13**      the License, or (at your option) any later version.
14**
15**      This package is distributed in the hope that it will be useful,
16**      but WITHOUT ANY WARRANTY; without even the implied warranty of
17**      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18**      General Public License for more details.
19**      \endlegal
20*/
21/* ========================================================================= */
22
23/* === S T A R T =========================================================== */
24
25#ifndef __SYNFIG_APP_ACTION_LAYERSETEXCLUDEFROMRENDERING_H
26#define __SYNFIG_APP_ACTION_LAYERSETEXCLUDEFROMRENDERING_H
27
28/* === H E A D E R S ======================================================= */
29
30#include <synfig/layer.h>
31#include <synfigapp/action.h>
32
33/* === M A C R O S ========================================================= */
34
35/* === T Y P E D E F S ===================================================== */
36
37/* === C L A S S E S & S T R U C T S ======================================= */
38
39namespace synfigapp {
40
41class Instance;
42
43namespace Action {
44
45class LayerSetExcludeFromRendering :
46        public Undoable,
47        public CanvasSpecific
48{
49private:
50
51        synfig::Layer::Handle layer;
52        bool new_state_set;
53        bool old_state;
54        bool new_state;
55
56public:
57
58        LayerSetExcludeFromRendering();
59
60        static ParamVocab get_param_vocab();
61        static bool is_candidate_for_exclude(const ParamList &x, bool new_state);
62        synfig::String get_local_name()const;
63
64        virtual bool set_param(const synfig::String& name, const Param &);
65        virtual bool is_ready()const;
66
67        virtual void perform();
68        virtual void undo();
69};
70
71#define ACTION_LAYERSETEXCLUDEFROMRENDERING_DECLARE(class_name) \
72        class class_name : public LayerSetExcludeFromRendering { \
73        public: \
74                static bool is_candidate(const ParamList &x); \
75                ACTION_MODULE_EXT \
76        }
77
78ACTION_LAYERSETEXCLUDEFROMRENDERING_DECLARE(LayerSetExcludeFromRenderingOn);
79ACTION_LAYERSETEXCLUDEFROMRENDERING_DECLARE(LayerSetExcludeFromRenderingOff);
80
81#undef ACTION_LAYERSETEXCLUDEFROMRENDERING_DECLARE
82
83}; // END of namespace action
84}; // END of namespace studio
85
86/* === E N D =============================================================== */
87
88#endif
Note: See TracBrowser for help on using the repository browser.