mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-20 12:58:39 +00:00
77 lines
2.5 KiB
C#
77 lines
2.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Data;
|
|
using System.Windows.Documents;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows.Shapes;
|
|
|
|
namespace Cosmos.Build.Windows {
|
|
public partial class BuildOptionsWindow : Window, IBuildConfiguration {
|
|
|
|
public BuildOptionsWindow() {
|
|
InitializeComponent();
|
|
|
|
KeyDown += new KeyEventHandler(BuildOptionsWindow_KeyDown);
|
|
Loaded += new RoutedEventHandler(BuildOptionsWindow_Loaded);
|
|
|
|
spanBuildPath.Inlines.Add(Builder.GetBuildPath());
|
|
|
|
// { ISO, PXE, QEMU, QEMU_With_Hard_Disk_Image, QEMU_GDB, QEMU_GDB_With_Hard_Disk_Image };
|
|
foreach (var xTarget in Enum.GetNames(typeof(Builder.Target))) {
|
|
lboxTargets.Items.Add((lboxTargets.Items.Count + 1).ToString() + ": " + xTarget.Replace('_', ' '));
|
|
}
|
|
}
|
|
|
|
void BuildOptionsWindow_Loaded(object sender, RoutedEventArgs e) {
|
|
//Stupid window always shows up behind console, bring it up.
|
|
this.Activate();
|
|
}
|
|
|
|
void BuildOptionsWindow_KeyDown(object sender, KeyEventArgs e) {
|
|
var xConverter = new KeyConverter();
|
|
char xChar = xConverter.ConvertToString(e.Key)[0];
|
|
if (Char.IsDigit(xChar)) {
|
|
int xValue = int.Parse(xChar.ToString());
|
|
if (xValue > 0) {
|
|
if (xValue <= lboxTargets.Items.Count) {
|
|
string xType = (string)(lboxTargets.Items[xValue - 1]);
|
|
Hide();
|
|
var xBuilder = new Builder();
|
|
mTarget = (Builder.Target)Enum.Parse(typeof(Builder.Target), xType.Remove(0, 3).Replace(' ', '_'));
|
|
Close();
|
|
}
|
|
}
|
|
e.Handled = true;
|
|
}
|
|
}
|
|
|
|
#region IBuildConfiguration Members
|
|
|
|
private Builder.Target mTarget;
|
|
public Builder.Target Target {
|
|
get {
|
|
return mTarget;
|
|
}
|
|
set {
|
|
|
|
}
|
|
}
|
|
|
|
public bool Compile {
|
|
get {
|
|
return buildCheckBox.IsChecked.Value;
|
|
}
|
|
set {
|
|
buildCheckBox.IsChecked = value;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|