X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fsynfigapp%2Fcanvasinterface.h;h=38643ac529797c976bed874cc85dd6e1c1e2bb0f;hb=c6af6e1c3816eb3b15c573089b32e6ae65cd2f49;hp=6def015df63c0743e2c38f04f464e7ea9fc57ea0;hpb=02252941b29de64037116f4d37991a38d9ff0d94;p=synfig.git diff --git a/synfig-studio/trunk/src/synfigapp/canvasinterface.h b/synfig-studio/trunk/src/synfigapp/canvasinterface.h index 6def015..38643ac 100644 --- a/synfig-studio/trunk/src/synfigapp/canvasinterface.h +++ b/synfig-studio/trunk/src/synfigapp/canvasinterface.h @@ -5,16 +5,17 @@ ** $Id: canvasinterface.h,v 1.1.1.1 2005/01/07 03:34:37 darco Exp $ ** ** \legal -** Copyright (c) 2002 Robert B. Quattlebaum Jr. +** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley ** -** This software and associated documentation -** are CONFIDENTIAL and PROPRIETARY property of -** the above-mentioned copyright holder. +** This package is free software; you can redistribute it and/or +** modify it under the terms of the GNU General Public License as +** published by the Free Software Foundation; either version 2 of +** the License, or (at your option) any later version. ** -** You may not copy, print, publish, or in any -** other way distribute this software without -** a prior written agreement with -** the copyright holder. +** This package is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +** General Public License for more details. ** \endlegal */ /* ========================================================================= */ @@ -46,16 +47,16 @@ namespace synfig { class ValueNode_DynamicList; class Waypoint; class GUIDSet; c namespace synfigapp { -namespace Action { class ParamList; class Param; class EditModeSet; }; +namespace Action { class ParamList; class Param; class EditModeSet; }; class Instance; class ValueDesc; - + class CanvasInterface : public etl::shared_object, public sigc::trackable { friend class Instance; friend class Action::EditModeSet; - + public: typedef EditMode Mode; @@ -81,7 +82,7 @@ private: sigc::signal signal_layer_new_description_; sigc::signal signal_canvas_added_; sigc::signal signal_canvas_removed_; - + sigc::signal signal_value_node_added_; sigc::signal signal_value_node_deleted_; sigc::signal signal_value_node_changed_; @@ -111,10 +112,10 @@ public: // Signal Interface //! Signal called when layer is raised. sigc::signal& signal_layer_raised() { return signal_layer_raised_; } - + //! Signal called when layer is lowered. sigc::signal& signal_layer_lowered() { return signal_layer_lowered_; } - + //! Signal called when layer has been inserted at a given position. sigc::signal& signal_layer_inserted() { return signal_layer_inserted_; } @@ -185,21 +186,21 @@ public: //! Changes the current SelectionManager object void set_selection_manager(const etl::handle &sm) { selection_manager_=sm; } - + //! Disables the selection manager void unset_selection_manager() { selection_manager_=new NullSelectionManager(); } - + //! Returns a handle to the current SelectionManager - const etl::handle &get_selection_manager()const { return selection_manager_; } + const etl::handle &get_selection_manager()const { return selection_manager_; } //! Changes the current UIInterface object void set_ui_interface(const etl::handle &uim) { ui_interface_=uim; } //! Disables the UIInterface void unset_ui_interface() { ui_interface_=new DefaultUIInterface(); } - + //! Returns a handle to the current UIInterface - const etl::handle &get_ui_interface() { return ui_interface_; } + const etl::handle &get_ui_interface() { return ui_interface_; } //! Returns the Canvas associated with this interface etl::handle get_canvas()const { return canvas_; } @@ -215,7 +216,7 @@ public: //! Changes the ID of the canvas. Undoable. bool set_id(const synfig::String &x); - + //! Convience function to retrieve the name of the canvas synfig::String get_name()const { return get_canvas()->get_name(); } @@ -227,23 +228,23 @@ public: //! Sets the current time void set_time(synfig::Time x); - + //! Retrieves the current time synfig::Time get_time()const; - + //! Changes the current time to the next keyframe void jump_to_next_keyframe(); //! Changes the current time to the next keyframe void jump_to_prev_keyframe(); - + void seek_frame(int frames); void seek_time(synfig::Time time); - + //! \writeme void refresh_current_values(); - + //! Sets the current editing mode /*! \see Mode */ void set_mode(Mode x); @@ -269,8 +270,8 @@ public: void set_rend_desc(const synfig::RendDesc &rend_desc); bool import(const synfig::String &filename, bool copy=false); - - + + void waypoint_duplicate(synfigapp::ValueDesc value_desc,synfig::Waypoint waypoint); void waypoint_remove(synfigapp::ValueDesc value_desc,synfig::Waypoint waypoint); @@ -297,7 +298,7 @@ public: PushMode(etl::loose_handle c, CanvasInterface::Mode mode): canvas_interface_(c.get()), old_mode_(canvas_interface_->get_mode()) { canvas_interface_->set_mode(mode); } - + ~PushMode() { canvas_interface_->set_mode(old_mode_); } }; // END of class PushMode