/// <summary>
        /// Constructs a TextureManagerWindow used to edit an already existing library
        /// </summary>
        /// <param name="mapPath">The current map project path</param>
        /// <param name="library">The library to edit</param>
        public TextureManagerWindow(string mapPath, TextureLibrary library)
        {
            _mapPath       = mapPath;
            TextureLibrary = library;
            Textures       = library.Textures;

            InitializeComponent();

            TextureLibName.Focus();

            CreateBtn.Content = "Save";

            // Disable the folder browse
            FileBrowseBtn.IsEnabled = false;

            // Bind to the texture list box and enable the create button
            TextureListBox.ItemsSource = Textures;

            TextureLibName.Text = TextureLibrary.Name;

            CreateLibraryPanel.Visibility = Visibility.Collapsed;
            AddTexturePanel.Visibility    = Visibility.Visible;

            _isEdit = true;
        }
        /// <summary>
        /// Constructs a TextureManagerWindow used to create a new library
        /// </summary>
        /// <param name="mapPath">The current map project path</param>
        public TextureManagerWindow(string mapPath)
        {
            _mapPath       = mapPath;
            Textures       = new ObservableCollection <Texture>();
            TextureLibrary = null;
            InitializeComponent();

            TextureLibName.Focus();

            CreateBtn.Content = "Create";

            CreateLibraryPanel.Visibility = Visibility.Visible;
            AddTexturePanel.Visibility    = Visibility.Collapsed;

            _isEdit = false;
        }