Index: trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ProjectResourcesView.cs
===================================================================
--- trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ProjectResourcesView.cs	(revision 16209)
+++ trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ProjectResourcesView.cs	(revision 16211)
@@ -30,4 +30,5 @@
 using HeuristicLab.MainForm;
 using System.Collections;
+using HeuristicLab.Common;
 
 namespace HeuristicLab.Clients.Hive.Administrator.Views {
@@ -72,7 +73,16 @@
       treeView.ImageList.Images.Add(VSImageLibrary.MonitorLarge);
       treeView.ImageList.Images.Add(VSImageLibrary.NetworkCenterLarge);
+
+      HiveAdminClient.Instance.Refreshing += HiveAdminClient_Instance_Refreshing;
+      HiveAdminClient.Instance.Refreshed += HiveAdminClient_Instance_Refreshed;
     }
 
     #region Overrides
+    protected override void OnClosing(FormClosingEventArgs e) {
+      HiveAdminClient.Instance.Refreshed -= HiveAdminClient_Instance_Refreshed;
+      HiveAdminClient.Instance.Refreshing -= HiveAdminClient_Instance_Refreshing;
+      base.OnClosing(e);
+    }
+
     protected override void OnContentChanged() {
       base.OnContentChanged();
@@ -106,4 +116,18 @@
 
     #region Event Handlers
+    private void HiveAdminClient_Instance_Refreshing(object sender, EventArgs e) {
+      if (InvokeRequired) Invoke((Action<object, EventArgs>)HiveAdminClient_Instance_Refreshing, sender, e);
+      else {
+        SetEnabledStateOfControls();
+      }
+    }
+
+    private void HiveAdminClient_Instance_Refreshed(object sender, EventArgs e) {
+      if (InvokeRequired) Invoke((Action<object, EventArgs>)HiveAdminClient_Instance_Refreshed, sender, e);
+      else {
+        OnContentChanged();
+      }
+    }
+
     private void ProjectResourcesView_Load(object sender, EventArgs e) {
 
@@ -385,5 +409,5 @@
         }
 
-          if (includedResources.Contains(newResource) && newIncludedResources.Contains(newResource)) {
+        if (includedResources.Contains(newResource) && newIncludedResources.Contains(newResource)) {
           newNode.Text += INCLUDED_TAG;
         } else if (addedIncludes.Contains(newResource)) {
@@ -424,4 +448,7 @@
       }
 
+      ExpandResourceNodesOfInterest(treeView.Nodes);
+
+      bool expandUngroupedGroupNode = false;
       var ungroupedSlaves = subResources.OfType<Slave>().OrderBy(x => x.Name);
       if(ungroupedSlaves.Any()) {
@@ -436,6 +463,28 @@
         foreach (var slave in ungroupedSlaves) {
           var slaveNode = new TreeNode(slave.Name) { Tag = slave };
+          if (newAssignedResources.Contains(slave)) {
+            slaveNode.Checked = true;
+            expandUngroupedGroupNode = true;
+          }
+
+          if (!HiveRoles.CheckAdminUserPermissions()) {
+            slaveNode.ForeColor = SystemColors.GrayText;
+            slaveNode.Text += IMMUTABLE_TAG;
+          } else {
+            if (addedAssignments.Contains(slave)) {
+              slaveNode.BackColor = addedAssignmentColor;
+              slaveNode.ForeColor = SystemColors.ControlText;
+              slaveNode.Text += ADDED_ASSIGNMENT_TAG;
+            } else if (removedAssignments.Contains(slave)) {
+              slaveNode.BackColor = removedAssignmentColor;
+              slaveNode.ForeColor = SystemColors.ControlText;
+              slaveNode.Text += REMOVED_ASSIGNMENT_TAG;
+              expandUngroupedGroupNode = true;
+            }
+          }
           ungroupedGroupNode.Nodes.Add(slaveNode);
         }
+
+        if(expandUngroupedGroupNode) ungroupedGroupNode.Expand();
         treeView.Nodes.Add(ungroupedGroupNode);
       } else if (ungroupedGroupNode != null) {
@@ -444,7 +493,5 @@
 
       treeView.BeforeCheck += treeView_BeforeCheck;
-      treeView.AfterCheck += treeView_AfterCheck;
-      
-      ExpandResourceNodesOfInterest(treeView.Nodes);
+      treeView.AfterCheck += treeView_AfterCheck;          
 
       return top;
Index: trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ScheduleView.cs
===================================================================
--- trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ScheduleView.cs	(revision 16209)
+++ trunk/HeuristicLab.Clients.Hive.Administrator/3.3/Views/ScheduleView.cs	(revision 16211)
@@ -227,8 +227,11 @@
       base.SetEnabledStateOfControls();
       bool enabled = Content != null && !Locked;
+      dtpFrom.Enabled = enabled;
+      dtpTo.Enabled = enabled;
+      chbade.Enabled = enabled;
       btCreate.Enabled = enabled;
-      btbDelete.Enabled = enabled;
+      btbDelete.Enabled = enabled;      
+      btnRecurrence.Enabled = enabled;
       btnClearCal.Enabled = enabled;
-      btnRecurrence.Enabled = enabled;
       btnSaveCal.Enabled = enabled;
     }
