Revision: 2220
http://synfig.svn.sourceforge.net/synfig/?rev=2220&view=rev
Author: dooglus
Date: 2008-11-19 13:43:47 +0000 (Wed, 19 Nov 2008)
Log Message:
-----------
Add function LayerTreeStore::queue_rebuild(). Nothing uses it yet.
Modified Paths:
--------------
synfig-studio/trunk/src/gtkmm/layertreestore.cpp
synfig-studio/trunk/src/gtkmm/layertreestore.h
Modified: synfig-studio/trunk/src/gtkmm/layertreestore.cpp
===================================================================
--- synfig-studio/trunk/src/gtkmm/layertreestore.cpp 2008-11-19 13:42:49 UTC
(rev 2219)
+++ synfig-studio/trunk/src/gtkmm/layertreestore.cpp 2008-11-19 13:43:47 UTC
(rev 2220)
@@ -70,6 +70,7 @@
LayerTreeStore::LayerTreeStore(etl::loose_handle<synfigapp::CanvasInterface>
canvas_interface_):
Gtk::TreeStore (ModelHack()),
+ queued (false),
canvas_interface_ (canvas_interface_)
{
layer_icon=Gtk::Button().render_icon(Gtk::StockID("synfig-layer"),Gtk::ICON_SIZE_SMALL_TOOLBAR);
@@ -586,8 +587,24 @@
}
void
+LayerTreeStore::queue_rebuild()
+{
+ if (queued) return;
+ queued = false;
+ queue_connection.disconnect();
+ queue_connection=Glib::signal_timeout().connect(
+ sigc::bind_return(
+ sigc::mem_fun(*this,&LayerTreeStore::rebuild),
+ false
+ )
+ ,150);
+}
+
+void
LayerTreeStore::rebuild()
{
+ if (queued) queued = false;
+
//etl::clock timer;timer.reset();
//synfig::warning("---------rebuilding layer table---------");
Modified: synfig-studio/trunk/src/gtkmm/layertreestore.h
===================================================================
--- synfig-studio/trunk/src/gtkmm/layertreestore.h 2008-11-19 13:42:49 UTC
(rev 2219)
+++ synfig-studio/trunk/src/gtkmm/layertreestore.h 2008-11-19 13:43:47 UTC
(rev 2220)
@@ -103,6 +103,10 @@
private:
+ bool queued;
+
+ sigc::connection queue_connection;
+
etl::loose_handle<synfigapp::CanvasInterface> canvas_interface_;
Glib::RefPtr<Gdk::Pixbuf> layer_icon;
@@ -184,6 +188,8 @@
bool find_prev_layer_row(const synfig::Layer::Handle &handle,
Gtk::TreeModel::Children::iterator &iter);
+ void queue_rebuild();
+
void rebuild();
void refresh();
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl