void OpenEvent(object sender, EventArgs e)
        {
            if (!okButton.Sensitive)
            {
                return;
            }

            //FIXME: we need to set this up
            //PropertyService.Set("Dialogs.NewProjectDialog.LargeImages", ((RadioButton)ControlDictionary["largeIconsRadioButton"]).Checked);
            TreeIter selectedIter;

            if (catView.Selection.GetSelected(out selectedIter))
            {
                PropertyService.Set(GetCategoryPropertyKey(parentProject), GetCatPath(selectedIter));
            }

            string filename = GetFileNameFromEntry();

            if (iconView.CurrentlySelected != null && filename.Length > 0)
            {
                TemplateItem titem   = (TemplateItem)iconView.CurrentlySelected;
                FileTemplate item    = titem.Template;
                Project      project = null;
                string       path    = null;

                if (!boxProject.Visible || projectAddCheckbox.Active)
                {
                    project = parentProject;
                    path    = basePath;
                }

                try
                {
                    if (!item.Create(project, project, path, titem.Language, filename))
                    {
                        return;
                    }
                }
                catch (Exception ex)
                {
                    MessageService.ShowException(ex);
                    return;
                }

                if (project != null)
                {
                    IdeApp.ProjectOperations.Save(project);
                }

                if (OnOked != null)
                {
                    OnOked(null, null);
                }
                Respond(Gtk.ResponseType.Ok);
                Destroy();
            }
        }