UltimateZoneBuilder/Source/Core/Controls/FlatSelectorControl.cs
MaxED 70ea0658ed GZDoom Builder 1.12:
GZDoom Builder now uses SharpCompress.dll instead of SharpZip.dll.
Added PK7 archive support.
PK3 archives now load aprox. 40% faster.
Textures browser now shows Folder/PK3/PK7 folder structure.
TextureBrowserForm is now used to display both Textures and Flats.
ACS scripts from #include and #import directives are now shown in Script name/number dropdowns.
Fixed several cases when ACS scripts lists used in Edit Thing and Edit Linedef forms wasn't updated when they should've (i.e. after compiling a script).
2012-07-23 21:28:23 +00:00

79 lines
2.1 KiB
C#

#region ================== Copyright (c) 2007 Pascal vd Heiden
/*
* Copyright (c) 2007 Pascal vd Heiden, www.codeimp.com
* This program is released under GNU General Public License
*
* This program 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 General Public License for more details.
*
*/
#endregion
#region ================== Namespaces
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Diagnostics;
using CodeImp.DoomBuilder.Actions;
using CodeImp.DoomBuilder.Data;
using CodeImp.DoomBuilder.Config;
using CodeImp.DoomBuilder.Rendering;
using SlimDX.Direct3D9;
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;
using CodeImp.DoomBuilder.Map;
using CodeImp.DoomBuilder.Windows;
#endregion
namespace CodeImp.DoomBuilder.Controls
{
public class FlatSelectorControl : ImageSelectorControl
{
// Setup
public override void Initialize()
{
base.Initialize();
// Fill autocomplete list
name.AutoCompleteCustomSource.AddRange(General.Map.Data.FlatNames.ToArray());
}
// This finds the image we need for the given flat name
protected override Image FindImage(string imagename)
{
// Check if name is a "none" texture
if((imagename.Length < 1) || (imagename[0] == '-'))
{
// Flat required!
return CodeImp.DoomBuilder.Properties.Resources.MissingTexture;
}
else
{
// Set the image
return General.Map.Data.GetFlatImage(imagename).GetPreview();
}
}
// This browses for a flat
protected override string BrowseImage(string imagename)
{
string result;
// Browse for texture
//result = FlatBrowserForm.Browse(this.ParentForm, imagename);
result = TextureBrowserForm.Browse(this.ParentForm, imagename, true); //mxd
if(result != null) return result; else return imagename;
}
}
}