[ease] [editor] Fixed new slide ordering



commit 427a453eef8252b3b0f06af763543577a667aacb
Author: Nate Stedman <natesm gmail com>
Date:   Sun Jul 25 05:42:45 2010 -0400

    [editor] Fixed new slide ordering
    
    - Slides were always added first in the document
    - Slides are now added directly after the selected slide

 src/ease-document.vala      |    5 +++--
 src/ease-editor-window.vala |   12 ++++++------
 2 files changed, 9 insertions(+), 8 deletions(-)
---
diff --git a/src/ease-document.vala b/src/ease-document.vala
index 22ecb02..f346d0f 100644
--- a/src/ease-document.vala
+++ b/src/ease-document.vala
@@ -79,7 +79,7 @@ public class Ease.Document : GLib.Object
 	/**
 	 * All { link Slide}s in this Document.
 	 */
-	public Gee.ArrayList<Slide> slides = new Gee.ArrayList<Slide>();
+	public Gee.LinkedList<Slide> slides = new Gee.LinkedList<Slide>();
 	
 	/**
 	 * The number of { link Slide}s in the Document.
@@ -221,7 +221,8 @@ public class Ease.Document : GLib.Object
 	 */
 	public void append_slide(Slide s)
 	{
-		slides.insert(length, s);
+		s.parent = this;
+		slides.offer_head(s);
 		slide_added(s, slides.size - 1);
 	}
 	
diff --git a/src/ease-editor-window.vala b/src/ease-editor-window.vala
index 978fdf0..2b694dd 100644
--- a/src/ease-editor-window.vala
+++ b/src/ease-editor-window.vala
@@ -269,25 +269,25 @@ public class Ease.EditorWindow : Gtk.Window
 	[CCode (instance_pos = -1)]
 	public void new_slide_handler(Gtk.Widget? sender)
 	{
-		var slide = document.theme.create_slide(document.DEFAULT_SLIDE,
-		                                        document.width,
-		                                        document.height);
+		var s = document.theme.create_slide(document.DEFAULT_SLIDE,
+		                                    document.width,
+		                                    document.height);
 		
 		var index = document.index_of(slide) + 1;
 		
-		document.add_slide(index, slide);
+		document.add_slide(index, s);
 	}
 	
 	public void on_new_slide_menu(Gtk.Widget? sender)
 	{
 		var item = sender as Gtk.MenuItem;
-		var slide = document.theme.create_slide(
+		var s = document.theme.create_slide(
 			Theme.master_from_description(item.get_label()),
 			document.width, document.height);
 		
 		var index = document.index_of(slide) + 1;
 		
-		document.add_slide(index, slide);
+		document.add_slide(index, s);
 	}
 	
 	[CCode (instance_pos = -1)]



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]