void CellEdited(object o, Gtk.EditedArgs args)
        {
            Gtk.TreeIter iter;
            if (!store.GetIterFromString(out iter, args.Path))
            {
                return;
            }

            var node = (ResXNode)store.GetValue(iter, 0);

            if (o == crtName)
            {
                // We can't remove a node's name, nor can we duplicate it
                if (args.NewText == string.Empty || names.Contains(args.NewText))
                {
                    return;
                }

                node.Name = args.NewText;
            }
            else if (o == crtValue)
            {
                try
                {
                    node.Value = Convert.ChangeType(args.NewText, node.Value.GetType());
                }
                catch
                {
                    return;
                }
            }
            else if (o == crtComment)
            {
                node.Comment = args.NewText;
            }

            if (node == placeholder)
            {
                if (node.Name == string.Empty)
                {
                    return;
                }

                Data.Nodes.Add(node);
                AddPlaceholder();
            }

            // TODO: Maybe only do it on user save?
            treeView.ColumnsAutosize();
            Data.WriteToFile();
        }