2012-08-27 19:09:10 +00:00
|
|
|
|
using System;
|
2012-09-22 17:44:30 +00:00
|
|
|
|
using System.Reflection;
|
2012-08-27 19:09:10 +00:00
|
|
|
|
using System.Windows.Forms;
|
2012-09-08 22:03:13 +00:00
|
|
|
|
using ANX.ContentCompiler.GUI.Dialogues;
|
2012-09-10 19:10:39 +00:00
|
|
|
|
using ANX.Framework.NonXNA.Development;
|
2012-08-27 19:09:10 +00:00
|
|
|
|
|
|
|
|
|
namespace ANX.ContentCompiler.GUI.States
|
|
|
|
|
{
|
2012-09-10 19:10:39 +00:00
|
|
|
|
[Developer("SilentWarrior/Eagle Eye Studios")]
|
|
|
|
|
[PercentageComplete(90)] //TODO: Actually implement Import dialogue, for now just using the usual one
|
|
|
|
|
[TestState(TestStateAttribute.TestState.Tested)]
|
2012-08-27 19:09:10 +00:00
|
|
|
|
public partial class MenuState : UserControl
|
|
|
|
|
{
|
|
|
|
|
public MenuState()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#region HelperMethods
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void SetUpColors()
|
|
|
|
|
{
|
2012-09-22 17:44:30 +00:00
|
|
|
|
labelVersion.Text = "ANX Content Compiler v" + Assembly.GetExecutingAssembly().GetName().Version;
|
2012-08-27 19:09:10 +00:00
|
|
|
|
BackColor = Settings.MainColor;
|
|
|
|
|
ForeColor = Settings.ForeColor;
|
|
|
|
|
panel1.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonClose.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonExit.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonNew.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonOpen.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSave.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSaveAs.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSettings.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonClose.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonExit.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonNew.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonOpen.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonSave.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonSaveAs.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonSettings.FlatAppearance.BorderColor = Settings.AccentColor2;
|
|
|
|
|
buttonClose.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonExit.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonNew.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonOpen.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonSave.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonSaveAs.FlatAppearance.MouseOverBackColor = Settings.AccentColor2;
|
|
|
|
|
buttonSettings.FlatAppearance.MouseDownBackColor = Settings.AccentColor2;
|
2012-09-16 19:44:22 +00:00
|
|
|
|
checkBoxShowWelcomeScreen.Checked = Settings.ShowFirstStartScreen;
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ResetMenuState()
|
|
|
|
|
{
|
|
|
|
|
buttonNew.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonOpen.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSave.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSaveAs.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonClose.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonSettings.BackColor = Settings.AccentColor3;
|
|
|
|
|
buttonExit.BackColor = Settings.AccentColor3;
|
|
|
|
|
panelNew.Visible = false;
|
|
|
|
|
panelOpen.Visible = false;
|
|
|
|
|
panelSaveAs.Visible = false;
|
|
|
|
|
panelSettings.Visible = false;
|
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region MenuButtons
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void ButtonNewClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
buttonNew.BackColor = Settings.AccentColor;
|
|
|
|
|
panelNew.Visible = true;
|
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void ButtonOpenClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
buttonOpen.BackColor = Settings.AccentColor;
|
|
|
|
|
panelOpen.Visible = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ButtonSaveClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-08-29 19:02:13 +00:00
|
|
|
|
MainWindow.Instance.SaveProject(sender, e);
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ButtonSaveAsClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
buttonSaveAs.BackColor = Settings.AccentColor;
|
|
|
|
|
panelSaveAs.Visible = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ButtonCloseClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
Visible = false;
|
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
|
|
|
|
MainWindow.Instance.ChangeEnvironmentStartState();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ButtonSettingsClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
buttonSettings.BackColor = Settings.AccentColor;
|
|
|
|
|
panelSettings.Visible = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ButtonExitClick(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
Application.Exit();
|
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region MenuNew
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void ArrowButtonFileClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-09-08 22:03:13 +00:00
|
|
|
|
using (var dlg = new OpenFileDialog())
|
|
|
|
|
{
|
|
|
|
|
dlg.Multiselect = true;
|
|
|
|
|
dlg.Title = "Add files";
|
|
|
|
|
if (dlg.ShowDialog() == DialogResult.OK)
|
|
|
|
|
MainWindow.Instance.AddFiles(dlg.FileNames);
|
|
|
|
|
}
|
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ArrowButtonFolderClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-09-08 22:03:13 +00:00
|
|
|
|
using (var dlg = new NewFolderScreen())
|
|
|
|
|
{
|
|
|
|
|
if (dlg.ShowDialog() == DialogResult.OK)
|
|
|
|
|
{
|
|
|
|
|
MainWindow.Instance.AddFolder(dlg.textBoxName.Text);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ArrowButtonNewProjectClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-09-08 22:03:13 +00:00
|
|
|
|
MainWindow.Instance.NewProject(sender, e);
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region MenuOpen
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void ArrowButtonOpenClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-09-08 22:03:13 +00:00
|
|
|
|
MainWindow.Instance.OpenProjectDialog(sender, e);
|
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ArrowButtonImportClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-09-08 22:03:13 +00:00
|
|
|
|
MainWindow.Instance.OpenProjectDialog(sender, e);
|
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region MenuSave
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void ArrowButtonSaveAsCprojClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-08-29 19:02:13 +00:00
|
|
|
|
MainWindow.Instance.SaveProjectAs(sender, e);
|
2012-09-08 22:03:13 +00:00
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ArrowButtonSaveAsCcProjClick(object sender, EventArgs e)
|
|
|
|
|
{
|
2012-08-29 19:02:13 +00:00
|
|
|
|
MainWindow.Instance.SaveProjectAs(sender, e);
|
2012-09-08 22:03:13 +00:00
|
|
|
|
MainWindow.Instance.ToggleMenuMode();
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
|
2012-08-27 19:09:10 +00:00
|
|
|
|
#endregion
|
|
|
|
|
|
2012-09-10 19:10:39 +00:00
|
|
|
|
#region Load
|
2012-08-27 19:09:10 +00:00
|
|
|
|
private void MenuState_Load(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
SetUpColors();
|
|
|
|
|
ResetMenuState();
|
|
|
|
|
buttonNew.BackColor = Settings.AccentColor;
|
|
|
|
|
panelNew.Visible = true;
|
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
#endregion
|
2012-09-16 19:44:22 +00:00
|
|
|
|
|
|
|
|
|
#region Options Stuff
|
|
|
|
|
private void CheckBoxShowWelcomeScreenCheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Settings.ShowFirstStartScreen = ((CheckBox)sender).Checked;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endregion
|
2012-08-27 19:09:10 +00:00
|
|
|
|
}
|
2012-09-10 19:10:39 +00:00
|
|
|
|
}
|