using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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.Navigation;
using System.Windows.Shapes;
using vCloud.GeneratePackages.Tool.ViewModels;
using vCloud.GeneratePackages.Utilities;
using Vinno.IUS.Common;
using Vinno.IUS.Common.Log;
namespace vCloud.GeneratePackages.Tool
{
///
/// Interaction logic for MainWindow.xaml
///
public partial class MainWindow : Window
{
MainWindowViewModel _mainWindowViewModel;
public MainWindow()
{
InitializeComponent();
_mainWindowViewModel = new MainWindowViewModel();
CommonParameters.DataFolder = AppDomain.CurrentDomain.BaseDirectory;
var logEngine = new LogEngineImplement((s) =>
{
AddLog(s);
});
Logger.RegisterEngine(logEngine);
AppManager.Instance.Initialize();
DataContext = _mainWindowViewModel;
Loaded += OnMainWindow_Loaded;
}
///
/// 添加Log
///
///
private void AddLog(LogItem s)
{
Dispatcher.Invoke(() =>
{
if (_mainWindowViewModel != null)
{
_mainWindowViewModel.LogItems.Add(s);
Border border = (Border)VisualTreeHelper.GetChild(logList, 0);
UIElement uic = border.Child;
if (uic is ScrollViewer child)
{
child.ScrollToVerticalOffset(child.VerticalOffset + 50);
}
}
});
}
///
/// 加载ftp编译包的信息
///
///
///
private void OnMainWindow_Loaded(object sender, RoutedEventArgs e)
{
_mainWindowViewModel.RefreshCommand.Execute(null);
}
///
/// 填写更新说明按钮
///
///
///
private void Button_Click(object sender, RoutedEventArgs e)
{
var window = new UpdatePackageInfoWindow(_mainWindowViewModel.UpdatePackageInfo);
window.ShowDialog();
}
}
}