mirror of
https://git.do.srb2.org/STJr/UltimateZoneBuilder.git
synced 2024-11-23 04:12:12 +00:00
79dcaca457
Draw Settings panel: added "All" buttons to "Fill Selection with Textures" and "Remove Textures form Selection" groups Export to .obj: fixed a crash when trying to export an unsaved map. Texture preview are now created ~25% faster.
78 lines
2.2 KiB
C#
78 lines
2.2 KiB
C#
#region ================== Namespaces
|
|
|
|
using System;
|
|
using System.IO;
|
|
using System.Windows.Forms;
|
|
|
|
#endregion
|
|
|
|
namespace CodeImp.DoomBuilder.BuilderEffects
|
|
{
|
|
public partial class ObjImportSettingsForm : Form
|
|
{
|
|
#region ================== Variables
|
|
|
|
private ImportObjAsTerrainMode.UpAxis axis;
|
|
|
|
#endregion
|
|
|
|
#region ================== Properties
|
|
|
|
internal string FilePath { get { return tbImportPath.Text.Trim(); } }
|
|
internal ImportObjAsTerrainMode.UpAxis UpAxis { get { return axis; } }
|
|
internal float ObjScale { get { return (float)nudScale.Value; } }
|
|
|
|
//todo: floor/ceiling textures? height offsets? ceiling extra height?
|
|
|
|
#endregion
|
|
|
|
public ObjImportSettingsForm() {
|
|
InitializeComponent();
|
|
|
|
//restore settings
|
|
axis = (ImportObjAsTerrainMode.UpAxis)General.Settings.ReadPluginSetting("objexportupaxis", 0);
|
|
nudScale.Value = (decimal)General.Settings.ReadPluginSetting("objexportscale", 1.0f);
|
|
|
|
switch(axis) {
|
|
case ImportObjAsTerrainMode.UpAxis.X: axisx.Checked = true; break;
|
|
case ImportObjAsTerrainMode.UpAxis.Y: axisy.Checked = true; break;
|
|
case ImportObjAsTerrainMode.UpAxis.Z: axisz.Checked = true; break;
|
|
default: axisy.Checked = true; break;
|
|
}
|
|
}
|
|
|
|
#region ================== Events
|
|
|
|
private void browse_Click(object sender, EventArgs e) {
|
|
if(openFileDialog.ShowDialog() == DialogResult.OK) {
|
|
tbImportPath.Text = openFileDialog.FileName;
|
|
}
|
|
}
|
|
|
|
private void import_Click(object sender, EventArgs e) {
|
|
if(nudScale.Value == 0) {
|
|
MessageBox.Show("Scale should not be zero!");
|
|
return;
|
|
}
|
|
if(!File.Exists(tbImportPath.Text)) {
|
|
MessageBox.Show("Selected path does not exist!");
|
|
return;
|
|
}
|
|
|
|
axis = (axisy.Checked ? ImportObjAsTerrainMode.UpAxis.Y : (axisz.Checked ? ImportObjAsTerrainMode.UpAxis.Z : ImportObjAsTerrainMode.UpAxis.X));
|
|
|
|
//save settings
|
|
General.Settings.WritePluginSetting("objexportupaxis", (int)axis);
|
|
General.Settings.WritePluginSetting("objexportscale", (float)nudScale.Value);
|
|
|
|
this.DialogResult = DialogResult.OK;
|
|
this.Close();
|
|
}
|
|
|
|
private void cancel_Click(object sender, EventArgs e) {
|
|
this.Close();
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|