Index: trunk/sources/HeuristicLab.Analysis/3.3/DataRow.cs
===================================================================
--- trunk/sources/HeuristicLab.Analysis/3.3/DataRow.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Analysis/3.3/DataRow.cs	(revision 3431)
@@ -54,5 +54,4 @@
       DataRow clone = new DataRow(Name, Description);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.values.AddRange(values);
       return clone;
Index: trunk/sources/HeuristicLab.Analysis/3.3/DataTable.cs
===================================================================
--- trunk/sources/HeuristicLab.Analysis/3.3/DataTable.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Analysis/3.3/DataTable.cs	(revision 3431)
@@ -58,5 +58,4 @@
       DataTable clone = new DataTable(Name, Description);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.rows = (NamedItemCollection<DataRow>)cloner.Clone(rows);
       return clone;
Index: trunk/sources/HeuristicLab.Common/3.3/Content/Content.cs
===================================================================
--- trunk/sources/HeuristicLab.Common/3.3/Content/Content.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Common/3.3/Content/Content.cs	(revision 3431)
@@ -26,29 +26,4 @@
 
 namespace HeuristicLab.Common {
-  public class Content : DeepCloneable, IContent {
-    public Content() {
-      this.readOnlyView = false;
-    }
-    public Content(bool readOnlyView)
-      : this() {
-      this.ReadOnlyView = readOnlyView;
-    }
-
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if (readOnlyView != value) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-        }
-      }
-    }
-
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
-  }
+  public class Content : DeepCloneable, IContent { }
 }
Index: trunk/sources/HeuristicLab.Common/3.3/Content/IContent.cs
===================================================================
--- trunk/sources/HeuristicLab.Common/3.3/Content/IContent.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Common/3.3/Content/IContent.cs	(revision 3431)
@@ -26,7 +26,4 @@
 
 namespace HeuristicLab.Common {
-  public interface IContent :IDeepCloneable{
-    bool ReadOnlyView { get; set; }
-    event EventHandler ReadOnlyViewChanged;
-  }
+  public interface IContent : IDeepCloneable { }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ItemArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ItemArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ItemArray.cs	(revision 3431)
@@ -52,33 +52,8 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !(array.IsReadOnly)) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    public ItemArray()
-      : base() {
-      readOnlyView = array.IsReadOnly;
-    }
-    public ItemArray(int length)
-      : base(length) {
-      readOnlyView = array.IsReadOnly;
-    }
-    public ItemArray(T[] array)
-      : base(array) {
-      readOnlyView = array.IsReadOnly;
-    }
-    public ItemArray(IEnumerable<T> collection)
-      : base(collection) {
-      readOnlyView = array.IsReadOnly;
-    }
+    public ItemArray() : base() { }
+    public ItemArray(int length) : base(length) { }
+    public ItemArray(T[] array) : base(array) { }
+    public ItemArray(IEnumerable<T> collection) : base(collection) { }
     [StorableConstructor]
     protected ItemArray(bool deserializing) { }
@@ -90,5 +65,4 @@
       ItemArray<T> clone = (ItemArray<T>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       clone.array = this.Select(x => (T)cloner.Clone(x)).ToArray();
       return clone;
@@ -113,9 +87,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ItemCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ItemCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ItemCollection.cs	(revision 3431)
@@ -49,29 +49,7 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !((ICollection<T>)list).IsReadOnly) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    public ItemCollection()
-      : base() {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
-    public ItemCollection(int capacity)
-      : base(capacity) {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
-    public ItemCollection(IEnumerable<T> collection)
-      : base(collection) {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
+    public ItemCollection() : base() { }
+    public ItemCollection(int capacity) : base(capacity) { }
+    public ItemCollection(IEnumerable<T> collection) : base(collection) { }
     [StorableConstructor]
     protected ItemCollection(bool deserializing) { }
@@ -83,5 +61,4 @@
       ItemCollection<T> clone = (ItemCollection<T>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       clone.list = new List<T>(this.Select(x => (T)cloner.Clone(x)));
       return clone;
@@ -106,9 +83,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ItemDictionary.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ItemDictionary.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ItemDictionary.cs	(revision 3431)
@@ -49,29 +49,7 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !((ICollection<KeyValuePair<TKey, TValue>>)dict).IsReadOnly) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    public ItemDictionary()
-      : base() {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TValue>>)dict).IsReadOnly;
-    }
-    public ItemDictionary(int capacity)
-      : base(capacity) {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TValue>>)dict).IsReadOnly;
-    }
-    public ItemDictionary(IDictionary<TKey, TValue> dictionary)
-      : base(dictionary) {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TValue>>)dict).IsReadOnly;
-    }
+    public ItemDictionary() : base() { }
+    public ItemDictionary(int capacity) : base(capacity) { }
+    public ItemDictionary(IDictionary<TKey, TValue> dictionary) : base(dictionary) { }
     [StorableConstructor]
     protected ItemDictionary(bool deserializing) { }
@@ -83,5 +61,4 @@
       ItemDictionary<TKey, TValue> clone = (ItemDictionary<TKey, TValue>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       foreach (TKey key in dict.Keys)
         clone.dict.Add((TKey)cloner.Clone(key), (TValue)cloner.Clone(dict[key]));
@@ -107,9 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ItemList.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ItemList.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ItemList.cs	(revision 3431)
@@ -52,29 +52,7 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !((ICollection<T>)list).IsReadOnly) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    public ItemList()
-      : base() {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
-    public ItemList(int capacity)
-      : base(capacity) {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
-    public ItemList(IEnumerable<T> collection)
-      : base(collection) {
-      readOnlyView = ((ICollection<T>)list).IsReadOnly;
-    }
+    public ItemList() : base() { }
+    public ItemList(int capacity) : base(capacity) { }
+    public ItemList(IEnumerable<T> collection) : base(collection) { }
     [StorableConstructor]
     protected ItemList(bool deserializing) { }
@@ -86,5 +64,4 @@
       ItemList<T> clone = (ItemList<T>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       clone.list = new List<T>(this.Select(x => (T)cloner.Clone(x)));
       return clone;
@@ -109,9 +86,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ItemSet.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ItemSet.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ItemSet.cs	(revision 3431)
@@ -52,25 +52,6 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !((ICollection<T>)set).IsReadOnly) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    public ItemSet()
-      : base() {
-      readOnlyView = ((ICollection<T>)set).IsReadOnly;
-    }
-    public ItemSet(IEnumerable<T> collection)
-      : base(collection) {
-      readOnlyView = ((ICollection<T>)set).IsReadOnly;
-    }
+    public ItemSet() : base() { }
+    public ItemSet(IEnumerable<T> collection) : base(collection) { }
     [StorableConstructor]
     protected ItemSet(bool deserializing) { }
@@ -82,5 +63,4 @@
       ItemSet<T> clone = (ItemSet<T>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       clone.set = new HashSet<T>(this.Select(x => (T)cloner.Clone(x)));
       return clone;
@@ -105,9 +85,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/KeyedItemCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/KeyedItemCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/KeyedItemCollection.cs	(revision 3431)
@@ -48,26 +48,7 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if ((readOnlyView != value) && !((ICollection<KeyValuePair<TKey, TItem>>)dict).IsReadOnly) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-          OnPropertyChanged("ReadOnlyView");
-        }
-      }
-    }
-
-    protected KeyedItemCollection() : base() {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TItem>>)dict).IsReadOnly;
-    }
-    protected KeyedItemCollection(int capacity) : base(capacity) {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TItem>>)dict).IsReadOnly;
-    }
-    protected KeyedItemCollection(IEnumerable<TItem> collection) : base(collection) {
-      readOnlyView = ((ICollection<KeyValuePair<TKey, TItem>>)dict).IsReadOnly;
-    }
+    protected KeyedItemCollection() : base() { }
+    protected KeyedItemCollection(int capacity) : base(capacity) { }
+    protected KeyedItemCollection(IEnumerable<TItem> collection) : base(collection) { }
     [StorableConstructor]
     protected KeyedItemCollection(bool deserializing) { }
@@ -79,5 +60,4 @@
       KeyedItemCollection<TKey, TItem> clone = (KeyedItemCollection<TKey, TItem>)Activator.CreateInstance(this.GetType());
       cloner.RegisterClonedObject(this, clone);
-      clone.readOnlyView = readOnlyView;
       foreach (TItem item in dict.Values) {
         TItem clonedItem = (TItem)cloner.Clone(item);
@@ -105,9 +85,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemArray.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     public ReadOnlyItemArray() : base(new ItemArray<T>()) { }
     public ReadOnlyItemArray(IItemArray<T> array) : base(array) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemCollection.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     public ReadOnlyItemCollection() : base(new ItemCollection<T>()) { }
     public ReadOnlyItemCollection(IItemCollection<T> collection) : base(collection) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemDictionary.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemDictionary.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemDictionary.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     public ReadOnlyItemDictionary() : base(new ItemDictionary<TKey, TValue>()) { }
     public ReadOnlyItemDictionary(IItemDictionary<TKey, TValue> dictionary) : base(dictionary) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemList.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemList.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemList.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     public ReadOnlyItemList() : base(new ItemList<T>()) { }
     public ReadOnlyItemList(IItemList<T> list) : base(list) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemSet.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemSet.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyItemSet.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     public ReadOnlyItemSet() : base(new ItemSet<T>()) { }
     public ReadOnlyItemSet(IItemSet<T> set) : base(set) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyKeyedItemCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyKeyedItemCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ReadOnlyKeyedItemCollection.cs	(revision 3431)
@@ -49,9 +49,4 @@
     }
 
-    public bool ReadOnlyView {
-      get { return true; }
-      set { }
-    }
-
     protected ReadOnlyKeyedItemCollection() : base() { }
     public ReadOnlyKeyedItemCollection(IKeyedItemCollection<TKey, TItem> collection) : base(collection) { }
@@ -89,8 +84,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    event EventHandler IContent.ReadOnlyViewChanged {
-      add { }
-      remove { }
-    }
   }
 }
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/ScopeList.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/ScopeList.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/ScopeList.cs	(revision 3431)
@@ -38,5 +38,4 @@
       ScopeList clone = new ScopeList();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.list = new List<IScope>(this.Select(x => (IScope)cloner.Clone(x)));
       return clone;
Index: trunk/sources/HeuristicLab.Core/3.3/Collections/VariableCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Collections/VariableCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Collections/VariableCollection.cs	(revision 3431)
@@ -38,5 +38,4 @@
       VariableCollection clone = new VariableCollection();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       foreach (string key in dict.Keys)
         clone.dict.Add(key, (IVariable)cloner.Clone(dict[key]));
Index: trunk/sources/HeuristicLab.Core/3.3/Item.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Item.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Item.cs	(revision 3431)
@@ -42,33 +42,7 @@
     }
 
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if (readOnlyView != value) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-        }
-      }
-    }
-
-    protected Item()
-      : base() {
-      readOnlyView = false;
-    }
+    protected Item() : base() { }
     [StorableConstructor]
     protected Item(bool deserializing) { }
-
-    /// <summary>
-    /// Clones the current instance (deep clone).
-    /// </summary>
-    /// <param name="clonedObjects">Dictionary of all already cloned objects. (Needed to avoid cycles.)</param>
-    /// <returns>The cloned object as <see cref="Variable"/>.</returns>
-    public override IDeepCloneable Clone(Cloner cloner) {
-      Item clone = (Item)base.Clone(cloner);
-      clone.readOnlyView = readOnlyView;
-      return clone;
-    }
 
     /// <summary>
@@ -85,9 +59,4 @@
       if (handler != null) handler(this, EventArgs.Empty);
     }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
     public event EventHandler ToStringChanged;
     protected virtual void OnToStringChanged() {
Index: trunk/sources/HeuristicLab.Core/3.3/Scope.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Scope.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Scope.cs	(revision 3431)
@@ -104,5 +104,4 @@
       Scope clone = new Scope();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.name = name;
       clone.description = description;
Index: trunk/sources/HeuristicLab.Core/3.3/Variable.cs
===================================================================
--- trunk/sources/HeuristicLab.Core/3.3/Variable.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Core/3.3/Variable.cs	(revision 3431)
@@ -103,5 +103,4 @@
       Variable clone = new Variable(Name, Description);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.value = (IItem)cloner.Clone(value);
       clone.Initialize();
Index: trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleArrayView.cs
===================================================================
--- trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleArrayView.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleArrayView.cs	(revision 3431)
@@ -111,5 +111,4 @@
         dataGridView.Columns[0].Width = dataGridView.Columns[0].GetPreferredWidth(DataGridViewAutoSizeColumnMode.AllCells, true);
       }
-      dataGridView.ReadOnly = Content.ReadOnlyView;
       dataGridView.Enabled = true;
     }
Index: trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs
===================================================================
--- trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 3431)
@@ -71,5 +71,4 @@
       Content.ColumnNamesChanged -= new EventHandler(Content_ColumnNamesChanged);
       Content.RowNamesChanged -= new EventHandler(Content_RowNamesChanged);
-      Content.ReadOnlyViewChanged -= new EventHandler(Content_ReadOnlyViewChanged);
       base.DeregisterContentEvents();
     }
@@ -80,5 +79,4 @@
       Content.ColumnNamesChanged += new EventHandler(Content_ColumnNamesChanged);
       Content.RowNamesChanged += new EventHandler(Content_RowNamesChanged);
-      Content.ReadOnlyViewChanged += new EventHandler(Content_ReadOnlyViewChanged);
     }
 
@@ -126,9 +124,9 @@
       virtualRowIndizes = Enumerable.Range(0, Content.Rows).ToArray();
       //DataGridViews with Rows but no columns are not allowed !
-      if (Content.Rows == 0 && dataGridView.RowCount != Content.Rows && !Content.ReadOnlyView)
+      if (Content.Rows == 0 && dataGridView.RowCount != Content.Rows && !Content.ReadOnly)
         Content.Rows = dataGridView.RowCount;
       else
         dataGridView.RowCount = Content.Rows;
-      if (Content.Columns == 0 && dataGridView.ColumnCount != Content.Columns && !Content.ReadOnlyView)
+      if (Content.Columns == 0 && dataGridView.ColumnCount != Content.Columns && !Content.ReadOnly)
         Content.Columns = dataGridView.ColumnCount;
       else
@@ -162,10 +160,4 @@
     }
 
-    private void UpdateReadOnlyControls() {
-      dataGridView.ReadOnly = Content.ReadOnlyView;
-      rowsTextBox.ReadOnly = Content.ReadOnlyView;
-      columnsTextBox.ReadOnly = Content.ReadOnlyView;
-    }
-
     private void Content_RowNamesChanged(object sender, EventArgs e) {
       if (InvokeRequired)
@@ -191,11 +183,4 @@
       else
         UpdateData();
-    }
-
-    private void Content_ReadOnlyViewChanged(object sender, EventArgs e) {
-      if (InvokeRequired)
-        Invoke(new EventHandler(Content_ReadOnlyViewChanged), sender, e);
-      else
-        UpdateReadOnlyControls();
     }
 
Index: trunk/sources/HeuristicLab.Data/3.3/BoolArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/BoolArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/BoolArray.cs	(revision 3431)
@@ -36,5 +36,4 @@
       BoolArray clone = new BoolArray(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/BoolMatrix.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/BoolMatrix.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/BoolMatrix.cs	(revision 3431)
@@ -41,5 +41,4 @@
       BoolMatrix clone = new BoolMatrix();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.matrix = (bool[,])matrix.Clone();
       clone.columnNames = new List<string>(columnNames);
Index: trunk/sources/HeuristicLab.Data/3.3/BoolValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/BoolValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/BoolValue.cs	(revision 3431)
@@ -41,5 +41,4 @@
       BoolValue clone = new BoolValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/Comparison.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/Comparison.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/Comparison.cs	(revision 3431)
@@ -40,5 +40,4 @@
       Comparison clone = new Comparison(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/DateTimeValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/DateTimeValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/DateTimeValue.cs	(revision 3431)
@@ -35,5 +35,4 @@
       DateTimeValue clone = new DateTimeValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/DoubleArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/DoubleArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/DoubleArray.cs	(revision 3431)
@@ -36,5 +36,4 @@
       DoubleArray clone = new DoubleArray(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/DoubleMatrix.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/DoubleMatrix.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/DoubleMatrix.cs	(revision 3431)
@@ -41,5 +41,4 @@
       DoubleMatrix clone = new DoubleMatrix();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.matrix = (double[,])matrix.Clone();
       clone.columnNames = new List<string>(columnNames);
Index: trunk/sources/HeuristicLab.Data/3.3/DoubleValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/DoubleValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/DoubleValue.cs	(revision 3431)
@@ -41,5 +41,4 @@
       DoubleValue clone = new DoubleValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/IntArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/IntArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/IntArray.cs	(revision 3431)
@@ -36,5 +36,4 @@
       IntArray clone = new IntArray(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/IntMatrix.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/IntMatrix.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/IntMatrix.cs	(revision 3431)
@@ -41,5 +41,4 @@
       IntMatrix clone = new IntMatrix();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.matrix = (int[,])matrix.Clone();
       clone.columnNames = new List<string>(columnNames);
Index: trunk/sources/HeuristicLab.Data/3.3/IntValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/IntValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/IntValue.cs	(revision 3431)
@@ -41,5 +41,4 @@
       IntValue clone = new IntValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/PercentValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/PercentValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/PercentValue.cs	(revision 3431)
@@ -35,5 +35,4 @@
       PercentValue clone = new PercentValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/StringArray.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/StringArray.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/StringArray.cs	(revision 3431)
@@ -91,5 +91,4 @@
       StringArray clone = new StringArray();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.array = (string[])array.Clone();
       clone.readOnly = readOnly;
Index: trunk/sources/HeuristicLab.Data/3.3/StringMatrix.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/StringMatrix.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/StringMatrix.cs	(revision 3431)
@@ -184,5 +184,4 @@
       StringMatrix clone = new StringMatrix();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.matrix = (string[,])matrix.Clone();
       clone.columnNames = new List<string>(columnNames);
Index: trunk/sources/HeuristicLab.Data/3.3/StringValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/StringValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/StringValue.cs	(revision 3431)
@@ -67,5 +67,4 @@
       StringValue clone = new StringValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Data/3.3/TimeSpanValue.cs
===================================================================
--- trunk/sources/HeuristicLab.Data/3.3/TimeSpanValue.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Data/3.3/TimeSpanValue.cs	(revision 3431)
@@ -36,5 +36,4 @@
       TimeSpanValue clone = new TimeSpanValue(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/BinaryVector.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/BinaryVector.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/BinaryVector.cs	(revision 3431)
@@ -45,5 +45,4 @@
       BinaryVector clone = new BinaryVector(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Tests/TestRandom.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.BinaryVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3431)
@@ -113,12 +113,6 @@
     }
 
-    public bool ReadOnlyView {
-      get { throw new NotImplementedException(); }
-      set { throw new NotImplementedException(); }
-    }
-
 #pragma warning disable 67
     public event EventHandler ItemImageChanged;
-    public event EventHandler ReadOnlyViewChanged;
     public event EventHandler ToStringChanged;
 #pragma warning restore 67
Index: trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVector.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVector.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/IntegerVector.cs	(revision 3431)
@@ -45,5 +45,4 @@
       IntegerVector clone = new IntegerVector(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Tests/TestRandom.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.IntegerVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3431)
@@ -113,12 +113,6 @@
     }
 
-    public bool ReadOnlyView {
-      get { throw new NotImplementedException(); }
-      set { throw new NotImplementedException(); }
-    }
-
 #pragma warning disable 67
     public event EventHandler ItemImageChanged;
-    public event EventHandler ReadOnlyViewChanged;
     public event EventHandler ToStringChanged;
 #pragma warning restore 67
Index: trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Permutation.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Permutation.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Permutation.cs	(revision 3431)
@@ -66,5 +66,4 @@
       Permutation clone = new Permutation(permutationType, array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/PermutationType.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/PermutationType.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/PermutationType.cs	(revision 3431)
@@ -35,5 +35,4 @@
       PermutationType clone = new PermutationType(value);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       return clone;
     }
Index: trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Tests/Random.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Tests/Random.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.PermutationEncoding/3.3/Tests/Random.cs	(revision 3431)
@@ -113,12 +113,6 @@
     }
 
-    public bool ReadOnlyView {
-      get { throw new NotImplementedException(); }
-      set { throw new NotImplementedException(); }
-    }
-
 #pragma warning disable 67
     public event EventHandler ItemImageChanged;
-    public event EventHandler ReadOnlyViewChanged;
     public event EventHandler ToStringChanged;
 #pragma warning restore 67
Index: trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/RealVector.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/RealVector.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/RealVector.cs	(revision 3431)
@@ -45,5 +45,4 @@
       RealVector clone = new RealVector(array);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.readOnly = readOnly;
       return clone;
Index: trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Tests/TestRandom.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.RealVectorEncoding/3.3/Tests/TestRandom.cs	(revision 3431)
@@ -113,12 +113,6 @@
     }
 
-    public bool ReadOnlyView {
-      get { throw new NotImplementedException(); }
-      set { throw new NotImplementedException(); }
-    }
-
 #pragma warning disable 67
     public event EventHandler ItemImageChanged;
-    public event EventHandler ReadOnlyViewChanged;
     public event EventHandler ToStringChanged;
 #pragma warning restore 67
Index: trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTree.cs
===================================================================
--- trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTree.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTree.cs	(revision 3431)
@@ -77,5 +77,4 @@
       SymbolicExpressionTree clone = new SymbolicExpressionTree();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.root = (SymbolicExpressionTreeNode)this.root.Clone();
       return clone;
Index: trunk/sources/HeuristicLab.Operators.Views.GraphVisualization/3.3/General/GraphVisualizationInfo.cs
===================================================================
--- trunk/sources/HeuristicLab.Operators.Views.GraphVisualization/3.3/General/GraphVisualizationInfo.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Operators.Views.GraphVisualization/3.3/General/GraphVisualizationInfo.cs	(revision 3431)
@@ -86,23 +86,4 @@
       return clone;
     }
-
-    #region IContent Members
-    [Storable]
-    private bool readOnlyView;
-    public virtual bool ReadOnlyView {
-      get { return readOnlyView; }
-      set {
-        if (readOnlyView != value) {
-          readOnlyView = value;
-          OnReadOnlyViewChanged();
-        }
-      }
-    }
-    public event EventHandler ReadOnlyViewChanged;
-    protected virtual void OnReadOnlyViewChanged() {
-      EventHandler handler = ReadOnlyViewChanged;
-      if (handler != null) handler(this, EventArgs.Empty);
-    }
-    #endregion
   }
 }
Index: trunk/sources/HeuristicLab.Optimization/3.3/Result.cs
===================================================================
--- trunk/sources/HeuristicLab.Optimization/3.3/Result.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Optimization/3.3/Result.cs	(revision 3431)
@@ -111,5 +111,4 @@
       Result clone = new Result(Name, Description, DataType);
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.value = (IItem)cloner.Clone(value);
       clone.Initialize();
Index: trunk/sources/HeuristicLab.Optimization/3.3/RunCollection.cs
===================================================================
--- trunk/sources/HeuristicLab.Optimization/3.3/RunCollection.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Optimization/3.3/RunCollection.cs	(revision 3431)
@@ -85,5 +85,4 @@
       parameterNames = new List<string>();
       resultNames = new List<string>();
-      this.ReadOnlyView = true;
     }
 
Index: trunk/sources/HeuristicLab.Problems.ArtificialAnt/3.3/AntTrail.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.ArtificialAnt/3.3/AntTrail.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Problems.ArtificialAnt/3.3/AntTrail.cs	(revision 3431)
@@ -98,5 +98,4 @@
       AntTrail clone = new AntTrail();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.expression = (SymbolicExpressionTree)cloner.Clone(expression);
       clone.world = (BoolMatrix)cloner.Clone(world);
Index: trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs	(revision 3431)
@@ -78,5 +78,4 @@
       DataAnalysisSolution clone = new DataAnalysisSolution();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.predictor = (IPredictor)cloner.Clone(predictor);
       clone.problemData = problemData;
Index: trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/Dataset.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/Dataset.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/Dataset.cs	(revision 3431)
@@ -48,5 +48,4 @@
       this.VariableNames = variableNames;
       this.SortableView = false;
-      this.ReadOnlyView = true;
     }
 
Index: trunk/sources/HeuristicLab.Problems.TravelingSalesman/3.3/PathTSPTour.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.TravelingSalesman/3.3/PathTSPTour.cs	(revision 3430)
+++ trunk/sources/HeuristicLab.Problems.TravelingSalesman/3.3/PathTSPTour.cs	(revision 3431)
@@ -90,5 +90,4 @@
       PathTSPTour clone = new PathTSPTour();
       cloner.RegisterClonedObject(this, clone);
-      clone.ReadOnlyView = ReadOnlyView;
       clone.coordinates = (DoubleMatrix)cloner.Clone(coordinates);
       clone.permutation = (Permutation)cloner.Clone(permutation);
