svnsync/svnsync/Controllers/ControllersWindow.cs

82 lines
2.1 KiB
C#

using System;
using System.Windows.Forms;
using BlubbFish.Utils;
using svnsync.Views;
using svnsync.Helpers;
using System.Collections.Generic;
namespace svnsync.Controllers
{
public class ControllersWindow : OwnController
{
private static ViewsWindow viewWindow;
private Handles.FormType initAction = Handles.FormType.Normal;
private String initMessage;
private List<string> initDeletedFiles = new List<string>();
private List<string> initNewFiles = new List<string>();
/// <summary>
/// Tray Controller
/// </summary>
public ControllersWindow() { }
override protected void Init()
{
viewWindow = new ViewsWindow();
viewWindow.Model.Message = this.initMessage;
viewWindow.Model.FormType = this.initAction;
viewWindow.Model.DeletedFiles = this.initDeletedFiles;
viewWindow.Model.NewFiles = this.initNewFiles;
viewWindow.Draw();
}
public override void Dispose()
{
if (viewWindow != null) {
viewWindow.Dispose();
}
viewWindow = null;
}
public static void FormClosed(Object sender, FormClosedEventArgs e)
{
viewWindow.Dispose();
}
internal void SetAction(Handles.FormType formType)
{
if (viewWindow == null) {
this.initAction = formType;
} else {
viewWindow.Model.FormType = formType;
}
//this.CreateSVNOpen("Fehler im Cronjob, mehr als 10 Aufrufe!", "");
//this.CreateSVNOpen("Es ist ein Unvorhersebarer Fehler aufgetreten", p);
}
internal void SetMessage(String p)
{
if (viewWindow == null) {
this.initMessage = p;
} else {
viewWindow.Model.Message = p;
}
}
internal void SetDeletedFiles(List<string> p) {
if(viewWindow == null) {
this.initDeletedFiles = p;
} else {
viewWindow.Model.DeletedFiles = p;
}
}
internal void SetNewFiles(List<string> list) {
if(viewWindow == null) {
this.initNewFiles = list;
} else {
viewWindow.Model.NewFiles = list;
}
}
}
}