Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
01/20/12 13:26:08 (13 years ago)
Author:
ascheibe
Message:

#1174 added access service user view to problem view

Location:
branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/Administration/Views
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/Administration/Views/ProblemView.Designer.cs

    r7331 r7381  
    3434    /// </summary>
    3535    private void InitializeComponent() {
     36      System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ProblemView));
    3637      this.platformLabel = new System.Windows.Forms.Label();
    3738      this.platformComboBox = new System.Windows.Forms.ComboBox();
     
    4041      this.tabControl = new System.Windows.Forms.TabControl();
    4142      this.usersTabPage = new System.Windows.Forms.TabPage();
    42       this.usersListBox = new System.Windows.Forms.CheckedListBox();
    4343      this.storeUsersButton = new System.Windows.Forms.Button();
    44       this.refreshUsersButton = new System.Windows.Forms.Button();
     44      this.problemUserView = new HeuristicLab.Clients.Access.Views.RefreshableLightweightUserView();
    4545      this.dataTabPage = new System.Windows.Forms.TabPage();
    4646      this.noViewAvailableLabel = new System.Windows.Forms.Label();
     
    104104      this.problemClassLabel.Location = new System.Drawing.Point(3, 111);
    105105      this.problemClassLabel.Name = "problemClassLabel";
    106       this.problemClassLabel.Size = new System.Drawing.Size(81, 13);
     106      this.problemClassLabel.Size = new System.Drawing.Size(76, 13);
    107107      this.problemClassLabel.TabIndex = 7;
    108108      this.problemClassLabel.Text = "&Problem Class:";
     
    135135      // usersTabPage
    136136      //
    137       this.usersTabPage.Controls.Add(this.usersListBox);
    138137      this.usersTabPage.Controls.Add(this.storeUsersButton);
    139       this.usersTabPage.Controls.Add(this.refreshUsersButton);
     138      this.usersTabPage.Controls.Add(this.problemUserView);
    140139      this.usersTabPage.Location = new System.Drawing.Point(4, 22);
    141140      this.usersTabPage.Name = "usersTabPage";
     
    146145      this.usersTabPage.UseVisualStyleBackColor = true;
    147146      //
    148       // usersListBox
    149       //
    150       this.usersListBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
    151                   | System.Windows.Forms.AnchorStyles.Left)
    152                   | System.Windows.Forms.AnchorStyles.Right)));
    153       this.usersListBox.CheckOnClick = true;
    154       this.usersListBox.FormattingEnabled = true;
    155       this.usersListBox.Location = new System.Drawing.Point(6, 35);
    156       this.usersListBox.Name = "usersListBox";
    157       this.usersListBox.Size = new System.Drawing.Size(613, 139);
    158       this.usersListBox.TabIndex = 2;
    159       this.usersListBox.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.usersListBox_ItemCheck);
    160       //
    161147      // storeUsersButton
    162148      //
    163149      this.storeUsersButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
    164       this.storeUsersButton.Location = new System.Drawing.Point(36, 6);
     150      this.storeUsersButton.Location = new System.Drawing.Point(38, 9);
    165151      this.storeUsersButton.Name = "storeUsersButton";
    166152      this.storeUsersButton.Size = new System.Drawing.Size(24, 24);
     
    170156      this.storeUsersButton.Click += new System.EventHandler(this.storeUsersButton_Click);
    171157      //
    172       // refreshUsersButton
    173       //
    174       this.refreshUsersButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Refresh;
    175       this.refreshUsersButton.Location = new System.Drawing.Point(6, 6);
    176       this.refreshUsersButton.Name = "refreshUsersButton";
    177       this.refreshUsersButton.Size = new System.Drawing.Size(24, 24);
    178       this.refreshUsersButton.TabIndex = 0;
    179       this.toolTip.SetToolTip(this.refreshUsersButton, "Refresh Authorized Users");
    180       this.refreshUsersButton.UseVisualStyleBackColor = true;
    181       this.refreshUsersButton.Click += new System.EventHandler(this.refreshUsersButton_Click);
     158      // problemUserView
     159      //
     160      this.problemUserView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
     161                  | System.Windows.Forms.AnchorStyles.Left)
     162                  | System.Windows.Forms.AnchorStyles.Right)));
     163      this.problemUserView.Caption = "RefreshableLightweightUser View";
     164      this.problemUserView.Content = null;
     165      this.problemUserView.FetchSelectedUsers = null;
     166      this.problemUserView.Location = new System.Drawing.Point(6, 6);
     167      this.problemUserView.Name = "problemUserView";
     168      this.problemUserView.ReadOnly = false;
     169      this.problemUserView.Size = new System.Drawing.Size(613, 168);
     170      this.problemUserView.TabIndex = 2;
     171      this.problemUserView.SelectedUsersChanged += new System.EventHandler(this.problemUserView_SelectedUsersChanged);
    182172      //
    183173      // dataTabPage
     
    388378    private System.Windows.Forms.TabPage usersTabPage;
    389379    private System.Windows.Forms.Button storeUsersButton;
    390     private System.Windows.Forms.Button refreshUsersButton;
    391380    private System.Windows.Forms.TabPage dataTabPage;
    392     private System.Windows.Forms.CheckedListBox usersListBox;
    393381    private System.Windows.Forms.Label dataTypeNameLabel;
    394382    private System.Windows.Forms.GroupBox dataTypeGroupBox;
     
    405393    private MainForm.WindowsForms.ViewHost dataViewHost;
    406394    private System.Windows.Forms.Label noViewAvailableLabel;
     395    private Access.Views.RefreshableLightweightUserView problemUserView;
    407396
    408397  }
  • branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/Administration/Views/ProblemView.cs

    r7331 r7381  
    2525using System.Linq;
    2626using System.Windows.Forms;
    27 using HeuristicLab.Clients.OKB.Authentication;
    2827using HeuristicLab.Common;
    2928using HeuristicLab.Core.Views;
     
    7372      problemClassComboBox.SelectedValueChanged += new EventHandler(problemClassComboBox_SelectedValueChanged);
    7473
    75       usersListBox.DataSource = null;
    7674      data = null;
    7775      dataViewHost.Content = null;
     
    8179        dataTypeNameTextBox.Text = string.Empty;
    8280        dataTypeTypeNameTextBox.Text = string.Empty;
     81        problemUserView.Content = null;
     82        problemUserView.FetchSelectedUsers = null;
    8383      } else {
    8484        platformComboBox.SelectedItem = platformComboBoxValues.FirstOrDefault(p => p.Id == Content.PlatformId);
     
    8686        dataTypeNameTextBox.Text = Content.DataTypeName;
    8787        dataTypeTypeNameTextBox.Text = Content.DataTypeTypeName;
     88        problemUserView.Content = Access.AccessClient.Instance;
     89        problemUserView.FetchSelectedUsers = new Func<List<Guid>>(delegate { return AdministrationClient.GetProblemUsers(Content.Id); });
    8890      }
    8991    }
     
    9496      problemClassComboBox.Enabled = (Content != null) && !ReadOnly;
    9597      dataTypeGroupBox.Enabled = (Content != null) && !ReadOnly;
    96       refreshUsersButton.Enabled = (Content != null) && (Content.Id != 0);
    97       storeUsersButton.Enabled = (usersListBox.DataSource != null) && !ReadOnly;
    98       usersListBox.Enabled = (usersListBox.DataSource != null) && !ReadOnly;
     98      problemUserView.Enabled = (problemUserView.Content != null) && !ReadOnly;
     99      storeUsersButton.Enabled = (problemUserView.GetCheckedUsers() != null) && !ReadOnly;
    99100      refreshDataButton.Enabled = (Content != null) && (Content.Id != 0);
    100101      storeDataButton.Enabled = ((data != null) || (dataViewHost.Content != null)) && !ReadOnly;
     
    155156    }
    156157
    157     private void refreshUsersButton_Click(object sender, System.EventArgs e) {
    158       try {
    159         List<Guid> ids = AdministrationClient.GetProblemUsers(Content.Id);
    160         if (ids != null) {
    161           if (AuthenticationClient.Instance.Users == null) AuthenticationClient.Instance.Refresh();
    162           List<User> users = AuthenticationClient.Instance.Users.ToList();
    163           usersListBox.DataSource = users;
    164           usersListBox.DisplayMember = "Name";
    165           for (int i = 0; i < users.Count; i++)
    166             usersListBox.SetItemChecked(i, ids.Contains(users[i].Id));
    167           usersListBox.Enabled = !ReadOnly;
    168           storeUsersButton.Enabled = false;
    169         }
    170       }
    171       catch (Exception ex) {
    172         ErrorHandling.ShowErrorDialog(this, "Refresh authorized users and groups failed.", ex);
    173       }
    174     }
    175158    private void storeUsersButton_Click(object sender, System.EventArgs e) {
    176159      try {
    177         AdministrationClient.UpdateProblemUsers(Content.Id, usersListBox.SelectedItems.Cast<User>().Select(u => u.Id).ToList());
     160        AdministrationClient.UpdateProblemUsers(Content.Id, problemUserView.GetCheckedUsers().CheckedItems.Select(x => x.Value.Id).ToList());
    178161        storeUsersButton.Enabled = false;
    179162      }
     
    182165      }
    183166    }
    184     private void usersListBox_ItemCheck(object sender, ItemCheckEventArgs e) {
     167    private void problemUserView_SelectedUsersChanged(object sender, EventArgs e) {
    185168      storeUsersButton.Enabled = !ReadOnly;
    186169    }
     170
    187171
    188172    private void refreshDataButton_Click(object sender, EventArgs e) {
Note: See TracChangeset for help on using the changeset viewer.