Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/Core.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/Core.cs	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/Core.cs	(revision 5512)
@@ -371,10 +371,10 @@
         }
         Job cJob = jobs[jobId];
-        cJob.JobState = JobState.Finished;//TODO: what if failed?
+        cJob.State = JobState.Finished;//TODO: what if failed?
         cJob.ExecutionTime = engines[jobId].ExecutionTime;
 
-        JobData sJob = engines[jId].GetFinishedJob();
+        JobData sJob = engines[jobId].GetFinishedJob();
         // cJob.Exception = engines[jId].CurrentException; // can there be an exception if the job is sent normally. the exception should be entered in the statelog with the corresponding state (Failed)
-        cJob.ExecutionTime = engines[jId].ExecutionTime;
+        cJob.ExecutionTime = engines[jobId].ExecutionTime;
 
         try {
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.Designer.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.Designer.cs	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.Designer.cs	(revision 5512)
@@ -45,44 +45,48 @@
     /// </summary>
     private void InitializeComponent() {
+      System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(HiveAdministrationView));
       this.tabAdmin = new System.Windows.Forms.TabControl();
       this.tabSlaves = new System.Windows.Forms.TabPage();
       this.splitSlaves = new System.Windows.Forms.SplitContainer();
+      this.btnRemoveGroup = new System.Windows.Forms.Button();
+      this.btnAddGroup = new System.Windows.Forms.Button();
       this.treeSlaveGroup = new System.Windows.Forms.TreeView();
       this.tabSlaveGroup = new System.Windows.Forms.TabControl();
       this.tabDetails = new System.Windows.Forms.TabPage();
+      this.txtName = new System.Windows.Forms.TextBox();
+      this.txtCPU = new System.Windows.Forms.TextBox();
+      this.txtMemory = new System.Windows.Forms.TextBox();
+      this.txtDetailsCalculatedJobs = new System.Windows.Forms.TextBox();
+      this.label12 = new System.Windows.Forms.Label();
+      this.label11 = new System.Windows.Forms.Label();
+      this.label10 = new System.Windows.Forms.Label();
+      this.label9 = new System.Windows.Forms.Label();
       this.tabSchedule = new System.Windows.Forms.TabPage();
+      this.scheduleControl1 = new HeuristicLab.Clients.Hive.Views.Administration.ScheduleControl();
       this.tabJobs = new System.Windows.Forms.TabPage();
+      this.hiveJobListViewSlaves = new HeuristicLab.Clients.Hive.Views.HiveJobListView();
       this.tabUsers = new System.Windows.Forms.TabPage();
       this.splitUsers = new System.Windows.Forms.SplitContainer();
       this.lstUsers = new System.Windows.Forms.ListView();
+      this.tabUserDetails = new System.Windows.Forms.TabControl();
+      this.tabUserInformation = new System.Windows.Forms.TabPage();
+      this.txtUserName = new System.Windows.Forms.TextBox();
+      this.txtUserLastActivity = new System.Windows.Forms.TextBox();
+      this.txtUserRole = new System.Windows.Forms.TextBox();
+      this.label1 = new System.Windows.Forms.Label();
+      this.txtUserEmail = new System.Windows.Forms.TextBox();
+      this.label2 = new System.Windows.Forms.Label();
+      this.txtUserPriority = new System.Windows.Forms.TextBox();
+      this.label3 = new System.Windows.Forms.Label();
+      this.txtUserCalculatedJobs = new System.Windows.Forms.TextBox();
       this.label4 = new System.Windows.Forms.Label();
-      this.label3 = new System.Windows.Forms.Label();
-      this.label2 = new System.Windows.Forms.Label();
-      this.label1 = new System.Windows.Forms.Label();
+      this.txtUserExecutionTime = new System.Windows.Forms.TextBox();
+      this.label6 = new System.Windows.Forms.Label();
+      this.label8 = new System.Windows.Forms.Label();
+      this.label7 = new System.Windows.Forms.Label();
+      this.tabUserJobs = new System.Windows.Forms.TabPage();
       this.tabStatistics = new System.Windows.Forms.TabPage();
       this.label5 = new System.Windows.Forms.Label();
-      this.label6 = new System.Windows.Forms.Label();
-      this.label7 = new System.Windows.Forms.Label();
-      this.label8 = new System.Windows.Forms.Label();
-      this.txtUserExecutionTime = new System.Windows.Forms.TextBox();
-      this.txtUserCalculatedJobs = new System.Windows.Forms.TextBox();
-      this.txtUserPriority = new System.Windows.Forms.TextBox();
-      this.txtUserEmail = new System.Windows.Forms.TextBox();
-      this.txtUserRole = new System.Windows.Forms.TextBox();
-      this.txtUserLastActivity = new System.Windows.Forms.TextBox();
-      this.txtUserName = new System.Windows.Forms.TextBox();
-      this.tabUserDetails = new System.Windows.Forms.TabControl();
-      this.tabUserInformation = new System.Windows.Forms.TabPage();
-      this.tabUserJobs = new System.Windows.Forms.TabPage();
-      this.scheduleControl1 = new HeuristicLab.Clients.Hive.Views.Administration.ScheduleControl();
-      this.hiveJobListViewSlaves = new HeuristicLab.Clients.Hive.Views.HiveJobListView();
-      this.label9 = new System.Windows.Forms.Label();
-      this.label10 = new System.Windows.Forms.Label();
-      this.label11 = new System.Windows.Forms.Label();
-      this.label12 = new System.Windows.Forms.Label();
-      this.txtDetailsCalculatedJobs = new System.Windows.Forms.TextBox();
-      this.txtMemory = new System.Windows.Forms.TextBox();
-      this.txtCPU = new System.Windows.Forms.TextBox();
-      this.txtName = new System.Windows.Forms.TextBox();
+      this.hiveExperimentManagerView = new HeuristicLab.Clients.Hive.Views.HiveExperimentManagerView();
       this.tabAdmin.SuspendLayout();
       this.tabSlaves.SuspendLayout();
@@ -100,7 +104,8 @@
       this.splitUsers.Panel2.SuspendLayout();
       this.splitUsers.SuspendLayout();
-      this.tabStatistics.SuspendLayout();
       this.tabUserDetails.SuspendLayout();
       this.tabUserInformation.SuspendLayout();
+      this.tabUserJobs.SuspendLayout();
+      this.tabStatistics.SuspendLayout();
       this.SuspendLayout();
       // 
@@ -140,4 +145,6 @@
       // splitSlaves.Panel1
       // 
+      this.splitSlaves.Panel1.Controls.Add(this.btnRemoveGroup);
+      this.splitSlaves.Panel1.Controls.Add(this.btnAddGroup);
       this.splitSlaves.Panel1.Controls.Add(this.treeSlaveGroup);
       // 
@@ -149,4 +156,22 @@
       this.splitSlaves.TabIndex = 2;
       // 
+      // btnRemoveGroup
+      // 
+      this.btnRemoveGroup.Image = ((System.Drawing.Image)(resources.GetObject("btnRemoveGroup.Image")));
+      this.btnRemoveGroup.Location = new System.Drawing.Point(33, 3);
+      this.btnRemoveGroup.Name = "btnRemoveGroup";
+      this.btnRemoveGroup.Size = new System.Drawing.Size(24, 24);
+      this.btnRemoveGroup.TabIndex = 2;
+      this.btnRemoveGroup.UseVisualStyleBackColor = true;
+      // 
+      // btnAddGroup
+      // 
+      this.btnAddGroup.Image = ((System.Drawing.Image)(resources.GetObject("btnAddGroup.Image")));
+      this.btnAddGroup.Location = new System.Drawing.Point(3, 3);
+      this.btnAddGroup.Name = "btnAddGroup";
+      this.btnAddGroup.Size = new System.Drawing.Size(24, 24);
+      this.btnAddGroup.TabIndex = 1;
+      this.btnAddGroup.UseVisualStyleBackColor = true;
+      // 
       // treeSlaveGroup
       // 
@@ -154,7 +179,7 @@
                   | System.Windows.Forms.AnchorStyles.Left)
                   | System.Windows.Forms.AnchorStyles.Right)));
-      this.treeSlaveGroup.Location = new System.Drawing.Point(3, 3);
+      this.treeSlaveGroup.Location = new System.Drawing.Point(3, 33);
       this.treeSlaveGroup.Name = "treeSlaveGroup";
-      this.treeSlaveGroup.Size = new System.Drawing.Size(209, 502);
+      this.treeSlaveGroup.Size = new System.Drawing.Size(209, 472);
       this.treeSlaveGroup.TabIndex = 0;
       this.treeSlaveGroup.Click += new System.EventHandler(this.treeSlaveGroup_Click);
@@ -192,4 +217,80 @@
       this.tabDetails.UseVisualStyleBackColor = true;
       // 
+      // txtName
+      // 
+      this.txtName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtName.Location = new System.Drawing.Point(123, 30);
+      this.txtName.Name = "txtName";
+      this.txtName.Size = new System.Drawing.Size(100, 20);
+      this.txtName.TabIndex = 7;
+      this.txtName.Text = "ascheibepc";
+      // 
+      // txtCPU
+      // 
+      this.txtCPU.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtCPU.Location = new System.Drawing.Point(123, 56);
+      this.txtCPU.Name = "txtCPU";
+      this.txtCPU.Size = new System.Drawing.Size(100, 20);
+      this.txtCPU.TabIndex = 6;
+      this.txtCPU.Text = "Intel Core 2 Duo @ 2.4 Ghz";
+      // 
+      // txtMemory
+      // 
+      this.txtMemory.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtMemory.Location = new System.Drawing.Point(123, 82);
+      this.txtMemory.Name = "txtMemory";
+      this.txtMemory.Size = new System.Drawing.Size(100, 20);
+      this.txtMemory.TabIndex = 5;
+      this.txtMemory.Text = "2048 MB";
+      // 
+      // txtDetailsCalculatedJobs
+      // 
+      this.txtDetailsCalculatedJobs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtDetailsCalculatedJobs.Location = new System.Drawing.Point(123, 108);
+      this.txtDetailsCalculatedJobs.Name = "txtDetailsCalculatedJobs";
+      this.txtDetailsCalculatedJobs.Size = new System.Drawing.Size(100, 20);
+      this.txtDetailsCalculatedJobs.TabIndex = 4;
+      this.txtDetailsCalculatedJobs.Text = "33";
+      // 
+      // label12
+      // 
+      this.label12.AutoSize = true;
+      this.label12.Location = new System.Drawing.Point(6, 115);
+      this.label12.Name = "label12";
+      this.label12.Size = new System.Drawing.Size(82, 13);
+      this.label12.TabIndex = 3;
+      this.label12.Text = "Calculated Jobs";
+      // 
+      // label11
+      // 
+      this.label11.AutoSize = true;
+      this.label11.Location = new System.Drawing.Point(7, 89);
+      this.label11.Name = "label11";
+      this.label11.Size = new System.Drawing.Size(44, 13);
+      this.label11.TabIndex = 2;
+      this.label11.Text = "Memory";
+      // 
+      // label10
+      // 
+      this.label10.AutoSize = true;
+      this.label10.Location = new System.Drawing.Point(7, 63);
+      this.label10.Name = "label10";
+      this.label10.Size = new System.Drawing.Size(29, 13);
+      this.label10.TabIndex = 1;
+      this.label10.Text = "CPU";
+      // 
+      // label9
+      // 
+      this.label9.AutoSize = true;
+      this.label9.Location = new System.Drawing.Point(7, 38);
+      this.label9.Name = "label9";
+      this.label9.Size = new System.Drawing.Size(35, 13);
+      this.label9.TabIndex = 0;
+      this.label9.Text = "Name";
+      // 
       // tabSchedule
       // 
@@ -203,4 +304,14 @@
       this.tabSchedule.UseVisualStyleBackColor = true;
       // 
+      // scheduleControl1
+      // 
+      this.scheduleControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                  | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.scheduleControl1.Location = new System.Drawing.Point(7, 7);
+      this.scheduleControl1.Name = "scheduleControl1";
+      this.scheduleControl1.Size = new System.Drawing.Size(862, 562);
+      this.scheduleControl1.TabIndex = 0;
+      // 
       // tabJobs
       // 
@@ -214,4 +325,17 @@
       this.tabJobs.UseVisualStyleBackColor = true;
       // 
+      // hiveJobListViewSlaves
+      // 
+      this.hiveJobListViewSlaves.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                  | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.hiveJobListViewSlaves.Caption = "JobItemList View";
+      this.hiveJobListViewSlaves.Content = null;
+      this.hiveJobListViewSlaves.Location = new System.Drawing.Point(7, 7);
+      this.hiveJobListViewSlaves.Name = "hiveJobListViewSlaves";
+      this.hiveJobListViewSlaves.ReadOnly = false;
+      this.hiveJobListViewSlaves.Size = new System.Drawing.Size(499, 463);
+      this.hiveJobListViewSlaves.TabIndex = 0;
+      // 
       // tabUsers
       // 
@@ -254,144 +378,4 @@
       this.lstUsers.TabIndex = 0;
       this.lstUsers.UseCompatibleStateImageBehavior = false;
-      // 
-      // label4
-      // 
-      this.label4.AutoSize = true;
-      this.label4.Location = new System.Drawing.Point(13, 111);
-      this.label4.Name = "label4";
-      this.label4.Size = new System.Drawing.Size(32, 13);
-      this.label4.TabIndex = 3;
-      this.label4.Text = "Email";
-      // 
-      // label3
-      // 
-      this.label3.AutoSize = true;
-      this.label3.Location = new System.Drawing.Point(13, 79);
-      this.label3.Name = "label3";
-      this.label3.Size = new System.Drawing.Size(29, 13);
-      this.label3.TabIndex = 2;
-      this.label3.Text = "Role";
-      // 
-      // label2
-      // 
-      this.label2.AutoSize = true;
-      this.label2.Location = new System.Drawing.Point(12, 50);
-      this.label2.Name = "label2";
-      this.label2.Size = new System.Drawing.Size(64, 13);
-      this.label2.TabIndex = 1;
-      this.label2.Text = "Last Activity";
-      // 
-      // label1
-      // 
-      this.label1.AutoSize = true;
-      this.label1.Location = new System.Drawing.Point(13, 14);
-      this.label1.Name = "label1";
-      this.label1.Size = new System.Drawing.Size(58, 13);
-      this.label1.TabIndex = 0;
-      this.label1.Text = "User name";
-      // 
-      // tabStatistics
-      // 
-      this.tabStatistics.Controls.Add(this.label5);
-      this.tabStatistics.Location = new System.Drawing.Point(4, 22);
-      this.tabStatistics.Name = "tabStatistics";
-      this.tabStatistics.Padding = new System.Windows.Forms.Padding(3);
-      this.tabStatistics.Size = new System.Drawing.Size(734, 520);
-      this.tabStatistics.TabIndex = 2;
-      this.tabStatistics.Text = "Statistics";
-      this.tabStatistics.UseVisualStyleBackColor = true;
-      // 
-      // label5
-      // 
-      this.label5.AutoSize = true;
-      this.label5.Location = new System.Drawing.Point(141, 221);
-      this.label5.Name = "label5";
-      this.label5.Size = new System.Drawing.Size(386, 13);
-      this.label5.TabIndex = 0;
-      this.label5.Text = "Show some global statistics, e.g. Overall execution time, nr of calculated jobs, " +
-          "....";
-      // 
-      // label6
-      // 
-      this.label6.AutoSize = true;
-      this.label6.Location = new System.Drawing.Point(13, 136);
-      this.label6.Name = "label6";
-      this.label6.Size = new System.Drawing.Size(63, 13);
-      this.label6.TabIndex = 8;
-      this.label6.Text = "User Priority";
-      // 
-      // label7
-      // 
-      this.label7.AutoSize = true;
-      this.label7.Location = new System.Drawing.Point(12, 170);
-      this.label7.Name = "label7";
-      this.label7.Size = new System.Drawing.Size(82, 13);
-      this.label7.TabIndex = 9;
-      this.label7.Text = "Calculated Jobs";
-      // 
-      // label8
-      // 
-      this.label8.AutoSize = true;
-      this.label8.Location = new System.Drawing.Point(13, 202);
-      this.label8.Name = "label8";
-      this.label8.Size = new System.Drawing.Size(116, 13);
-      this.label8.TabIndex = 10;
-      this.label8.Text = "Overall Execution Time";
-      // 
-      // txtUserExecutionTime
-      // 
-      this.txtUserExecutionTime.Location = new System.Drawing.Point(163, 202);
-      this.txtUserExecutionTime.Name = "txtUserExecutionTime";
-      this.txtUserExecutionTime.Size = new System.Drawing.Size(100, 20);
-      this.txtUserExecutionTime.TabIndex = 11;
-      this.txtUserExecutionTime.Text = "15d 3h 5m";
-      // 
-      // txtUserCalculatedJobs
-      // 
-      this.txtUserCalculatedJobs.Location = new System.Drawing.Point(163, 170);
-      this.txtUserCalculatedJobs.Name = "txtUserCalculatedJobs";
-      this.txtUserCalculatedJobs.Size = new System.Drawing.Size(100, 20);
-      this.txtUserCalculatedJobs.TabIndex = 12;
-      this.txtUserCalculatedJobs.Text = "125";
-      // 
-      // txtUserPriority
-      // 
-      this.txtUserPriority.Location = new System.Drawing.Point(163, 136);
-      this.txtUserPriority.Name = "txtUserPriority";
-      this.txtUserPriority.Size = new System.Drawing.Size(100, 20);
-      this.txtUserPriority.TabIndex = 13;
-      this.txtUserPriority.Text = "10";
-      // 
-      // txtUserEmail
-      // 
-      this.txtUserEmail.Location = new System.Drawing.Point(162, 103);
-      this.txtUserEmail.Name = "txtUserEmail";
-      this.txtUserEmail.Size = new System.Drawing.Size(100, 20);
-      this.txtUserEmail.TabIndex = 14;
-      this.txtUserEmail.Text = "ascheibe@mail.com";
-      // 
-      // txtUserRole
-      // 
-      this.txtUserRole.Location = new System.Drawing.Point(162, 72);
-      this.txtUserRole.Name = "txtUserRole";
-      this.txtUserRole.Size = new System.Drawing.Size(100, 20);
-      this.txtUserRole.TabIndex = 15;
-      this.txtUserRole.Text = "Hive Slave";
-      // 
-      // txtUserLastActivity
-      // 
-      this.txtUserLastActivity.Location = new System.Drawing.Point(161, 41);
-      this.txtUserLastActivity.Name = "txtUserLastActivity";
-      this.txtUserLastActivity.Size = new System.Drawing.Size(100, 20);
-      this.txtUserLastActivity.TabIndex = 16;
-      this.txtUserLastActivity.Text = "11.1.2010";
-      // 
-      // txtUserName
-      // 
-      this.txtUserName.Location = new System.Drawing.Point(161, 6);
-      this.txtUserName.Name = "txtUserName";
-      this.txtUserName.Size = new System.Drawing.Size(100, 20);
-      this.txtUserName.TabIndex = 17;
-      this.txtUserName.Text = "ascheibe";
       // 
       // tabUserDetails
@@ -432,6 +416,140 @@
       this.tabUserInformation.UseVisualStyleBackColor = true;
       // 
+      // txtUserName
+      // 
+      this.txtUserName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserName.Location = new System.Drawing.Point(161, 6);
+      this.txtUserName.Name = "txtUserName";
+      this.txtUserName.Size = new System.Drawing.Size(100, 20);
+      this.txtUserName.TabIndex = 17;
+      this.txtUserName.Text = "ascheibe";
+      // 
+      // txtUserLastActivity
+      // 
+      this.txtUserLastActivity.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserLastActivity.Location = new System.Drawing.Point(161, 41);
+      this.txtUserLastActivity.Name = "txtUserLastActivity";
+      this.txtUserLastActivity.Size = new System.Drawing.Size(100, 20);
+      this.txtUserLastActivity.TabIndex = 16;
+      this.txtUserLastActivity.Text = "11.1.2010";
+      // 
+      // txtUserRole
+      // 
+      this.txtUserRole.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserRole.Location = new System.Drawing.Point(162, 72);
+      this.txtUserRole.Name = "txtUserRole";
+      this.txtUserRole.Size = new System.Drawing.Size(100, 20);
+      this.txtUserRole.TabIndex = 15;
+      this.txtUserRole.Text = "Hive Slave";
+      // 
+      // label1
+      // 
+      this.label1.AutoSize = true;
+      this.label1.Location = new System.Drawing.Point(13, 14);
+      this.label1.Name = "label1";
+      this.label1.Size = new System.Drawing.Size(58, 13);
+      this.label1.TabIndex = 0;
+      this.label1.Text = "User name";
+      // 
+      // txtUserEmail
+      // 
+      this.txtUserEmail.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserEmail.Location = new System.Drawing.Point(162, 103);
+      this.txtUserEmail.Name = "txtUserEmail";
+      this.txtUserEmail.Size = new System.Drawing.Size(100, 20);
+      this.txtUserEmail.TabIndex = 14;
+      this.txtUserEmail.Text = "ascheibe@mail.com";
+      // 
+      // label2
+      // 
+      this.label2.AutoSize = true;
+      this.label2.Location = new System.Drawing.Point(12, 50);
+      this.label2.Name = "label2";
+      this.label2.Size = new System.Drawing.Size(64, 13);
+      this.label2.TabIndex = 1;
+      this.label2.Text = "Last Activity";
+      // 
+      // txtUserPriority
+      // 
+      this.txtUserPriority.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserPriority.Location = new System.Drawing.Point(163, 136);
+      this.txtUserPriority.Name = "txtUserPriority";
+      this.txtUserPriority.Size = new System.Drawing.Size(100, 20);
+      this.txtUserPriority.TabIndex = 13;
+      this.txtUserPriority.Text = "10";
+      // 
+      // label3
+      // 
+      this.label3.AutoSize = true;
+      this.label3.Location = new System.Drawing.Point(13, 79);
+      this.label3.Name = "label3";
+      this.label3.Size = new System.Drawing.Size(29, 13);
+      this.label3.TabIndex = 2;
+      this.label3.Text = "Role";
+      // 
+      // txtUserCalculatedJobs
+      // 
+      this.txtUserCalculatedJobs.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserCalculatedJobs.Location = new System.Drawing.Point(163, 170);
+      this.txtUserCalculatedJobs.Name = "txtUserCalculatedJobs";
+      this.txtUserCalculatedJobs.Size = new System.Drawing.Size(100, 20);
+      this.txtUserCalculatedJobs.TabIndex = 12;
+      this.txtUserCalculatedJobs.Text = "125";
+      // 
+      // label4
+      // 
+      this.label4.AutoSize = true;
+      this.label4.Location = new System.Drawing.Point(13, 111);
+      this.label4.Name = "label4";
+      this.label4.Size = new System.Drawing.Size(32, 13);
+      this.label4.TabIndex = 3;
+      this.label4.Text = "Email";
+      // 
+      // txtUserExecutionTime
+      // 
+      this.txtUserExecutionTime.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.txtUserExecutionTime.Location = new System.Drawing.Point(163, 202);
+      this.txtUserExecutionTime.Name = "txtUserExecutionTime";
+      this.txtUserExecutionTime.Size = new System.Drawing.Size(100, 20);
+      this.txtUserExecutionTime.TabIndex = 11;
+      this.txtUserExecutionTime.Text = "15d 3h 5m";
+      // 
+      // label6
+      // 
+      this.label6.AutoSize = true;
+      this.label6.Location = new System.Drawing.Point(13, 136);
+      this.label6.Name = "label6";
+      this.label6.Size = new System.Drawing.Size(63, 13);
+      this.label6.TabIndex = 8;
+      this.label6.Text = "User Priority";
+      // 
+      // label8
+      // 
+      this.label8.AutoSize = true;
+      this.label8.Location = new System.Drawing.Point(13, 202);
+      this.label8.Name = "label8";
+      this.label8.Size = new System.Drawing.Size(116, 13);
+      this.label8.TabIndex = 10;
+      this.label8.Text = "Overall Execution Time";
+      // 
+      // label7
+      // 
+      this.label7.AutoSize = true;
+      this.label7.Location = new System.Drawing.Point(12, 170);
+      this.label7.Name = "label7";
+      this.label7.Size = new System.Drawing.Size(82, 13);
+      this.label7.TabIndex = 9;
+      this.label7.Text = "Calculated Jobs";
+      // 
       // tabUserJobs
       // 
+      this.tabUserJobs.Controls.Add(this.hiveExperimentManagerView);
       this.tabUserJobs.Location = new System.Drawing.Point(4, 22);
       this.tabUserJobs.Name = "tabUserJobs";
@@ -439,94 +557,40 @@
       this.tabUserJobs.Size = new System.Drawing.Size(463, 475);
       this.tabUserJobs.TabIndex = 1;
-      this.tabUserJobs.Text = "Jobs";
+      this.tabUserJobs.Text = "Experiments";
       this.tabUserJobs.UseVisualStyleBackColor = true;
       // 
-      // scheduleControl1
-      // 
-      this.scheduleControl1.Location = new System.Drawing.Point(7, 7);
-      this.scheduleControl1.Name = "scheduleControl1";
-      this.scheduleControl1.Size = new System.Drawing.Size(862, 562);
-      this.scheduleControl1.TabIndex = 0;
-      // 
-      // hiveJobListViewSlaves
-      // 
-      this.hiveJobListViewSlaves.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-                  | System.Windows.Forms.AnchorStyles.Left)
-                  | System.Windows.Forms.AnchorStyles.Right)));
-      this.hiveJobListViewSlaves.Caption = "JobItemList View";
-      this.hiveJobListViewSlaves.Content = null;
-      this.hiveJobListViewSlaves.Location = new System.Drawing.Point(7, 7);
-      this.hiveJobListViewSlaves.Name = "hiveJobListViewSlaves";
-      this.hiveJobListViewSlaves.ReadOnly = false;
-      this.hiveJobListViewSlaves.Size = new System.Drawing.Size(499, 463);
-      this.hiveJobListViewSlaves.TabIndex = 0;
-      // 
-      // label9
-      // 
-      this.label9.AutoSize = true;
-      this.label9.Location = new System.Drawing.Point(7, 38);
-      this.label9.Name = "label9";
-      this.label9.Size = new System.Drawing.Size(35, 13);
-      this.label9.TabIndex = 0;
-      this.label9.Text = "Name";
-      // 
-      // label10
-      // 
-      this.label10.AutoSize = true;
-      this.label10.Location = new System.Drawing.Point(7, 63);
-      this.label10.Name = "label10";
-      this.label10.Size = new System.Drawing.Size(29, 13);
-      this.label10.TabIndex = 1;
-      this.label10.Text = "CPU";
-      // 
-      // label11
-      // 
-      this.label11.AutoSize = true;
-      this.label11.Location = new System.Drawing.Point(7, 89);
-      this.label11.Name = "label11";
-      this.label11.Size = new System.Drawing.Size(44, 13);
-      this.label11.TabIndex = 2;
-      this.label11.Text = "Memory";
-      // 
-      // label12
-      // 
-      this.label12.AutoSize = true;
-      this.label12.Location = new System.Drawing.Point(6, 115);
-      this.label12.Name = "label12";
-      this.label12.Size = new System.Drawing.Size(82, 13);
-      this.label12.TabIndex = 3;
-      this.label12.Text = "Calculated Jobs";
-      // 
-      // txtDetailsCalculatedJobs
-      // 
-      this.txtDetailsCalculatedJobs.Location = new System.Drawing.Point(123, 108);
-      this.txtDetailsCalculatedJobs.Name = "txtDetailsCalculatedJobs";
-      this.txtDetailsCalculatedJobs.Size = new System.Drawing.Size(100, 20);
-      this.txtDetailsCalculatedJobs.TabIndex = 4;
-      this.txtDetailsCalculatedJobs.Text = "33";
-      // 
-      // txtMemory
-      // 
-      this.txtMemory.Location = new System.Drawing.Point(123, 82);
-      this.txtMemory.Name = "txtMemory";
-      this.txtMemory.Size = new System.Drawing.Size(100, 20);
-      this.txtMemory.TabIndex = 5;
-      this.txtMemory.Text = "2048 MB";
-      // 
-      // txtCPU
-      // 
-      this.txtCPU.Location = new System.Drawing.Point(123, 56);
-      this.txtCPU.Name = "txtCPU";
-      this.txtCPU.Size = new System.Drawing.Size(100, 20);
-      this.txtCPU.TabIndex = 6;
-      this.txtCPU.Text = "Intel Core 2 Duo @ 2.4 Ghz";
-      // 
-      // txtName
-      // 
-      this.txtName.Location = new System.Drawing.Point(123, 30);
-      this.txtName.Name = "txtName";
-      this.txtName.Size = new System.Drawing.Size(100, 20);
-      this.txtName.TabIndex = 7;
-      this.txtName.Text = "ascheibepc";
+      // tabStatistics
+      // 
+      this.tabStatistics.Controls.Add(this.label5);
+      this.tabStatistics.Location = new System.Drawing.Point(4, 22);
+      this.tabStatistics.Name = "tabStatistics";
+      this.tabStatistics.Padding = new System.Windows.Forms.Padding(3);
+      this.tabStatistics.Size = new System.Drawing.Size(734, 520);
+      this.tabStatistics.TabIndex = 2;
+      this.tabStatistics.Text = "Statistics";
+      this.tabStatistics.UseVisualStyleBackColor = true;
+      // 
+      // label5
+      // 
+      this.label5.AutoSize = true;
+      this.label5.Location = new System.Drawing.Point(141, 221);
+      this.label5.Name = "label5";
+      this.label5.Size = new System.Drawing.Size(386, 13);
+      this.label5.TabIndex = 0;
+      this.label5.Text = "Show some global statistics, e.g. Overall execution time, nr of calculated jobs, " +
+          "....";
+      // 
+      // hiveExperimentManagerView
+      // 
+      this.hiveExperimentManagerView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+                  | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.hiveExperimentManagerView.Caption = "HiveExperimentManagerBaseView";
+      this.hiveExperimentManagerView.Content = null;
+      this.hiveExperimentManagerView.Location = new System.Drawing.Point(4, 4);
+      this.hiveExperimentManagerView.Name = "hiveExperimentManagerView";
+      this.hiveExperimentManagerView.ReadOnly = false;
+      this.hiveExperimentManagerView.Size = new System.Drawing.Size(735, 524);
+      this.hiveExperimentManagerView.TabIndex = 0;
       // 
       // HiveAdministrationView
@@ -554,9 +618,10 @@
       ((System.ComponentModel.ISupportInitialize)(this.splitUsers)).EndInit();
       this.splitUsers.ResumeLayout(false);
-      this.tabStatistics.ResumeLayout(false);
-      this.tabStatistics.PerformLayout();
       this.tabUserDetails.ResumeLayout(false);
       this.tabUserInformation.ResumeLayout(false);
       this.tabUserInformation.PerformLayout();
+      this.tabUserJobs.ResumeLayout(false);
+      this.tabStatistics.ResumeLayout(false);
+      this.tabStatistics.PerformLayout();
       this.ResumeLayout(false);
 
@@ -605,4 +670,7 @@
     private System.Windows.Forms.TextBox txtMemory;
     private System.Windows.Forms.TextBox txtDetailsCalculatedJobs;
+    private System.Windows.Forms.Button btnAddGroup;
+    private System.Windows.Forms.Button btnRemoveGroup;
+    private HiveExperimentManagerView hiveExperimentManagerView;
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.resx
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.resx	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Administration/HiveAdministrationView.resx	(revision 5512)
@@ -118,3 +118,119 @@
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="btnRemoveGroup.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        w6/9DUORY3pvwx7IAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="btnAddGroup.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        ugHE5lCKcyMAN07j92U5+iMAAAAASUVORK5CYII=
+</value>
+  </data>
 </root>
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.Designer.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.Designer.cs	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.Designer.cs	(revision 5512)
@@ -45,9 +45,5 @@
     /// </summary>
     private void InitializeComponent() {
-      System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(HiveExperimentManagerView));
-      this.hiveExperimentListView = new HiveExperimentListView();
-      this.updateExperimentsButton = new System.Windows.Forms.Button();
-      this.updateExperimentsPanel = new System.Windows.Forms.Panel();
-      this.updateExperimentsPanel.SuspendLayout();
+      this.hiveExperimentListView = new HeuristicLab.Clients.Hive.Views.HiveExperimentListView();
       this.SuspendLayout();
       // 
@@ -65,35 +61,11 @@
       this.hiveExperimentListView.TabIndex = 0;
       // 
-      // updateExperimentsButton
-      // 
-      this.updateExperimentsButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
-                  | System.Windows.Forms.AnchorStyles.Right)));
-      this.updateExperimentsButton.Image = ((System.Drawing.Image)(resources.GetObject("updateExperimentsButton.Image")));
-      this.updateExperimentsButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
-      this.updateExperimentsButton.Location = new System.Drawing.Point(87, 28);
-      this.updateExperimentsButton.Name = "updateExperimentsButton";
-      this.updateExperimentsButton.Size = new System.Drawing.Size(175, 59);
-      this.updateExperimentsButton.TabIndex = 5;
-      this.updateExperimentsButton.Text = "Update Experiment List";
-      this.updateExperimentsButton.UseVisualStyleBackColor = true;
-      this.updateExperimentsButton.Click += new System.EventHandler(this.updateExperimentsButton_Click);
-      // 
-      // updateExperimentsPanel
-      // 
-      this.updateExperimentsPanel.Controls.Add(this.updateExperimentsButton);
-      this.updateExperimentsPanel.Location = new System.Drawing.Point(228, 0);
-      this.updateExperimentsPanel.Name = "updateExperimentsPanel";
-      this.updateExperimentsPanel.Size = new System.Drawing.Size(360, 103);
-      this.updateExperimentsPanel.TabIndex = 6;
-      // 
-      // HiveClientView
+      // HiveExperimentManagerBaseView
       // 
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-      this.Controls.Add(this.updateExperimentsPanel);
       this.Controls.Add(this.hiveExperimentListView);
-      this.Name = "HiveClientView";
+      this.Name = "HiveExperimentManagerBaseView";
       this.Size = new System.Drawing.Size(735, 524);
-      this.updateExperimentsPanel.ResumeLayout(false);
       this.ResumeLayout(false);
 
@@ -101,7 +73,5 @@
     #endregion
 
-    private System.Windows.Forms.Button updateExperimentsButton;
     private HiveExperimentListView hiveExperimentListView;
-    private System.Windows.Forms.Panel updateExperimentsPanel;
 
 
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.cs	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.cs	(revision 5512)
@@ -21,9 +21,7 @@
 
 using System;
-using System.Threading;
 using System.Windows.Forms;
 using HeuristicLab.Core.Views;
 using HeuristicLab.MainForm;
-using HeuristicLab.PluginInfrastructure;
 
 namespace HeuristicLab.Clients.Hive.Views {
@@ -32,7 +30,6 @@
   /// </summary>
   [View("Hive Experiment Manager View")]
-  [Content(typeof(HiveExperimentManagerClient), true)]
-  public sealed partial class HiveExperimentManagerView : ItemView {
-    private ProgressView progressView;
+  [Content(typeof(HiveExperimentManagerClient), false)]
+  public partial class HiveExperimentManagerView : ItemView {
 
     public new HiveExperimentManagerClient Content {
@@ -46,5 +43,4 @@
     public HiveExperimentManagerView() {
       InitializeComponent();
-      updateExperimentsPanel.Dock = DockStyle.Fill;
     }
 
@@ -52,16 +48,16 @@
       base.OnContentChanged();
       Content_HiveExperimentsChanged(this, EventArgs.Empty);
-      Content_IsProgressingChanged(this, EventArgs.Empty);
-      if(Content != null) UpdateExperimentsAsync();
+    }
+
+    protected override void SetEnabledStateOfControls() {
+      base.SetEnabledStateOfControls();
     }
 
     protected override void RegisterContentEvents() {
       this.Content.HiveExperimentsChanged += new EventHandler(Content_HiveExperimentsChanged);
-      this.Content.IsProgressingChanged += new EventHandler(Content_IsProgressingChanged);
     }
 
     protected override void DeregisterContentEvents() {
       this.Content.HiveExperimentsChanged -= new EventHandler(Content_HiveExperimentsChanged);
-      this.Content.IsProgressingChanged -= new EventHandler(Content_IsProgressingChanged);
     }
 
@@ -71,54 +67,4 @@
       }
     }
-
-    protected override void SetEnabledStateOfControls() {
-      base.SetEnabledStateOfControls();
-      updateExperimentsPanel.Visible = Content != null && Content.HiveExperiments == null;
-
-    }
-
-    private void updateExperimentsButton_Click(object sender, EventArgs e) {
-      if(Content != null) UpdateExperimentsAsync();
-    }
-
-    private void Content_IsProgressingChanged(object sender, EventArgs e) {
-      if (this.InvokeRequired) {
-        Invoke(new EventHandler(Content_IsProgressingChanged), sender, e);
-      } else {
-        if (Content != null && Content.IsProgressing) {
-          SetProgressView();
-        } else {
-          FinishProgressView();
-        }
-      }
-    }
-
-    private void SetProgressView() {
-      if (progressView == null) {
-        progressView = new ProgressView(this, Content.Progress);
-      } else {
-        progressView.Progress = Content.Progress;
-      }
-    }
-
-    private void FinishProgressView() {
-      if (progressView != null) {
-        progressView.Finish();
-        progressView = null;
-        SetEnabledStateOfControls();
-      }
-    }
-
-    private void UpdateExperimentsAsync() {
-      MethodInvoker invoker = new MethodInvoker(Content.UpdateExperimentList);
-      invoker.BeginInvoke((ar) => {
-        try {
-          invoker.EndInvoke(ar);
-        }
-        catch (Exception ex) {
-          ThreadPool.QueueUserWorkItem(delegate(object exception) { ErrorHandling.ShowErrorDialog(this, (Exception)exception); }, ex);
-        }
-      }, null);
-    }
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.resx
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.resx	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/HiveExperimentManagerView.resx	(revision 5512)
@@ -113,76 +113,10 @@
   </resheader>
   <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-  <data name="updateExperimentsButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>57</value>
   </metadata>
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/MenuItems/ExperimentManagerMenuItem.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/MenuItems/ExperimentManagerMenuItem.cs	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/MenuItems/ExperimentManagerMenuItem.cs	(revision 5512)
@@ -21,7 +21,6 @@
 
 using System.Collections.Generic;
+using HeuristicLab.Clients.Hive;
 using HeuristicLab.MainForm;
-using HeuristicLab.MainForm.WindowsForms;
-using HeuristicLab.Clients.Hive;
 
 namespace HeuristicLab.Optimizer.MenuItems {
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.cs	(revision 5512)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.cs	(revision 5512)
@@ -0,0 +1,104 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using System.Threading;
+using System.Windows.Forms;
+using HeuristicLab.MainForm;
+using HeuristicLab.PluginInfrastructure;
+
+namespace HeuristicLab.Clients.Hive.Views {
+  [View("Updateable Hive Experiment Manager View")]
+  [Content(typeof(HiveExperimentManagerClient), true)]
+  public partial class UpdateableHiveExperimentManagerView : HiveExperimentManagerView {
+    private ProgressView progressView;
+
+    public UpdateableHiveExperimentManagerView() {
+      InitializeComponent();
+      updateExperimentsPanel.Dock = DockStyle.Fill;
+    }
+
+    protected override void OnContentChanged() {
+      base.OnContentChanged();
+      Content_IsProgressingChanged(this, EventArgs.Empty);
+      if (Content != null) UpdateExperimentsAsync();
+    }
+
+    protected override void RegisterContentEvents() {
+      base.RegisterContentEvents();
+      this.Content.IsProgressingChanged += new EventHandler(Content_IsProgressingChanged);
+    }
+
+    protected override void DeregisterContentEvents() {
+      base.DeregisterContentEvents();
+      this.Content.IsProgressingChanged -= new EventHandler(Content_IsProgressingChanged);
+    }
+
+    private void updateExperimentsButton_Click(object sender, EventArgs e) {
+      if (Content != null) UpdateExperimentsAsync();
+    }
+
+    private void Content_IsProgressingChanged(object sender, EventArgs e) {
+      if (this.InvokeRequired) {
+        Invoke(new EventHandler(Content_IsProgressingChanged), sender, e);
+      } else {
+        if (Content != null && Content.IsProgressing) {
+          SetProgressView();
+        } else {
+          FinishProgressView();
+        }
+      }
+    }
+
+    private void SetProgressView() {
+      if (progressView == null) {
+        progressView = new ProgressView(this, Content.Progress);
+      } else {
+        progressView.Progress = Content.Progress;
+      }
+    }
+
+    private void FinishProgressView() {
+      if (progressView != null) {
+        progressView.Finish();
+        progressView = null;
+        SetEnabledStateOfControls();
+      }
+    }
+
+    protected override void SetEnabledStateOfControls() {
+      base.SetEnabledStateOfControls();
+      updateExperimentsPanel.Visible = Content != null && Content.HiveExperiments == null;
+    }
+
+    protected void UpdateExperimentsAsync() {
+      MethodInvoker invoker = new MethodInvoker(Content.UpdateExperimentList);
+      invoker.BeginInvoke((ar) => {
+        try {
+          invoker.EndInvoke(ar);
+        }
+        catch (Exception ex) {
+          ThreadPool.QueueUserWorkItem(delegate(object exception) { ErrorHandling.ShowErrorDialog(this, (Exception)exception); }, ex);
+        }
+      }, null);
+    }
+  }
+}
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.designer.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.designer.cs	(revision 5512)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.designer.cs	(revision 5512)
@@ -0,0 +1,71 @@
+﻿namespace HeuristicLab.Clients.Hive.Views {
+  partial class UpdateableHiveExperimentManagerView {
+    /// <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) {
+        if (components != null) components.Dispose();
+      }
+      base.Dispose(disposing);
+    }
+
+    #region Component 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() {
+      System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(UpdateableHiveExperimentManagerView));
+      this.updateExperimentsPanel = new System.Windows.Forms.Panel();
+      this.updateExperimentsButton = new System.Windows.Forms.Button();
+      this.updateExperimentsPanel.SuspendLayout();
+      this.SuspendLayout();
+      // 
+      // updateExperimentsPanel
+      // 
+      this.updateExperimentsPanel.Controls.Add(this.updateExperimentsButton);
+      this.updateExperimentsPanel.Location = new System.Drawing.Point(265, 3);
+      this.updateExperimentsPanel.Name = "updateExperimentsPanel";
+      this.updateExperimentsPanel.Size = new System.Drawing.Size(360, 103);
+      this.updateExperimentsPanel.TabIndex = 7;
+      // 
+      // updateExperimentsButton
+      // 
+      this.updateExperimentsButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.updateExperimentsButton.Image = ((System.Drawing.Image)(resources.GetObject("updateExperimentsButton.Image")));
+      this.updateExperimentsButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
+      this.updateExperimentsButton.Location = new System.Drawing.Point(87, 28);
+      this.updateExperimentsButton.Name = "updateExperimentsButton";
+      this.updateExperimentsButton.Size = new System.Drawing.Size(175, 59);
+      this.updateExperimentsButton.TabIndex = 5;
+      this.updateExperimentsButton.Text = "Update Experiment List";
+      this.updateExperimentsButton.UseVisualStyleBackColor = true;
+      this.updateExperimentsButton.Click += new System.EventHandler(this.updateExperimentsButton_Click);
+      // 
+      // HiveExperimentManagerExtendedView
+      // 
+      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+      this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+      this.Controls.Add(this.updateExperimentsPanel);
+      this.Name = "HiveExperimentManagerExtendedView";
+      this.Controls.SetChildIndex(this.updateExperimentsPanel, 0);
+      this.updateExperimentsPanel.ResumeLayout(false);
+      this.ResumeLayout(false);
+
+    }
+
+    #endregion
+
+    private System.Windows.Forms.Panel updateExperimentsPanel;
+    private System.Windows.Forms.Button updateExperimentsButton;
+  }
+}
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.resx
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.resx	(revision 5512)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/ExperimentManager/UpdateableHiveExperimentManagerView.resx	(revision 5512)
@@ -0,0 +1,186 @@
+﻿<?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>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="updateExperimentsButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
+</root>
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/HeuristicLab.Clients.Hive.Views-3.4.csproj
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/HeuristicLab.Clients.Hive.Views-3.4.csproj	(revision 5511)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/HeuristicLab.Clients.Hive.Views-3.4.csproj	(revision 5512)
@@ -117,4 +117,21 @@
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="ExperimentManager\UpdateableHiveExperimentManagerView.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="ExperimentManager\UpdateableHiveExperimentManagerView.designer.cs">
+      <DependentUpon>UpdateableHiveExperimentManagerView.cs</DependentUpon>
+    </Compile>
+    <Compile Include="ExperimentManager\HiveExperimentManagerView.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
+    <Compile Include="ExperimentManager\HiveExperimentManagerView.Designer.cs">
+      <DependentUpon>HiveExperimentManagerView.cs</DependentUpon>
+    </Compile>
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Resources.resx</DependentUpon>
+    </Compile>
     <None Include="HeuristicLabClientsHiveViewsPlugin.cs.frame" />
     <Compile Include="Administration\HiveAdministrationView.cs">
@@ -136,10 +153,4 @@
     <Compile Include="ExperimentManager\HiveExperimentListView.Designer.cs">
       <DependentUpon>HiveExperimentListView.cs</DependentUpon>
-    </Compile>
-    <Compile Include="ExperimentManager\HiveExperimentManagerView.cs">
-      <SubType>UserControl</SubType>
-    </Compile>
-    <Compile Include="ExperimentManager\HiveExperimentManagerView.Designer.cs">
-      <DependentUpon>HiveExperimentManagerView.cs</DependentUpon>
     </Compile>
     <Compile Include="ExperimentManager\HiveExperimentView.cs">
@@ -184,4 +195,8 @@
     <EmbeddedResource Include="ExperimentManager\HiveExperimentManagerView.resx">
       <DependentUpon>HiveExperimentManagerView.cs</DependentUpon>
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
+    <EmbeddedResource Include="ExperimentManager\UpdateableHiveExperimentManagerView.resx">
+      <DependentUpon>UpdateableHiveExperimentManagerView.cs</DependentUpon>
     </EmbeddedResource>
     <EmbeddedResource Include="ExperimentManager\HiveExperimentView.resx">
@@ -193,4 +208,8 @@
     <EmbeddedResource Include="Progress\ProgressView.resx">
       <DependentUpon>ProgressView.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
     </EmbeddedResource>
   </ItemGroup>
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.Designer.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.Designer.cs	(revision 5512)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.Designer.cs	(revision 5512)
@@ -0,0 +1,63 @@
+﻿//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.1
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace HeuristicLab.Clients.Hive.Views.Properties {
+    using System;
+    
+    
+    /// <summary>
+    ///   A strongly-typed resource class, for looking up localized strings, etc.
+    /// </summary>
+    // This class was auto-generated by the StronglyTypedResourceBuilder
+    // class via a tool like ResGen or Visual Studio.
+    // To add or remove a member, edit your .ResX file then rerun ResGen
+    // with the /str option, or rebuild your VS project.
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    internal class Resources {
+        
+        private static global::System.Resources.ResourceManager resourceMan;
+        
+        private static global::System.Globalization.CultureInfo resourceCulture;
+        
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal Resources() {
+        }
+        
+        /// <summary>
+        ///   Returns the cached ResourceManager instance used by this class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Resources.ResourceManager ResourceManager {
+            get {
+                if (object.ReferenceEquals(resourceMan, null)) {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("HeuristicLab.Clients.Hive.Views.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+        
+        /// <summary>
+        ///   Overrides the current thread's CurrentUICulture property for all
+        ///   resource lookups using this strongly typed resource class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture {
+            get {
+                return resourceCulture;
+            }
+            set {
+                resourceCulture = value;
+            }
+        }
+    }
+}
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.resx
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.resx	(revision 5512)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Views/3.4/Properties/Resources.resx	(revision 5512)
@@ -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>
