[ease] [general] Fixed PDFs not persisting through a save
- From: Nate Stedman <natesm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ease] [general] Fixed PDFs not persisting through a save
- Date: Fri, 8 Oct 2010 19:37:17 +0000 (UTC)
commit 9dbe3c1841b3741cab881e2b46b8a94d5c3af05b
Author: Nate Stedman <natesm gmail com>
Date: Fri Oct 8 15:36:36 2010 -0400
[general] Fixed PDFs not persisting through a save
ease-core/ease-document.vala | 2 +-
ease-core/ease-pdf-element.vala | 4 +++-
ease-core/ease-slide.vala | 6 ++++--
3 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/ease-core/ease-document.vala b/ease-core/ease-document.vala
index 775665c..4549465 100644
--- a/ease-core/ease-document.vala
+++ b/ease-core/ease-document.vala
@@ -167,7 +167,7 @@ public class Ease.Document : GLib.Object, UndoSource
for (var i = 0; i < json_slides.get_length(); i++)
{
var node = json_slides.get_object_element(i);
- append_slide(new Slide.from_json(node));
+ append_slide(new Slide.from_json(node, this));
}
// get the document's theme
diff --git a/ease-core/ease-pdf-element.vala b/ease-core/ease-pdf-element.vala
index f116b06..bc588af 100644
--- a/ease-core/ease-pdf-element.vala
+++ b/ease-core/ease-pdf-element.vala
@@ -48,9 +48,10 @@ public class Ease.PdfElement : MediaElement
signals();
}
- internal PdfElement.from_json(Json.Object obj)
+ internal PdfElement.from_json(Json.Object obj, Slide owner)
{
base.from_json(obj);
+ parent = owner;
default_page = obj.get_string_member(Theme.PDF_DEFAULT_PAGE).to_int();
background = new Background.from_json(obj);
@@ -68,6 +69,7 @@ public class Ease.PdfElement : MediaElement
public override Json.Object to_json()
{
var obj = base.to_json();
+ background.to_json(ref obj);
obj.set_string_member(Theme.PDF_DEFAULT_PAGE, default_page.to_string());
return obj;
}
diff --git a/ease-core/ease-slide.vala b/ease-core/ease-slide.vala
index bf18fe5..e6aa678 100644
--- a/ease-core/ease-slide.vala
+++ b/ease-core/ease-slide.vala
@@ -236,10 +236,12 @@ public class Ease.Slide : GLib.Object, UndoSource
/**
* Constructs a Slide from a JsonObject.
*/
- internal Slide.from_json(Json.Object obj)
+ internal Slide.from_json(Json.Object obj, Document owner)
{
this();
+ parent = owner;
+
var slide = new Slide();
// get the slide's master
@@ -305,7 +307,7 @@ public class Ease.Slide : GLib.Object, UndoSource
e = new VideoElement.from_json(node);
break;
case PDF_TYPE:
- e = new PdfElement.from_json(node);
+ e = new PdfElement.from_json(node, this);
break;
default: // text element, probably plugins later...
e = new TextElement.from_json(node);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]