[gnome-subtitles] Added Empty EncodingDescription



commit 12cc4220c1a0aa798f9e87eea278a6ad115ba875
Author: Pedro Castro <mail>
Date:   Sun Jan 10 19:19:08 2010 +0000

    Added Empty EncodingDescription

 src/GnomeSubtitles/Core/EncodingDescription.cs |    9 ++++++++-
 src/GnomeSubtitles/Core/Encodings.cs           |    6 +++---
 src/GnomeSubtitles/Dialog/EncodingsDialog.cs   |    4 ++--
 3 files changed, 13 insertions(+), 6 deletions(-)
---
diff --git a/src/GnomeSubtitles/Core/EncodingDescription.cs b/src/GnomeSubtitles/Core/EncodingDescription.cs
index c6a8bcb..100d907 100644
--- a/src/GnomeSubtitles/Core/EncodingDescription.cs
+++ b/src/GnomeSubtitles/Core/EncodingDescription.cs
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007-2008 Pedro Castro
+ * Copyright (C) 2007-2010 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -25,6 +25,7 @@ public struct EncodingDescription : IComparable {
 	private int codePage;
 	private string name;
 	private string description;
+	private static EncodingDescription emptyEncodingDescription = new EncodingDescription(-1, "-1", "-1");
 	
 	public EncodingDescription (int codePage, string name, string description) {
 		this.codePage = codePage;
@@ -56,6 +57,12 @@ public struct EncodingDescription : IComparable {
 		else
 			throw new ArgumentException("Object is not EncodingDescription");    
 	}
+
+	/* Static members */
+
+	public static EncodingDescription Empty {
+		get { return emptyEncodingDescription; }
+	}
 	
 }
 
diff --git a/src/GnomeSubtitles/Core/Encodings.cs b/src/GnomeSubtitles/Core/Encodings.cs
index c51ba7e..67256dd 100644
--- a/src/GnomeSubtitles/Core/Encodings.cs
+++ b/src/GnomeSubtitles/Core/Encodings.cs
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007-2008 Pedro Castro
+ * Copyright (C) 2007-2010 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -121,7 +121,7 @@ public class Encodings {
 			int codePage = defaultEncoding.CodePage;
 		
 			string name = String.Empty;
-			EncodingDescription tempDesc = new EncodingDescription();
+			EncodingDescription tempDesc = EncodingDescription.Empty;
 			if (Find(codePage, ref tempDesc))
 				name = tempDesc.Name;
 			else
@@ -158,7 +158,7 @@ public class Encodings {
 	}
 	
 	public static string GetEncodingName (int codePage) {
-		EncodingDescription desc = new EncodingDescription();
+		EncodingDescription desc = EncodingDescription.Empty;
 		if (Find(codePage, ref desc))
 			return desc.Name;
 
diff --git a/src/GnomeSubtitles/Dialog/EncodingsDialog.cs b/src/GnomeSubtitles/Dialog/EncodingsDialog.cs
index ba593e1..4e2d5fd 100644
--- a/src/GnomeSubtitles/Dialog/EncodingsDialog.cs
+++ b/src/GnomeSubtitles/Dialog/EncodingsDialog.cs
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007-2009 Pedro Castro
+ * Copyright (C) 2007-2010 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -76,7 +76,7 @@ public class EncodingsDialog : GladeDialog {
 		
 		ListStore store = new ListStore(typeof(string), typeof(string));
 		foreach (string shownEncoding in chosenNames) {
-			EncodingDescription desc = new EncodingDescription();
+			EncodingDescription desc = EncodingDescription.Empty;
 			if (Encodings.Find(shownEncoding, ref desc))
 				store.AppendValues(desc.Description, desc.Name);
 		}



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