Development Checkin, should not break
This commit is contained in:
		
							parent
							
								
									19bd2da502
								
							
						
					
					
						commit
						76f6fca48b
					
				| @ -2,6 +2,7 @@ | |||||||
| using BlubbFish.Utils; | using BlubbFish.Utils; | ||||||
| using svnsync.Views; | using svnsync.Views; | ||||||
| using svnsync.Helpers; | using svnsync.Helpers; | ||||||
|  | using System.Collections.Generic; | ||||||
| 
 | 
 | ||||||
| namespace svnsync.Controllers | namespace svnsync.Controllers | ||||||
| { | { | ||||||
| @ -21,8 +22,7 @@ namespace svnsync.Controllers | |||||||
|     protected override void Init() |     protected override void Init() | ||||||
|     { |     { | ||||||
|       viewTray = new ViewsTray(); |       viewTray = new ViewsTray(); | ||||||
|       controllerWindow = new ControllersWindow(); |       InitControllerWindow(); | ||||||
|       controllerWindow.SetAction(Handles.FormType.Normal); |  | ||||||
|       if (viewTray.Model.Args.HasArgumentType("-cron")) { |       if (viewTray.Model.Args.HasArgumentType("-cron")) { | ||||||
|         if (this.CronJob(0, false)) { |         if (this.CronJob(0, false)) { | ||||||
|           viewTray.ShowSuccess(); |           viewTray.ShowSuccess(); | ||||||
| @ -37,6 +37,12 @@ namespace svnsync.Controllers | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     private static void InitControllerWindow() { | ||||||
|  |       controllerWindow = new ControllersWindow(); | ||||||
|  |       controllerWindow.SetAction(Handles.FormType.Normal); | ||||||
|  |       controllerWindow.SetDeletedFiles(new List<string>()); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     public override void Dispose() |     public override void Dispose() | ||||||
|     { |     { | ||||||
|       if (viewTray != null) { |       if (viewTray != null) { | ||||||
| @ -104,7 +110,7 @@ namespace svnsync.Controllers | |||||||
|       return true; |       return true; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     private Boolean HandleError(Handles.SvnType svnType, String message, String stacktrace = "") |     private static Boolean HandleError(Handles.SvnType svnType, String message, String stacktrace = "") | ||||||
|     { |     { | ||||||
|       viewTray.ShowError(svnType, message); |       viewTray.ShowError(svnType, message); | ||||||
|       switch (svnType) { |       switch (svnType) { | ||||||
| @ -120,6 +126,7 @@ namespace svnsync.Controllers | |||||||
|           break; |           break; | ||||||
|         case Handles.SvnType.ExternDeletedFiles: |         case Handles.SvnType.ExternDeletedFiles: | ||||||
|           controllerWindow.SetAction(Handles.FormType.DeletedFiles); |           controllerWindow.SetAction(Handles.FormType.DeletedFiles); | ||||||
|  |           controllerWindow.SetDeletedFiles(viewTray.Model.Svn.WasDeletedFiles); | ||||||
|           break; |           break; | ||||||
|         case Handles.SvnType.LockedFile: |         case Handles.SvnType.LockedFile: | ||||||
|           controllerWindow.SetAction(Handles.FormType.ManualResolve); |           controllerWindow.SetAction(Handles.FormType.ManualResolve); | ||||||
| @ -159,5 +166,20 @@ namespace svnsync.Controllers | |||||||
|       viewTray.Dispose(); |       viewTray.Dispose(); | ||||||
|       System.Windows.Forms.Application.Exit(); |       System.Windows.Forms.Application.Exit(); | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     internal static void DeleteButton_Click(object sender, EventArgs e) { | ||||||
|  |       if(!(sender is System.Windows.Forms.Button)) { | ||||||
|  |         return; | ||||||
|  |       } | ||||||
|  |       System.Windows.Forms.TreeView t = (System.Windows.Forms.TreeView)((ViewsWindowFormFileList)((System.Windows.Forms.Button)sender).Parent).tree; | ||||||
|  |       List<System.Windows.Forms.TreeNode> l = TreeBuilder.getSelectedNodes(t.Nodes); | ||||||
|  |       controllerWindow.Hide(); | ||||||
|  |       viewTray.Model.Svn.DeleteFiles(l); | ||||||
|  |       if(viewTray.Model.Svn.IsError) { | ||||||
|  |         HandleError(Handles.SvnType.UnexpectedError, viewTray.Model.Svn.Error); | ||||||
|  |         return; | ||||||
|  |       } | ||||||
|  |       //this.runagainButton_Click(sender, null); | ||||||
|  |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -3,6 +3,7 @@ using System.Windows.Forms; | |||||||
| using BlubbFish.Utils; | using BlubbFish.Utils; | ||||||
| using svnsync.Views; | using svnsync.Views; | ||||||
| using svnsync.Helpers; | using svnsync.Helpers; | ||||||
|  | using System.Collections.Generic; | ||||||
| 
 | 
 | ||||||
| namespace svnsync.Controllers | namespace svnsync.Controllers | ||||||
| { | { | ||||||
| @ -11,6 +12,8 @@ namespace svnsync.Controllers | |||||||
|     private static ViewsWindow viewWindow; |     private static ViewsWindow viewWindow; | ||||||
|     private Handles.FormType initAction; |     private Handles.FormType initAction; | ||||||
|     private String initMessage; |     private String initMessage; | ||||||
|  |     private List<string> initDeletedFiles; | ||||||
|  |     private static ControllersTray controllerTray; | ||||||
|     /// <summary> |     /// <summary> | ||||||
|     /// Tray Controller |     /// Tray Controller | ||||||
|     /// </summary> |     /// </summary> | ||||||
| @ -21,6 +24,8 @@ namespace svnsync.Controllers | |||||||
|       viewWindow = new ViewsWindow(); |       viewWindow = new ViewsWindow(); | ||||||
|       viewWindow.Model.Message = this.initMessage; |       viewWindow.Model.Message = this.initMessage; | ||||||
|       viewWindow.Model.FormType = this.initAction; |       viewWindow.Model.FormType = this.initAction; | ||||||
|  |       viewWindow.Model.DeletedFiles = this.initDeletedFiles; | ||||||
|  |       viewWindow.Draw(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public override void Dispose() |     public override void Dispose() | ||||||
| @ -47,7 +52,6 @@ namespace svnsync.Controllers | |||||||
|       //this.CreateSVNOpen("Fehler im Cronjob, mehr als 10 Aufrufe!", ""); |       //this.CreateSVNOpen("Fehler im Cronjob, mehr als 10 Aufrufe!", ""); | ||||||
|       //this.CreateFileList("Hinzufügen", "Diese Daten sind unversioniert:", s.getNoVersionFiles(), new EventHandler(addButton_Click)); |       //this.CreateFileList("Hinzufügen", "Diese Daten sind unversioniert:", s.getNoVersionFiles(), new EventHandler(addButton_Click)); | ||||||
|       //this.CreateSVNOpen("Es ist ein Unvorhersebarer Fehler aufgetreten", p); |       //this.CreateSVNOpen("Es ist ein Unvorhersebarer Fehler aufgetreten", p); | ||||||
|       //this.CreateFileList("Löschen", "Diese Daten sind gelöscht worden:", s.getWasDeletedFiles(), new EventHandler(deleteButton_Click)); |  | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     internal void SetMessage(String p) |     internal void SetMessage(String p) | ||||||
| @ -58,5 +62,24 @@ namespace svnsync.Controllers | |||||||
|         viewWindow.Model.Message = p; |         viewWindow.Model.Message = p; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  |     internal void SetDeletedFiles(List<string> p) { | ||||||
|  |       if(viewWindow == null) { | ||||||
|  |         this.initDeletedFiles = p; | ||||||
|  |       } else { | ||||||
|  |         viewWindow.Model.DeletedFiles = p; | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     internal static void RunAgainButton_Click(object sender, EventArgs e) { | ||||||
|  |       throw new NotImplementedException(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     internal static void SvnOpenButton_Click(object sender, EventArgs e) { | ||||||
|  |       throw new NotImplementedException(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     internal void Hide() { | ||||||
|  |       viewWindow.Hide(); | ||||||
|  |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -1,8 +1,9 @@ | |||||||
| using System; | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
| 
 | 
 | ||||||
| namespace svnsync.Helpers | namespace svnsync.Helpers | ||||||
| { | { | ||||||
|   class Handles |   public class Handles | ||||||
|   { |   { | ||||||
|     public enum SvnType |     public enum SvnType | ||||||
|     { |     { | ||||||
| @ -33,4 +34,14 @@ namespace svnsync.Helpers | |||||||
|       System.Runtime.Serialization.StreamingContext context) |       System.Runtime.Serialization.StreamingContext context) | ||||||
|     { } |     { } | ||||||
|   } |   } | ||||||
|  |   public class TreePart { | ||||||
|  |     public TreePart(String name, bool isFolder, List<TreePart> child) { | ||||||
|  |       this.name = name; | ||||||
|  |       this.child = child; | ||||||
|  |       this.isFolder = isFolder; | ||||||
|  |     } | ||||||
|  |     public string name { get; private set; } | ||||||
|  |     public List<TreePart> child { get; set; } | ||||||
|  |     public bool isFolder { get; set; } | ||||||
|  |   } | ||||||
| } | } | ||||||
|  | |||||||
							
								
								
									
										120
									
								
								svnsync/Helpers/TreeBuilder.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								svnsync/Helpers/TreeBuilder.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,120 @@ | |||||||
|  | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
|  | using System.Drawing; | ||||||
|  | using System.Linq; | ||||||
|  | using System.Text; | ||||||
|  | using System.Threading.Tasks; | ||||||
|  | using System.Windows.Forms; | ||||||
|  | 
 | ||||||
|  | namespace svnsync.Helpers { | ||||||
|  |   public class TreeBuilder { | ||||||
|  |     public static TreeNode[] createDirList(List<string> tree, String root) { | ||||||
|  |       List<TreePart> ntree = new List<TreePart>(); | ||||||
|  |       foreach(String node in tree) { | ||||||
|  |         String folder = node; | ||||||
|  |         folder = folder.Replace('\\', '/'); | ||||||
|  |         folder = (folder.StartsWith("/")) ? folder.Substring(1) : folder; | ||||||
|  |         folder = (folder.EndsWith("/")) ? folder.Substring(0, folder.Length - 1) : folder; | ||||||
|  |         bool isFolder = System.IO.Directory.Exists(root + "/" + folder); | ||||||
|  |         String[] folders = folder.Split('/'); | ||||||
|  |         Array.Reverse(folders); | ||||||
|  |         List<TreePart> prev = null; | ||||||
|  |         foreach(String entry in folders) { | ||||||
|  |           String name = entry; | ||||||
|  |           if(prev == null) | ||||||
|  |             prev = new List<TreePart>() { new TreePart(name, isFolder, new List<TreePart>()) }; | ||||||
|  |           else | ||||||
|  |             prev = new List<TreePart>() { new TreePart(name, isFolder, prev) }; | ||||||
|  |           if(!isFolder) | ||||||
|  |             isFolder = true; | ||||||
|  |         } | ||||||
|  |         ntree = treeMatch(ntree, prev); | ||||||
|  |       } | ||||||
|  |       return createListDirRender(ntree); | ||||||
|  |     } | ||||||
|  |     public static List<TreePart> treeMatch(List<TreePart> ntree, List<TreePart> input) { | ||||||
|  |       String[] key1 = array_keys(input); | ||||||
|  |       if(ntree.Count == 0 || (key1.Length > 0 && !array_key_exists(key1[0], ntree)) || key1.Length == 0) { | ||||||
|  |         ntree.Add(input[0]); | ||||||
|  |       } else { | ||||||
|  |         String[] key2 = array_keys(findName(key1[0], input)); | ||||||
|  |         if(key2.Length != 0) { | ||||||
|  |           if(array_key_exists(key2[0], findName(key1[0], ntree))) { | ||||||
|  |             /*setChild(key2[0], findName(key1[0], ntree),*/ | ||||||
|  |             treeMatch(findName(key1[0], ntree), findName(key1[0], input)); | ||||||
|  |           } else { | ||||||
|  |             findName(key1[0], ntree).Add(findName(key1[0], input)[0]); | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |       return ntree; | ||||||
|  |     } | ||||||
|  |     public static string[] array_keys(List<TreePart> input) { | ||||||
|  |       List<String> ret = new List<String>(); | ||||||
|  |       foreach(TreePart item in input) { | ||||||
|  |         ret.Add(item.name); | ||||||
|  |       } | ||||||
|  |       return ret.ToArray(); | ||||||
|  |     } | ||||||
|  |     public static bool array_key_exists(string p, List<TreePart> ntree) { | ||||||
|  |       foreach(TreePart item in ntree) { | ||||||
|  |         if(item.name == p) | ||||||
|  |           return true; | ||||||
|  |       } | ||||||
|  |       return false; | ||||||
|  |     } | ||||||
|  |     public static List<TreePart> findName(string key, List<TreePart> input) { | ||||||
|  |       foreach(TreePart item in input) { | ||||||
|  |         if(item.name == key) | ||||||
|  |           return item.child; | ||||||
|  |       } | ||||||
|  |       return null; | ||||||
|  |     } | ||||||
|  |     public static TreeNode[] createListDirRender(List<TreePart> ntree) { | ||||||
|  |       TreeNode[] t = new TreeNode[ntree.Count]; | ||||||
|  |       int i = 0; | ||||||
|  |       foreach(TreePart item in ntree) { | ||||||
|  |         String name = item.name + ((item.isFolder) ? ".folder" : (item.name.LastIndexOf('.') == -1) ? ".file" : item.name.Substring(item.name.LastIndexOf('.'))); | ||||||
|  |         if(item.child.Count == 0) | ||||||
|  |           t[i++] = new TreeNode(name); | ||||||
|  |         else | ||||||
|  |           t[i++] = new TreeNode(name, createListDirRender(item.child)); | ||||||
|  |         t[i - 1].Checked = true; | ||||||
|  |       } | ||||||
|  |       return t; | ||||||
|  |     } | ||||||
|  |     public static ImageList getImages(TreeNodeCollection treeNodeCollection) { | ||||||
|  |       ImageList li = new ImageList(); | ||||||
|  |       runThroughNodes(li.Images, treeNodeCollection); | ||||||
|  |       return li; | ||||||
|  |     } | ||||||
|  |     public static void runThroughNodes(ImageList.ImageCollection imageCollection, TreeNodeCollection treeNodeCollection) { | ||||||
|  |       foreach(TreeNode item in treeNodeCollection) { | ||||||
|  |         imageCollection.Add(getImageType(item.Text)); | ||||||
|  |         item.ImageIndex = imageCollection.Count - 1; | ||||||
|  |         item.Text = item.Text.Substring(0, item.Text.LastIndexOf(".")); | ||||||
|  |         if(item.Nodes.Count > 0) | ||||||
|  |           runThroughNodes(imageCollection, item.Nodes); | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |     public static Icon getImageType(string p) { | ||||||
|  |       switch(p.Substring(p.LastIndexOf("."))) { | ||||||
|  |         case ".folder": | ||||||
|  |           return Properties.Resources.Special_Folder; | ||||||
|  |         case ".file": | ||||||
|  |           return Properties.Resources.Special_File; | ||||||
|  |       } | ||||||
|  |       return Properties.Resources.Special_File; | ||||||
|  |     } | ||||||
|  |     public static List<TreeNode> getSelectedNodes(TreeNodeCollection treeNodeCollection) { | ||||||
|  |       List<TreeNode> l = new List<TreeNode>(); | ||||||
|  |       foreach(TreeNode item in treeNodeCollection) { | ||||||
|  |         if(item.Checked && item.Nodes.Count == 0) | ||||||
|  |           l.Add(item); | ||||||
|  |         if(item.Nodes.Count > 0) | ||||||
|  |           l.AddRange(getSelectedNodes(item.Nodes)); | ||||||
|  |       } | ||||||
|  |       return l; | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
| @ -51,9 +51,7 @@ namespace svnsync.Libraries { | |||||||
|         if (handles[0] == ' ') { |         if (handles[0] == ' ') { | ||||||
|           if (handles[2] == 'L') { |           if (handles[2] == 'L') { | ||||||
|             throw new Helpers.SvnLockedException("Datei: " + file + " ist gelockt!"); |             throw new Helpers.SvnLockedException("Datei: " + file + " ist gelockt!"); | ||||||
|           } |           } else if(handles[1] == 'M') { //Modifizierte Eigenschaft | ||||||
|           //Modifizierte Eigenschaft |  | ||||||
|           else if (handles[1] == 'M') { |  | ||||||
|             this.modified.Add(file); |             this.modified.Add(file); | ||||||
|           } else { |           } else { | ||||||
|             throw new NotImplementedException("NOT IMPLEMENTED in SvnClass: SVN Line[0] ' '"); |             throw new NotImplementedException("NOT IMPLEMENTED in SvnClass: SVN Line[0] ' '"); | ||||||
| @ -62,9 +60,7 @@ namespace svnsync.Libraries { | |||||||
|           this.added.Add(file); |           this.added.Add(file); | ||||||
|         } else if (handles[0] == 'D') { |         } else if (handles[0] == 'D') { | ||||||
|           this.isdeleted.Add(file); |           this.isdeleted.Add(file); | ||||||
|         } |         } else if(handles[0] == 'M') { // Modifizierte Datei | ||||||
|         // Modifizierte Datei |  | ||||||
|         else if (handles[0] == 'M') { |  | ||||||
|           this.modified.Add(file); |           this.modified.Add(file); | ||||||
|         } else if (handles[0] == 'R') { |         } else if (handles[0] == 'R') { | ||||||
|           throw new NotImplementedException("NOT IMPLEMENTED in SvnClass: SVN Line[0] 'R'"); |           throw new NotImplementedException("NOT IMPLEMENTED in SvnClass: SVN Line[0] 'R'"); | ||||||
| @ -94,45 +90,11 @@ namespace svnsync.Libraries { | |||||||
|     private void Runner(String arg) { |     private void Runner(String arg) { | ||||||
|       this.SvnOutput = ""; |       this.SvnOutput = ""; | ||||||
|       this.SvnError = ""; |       this.SvnError = ""; | ||||||
|       this.p.StartInfo.Arguments = arg; |       this.p.StartInfo.Arguments = arg + " --non-interactive"; | ||||||
|       this.p.Start(); |       this.p.Start(); | ||||||
|       Int64 e_lenth = 0;  |  | ||||||
|       while (!this.p.HasExited) { |  | ||||||
|         if(this.p.StandardOutput.Peek() != -1) { |  | ||||||
|           this.SvnOutput += this.p.StandardOutput.ReadLine(); |  | ||||||
|         } |  | ||||||
|         this.p.StandardError.BaseStream.Flush(); |  | ||||||
|          |  | ||||||
|         if (this.p.StandardError.BaseStream.Length > e_lenth) { |  | ||||||
|           this.SvnError += this.p.StandardError.BaseStream.ReadByte(); |  | ||||||
|           e_lenth++; |  | ||||||
|         } |  | ||||||
|         System.Threading.Thread.Sleep(10); |  | ||||||
|       } |  | ||||||
|       this.SvnOutput += p.StandardOutput.ReadToEnd(); |  | ||||||
|       this.SvnError += p.StandardError.ReadToEnd(); |  | ||||||
|       /*this.p.OutputDataReceived += this.P_OutputDataReceived; |  | ||||||
|       this.p.ErrorDataReceived += this.P_ErrorDataReceived; |  | ||||||
|       this.p.BeginOutputReadLine(); |  | ||||||
|       this.p.BeginErrorReadLine(); |  | ||||||
|       while(!this.p.HasExited) { |  | ||||||
|         this.p.StandardError.BaseStream.FlushAsync(); |  | ||||||
|         this.p.StandardOutput.BaseStream.FlushAsync(); |  | ||||||
|         System.Threading.Thread.Sleep(10); |  | ||||||
|       } |  | ||||||
|       this.p.WaitForExit(); |       this.p.WaitForExit(); | ||||||
|       this.p.CancelOutputRead(); |       this.SvnError = this.p.StandardError.ReadToEnd(); | ||||||
|       this.p.CancelErrorRead();*/ |       this.SvnOutput = this.p.StandardOutput.ReadToEnd(); | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     private void P_ErrorDataReceived(Object sender, DataReceivedEventArgs e) { |  | ||||||
|       if(e.Data != null) { |  | ||||||
|         this.SvnError += e.Data + "\n"; |  | ||||||
|       } |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     private void P_OutputDataReceived(Object sender, DataReceivedEventArgs e) { |  | ||||||
|       this.SvnOutput += e.Data + "\n"; |  | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     internal void DeleteFiles(List<String> files) { |     internal void DeleteFiles(List<String> files) { | ||||||
|  | |||||||
| @ -1,6 +1,7 @@ | |||||||
| using System; | using System; | ||||||
| using BlubbFish.Utils; | using BlubbFish.Utils; | ||||||
| using svnsync.Helpers; | using svnsync.Helpers; | ||||||
|  | using System.Collections.Generic; | ||||||
| 
 | 
 | ||||||
| namespace svnsync.Models | namespace svnsync.Models | ||||||
| { | { | ||||||
| @ -11,7 +12,7 @@ namespace svnsync.Models | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     protected override void Init() { |     protected override void Init() { | ||||||
| 
 |       this.Args = CmdArgs.Instance; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     private String MessageValue = ""; |     private String MessageValue = ""; | ||||||
| @ -21,9 +22,18 @@ namespace svnsync.Models | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     private Handles.FormType FormTypeValue; |     private Handles.FormType FormTypeValue; | ||||||
|     internal Handles.FormType FormType { |     public Handles.FormType FormType { | ||||||
|       get { return this.FormTypeValue; } |       get { return this.FormTypeValue; } | ||||||
|       set { this.FormTypeValue = value; this.Update(); } |       set { this.FormTypeValue = value; this.Update(); } | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     private List<String> DeletedFilesValue; | ||||||
|  |     public List<string> DeletedFiles { | ||||||
|  |       get { return this.DeletedFilesValue; } | ||||||
|  |       set { this.DeletedFilesValue = value; this.Update(); } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public CmdArgs Args { get; private set; } | ||||||
|  | 
 | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -43,7 +43,9 @@ namespace svnsync | |||||||
|       if (!CmdArgs.Instance.HasArgumentType("-cron")) { |       if (!CmdArgs.Instance.HasArgumentType("-cron")) { | ||||||
|         T_StartLoop(); |         T_StartLoop(); | ||||||
|       } |       } | ||||||
|  |       #if !DEBUG | ||||||
|         FileMutex.Instance.Delete(); |         FileMutex.Instance.Delete(); | ||||||
|  |       #endif | ||||||
|       return; |       return; | ||||||
|       /*Application.Run();*/ |       /*Application.Run();*/ | ||||||
|       /*Application.EnableVisualStyles(); |       /*Application.EnableVisualStyles(); | ||||||
|  | |||||||
| @ -11,7 +11,7 @@ using System.Resources; | |||||||
| [assembly: AssemblyConfiguration("")] | [assembly: AssemblyConfiguration("")] | ||||||
| [assembly: AssemblyCompany("BlubbFish")] | [assembly: AssemblyCompany("BlubbFish")] | ||||||
| [assembly: AssemblyProduct("SvnSync")] | [assembly: AssemblyProduct("SvnSync")] | ||||||
| [assembly: AssemblyCopyright("Copyright ©  2012 - 10.03.2017")] | [assembly: AssemblyCopyright("Copyright ©  2012 - 16.04.2017")] | ||||||
| [assembly: AssemblyTrademark("")] | [assembly: AssemblyTrademark("")] | ||||||
| [assembly: AssemblyCulture("")] | [assembly: AssemblyCulture("")] | ||||||
| 
 | 
 | ||||||
| @ -33,6 +33,6 @@ using System.Resources; | |||||||
| // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern  | // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern  | ||||||
| // übernehmen, indem Sie "*" eingeben: | // übernehmen, indem Sie "*" eingeben: | ||||||
| // [assembly: AssemblyVersion("1.0.*")] | // [assembly: AssemblyVersion("1.0.*")] | ||||||
| [assembly: AssemblyVersion("1.0.3.1")] | [assembly: AssemblyVersion("1.0.4.0")] | ||||||
| [assembly: AssemblyFileVersion("1.0.3.1")] | [assembly: AssemblyFileVersion("1.0.4.0")] | ||||||
| [assembly: NeutralResourcesLanguageAttribute("de-DE")] | [assembly: NeutralResourcesLanguageAttribute("de-DE")] | ||||||
|  | |||||||
| @ -1,29 +1,58 @@ | |||||||
| using System; | using System; | ||||||
| using BlubbFish.Utils; | using BlubbFish.Utils; | ||||||
| using svnsync.Models; | using svnsync.Models; | ||||||
|  | using System.Windows.Forms; | ||||||
| 
 | 
 | ||||||
| namespace svnsync.Views | namespace svnsync.Views | ||||||
| { | { | ||||||
|   public class ViewsWindow : OwnView |   public class ViewsWindow : OwnView | ||||||
|   { |   { | ||||||
|     private ViewsWindowForm form; |     private ViewsWindowFormInterface form; | ||||||
|  |      | ||||||
|     public ViewsWindow() |     public ViewsWindow() | ||||||
|     { |     { | ||||||
|       this.form = new ViewsWindowForm(); |  | ||||||
|       this.Init(); |       this.Init(); | ||||||
|       this.Model.SetObserver(this); |  | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public override void Update() |     public override void Update() | ||||||
|     { |     { | ||||||
|  |       Boolean change = false; | ||||||
|  |       switch(this.Model.FormType) { | ||||||
|  |         default: | ||||||
|  |         case Helpers.Handles.FormType.Normal: | ||||||
|  |           if(!(this.form is ViewsWindowForm)) { | ||||||
|  |             change = true; | ||||||
|  |           } | ||||||
|  |           break; | ||||||
|  |         case Helpers.Handles.FormType.DeletedFiles: | ||||||
|  |           if(!(this.form is ViewsWindowFormFileList)) { | ||||||
|  |             change = true; | ||||||
|  |           } | ||||||
|  |           break; | ||||||
|  |       } | ||||||
|  |       if(change) { | ||||||
|  |         this.SwitchContext(); | ||||||
|  |       } | ||||||
|       this.form.UpdateForm(); |       this.form.UpdateForm(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     private void SwitchContext() { | ||||||
|  |       switch(this.Model.FormType) { | ||||||
|  |         default: | ||||||
|  |         case Helpers.Handles.FormType.Normal: | ||||||
|  |           this.form = new ViewsWindowForm(); | ||||||
|  |           break; | ||||||
|  |         case Helpers.Handles.FormType.DeletedFiles: | ||||||
|  |           this.form = new ViewsWindowFormFileList(); | ||||||
|  |           break; | ||||||
|  |       } | ||||||
|  |       this.form.SetModel(this.Model); | ||||||
|  |       this.form.Show(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     protected override void Init() |     protected override void Init() | ||||||
|     { |     { | ||||||
|       this.Model = ModelsWindow.Instance; |       this.Model = ModelsWindow.Instance; | ||||||
|       this.form.SetModel(this.Model); |  | ||||||
|       this.form.Show(); |  | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public override void Dispose() |     public override void Dispose() | ||||||
| @ -34,5 +63,13 @@ namespace svnsync.Views | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public ModelsWindow Model { get; private set; } |     public ModelsWindow Model { get; private set; } | ||||||
|  | 
 | ||||||
|  |     internal void Draw() { | ||||||
|  |       this.Model.SetObserver(this); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     internal void Hide() { | ||||||
|  |       this.form.Hide(); | ||||||
|  |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
							
								
								
									
										30
									
								
								svnsync/Views/ViewsWindowForm.Designer.cs
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										30
									
								
								svnsync/Views/ViewsWindowForm.Designer.cs
									
									
									
										generated
									
									
									
								
							| @ -28,32 +28,32 @@ | |||||||
|         /// </summary> |         /// </summary> | ||||||
|         private void InitializeComponent() |         private void InitializeComponent() | ||||||
|         { |         { | ||||||
|       this.label1 = new System.Windows.Forms.Label(); |  | ||||||
|       this.messageBox = new System.Windows.Forms.RichTextBox(); |       this.messageBox = new System.Windows.Forms.RichTextBox(); | ||||||
|  |       this.label1 = new System.Windows.Forms.Label(); | ||||||
|       this.opencmd = new System.Windows.Forms.Button(); |       this.opencmd = new System.Windows.Forms.Button(); | ||||||
|       this.SuspendLayout(); |       this.SuspendLayout(); | ||||||
|       //  |       //  | ||||||
|  |       // messageBox | ||||||
|  |       //  | ||||||
|  |       this.messageBox.Location = new System.Drawing.Point(6, 19); | ||||||
|  |       this.messageBox.Name = "messageBox"; | ||||||
|  |       this.messageBox.ReadOnly = true; | ||||||
|  |       this.messageBox.Size = new System.Drawing.Size(452, 208); | ||||||
|  |       this.messageBox.TabIndex = 2; | ||||||
|  |       this.messageBox.Text = ""; | ||||||
|  |       //  | ||||||
|       // label1 |       // label1 | ||||||
|       //  |       //  | ||||||
|       this.label1.AutoSize = true; |       this.label1.AutoSize = true; | ||||||
|       this.label1.Location = new System.Drawing.Point(12, 9); |       this.label1.Location = new System.Drawing.Point(6, 3); | ||||||
|       this.label1.Name = "label1"; |       this.label1.Name = "label1"; | ||||||
|       this.label1.Size = new System.Drawing.Size(51, 13); |       this.label1.Size = new System.Drawing.Size(51, 13); | ||||||
|       this.label1.TabIndex = 1; |       this.label1.TabIndex = 1; | ||||||
|       this.label1.Text = "Meldung:"; |       this.label1.Text = "Meldung:"; | ||||||
|       //  |       //  | ||||||
|       // messageBox |  | ||||||
|       //  |  | ||||||
|       this.messageBox.Location = new System.Drawing.Point(15, 26); |  | ||||||
|       this.messageBox.Name = "messageBox"; |  | ||||||
|       this.messageBox.ReadOnly = true; |  | ||||||
|       this.messageBox.Size = new System.Drawing.Size(437, 96); |  | ||||||
|       this.messageBox.TabIndex = 2; |  | ||||||
|       this.messageBox.Text = ""; |  | ||||||
|       //  |  | ||||||
|       // opencmd |       // opencmd | ||||||
|       //  |       //  | ||||||
|       this.opencmd.Location = new System.Drawing.Point(15, 227); |       this.opencmd.Location = new System.Drawing.Point(6, 233); | ||||||
|       this.opencmd.Name = "opencmd"; |       this.opencmd.Name = "opencmd"; | ||||||
|       this.opencmd.Size = new System.Drawing.Size(75, 23); |       this.opencmd.Size = new System.Drawing.Size(75, 23); | ||||||
|       this.opencmd.TabIndex = 3; |       this.opencmd.TabIndex = 3; | ||||||
| @ -66,10 +66,11 @@ | |||||||
|       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); |       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); | ||||||
|       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | ||||||
|       this.ClientSize = new System.Drawing.Size(464, 262); |       this.ClientSize = new System.Drawing.Size(464, 262); | ||||||
|  |       this.Controls.Add(this.label1); | ||||||
|       this.Controls.Add(this.opencmd); |       this.Controls.Add(this.opencmd); | ||||||
|       this.Controls.Add(this.messageBox); |       this.Controls.Add(this.messageBox); | ||||||
|       this.Controls.Add(this.label1); |  | ||||||
|       this.Name = "ViewsWindowForm"; |       this.Name = "ViewsWindowForm"; | ||||||
|  |       this.Padding = new System.Windows.Forms.Padding(3); | ||||||
|       this.Text = "ViewsWindowsForm"; |       this.Text = "ViewsWindowsForm"; | ||||||
|       this.ResumeLayout(false); |       this.ResumeLayout(false); | ||||||
|       this.PerformLayout(); |       this.PerformLayout(); | ||||||
| @ -78,8 +79,9 @@ | |||||||
| 
 | 
 | ||||||
|         #endregion |         #endregion | ||||||
| 
 | 
 | ||||||
|         private System.Windows.Forms.Label label1; |  | ||||||
|         private System.Windows.Forms.RichTextBox messageBox; |         private System.Windows.Forms.RichTextBox messageBox; | ||||||
|  |         private System.Windows.Forms.Label label1; | ||||||
|         private System.Windows.Forms.Button opencmd; |         private System.Windows.Forms.Button opencmd; | ||||||
|  | 
 | ||||||
|     } |     } | ||||||
| } | } | ||||||
| @ -12,7 +12,7 @@ using svnsync.Controllers; | |||||||
| 
 | 
 | ||||||
| namespace svnsync.Views | namespace svnsync.Views | ||||||
| { | { | ||||||
|   public partial class ViewsWindowForm : Form |   public partial class ViewsWindowForm : Form, ViewsWindowFormInterface | ||||||
|   { |   { | ||||||
|     private ModelsWindow model; |     private ModelsWindow model; | ||||||
|     public ViewsWindowForm() |     public ViewsWindowForm() | ||||||
| @ -32,5 +32,10 @@ namespace svnsync.Views | |||||||
|     { |     { | ||||||
|       this.model = window; |       this.model = window; | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     public void Hide() { | ||||||
|  |       this.ShowInTaskbar = false; | ||||||
|  |       this.WindowState = FormWindowState.Minimized; | ||||||
|  |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
							
								
								
									
										103
									
								
								svnsync/Views/ViewsWindowFormFileList.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								svnsync/Views/ViewsWindowFormFileList.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @ -0,0 +1,103 @@ | |||||||
|  | namespace svnsync.Views { | ||||||
|  |   partial class ViewsWindowFormFileList { | ||||||
|  |     /// <summary> | ||||||
|  |     /// Required designer variable. | ||||||
|  |     /// </summary> | ||||||
|  |     private System.ComponentModel.IContainer components = null; | ||||||
|  | 
 | ||||||
|  |     /// <summary> | ||||||
|  |     /// Clean up any resources being used. | ||||||
|  |     /// </summary> | ||||||
|  |     /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> | ||||||
|  |     protected override void Dispose(bool disposing) { | ||||||
|  |       if(disposing && (components != null)) { | ||||||
|  |         components.Dispose(); | ||||||
|  |       } | ||||||
|  |       base.Dispose(disposing); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     #region Windows Form Designer generated code | ||||||
|  | 
 | ||||||
|  |     /// <summary> | ||||||
|  |     /// Required method for Designer support - do not modify | ||||||
|  |     /// the contents of this method with the code editor. | ||||||
|  |     /// </summary> | ||||||
|  |     private void InitializeComponent() { | ||||||
|  |       this.tree = new System.Windows.Forms.TreeView(); | ||||||
|  |       this.title = new System.Windows.Forms.Label(); | ||||||
|  |       this.runButton = new System.Windows.Forms.Button(); | ||||||
|  |       this.doAgainButton = new System.Windows.Forms.Button(); | ||||||
|  |       this.svnOpenButton = new System.Windows.Forms.Button(); | ||||||
|  |       this.SuspendLayout(); | ||||||
|  |       //  | ||||||
|  |       // tree | ||||||
|  |       //  | ||||||
|  |       this.tree.CheckBoxes = true; | ||||||
|  |       this.tree.HideSelection = false; | ||||||
|  |       this.tree.Location = new System.Drawing.Point(10, 30); | ||||||
|  |       this.tree.Name = "tree"; | ||||||
|  |       this.tree.Size = new System.Drawing.Size(440, 191); | ||||||
|  |       this.tree.TabIndex = 0; | ||||||
|  |       //  | ||||||
|  |       // title | ||||||
|  |       //  | ||||||
|  |       this.title.AutoSize = true; | ||||||
|  |       this.title.Location = new System.Drawing.Point(10, 10); | ||||||
|  |       this.title.Name = "title"; | ||||||
|  |       this.title.Size = new System.Drawing.Size(35, 13); | ||||||
|  |       this.title.TabIndex = 1; | ||||||
|  |       this.title.Text = "label1"; | ||||||
|  |       //  | ||||||
|  |       // runButton | ||||||
|  |       //  | ||||||
|  |       this.runButton.Location = new System.Drawing.Point(10, 226); | ||||||
|  |       this.runButton.Name = "runButton"; | ||||||
|  |       this.runButton.Size = new System.Drawing.Size(140, 23); | ||||||
|  |       this.runButton.TabIndex = 2; | ||||||
|  |       this.runButton.Text = "button1"; | ||||||
|  |       this.runButton.UseVisualStyleBackColor = true; | ||||||
|  |       //  | ||||||
|  |       // doAgainButton | ||||||
|  |       //  | ||||||
|  |       this.doAgainButton.Location = new System.Drawing.Point(162, 226); | ||||||
|  |       this.doAgainButton.Name = "doAgainButton"; | ||||||
|  |       this.doAgainButton.Size = new System.Drawing.Size(140, 23); | ||||||
|  |       this.doAgainButton.TabIndex = 3; | ||||||
|  |       this.doAgainButton.Text = "Wiederholen"; | ||||||
|  |       this.doAgainButton.UseVisualStyleBackColor = true; | ||||||
|  |       //  | ||||||
|  |       // svnOpenButton | ||||||
|  |       //  | ||||||
|  |       this.svnOpenButton.Location = new System.Drawing.Point(310, 226); | ||||||
|  |       this.svnOpenButton.Name = "svnOpenButton"; | ||||||
|  |       this.svnOpenButton.Size = new System.Drawing.Size(140, 23); | ||||||
|  |       this.svnOpenButton.TabIndex = 4; | ||||||
|  |       this.svnOpenButton.Text = "SVN Öffnen"; | ||||||
|  |       this.svnOpenButton.UseVisualStyleBackColor = true; | ||||||
|  |       //  | ||||||
|  |       // ViewsWindowFormFileList | ||||||
|  |       //  | ||||||
|  |       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); | ||||||
|  |       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | ||||||
|  |       this.ClientSize = new System.Drawing.Size(464, 262); | ||||||
|  |       this.Controls.Add(this.svnOpenButton); | ||||||
|  |       this.Controls.Add(this.doAgainButton); | ||||||
|  |       this.Controls.Add(this.runButton); | ||||||
|  |       this.Controls.Add(this.title); | ||||||
|  |       this.Controls.Add(this.tree); | ||||||
|  |       this.Name = "ViewsWindowFormFileList"; | ||||||
|  |       this.Text = "ViewsWindowFormDelete"; | ||||||
|  |       this.ResumeLayout(false); | ||||||
|  |       this.PerformLayout(); | ||||||
|  | 
 | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     #endregion | ||||||
|  | 
 | ||||||
|  |     private System.Windows.Forms.Label title; | ||||||
|  |     private System.Windows.Forms.Button runButton; | ||||||
|  |     private System.Windows.Forms.Button doAgainButton; | ||||||
|  |     private System.Windows.Forms.Button svnOpenButton; | ||||||
|  |     protected internal System.Windows.Forms.TreeView tree; | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										49
									
								
								svnsync/Views/ViewsWindowFormFileList.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								svnsync/Views/ViewsWindowFormFileList.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,49 @@ | |||||||
|  | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
|  | using System.ComponentModel; | ||||||
|  | using System.Data; | ||||||
|  | using System.Drawing; | ||||||
|  | using System.Linq; | ||||||
|  | using System.Text; | ||||||
|  | using System.Threading.Tasks; | ||||||
|  | using System.Windows.Forms; | ||||||
|  | using svnsync.Models; | ||||||
|  | using svnsync.Controllers; | ||||||
|  | using svnsync.Helpers; | ||||||
|  | 
 | ||||||
|  | namespace svnsync.Views { | ||||||
|  |   public partial class ViewsWindowFormFileList : Form, ViewsWindowFormInterface { | ||||||
|  |     private ModelsWindow model; | ||||||
|  |     public ViewsWindowFormFileList() { | ||||||
|  |       InitializeComponent(); | ||||||
|  |       this.FormClosed += ControllersWindow.FormClosed; | ||||||
|  |       this.doAgainButton.Click += new EventHandler(ControllersWindow.RunAgainButton_Click); | ||||||
|  |       this.svnOpenButton.Click += new EventHandler(ControllersWindow.SvnOpenButton_Click); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public void UpdateForm() { | ||||||
|  |       this.BeginInvoke((Action)(() => { | ||||||
|  |         switch(this.model.FormType) { | ||||||
|  |           case Helpers.Handles.FormType.DeletedFiles: | ||||||
|  |             this.title.Text = "Diese Daten sind gelöscht worden:"; | ||||||
|  |             this.runButton.Text = "Löschen"; | ||||||
|  |             this.tree.Nodes.AddRange(TreeBuilder.createDirList(this.model.DeletedFiles, this.model.Args.GetArgumentData("-d"))); | ||||||
|  |             this.tree.ImageList = TreeBuilder.getImages(this.tree.Nodes); | ||||||
|  |             this.runButton.Click += new EventHandler(ControllersTray.DeleteButton_Click); | ||||||
|  |             break; | ||||||
|  |         } | ||||||
|  |       })); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     //this.CreateFileList("Löschen", "Diese Daten sind gelöscht worden:", s.getWasDeletedFiles(), new EventHandler(deleteButton_Click)); | ||||||
|  | 
 | ||||||
|  |     public void SetModel(ModelsWindow window) { | ||||||
|  |       this.model = window; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public void Hide() { | ||||||
|  |       this.ShowInTaskbar = false; | ||||||
|  |       this.WindowState = FormWindowState.Minimized; | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										120
									
								
								svnsync/Views/ViewsWindowFormFileList.resx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								svnsync/Views/ViewsWindowFormFileList.resx
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,120 @@ | |||||||
|  | <?xml version="1.0" encoding="utf-8"?> | ||||||
|  | <root> | ||||||
|  |   <!--  | ||||||
|  |     Microsoft ResX Schema  | ||||||
|  |      | ||||||
|  |     Version 2.0 | ||||||
|  |      | ||||||
|  |     The primary goals of this format is to allow a simple XML format  | ||||||
|  |     that is mostly human readable. The generation and parsing of the  | ||||||
|  |     various data types are done through the TypeConverter classes  | ||||||
|  |     associated with the data types. | ||||||
|  |      | ||||||
|  |     Example: | ||||||
|  |      | ||||||
|  |     ... ado.net/XML headers & schema ... | ||||||
|  |     <resheader name="resmimetype">text/microsoft-resx</resheader> | ||||||
|  |     <resheader name="version">2.0</resheader> | ||||||
|  |     <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||||||
|  |     <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||||||
|  |     <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||||||
|  |     <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||||||
|  |     <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||||||
|  |         <value>[base64 mime encoded serialized .NET Framework object]</value> | ||||||
|  |     </data> | ||||||
|  |     <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||||
|  |         <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||||||
|  |         <comment>This is a comment</comment> | ||||||
|  |     </data> | ||||||
|  |                  | ||||||
|  |     There are any number of "resheader" rows that contain simple  | ||||||
|  |     name/value pairs. | ||||||
|  |      | ||||||
|  |     Each data row contains a name, and value. The row also contains a  | ||||||
|  |     type or mimetype. Type corresponds to a .NET class that support  | ||||||
|  |     text/value conversion through the TypeConverter architecture.  | ||||||
|  |     Classes that don't support this are serialized and stored with the  | ||||||
|  |     mimetype set. | ||||||
|  |      | ||||||
|  |     The mimetype is used for serialized objects, and tells the  | ||||||
|  |     ResXResourceReader how to depersist the object. This is currently not  | ||||||
|  |     extensible. For a given mimetype the value must be set accordingly: | ||||||
|  |      | ||||||
|  |     Note - application/x-microsoft.net.object.binary.base64 is the format  | ||||||
|  |     that the ResXResourceWriter will generate, however the reader can  | ||||||
|  |     read any of the formats listed below. | ||||||
|  |      | ||||||
|  |     mimetype: application/x-microsoft.net.object.binary.base64 | ||||||
|  |     value   : The object must be serialized with  | ||||||
|  |             : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||||||
|  |             : and then encoded with base64 encoding. | ||||||
|  |      | ||||||
|  |     mimetype: application/x-microsoft.net.object.soap.base64 | ||||||
|  |     value   : The object must be serialized with  | ||||||
|  |             : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||||||
|  |             : and then encoded with base64 encoding. | ||||||
|  | 
 | ||||||
|  |     mimetype: application/x-microsoft.net.object.bytearray.base64 | ||||||
|  |     value   : The object must be serialized into a byte array  | ||||||
|  |             : using a System.ComponentModel.TypeConverter | ||||||
|  |             : and then encoded with base64 encoding. | ||||||
|  |     --> | ||||||
|  |   <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||||||
|  |     <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||||||
|  |     <xsd:element name="root" msdata:IsDataSet="true"> | ||||||
|  |       <xsd:complexType> | ||||||
|  |         <xsd:choice maxOccurs="unbounded"> | ||||||
|  |           <xsd:element name="metadata"> | ||||||
|  |             <xsd:complexType> | ||||||
|  |               <xsd:sequence> | ||||||
|  |                 <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||||||
|  |               </xsd:sequence> | ||||||
|  |               <xsd:attribute name="name" use="required" type="xsd:string" /> | ||||||
|  |               <xsd:attribute name="type" type="xsd:string" /> | ||||||
|  |               <xsd:attribute name="mimetype" type="xsd:string" /> | ||||||
|  |               <xsd:attribute ref="xml:space" /> | ||||||
|  |             </xsd:complexType> | ||||||
|  |           </xsd:element> | ||||||
|  |           <xsd:element name="assembly"> | ||||||
|  |             <xsd:complexType> | ||||||
|  |               <xsd:attribute name="alias" type="xsd:string" /> | ||||||
|  |               <xsd:attribute name="name" type="xsd:string" /> | ||||||
|  |             </xsd:complexType> | ||||||
|  |           </xsd:element> | ||||||
|  |           <xsd:element name="data"> | ||||||
|  |             <xsd:complexType> | ||||||
|  |               <xsd:sequence> | ||||||
|  |                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||||||
|  |                 <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||||||
|  |               </xsd:sequence> | ||||||
|  |               <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||||||
|  |               <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||||||
|  |               <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||||||
|  |               <xsd:attribute ref="xml:space" /> | ||||||
|  |             </xsd:complexType> | ||||||
|  |           </xsd:element> | ||||||
|  |           <xsd:element name="resheader"> | ||||||
|  |             <xsd:complexType> | ||||||
|  |               <xsd:sequence> | ||||||
|  |                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||||||
|  |               </xsd:sequence> | ||||||
|  |               <xsd:attribute name="name" type="xsd:string" use="required" /> | ||||||
|  |             </xsd:complexType> | ||||||
|  |           </xsd:element> | ||||||
|  |         </xsd:choice> | ||||||
|  |       </xsd:complexType> | ||||||
|  |     </xsd:element> | ||||||
|  |   </xsd:schema> | ||||||
|  |   <resheader name="resmimetype"> | ||||||
|  |     <value>text/microsoft-resx</value> | ||||||
|  |   </resheader> | ||||||
|  |   <resheader name="version"> | ||||||
|  |     <value>2.0</value> | ||||||
|  |   </resheader> | ||||||
|  |   <resheader name="reader"> | ||||||
|  |     <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||||||
|  |   </resheader> | ||||||
|  |   <resheader name="writer"> | ||||||
|  |     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||||||
|  |   </resheader> | ||||||
|  | </root> | ||||||
							
								
								
									
										17
									
								
								svnsync/Views/ViewsWindowFormInterface.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								svnsync/Views/ViewsWindowFormInterface.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | |||||||
|  | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
|  | using System.Linq; | ||||||
|  | using System.Text; | ||||||
|  | using System.Threading.Tasks; | ||||||
|  | using svnsync.Models; | ||||||
|  | 
 | ||||||
|  | namespace svnsync.Views { | ||||||
|  |   public interface ViewsWindowFormInterface { | ||||||
|  |     void UpdateForm(); | ||||||
|  |     void SetModel(ModelsWindow window); | ||||||
|  |     void Show(); | ||||||
|  |     IAsyncResult BeginInvoke(Delegate method); | ||||||
|  |     void Dispose(); | ||||||
|  |     void Hide(); | ||||||
|  |   } | ||||||
|  | } | ||||||
| @ -31,7 +31,7 @@ | |||||||
|     <BootstrapperEnabled>true</BootstrapperEnabled> |     <BootstrapperEnabled>true</BootstrapperEnabled> | ||||||
|   </PropertyGroup> |   </PropertyGroup> | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> | ||||||
|     <PlatformTarget>x64</PlatformTarget> |     <PlatformTarget>x86</PlatformTarget> | ||||||
|     <DebugSymbols>true</DebugSymbols> |     <DebugSymbols>true</DebugSymbols> | ||||||
|     <DebugType>full</DebugType> |     <DebugType>full</DebugType> | ||||||
|     <Optimize>false</Optimize> |     <Optimize>false</Optimize> | ||||||
| @ -78,6 +78,7 @@ | |||||||
|     </Compile> |     </Compile> | ||||||
|     <Compile Include="Helpers\Handles.cs" /> |     <Compile Include="Helpers\Handles.cs" /> | ||||||
|     <Compile Include="Helpers\StringHelper.cs" /> |     <Compile Include="Helpers\StringHelper.cs" /> | ||||||
|  |     <Compile Include="Helpers\TreeBuilder.cs" /> | ||||||
|     <Compile Include="Models\ModelsTray.cs" /> |     <Compile Include="Models\ModelsTray.cs" /> | ||||||
|     <Compile Include="Models\ModelsWindow.cs" /> |     <Compile Include="Models\ModelsWindow.cs" /> | ||||||
|     <Compile Include="Program.cs" /> |     <Compile Include="Program.cs" /> | ||||||
| @ -91,6 +92,13 @@ | |||||||
|     <Compile Include="Views\ViewsWindowForm.Designer.cs"> |     <Compile Include="Views\ViewsWindowForm.Designer.cs"> | ||||||
|       <DependentUpon>ViewsWindowForm.cs</DependentUpon> |       <DependentUpon>ViewsWindowForm.cs</DependentUpon> | ||||||
|     </Compile> |     </Compile> | ||||||
|  |     <Compile Include="Views\ViewsWindowFormFileList.cs"> | ||||||
|  |       <SubType>Form</SubType> | ||||||
|  |     </Compile> | ||||||
|  |     <Compile Include="Views\ViewsWindowFormFileList.Designer.cs"> | ||||||
|  |       <DependentUpon>ViewsWindowFormFileList.cs</DependentUpon> | ||||||
|  |     </Compile> | ||||||
|  |     <Compile Include="Views\ViewsWindowFormInterface.cs" /> | ||||||
|     <EmbeddedResource Include="Form1.resx"> |     <EmbeddedResource Include="Form1.resx"> | ||||||
|       <DependentUpon>Form1.cs</DependentUpon> |       <DependentUpon>Form1.cs</DependentUpon> | ||||||
|     </EmbeddedResource> |     </EmbeddedResource> | ||||||
| @ -107,6 +115,9 @@ | |||||||
|     <EmbeddedResource Include="Views\ViewsWindowForm.resx"> |     <EmbeddedResource Include="Views\ViewsWindowForm.resx"> | ||||||
|       <DependentUpon>ViewsWindowForm.cs</DependentUpon> |       <DependentUpon>ViewsWindowForm.cs</DependentUpon> | ||||||
|     </EmbeddedResource> |     </EmbeddedResource> | ||||||
|  |     <EmbeddedResource Include="Views\ViewsWindowFormFileList.resx"> | ||||||
|  |       <DependentUpon>ViewsWindowFormFileList.cs</DependentUpon> | ||||||
|  |     </EmbeddedResource> | ||||||
|     <None Include="Properties\Settings.settings"> |     <None Include="Properties\Settings.settings"> | ||||||
|       <Generator>SettingsSingleFileGenerator</Generator> |       <Generator>SettingsSingleFileGenerator</Generator> | ||||||
|       <LastGenOutput>Settings.Designer.cs</LastGenOutput> |       <LastGenOutput>Settings.Designer.cs</LastGenOutput> | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||||||
| <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||||||
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'"> |   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'"> | ||||||
|     <StartArguments>-d "E:\\Eigene Dateien\\Dokumente\\Visual Studio 2017\\Projects" -cron -autoadd -autodelete -externals-own</StartArguments> |     <StartArguments>-d "D:\\Visual Studio 2012\\Projects" -cron -autoadd -externals-own</StartArguments> | ||||||
|     <RemoteDebugEnabled>false</RemoteDebugEnabled> |     <RemoteDebugEnabled>false</RemoteDebugEnabled> | ||||||
|     <StartAction>Project</StartAction> |     <StartAction>Project</StartAction> | ||||||
|   </PropertyGroup> |   </PropertyGroup> | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user