X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Flayertreestore.h;fp=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Flayertreestore.h;h=0000000000000000000000000000000000000000;hb=a095981e18cc37a8ecc7cd237cc22b9c10329264;hp=5b33309f4e5d9fb67c74f8c1ae20ddc12d4d8369;hpb=9459638ad6797b8139f1e9f0715c96076dbf0890;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/layertreestore.h b/synfig-studio/trunk/src/gtkmm/layertreestore.h deleted file mode 100644 index 5b33309..0000000 --- a/synfig-studio/trunk/src/gtkmm/layertreestore.h +++ /dev/null @@ -1,226 +0,0 @@ -/* === S Y N F I G ========================================================= */ -/*! \file layertreestore.h -** \brief Template Header -** -** $Id$ -** -** \legal -** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley -** -** 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. -** -** 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 -*/ -/* ========================================================================= */ - -/* === S T A R T =========================================================== */ - -#ifndef __SYNFIG_STUDIO_LAYERTREESTORE_H -#define __SYNFIG_STUDIO_LAYERTREESTORE_H - -/* === H E A D E R S ======================================================= */ - -#include -#include -#include -#include -#include - -/* === M A C R O S ========================================================= */ - -/* === T Y P E D E F S ===================================================== */ - -/* === C L A S S E S & S T R U C T S ======================================= */ - -namespace studio { - -class LayerTreeStore : virtual public Gtk::TreeStore -{ - /* - -- ** -- P U B L I C T Y P E S --------------------------------------------- - */ - -public: - - class Model : public Gtk::TreeModel::ColumnRecord - { - public: - Gtk::TreeModelColumn > icon; - Gtk::TreeModelColumn label; - Gtk::TreeModelColumn name; - Gtk::TreeModelColumn id; - - Gtk::TreeModelColumn canvas; - - Gtk::TreeModelColumn tooltip; - - - Gtk::TreeModelColumn active; - Gtk::TreeModelColumn layer; - Gtk::TreeModelColumn contained_canvas; - - Gtk::TreeModelColumn children_lock; - - Gtk::TreeModelColumn z_depth; - Gtk::TreeModelColumn index; - - Model() - { - add(icon); - add(label); - add(name); - add(id); - add(canvas); - add(tooltip); - add(active); - add(layer); - add(contained_canvas); - add(z_depth); - add(index); - add(children_lock); - } - }; - - /* - -- ** -- P U B L I C D A T A ------------------------------------------------ - */ - -public: - - //! TreeModel for the layers - const Model model; - - /* - -- ** -- P R I V A T E D A T A --------------------------------------------- - */ - -private: - - bool queued; - - sigc::connection queue_connection; - - std::map subcanvas_changed_connections; - - etl::loose_handle canvas_interface_; - - Glib::RefPtr layer_icon; - - /* - -- ** -- P R I V A T E M E T H O D S --------------------------------------- - */ - -private: - - /* - -- ** -- P R O T E C T E D M E T H O D S ----------------------------------- - */ - -private: - virtual void set_value_impl (const Gtk::TreeModel::iterator& row, int column, const Glib::ValueBase& value); - virtual void get_value_vfunc (const Gtk::TreeModel::iterator& iter, int column, Glib::ValueBase& value)const; - - virtual bool row_draggable_vfunc (const TreeModel::Path& path)const; - virtual bool drag_data_get_vfunc (const TreeModel::Path& path, Gtk::SelectionData& selection_data)const; - virtual bool drag_data_delete_vfunc (const TreeModel::Path& path); - virtual bool drag_data_received_vfunc (const TreeModel::Path& dest, const Gtk::SelectionData& selection_data); - virtual bool row_drop_possible_vfunc (const TreeModel::Path& dest, const Gtk::SelectionData& selection_data)const; - - /* - -- ** -- S I G N A L T E R M I N A L S ------------------------------------- - */ - -private: - - bool on_layer_tree_event(GdkEvent *event); - - void on_layer_new_description(synfig::Layer::Handle handle,synfig::String desc); - - void on_layer_added(synfig::Layer::Handle handle); - - void on_layer_removed(synfig::Layer::Handle handle); - - void on_layer_inserted(synfig::Layer::Handle handle,int depth); - - void on_layer_moved(synfig::Layer::Handle handle,int depth, synfig::Canvas::Handle canvas); - - void on_layer_status_changed(synfig::Layer::Handle handle,bool); - - void on_layer_lowered(synfig::Layer::Handle handle); - - void on_layer_raised(synfig::Layer::Handle handle); - - void on_layer_param_changed(synfig::Layer::Handle handle,synfig::String param_name); - - //void on_value_node_added(synfig::ValueNode::Handle value_node); - - //void on_value_node_deleted(synfig::ValueNode::Handle value_node); - - //void on_value_node_changed(synfig::ValueNode::Handle value_node); - - //void on_value_node_replaced(synfig::ValueNode::Handle replaced_value_node,synfig::ValueNode::Handle new_value_node); - - bool find_layer_row_(const synfig::Layer::Handle &handle, synfig::Canvas::Handle canvas, Gtk::TreeModel::Children layers, Gtk::TreeModel::Children::iterator &iter, Gtk::TreeModel::Children::iterator &prev); - - bool find_canvas_row_(synfig::Canvas::Handle canvas, synfig::Canvas::Handle parent, Gtk::TreeModel::Children layers, Gtk::TreeModel::Children::iterator &iter); - - /* - -- ** -- P U B L I C M E T H O D S ----------------------------------------- - */ - -public: - - LayerTreeStore(etl::loose_handle canvas_interface_); - ~LayerTreeStore(); - - etl::loose_handle canvas_interface() { return canvas_interface_; } - etl::loose_handle canvas_interface()const { return canvas_interface_; } - etl::loose_handle get_canvas_interface()const { return canvas_interface_; } - - bool find_canvas_row(synfig::Canvas::Handle canvas, Gtk::TreeModel::Children::iterator &iter); - - bool find_layer_row(const synfig::Layer::Handle &handle, Gtk::TreeModel::Children::iterator &iter); - - bool find_prev_layer_row(const synfig::Layer::Handle &handle, Gtk::TreeModel::Children::iterator &iter); - - void queue_rebuild(); - - void rebuild(); - - void refresh(); - - void refresh_row(Gtk::TreeModel::Row &row); - - void set_row_layer(Gtk::TreeRow &row,synfig::Layer::Handle &handle); - - static int z_sorter(const Gtk::TreeModel::iterator &rhs,const Gtk::TreeModel::iterator &lhs); - static int index_sorter(const Gtk::TreeModel::iterator &rhs,const Gtk::TreeModel::iterator &lhs); - - //void set_row_param(Gtk::TreeRow &row,synfig::Layer::Handle &handle,const std::string& name, const std::string& local_name, const synfig::ValueBase &value, etl::handle value_node,synfig::ParamDesc *param_desc); - - //virtual void set_row(Gtk::TreeRow row,synfigapp::ValueDesc value_desc); - static bool search_func(const Glib::RefPtr&,int,const Glib::ustring&,const TreeModel::iterator&); - - /* - -- ** -- S T A T I C P U B L I C M E T H O D S --------------------------- - */ - -public: - - static Glib::RefPtr create(etl::loose_handle canvas_interface_); - - -}; // END of class LayerTreeStore - -}; // END of namespace studio - -/* === E N D =============================================================== */ - -#endif