private void LoadInformation()
        {
            this.Title = "Export Directory | " + ExportTarget.GetReferencedItemName();
            ExportDirectoryFileChooserButton.SetFilename(Config.GetDefaultExportDirectory());

            // Load all references
            foreach (ItemReference childReference in ExportTarget.ChildReferences)
            {
                // TODO: Support recursive folder export
                if (childReference.IsFile)
                {
                    ItemExportListStore.AppendValues(true, childReference.GetReferencedItemName());

                    if (!this.ReferenceMapping.ContainsKey(childReference.GetReferencedItemName()))
                    {
                        this.ReferenceMapping.Add(childReference.GetReferencedItemName(), childReference);
                    }
                }
            }
        }
        /// <summary>
        /// Exports the mipmaps in the image.
        /// </summary>
        public void RunExport()
        {
            ItemExportListStore.Foreach(delegate(ITreeModel model, TreePath path, TreeIter iter)
            {
                bool bShouldExport = (bool)ItemExportListStore.GetValue(iter, 0);

                if (bShouldExport)
                {
                    ItemReference referenceToExport = this.ReferenceMapping[(string)ItemExportListStore.GetValue(iter, 1)];

                    string ExportPath = "";
                    if (Config.GetShouldKeepFileDirectoryStructure())
                    {
                        string parentDirectoryOfFile =
                            ExtensionMethods.ConvertPathSeparatorsToCurrentNativeSeparator(ExportTarget.ItemPath);

                        ExportPath =
                            $"{ExportDirectoryFileChooserButton.Filename}{System.IO.Path.DirectorySeparatorChar}{parentDirectoryOfFile}{System.IO.Path.DirectorySeparatorChar}{referenceToExport.GetReferencedItemName()}";
                    }
                    else
                    {
                        ExportPath = $"{ExportDirectoryFileChooserButton.Filename}{System.IO.Path.DirectorySeparatorChar}{referenceToExport.GetReferencedItemName()}";
                    }

                    System.IO.Directory.CreateDirectory(System.IO.Directory.GetParent(ExportPath).FullName);

                    byte[] fileData = referenceToExport.Extract();
                    if (fileData != null)
                    {
                        File.WriteAllBytes(ExportPath, fileData);
                    }
                }

                return(false);
            });
        }