[gxml] Added i18n initialization



commit 6b56ec1c6c8af39bbdf777619bad18a6d4fc9ee5
Author: Daniel Espinosa <esodan gmail com>
Date:   Tue Oct 27 10:03:20 2015 -0600

    Added i18n initialization

 docs/valadoc/devhelp/Makefile.am       |    1 +
 gxml/Enumeration.vala                  |    5 ++++
 gxml/Makefile.am                       |    1 +
 gxml/SerializableBool.vala             |    2 +
 gxml/SerializableContainer.vala        |    1 +
 gxml/SerializableDouble.vala           |    3 ++
 gxml/SerializableEnum.vala             |    3 ++
 gxml/SerializableGeeArrayList.vala     |    3 ++
 gxml/SerializableGeeDualKeyMap.vala    |    2 +
 gxml/SerializableGeeHashMap.vala       |    3 ++
 gxml/SerializableGeeTreeMap.vala       |    3 ++
 gxml/SerializableJson.vala             |    1 +
 gxml/SerializableObjectModel.vala      |    1 +
 gxml/SerializableValueList.vala        |    1 +
 gxml/Serialization.vala                |    1 +
 gxml/TwNode.vala                       |    2 +
 gxml/gxml-init.vala                    |   36 ++++++++++++++++++++++++++++++++
 gxml/libxml-ChildNodeList.vala         |    3 +-
 gxml/libxml-DomException.vala          |    3 ++
 gxml/libxml-Error.vala                 |    3 ++
 gxml/libxml-Implementation.vala        |    3 ++
 gxml/libxml-LinkedList.vala            |    5 +++-
 gxml/libxml-NamedAttrMap.vala          |    3 ++
 gxml/libxml-NamespaceAttrNodeList.vala |    2 +
 gxml/libxml-Node.vala                  |    1 +
 gxml/libxml-TagNameNodeList.vala       |    3 +-
 26 files changed, 92 insertions(+), 3 deletions(-)
---
diff --git a/docs/valadoc/devhelp/Makefile.am b/docs/valadoc/devhelp/Makefile.am
index 2238bb5..943c25d 100644
--- a/docs/valadoc/devhelp/Makefile.am
+++ b/docs/valadoc/devhelp/Makefile.am
@@ -12,6 +12,7 @@ VALADOC_FLAGS = \
        --pkg gee-0.8 \
        --vapidir=$(top_srcdir)/gxml \
        --vapidir=$(top_srcdir)/vapi \
+       $(top_srcdir)/vapi/config.vapi \
        $(top_srcdir)/vapi/xlibxml-1.0.vapi
 
 sources= \
diff --git a/gxml/Enumeration.vala b/gxml/Enumeration.vala
index 0b7838d..391db74 100644
--- a/gxml/Enumeration.vala
+++ b/gxml/Enumeration.vala
@@ -80,6 +80,7 @@ namespace GXml {
                                                 throws GLib.Error
                                                 requires (enumeration.is_a (Type.ENUM))
                {
+                       Init.init ();
                        string camel = "";
                        EnumClass enumc = (EnumClass) enumeration.class_ref ();
                        EnumValue? enumv = enumc.get_value (val);
@@ -110,6 +111,7 @@ namespace GXml {
                                  throws GLib.Error
                                  requires (enumeration.is_a (Type.ENUM))
                {
+                       Init.init ();
                        EnumClass enumc = (EnumClass) enumeration.class_ref ();
                        EnumValue? enumv = null;
                        foreach (EnumValue ev in enumc.values) {
@@ -137,6 +139,7 @@ namespace GXml {
                public static unowned EnumValue[] to_array (Type enumeration)
                                               requires (enumeration.is_a (Type.ENUM))
                {
+                       Init.init ();
                        EnumClass enumc = (EnumClass) enumeration.class_ref ();
                        return enumc.values;
                }
@@ -151,6 +154,7 @@ namespace GXml {
                 */
                public static EnumValue? parse_integer (Type enumeration, int val)
                {
+                       Init.init ();
                        if (!enumeration.is_a (Type.ENUM)) return null;
                        var vals = Enumeration.to_array (enumeration);
                        if (vals == null) return null;
@@ -170,6 +174,7 @@ namespace GXml {
                public static string[] to_string_array (Type enumeration) throws GLib.Error
                        requires (enumeration.is_a (Type.ENUM))
                {
+                       Init.init ();
                        var vals = Enumeration.to_array (enumeration);
                        string [] s = {};
                        for (int i = 0; i < vals.length; i++) {
diff --git a/gxml/Makefile.am b/gxml/Makefile.am
index 255e0e8..b3bbc33 100644
--- a/gxml/Makefile.am
+++ b/gxml/Makefile.am
@@ -12,6 +12,7 @@ lib_LTLIBRARIES = libgxml-0.6.la
 
 # Vala source code
 sources = \
+       gxml-init.vala \
        namespace-info.vala \
        Attribute.vala \
        Comment.vala\
diff --git a/gxml/SerializableBool.vala b/gxml/SerializableBool.vala
index 4e6a669..bf1b061 100644
--- a/gxml/SerializableBool.vala
+++ b/gxml/SerializableBool.vala
@@ -28,6 +28,8 @@ using Gee;
 public class GXml.SerializableBool : SerializableObjectModel, SerializableProperty
 {
   private string _val = null;
+
+       construct { Init.init (); }
   /**
    * Parse the stored value, from the XML property, to a { link int}. This parsing
    * may is different from the actual stored string. If can't be parsed to a valid
diff --git a/gxml/SerializableContainer.vala b/gxml/SerializableContainer.vala
index 5c6e090..01bc484 100644
--- a/gxml/SerializableContainer.vala
+++ b/gxml/SerializableContainer.vala
@@ -30,6 +30,7 @@
  */
 public abstract class GXml.SerializableContainer : SerializableObjectModel
 {
+       construct { Init.init (); }
   /**
    * Implementors must implement this function and initialize any Serializable container.
    */
diff --git a/gxml/SerializableDouble.vala b/gxml/SerializableDouble.vala
index 26e4142..5aec5e2 100644
--- a/gxml/SerializableDouble.vala
+++ b/gxml/SerializableDouble.vala
@@ -31,6 +31,9 @@ public class GXml.SerializableDouble : SerializableObjectModel, SerializableProp
 {
   protected string _val = null;
   protected int _fraction = -1;
+
+  construct { Init.init (); }
+
   public int get_fraction () { return _fraction; }
   public void set_fraction (int fraction) {
     int v = fraction;
diff --git a/gxml/SerializableEnum.vala b/gxml/SerializableEnum.vala
index c93c9e7..c9df0af 100644
--- a/gxml/SerializableEnum.vala
+++ b/gxml/SerializableEnum.vala
@@ -41,6 +41,9 @@ public class GXml.SerializableEnum : SerializableObjectModel, SerializableProper
 {
   protected string _val = null;
   protected GLib.Type _enumtype;
+
+       construct { Init.init (); }
+
   public SerializableEnum.with_enum (GLib.Type type)
   {
     _enumtype = type;
diff --git a/gxml/SerializableGeeArrayList.vala b/gxml/SerializableGeeArrayList.vala
index eb8d61c..dced86e 100644
--- a/gxml/SerializableGeeArrayList.vala
+++ b/gxml/SerializableGeeArrayList.vala
@@ -32,6 +32,9 @@ public class GXml.SerializableArrayList<G> : Gee.ArrayList<G>, Serializable, Ser
 {
   Gee.HashMap<string,GXml.Attribute> _unknown_serializable_property = new Gee.HashMap<string,GXml.Attribute> 
();
   Gee.ArrayList<GXml.Node> _unknown_serializable_nodes = new Gee.ArrayList<GXml.Node> ();
+  
+       construct { Init.init (); }
+
   public Gee.Map<string,GXml.Attribute> unknown_serializable_properties
   {
     get {
diff --git a/gxml/SerializableGeeDualKeyMap.vala b/gxml/SerializableGeeDualKeyMap.vala
index b6bd29c..9df1074 100644
--- a/gxml/SerializableGeeDualKeyMap.vala
+++ b/gxml/SerializableGeeDualKeyMap.vala
@@ -32,6 +32,8 @@ public class GXml.SerializableDualKeyMap<P,S,V> : Object, Serializable, Serializ
 {
   protected Gee.HashMultiMap<P,HashMap<S,V>> storage;
 
+       construct { Init.init (); }
+
   public Type value_type
   {
     get {
diff --git a/gxml/SerializableGeeHashMap.vala b/gxml/SerializableGeeHashMap.vala
index b4b249b..d9e3afb 100644
--- a/gxml/SerializableGeeHashMap.vala
+++ b/gxml/SerializableGeeHashMap.vala
@@ -30,6 +30,9 @@ public class GXml.SerializableHashMap<K,V> : Gee.HashMap<K,V>, Serializable, Ser
 {
   Gee.HashMap<string,GXml.Attribute> _unknown_serializable_property = new Gee.HashMap<string,GXml.Attribute> 
();
   Gee.ArrayList<GXml.Node> _unknown_serializable_nodes = new Gee.ArrayList<GXml.Node> ();
+
+       construct { Init.init (); }
+
   public Gee.Map<string,GXml.Attribute> unknown_serializable_properties
   {
     get {
diff --git a/gxml/SerializableGeeTreeMap.vala b/gxml/SerializableGeeTreeMap.vala
index ef91fd0..18c8c31 100644
--- a/gxml/SerializableGeeTreeMap.vala
+++ b/gxml/SerializableGeeTreeMap.vala
@@ -30,6 +30,9 @@ public class GXml.SerializableTreeMap<K,V> : Gee.TreeMap<K,V>, Serializable, Ser
 {
   Gee.HashMap<string,GXml.Attribute> _unknown_serializable_property = new Gee.HashMap<string,GXml.Attribute> 
();
   Gee.ArrayList<GXml.Node> _unknown_serializable_nodes = new Gee.ArrayList<GXml.Node> ();
+
+       construct { Init.init (); }
+
   public Gee.Map<string,GXml.Attribute> unknown_serializable_properties
   {
     get {
diff --git a/gxml/SerializableJson.vala b/gxml/SerializableJson.vala
index 1ce2fd3..012867d 100644
--- a/gxml/SerializableJson.vala
+++ b/gxml/SerializableJson.vala
@@ -62,6 +62,7 @@ public class GXml.SerializableJson : GLib.Object, GXml.Serializable
 {
   Gee.HashMap<string,GXml.Attribute> _unknown_serializable_property = new Gee.HashMap<string,GXml.Attribute> 
();
   Gee.ArrayList<GXml.Node> _unknown_serializable_nodes = new Gee.ArrayList<GXml.Node> ();
+       construct { Init.init (); }
   /* Serializable Interface properties */
   protected ParamSpec[] properties { get; set; }
   public HashTable<string,GLib.ParamSpec>  ignored_serializable_properties { get; protected set; }
diff --git a/gxml/SerializableObjectModel.vala b/gxml/SerializableObjectModel.vala
index 84c79d1..7e1fcc7 100644
--- a/gxml/SerializableObjectModel.vala
+++ b/gxml/SerializableObjectModel.vala
@@ -37,6 +37,7 @@ using Gee;
  */
 public abstract class GXml.SerializableObjectModel : Object, Serializable
 {
+       construct { Init.init (); }
   // holds all unknown nodes
   protected GXml.TwDocument _doc = null;
   /* Serializable interface properties */
diff --git a/gxml/SerializableValueList.vala b/gxml/SerializableValueList.vala
index c66b21f..bb7f207 100644
--- a/gxml/SerializableValueList.vala
+++ b/gxml/SerializableValueList.vala
@@ -39,6 +39,7 @@ public class GXml.SerializableValueList : SerializableObjectModel, SerializableP
   private string _val = null;
   protected string[] _vals = null;
   protected ArrayList<string> extra = null;
+       construct { Init.init (); }
   /**
    * Return a { link Gee.List} with all possible selection strings.
    *
diff --git a/gxml/Serialization.vala b/gxml/Serialization.vala
index f49f693..7ec5af1 100644
--- a/gxml/Serialization.vala
+++ b/gxml/Serialization.vala
@@ -105,6 +105,7 @@ namespace GXml {
                                                             GXml.xDocument doc)
                                                                                         throws GLib.Error
                {
+                       Init.init ();
                        Type type;
                        Value value;
                        GXml.xNode value_node;
diff --git a/gxml/TwNode.vala b/gxml/TwNode.vala
index 5e32a6e..0f34bfa 100644
--- a/gxml/TwNode.vala
+++ b/gxml/TwNode.vala
@@ -34,6 +34,8 @@ public abstract class GXml.TwNode : Object, GXml.Node
   protected GXml.Document _doc;
   internal Xml.TextWriter *tw;
 
+       construct { Init.init (); }
+
   // GXml.Node
   public virtual bool set_namespace (string uri, string? prefix)
   {
diff --git a/gxml/gxml-init.vala b/gxml/gxml-init.vala
new file mode 100644
index 0000000..51216d1
--- /dev/null
+++ b/gxml/gxml-init.vala
@@ -0,0 +1,36 @@
+/**
+ *  GXml
+ *
+ *  Authors:
+ *
+ *       Daniel Espinosa <esodan gmail com>
+ *
+ *
+ *  Copyright (c) 2015 Daniel Espinosa
+ *  
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser General Public
+ *  License as published by the Free Software Foundation; either
+ *  version 3 of the License, or (at your option) any later version.
+ *  
+ *  This library 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
+ *  Lesser General Public License for more details.
+ *  
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+namespace GXml {
+  class Init {
+    private static bool initialized = false;
+    public static void init () {
+      if (!initialized) {
+        GLib.Intl.textdomain(Config.GETTEXT_PACKAGE);
+        GLib.Intl.bindtextdomain(Config.GETTEXT_PACKAGE, Config.PACKAGE_LOCALE_DIR);
+       initialized = true;
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/gxml/libxml-ChildNodeList.vala b/gxml/libxml-ChildNodeList.vala
index aee0d25..4548cd1 100644
--- a/gxml/libxml-ChildNodeList.vala
+++ b/gxml/libxml-ChildNodeList.vala
@@ -34,7 +34,8 @@ internal abstract class GXml.ChildNodeList : AbstractBidirList<xNode>, NodeList
                internal abstract Xml.Node *head { get; set; }
 
                internal abstract Xml.Node *parent_as_xmlnode { get; }
-
+               
+               construct { Init.init (); }
                /**
                 * { inheritDoc}
                 */
diff --git a/gxml/libxml-DomException.vala b/gxml/libxml-DomException.vala
index e6fbe50..1c40eed 100644
--- a/gxml/libxml-DomException.vala
+++ b/gxml/libxml-DomException.vala
@@ -23,6 +23,9 @@
  */
 
 namespace GXml {
+       /**
+        * Last error exception for DOM.
+        */
        public static DomException last_error = DomException.NONE;
 
        /**
diff --git a/gxml/libxml-Error.vala b/gxml/libxml-Error.vala
index 605636b..b155c3d 100644
--- a/gxml/libxml-Error.vala
+++ b/gxml/libxml-Error.vala
@@ -1,4 +1,7 @@
 namespace GXml {
+       /**
+        * Errors for parse and writer.
+        */
        public errordomain Error {
                NOT_SUPPORTED, /* TODO: GET RID OF THIS */
                PARSER, WRITER;
diff --git a/gxml/libxml-Implementation.vala b/gxml/libxml-Implementation.vala
index bc65121..464a662 100644
--- a/gxml/libxml-Implementation.vala
+++ b/gxml/libxml-Implementation.vala
@@ -36,6 +36,9 @@ namespace GXml {
         * URL: [[http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-102161490]]
         */
        public class Implementation : GLib.Object { // TODO: Add DomImplementation interface
+
+               construct { Init.init (); }
+
                internal Implementation () {
                }
 
diff --git a/gxml/libxml-LinkedList.vala b/gxml/libxml-LinkedList.vala
index 3b47fcb..8902a01 100644
--- a/gxml/libxml-LinkedList.vala
+++ b/gxml/libxml-LinkedList.vala
@@ -26,7 +26,10 @@
 
 internal class GXml.LinkedList : Gee.LinkedList<GXml.xNode>, NodeList
 {
-       public GXml.xNode root;
+
+       construct { Init.init (); }
+
+  public GXml.xNode root;
 
        public ulong length {
          get { return size; }
diff --git a/gxml/libxml-NamedAttrMap.vala b/gxml/libxml-NamedAttrMap.vala
index a7e6b23..9ac0276 100644
--- a/gxml/libxml-NamedAttrMap.vala
+++ b/gxml/libxml-NamedAttrMap.vala
@@ -37,6 +37,9 @@ namespace GXml {
        {
                protected xElement elem;
 
+
+               construct { Init.init (); }
+
                internal AbstractNamedAttrMap (xElement e) {
                        this.elem = e;
                }
diff --git a/gxml/libxml-NamespaceAttrNodeList.vala b/gxml/libxml-NamespaceAttrNodeList.vala
index 307b379..80aabef 100644
--- a/gxml/libxml-NamespaceAttrNodeList.vala
+++ b/gxml/libxml-NamespaceAttrNodeList.vala
@@ -29,6 +29,8 @@ internal abstract class GXml.AbstractNamespaceAttrNodeList : Object,
   protected unowned BackedNode node;
   protected Xml.Ns*[] name_spaces;
 
+       construct { Init.init (); }
+
   internal AbstractNamespaceAttrNodeList (BackedNode root) {
     this.node = root;
     name_spaces = Xmlx.doc_get_ns_list (node.node->doc, node.node);
diff --git a/gxml/libxml-Node.vala b/gxml/libxml-Node.vala
index 1ad7adf..d4210bc 100644
--- a/gxml/libxml-Node.vala
+++ b/gxml/libxml-Node.vala
@@ -42,6 +42,7 @@ namespace GXml {
                protected NamedAttrMap _attributes = null;
                internal NamespaceAttrNodeList _namespace_definitions = null;
                /* Constructors */
+               construct { Init.init (); }
                internal xNode (NodeType type, xDocument owner) {
                        this.node_type = type;
                        this.owner_document = owner;
diff --git a/gxml/libxml-TagNameNodeList.vala b/gxml/libxml-TagNameNodeList.vala
index cb6e6f3..f3948af 100644
--- a/gxml/libxml-TagNameNodeList.vala
+++ b/gxml/libxml-TagNameNodeList.vala
@@ -24,7 +24,8 @@
  * out as new elements are added, and get reconstructed each
  * time, or get reconstructed-on-the-go?
  */
-internal class GXml.TagNameNodeList : GXml.LinkedList { internal string tag_name;
+internal class GXml.TagNameNodeList : GXml.LinkedList {
+  internal string tag_name;
        internal TagNameNodeList (string tag_name, xNode root, xDocument owner) {
                base (root);
                this.tag_name = tag_name;


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