Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/20/10 04:24:19 (14 years ago)
Author:
swagner
Message:

Adapted ReadOnly property in item collection views (#973)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core.Views/3.3/ItemArrayView.cs

    r3432 r3433  
    4848    }
    4949
     50    public override bool ReadOnly {
     51      get {
     52        if ((Content != null) && Content.IsReadOnly) return true;
     53        else return base.ReadOnly;
     54      }
     55      set { base.ReadOnly = value; }
     56    }
     57
    5058    public ListView ItemsListView {
    5159      get { return itemsListView; }
     
    114122      } else {
    115123        addButton.Enabled = itemsListView.SelectedItems.Count > 0 &&
    116                             !Content.IsReadOnly && !ReadOnly;
     124                            !ReadOnly;
    117125        moveUpButton.Enabled = itemsListView.SelectedItems.Count == 1 &&
    118126                               itemsListView.SelectedIndices[0] != 0 &&
    119                                !Content.IsReadOnly && !ReadOnly;
     127                               !ReadOnly;
    120128        moveDownButton.Enabled = itemsListView.SelectedItems.Count == 1 &&
    121129                                 itemsListView.SelectedIndices[0] != itemsListView.Items.Count - 1 &&
    122                                  !Content.IsReadOnly && !ReadOnly;
     130                                 !ReadOnly;
    123131        removeButton.Enabled = itemsListView.SelectedItems.Count > 0 &&
    124                                !Content.IsReadOnly && !ReadOnly;
     132                               !ReadOnly;
    125133        itemsListView.Enabled = true;
    126134        detailsGroupBox.Enabled = true;
     
    197205    #region ListView Events
    198206    protected virtual void itemsListView_SelectedIndexChanged(object sender, EventArgs e) {
    199       addButton.Enabled = itemsListView.SelectedItems.Count > 0 && !Content.IsReadOnly && !ReadOnly;
     207      addButton.Enabled = itemsListView.SelectedItems.Count > 0 && !ReadOnly;
    200208      moveUpButton.Enabled = itemsListView.SelectedItems.Count == 1 &&
    201209                             itemsListView.SelectedIndices[0] != 0 &&
    202                              !Content.IsReadOnly && !ReadOnly;
     210                             !ReadOnly;
    203211      moveDownButton.Enabled = itemsListView.SelectedItems.Count == 1 &&
    204212                               itemsListView.SelectedIndices[0] != itemsListView.Items.Count - 1 &&
    205                                !Content.IsReadOnly && !ReadOnly;
    206       removeButton.Enabled = itemsListView.SelectedItems.Count > 0 && !Content.IsReadOnly && !ReadOnly;
     213                               !ReadOnly;
     214      removeButton.Enabled = itemsListView.SelectedItems.Count > 0 && !ReadOnly;
    207215
    208216      if (itemsListView.SelectedItems.Count == 1) {
     
    219227    protected virtual void itemsListView_KeyDown(object sender, KeyEventArgs e) {
    220228      if (e.KeyCode == Keys.Delete) {
    221         if ((itemsListView.SelectedItems.Count > 0) && !Content.IsReadOnly && !ReadOnly) {
     229        if ((itemsListView.SelectedItems.Count > 0) && !ReadOnly) {
    222230          foreach (ListViewItem item in itemsListView.SelectedItems)
    223231            Content[item.Index] = null;
     
    248256          data.SetData("Type", item.GetType());
    249257          data.SetData("Value", item);
    250           if (Content.IsReadOnly || ReadOnly) {
     258          if (ReadOnly) {
    251259            DoDragDrop(data, DragDropEffects.Copy | DragDropEffects.Link);
    252260          } else {
     
    261269      e.Effect = DragDropEffects.None;
    262270      Type type = e.Data.GetData("Type") as Type;
    263       if (!Content.IsReadOnly && !ReadOnly && (type != null) && (typeof(T).IsAssignableFrom(type))) {
     271      if (!ReadOnly && (type != null) && (typeof(T).IsAssignableFrom(type))) {
    264272        Point p = itemsListView.PointToClient(new Point(e.X, e.Y));
    265273        ListViewItem listViewItem = itemsListView.GetItemAt(p.X, p.Y);
Note: See TracChangeset for help on using the changeset viewer.