Changeset 1657


Ignore:
Timestamp:
04/24/09 14:38:15 (12 years ago)
Author:
aleitner
Message:

refactored AddClients with recursive calls of groups, refresh on clients only manual (#600)

Location:
trunk/sources/HeuristicLab.Hive.Server.Console/3.2
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Hive.Server.Console/3.2/HiveServerConsole.Designer.cs

    r1530 r1657  
    138138      this.tbUserName.Size = new System.Drawing.Size(189, 20);
    139139      this.tbUserName.TabIndex = 2;
     140      this.tbUserName.TextChanged += new System.EventHandler(this.tbUserName_TextChanged);
    140141      this.tbUserName.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.HiveServerConsole_KeyPress);
    141142      //
  • trunk/sources/HeuristicLab.Hive.Server.Console/3.2/HiveServerConsole.cs

    r1530 r1657  
    4242    public HiveServerConsole() {
    4343      InitializeComponent();
    44       tbIp.Text = WcfSettings.GetActiveIP();
     44      tbIp.Text = "10.20.53.1";
    4545      tbPort.Text = WcfSettings.GetDefaultPort().ToString();
    46      
     46      tbUserName.Text = "a";
     47      tbPwd.Text = "a";
    4748    }
    4849
  • trunk/sources/HeuristicLab.Hive.Server.Console/3.2/HiveServerManagementConsole.Designer.cs

    r1645 r1657  
    3131      this.addToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    3232      this.jobToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     33      this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     34      this.largeIconsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     35      this.smallIconsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
     36      this.listToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    3337      this.ilLargeImgClient = new System.Windows.Forms.ImageList(this.components);
    3438      this.ilLargeImgJob = new System.Windows.Forms.ImageList(this.components);
     
    7276      this.menuItemAbortJob = new System.Windows.Forms.ToolStripMenuItem();
    7377      this.menuItemGetSnapshot = new System.Windows.Forms.ToolStripMenuItem();
     78      this.ilSmallImgJob = new System.Windows.Forms.ImageList(this.components);
     79      this.ilSmallImgClient = new System.Windows.Forms.ImageList(this.components);
    7480      this.tpClientControl = new System.Windows.Forms.TabPage();
    7581      this.scClientControl = new System.Windows.Forms.SplitContainer();
     82      this.splitContainer1 = new System.Windows.Forms.SplitContainer();
     83      this.tvClientControl = new System.Windows.Forms.TreeView();
    7684      this.lvClientControl = new System.Windows.Forms.ListView();
    7785      this.tcManagementConsole = new System.Windows.Forms.TabControl();
    7886      this.checkBox1 = new System.Windows.Forms.CheckBox();
    79       this.viewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    80       this.largeIconsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    81       this.smallIconsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    82       this.listToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    83       this.ilSmallImgClient = new System.Windows.Forms.ImageList(this.components);
    84       this.ilSmallImgJob = new System.Windows.Forms.ImageList(this.components);
    85       this.splitContainer1 = new System.Windows.Forms.SplitContainer();
    86       this.tvClientControl = new System.Windows.Forms.TreeView();
    87       this.splitContainer2 = new System.Windows.Forms.SplitContainer();
    88       this.tvJobControl = new System.Windows.Forms.TreeView();
     87      this.refreshToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
    8988      this.menuStrip1.SuspendLayout();
    9089      this.plClientDetails.SuspendLayout();
     
    104103      this.scClientControl.Panel2.SuspendLayout();
    105104      this.scClientControl.SuspendLayout();
    106       this.tcManagementConsole.SuspendLayout();
    107105      this.splitContainer1.Panel1.SuspendLayout();
    108106      this.splitContainer1.Panel2.SuspendLayout();
    109107      this.splitContainer1.SuspendLayout();
    110       this.splitContainer2.Panel1.SuspendLayout();
    111       this.splitContainer2.Panel2.SuspendLayout();
    112       this.splitContainer2.SuspendLayout();
     108      this.tcManagementConsole.SuspendLayout();
    113109      this.SuspendLayout();
    114110      //
     
    128124      //
    129125      this.informationToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     126            this.refreshToolStripMenuItem,
    130127            this.closeToolStripMenuItem});
    131128      this.informationToolStripMenuItem.Name = "informationToolStripMenuItem";
     
    151148      //
    152149      this.jobToolStripMenuItem.Name = "jobToolStripMenuItem";
    153       this.jobToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     150      this.jobToolStripMenuItem.Size = new System.Drawing.Size(102, 22);
    154151      this.jobToolStripMenuItem.Text = "Job";
    155152      this.jobToolStripMenuItem.Click += new System.EventHandler(this.AddJob_Click);
     153      //
     154      // viewToolStripMenuItem
     155      //
     156      this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
     157            this.largeIconsToolStripMenuItem,
     158            this.smallIconsToolStripMenuItem,
     159            this.listToolStripMenuItem});
     160      this.viewToolStripMenuItem.Name = "viewToolStripMenuItem";
     161      this.viewToolStripMenuItem.Size = new System.Drawing.Size(41, 20);
     162      this.viewToolStripMenuItem.Text = "View";
     163      //
     164      // largeIconsToolStripMenuItem
     165      //
     166      this.largeIconsToolStripMenuItem.Checked = true;
     167      this.largeIconsToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
     168      this.largeIconsToolStripMenuItem.Name = "largeIconsToolStripMenuItem";
     169      this.largeIconsToolStripMenuItem.Size = new System.Drawing.Size(141, 22);
     170      this.largeIconsToolStripMenuItem.Text = "Large Icons";
     171      this.largeIconsToolStripMenuItem.Click += new System.EventHandler(this.largeIconsToolStripMenuItem_Click);
     172      //
     173      // smallIconsToolStripMenuItem
     174      //
     175      this.smallIconsToolStripMenuItem.Name = "smallIconsToolStripMenuItem";
     176      this.smallIconsToolStripMenuItem.Size = new System.Drawing.Size(141, 22);
     177      this.smallIconsToolStripMenuItem.Text = "Small Icons";
     178      this.smallIconsToolStripMenuItem.Click += new System.EventHandler(this.smallIconsToolStripMenuItem_Click);
     179      //
     180      // listToolStripMenuItem
     181      //
     182      this.listToolStripMenuItem.Name = "listToolStripMenuItem";
     183      this.listToolStripMenuItem.Size = new System.Drawing.Size(141, 22);
     184      this.listToolStripMenuItem.Text = "List";
     185      this.listToolStripMenuItem.Click += new System.EventHandler(this.listToolStripMenuItem_Click);
    156186      //
    157187      // ilLargeImgClient
     
    168198      this.ilLargeImgJob.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ilLargeImgJob.ImageStream")));
    169199      this.ilLargeImgJob.TransparentColor = System.Drawing.Color.Transparent;
    170       this.ilLargeImgJob.Images.SetKeyName(0, "PlayHS.png");
     200      this.ilLargeImgJob.Images.SetKeyName(0, "ok.png");
     201      this.ilLargeImgJob.Images.SetKeyName(1, "Forward.png");
     202      this.ilLargeImgJob.Images.SetKeyName(2, "pause.png");
    171203      //
    172204      // plClientDetails
     
    443475      //
    444476      this.treeView2.Dock = System.Windows.Forms.DockStyle.Fill;
     477      this.treeView2.LineColor = System.Drawing.Color.Empty;
    445478      this.treeView2.Location = new System.Drawing.Point(0, 0);
    446479      this.treeView2.Name = "treeView2";
     
    491524      // scJobControl.Panel1
    492525      //
    493       this.scJobControl.Panel1.Controls.Add(this.splitContainer2);
     526      this.scJobControl.Panel1.Controls.Add(this.lvJobControl);
    494527      //
    495528      // scJobControl.Panel2
     
    505538      this.lvJobControl.ContextMenuStrip = this.contextMenuJob;
    506539      this.lvJobControl.Dock = System.Windows.Forms.DockStyle.Fill;
    507       this.lvJobControl.LargeImageList = this.ilLargeImgClient;
     540      this.lvJobControl.LargeImageList = this.ilLargeImgJob;
    508541      this.lvJobControl.Location = new System.Drawing.Point(0, 0);
    509542      this.lvJobControl.MultiSelect = false;
    510543      this.lvJobControl.Name = "lvJobControl";
    511       this.lvJobControl.Size = new System.Drawing.Size(299, 386);
    512       this.lvJobControl.SmallImageList = this.ilSmallImgClient;
     544      this.lvJobControl.Size = new System.Drawing.Size(454, 386);
     545      this.lvJobControl.SmallImageList = this.ilSmallImgJob;
    513546      this.lvJobControl.TabIndex = 0;
    514547      this.lvJobControl.UseCompatibleStateImageBehavior = false;
     
    536569      this.menuItemGetSnapshot.Size = new System.Drawing.Size(150, 22);
    537570      this.menuItemGetSnapshot.Text = "Get Snapshot";
     571      //
     572      // ilSmallImgJob
     573      //
     574      this.ilSmallImgJob.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ilSmallImgJob.ImageStream")));
     575      this.ilSmallImgJob.TransparentColor = System.Drawing.Color.Transparent;
     576      this.ilSmallImgJob.Images.SetKeyName(0, "Forward.png");
     577      this.ilSmallImgJob.Images.SetKeyName(1, "ok.png");
     578      this.ilSmallImgJob.Images.SetKeyName(2, "pause.png");
     579      //
     580      // ilSmallImgClient
     581      //
     582      this.ilSmallImgClient.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ilSmallImgClient.ImageStream")));
     583      this.ilSmallImgClient.TransparentColor = System.Drawing.Color.Transparent;
     584      this.ilSmallImgClient.Images.SetKeyName(0, "monitor-green.png");
     585      this.ilSmallImgClient.Images.SetKeyName(1, "monitor-orange.png");
     586      this.ilSmallImgClient.Images.SetKeyName(2, "monitor-red.png");
     587      this.ilSmallImgClient.Images.SetKeyName(3, "monitor-gray.png");
    538588      //
    539589      // tpClientControl
     
    566616      this.scClientControl.TabIndex = 0;
    567617      //
     618      // splitContainer1
     619      //
     620      this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
     621      this.splitContainer1.Location = new System.Drawing.Point(0, 0);
     622      this.splitContainer1.Name = "splitContainer1";
     623      //
     624      // splitContainer1.Panel1
     625      //
     626      this.splitContainer1.Panel1.Controls.Add(this.tvClientControl);
     627      //
     628      // splitContainer1.Panel2
     629      //
     630      this.splitContainer1.Panel2.Controls.Add(this.lvClientControl);
     631      this.splitContainer1.Size = new System.Drawing.Size(454, 386);
     632      this.splitContainer1.SplitterDistance = 151;
     633      this.splitContainer1.TabIndex = 0;
     634      //
     635      // tvClientControl
     636      //
     637      this.tvClientControl.Dock = System.Windows.Forms.DockStyle.Fill;
     638      this.tvClientControl.Location = new System.Drawing.Point(0, 0);
     639      this.tvClientControl.Name = "tvClientControl";
     640      this.tvClientControl.Size = new System.Drawing.Size(151, 386);
     641      this.tvClientControl.TabIndex = 0;
     642      this.tvClientControl.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.tvClientControl_NodeMouseClick);
     643      //
    568644      // lvClientControl
    569645      //
     
    571647      this.lvClientControl.Dock = System.Windows.Forms.DockStyle.Fill;
    572648      this.lvClientControl.ImeMode = System.Windows.Forms.ImeMode.Off;
    573       this.lvClientControl.LargeImageList = this.ilLargeImgJob;
     649      this.lvClientControl.LargeImageList = this.ilLargeImgClient;
    574650      this.lvClientControl.Location = new System.Drawing.Point(0, 0);
    575651      this.lvClientControl.MultiSelect = false;
    576652      this.lvClientControl.Name = "lvClientControl";
    577653      this.lvClientControl.Size = new System.Drawing.Size(299, 386);
    578       this.lvClientControl.SmallImageList = this.ilSmallImgJob;
     654      this.lvClientControl.SmallImageList = this.ilLargeImgClient;
    579655      this.lvClientControl.TabIndex = 0;
    580656      this.lvClientControl.UseCompatibleStateImageBehavior = false;
     
    602678      this.checkBox1.UseVisualStyleBackColor = true;
    603679      //
    604       // viewToolStripMenuItem
    605       //
    606       this.viewToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
    607             this.largeIconsToolStripMenuItem,
    608             this.smallIconsToolStripMenuItem,
    609             this.listToolStripMenuItem});
    610       this.viewToolStripMenuItem.Name = "viewToolStripMenuItem";
    611       this.viewToolStripMenuItem.Size = new System.Drawing.Size(41, 20);
    612       this.viewToolStripMenuItem.Text = "View";
    613       //
    614       // largeIconsToolStripMenuItem
    615       //
    616       this.largeIconsToolStripMenuItem.Checked = true;
    617       this.largeIconsToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
    618       this.largeIconsToolStripMenuItem.Name = "largeIconsToolStripMenuItem";
    619       this.largeIconsToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
    620       this.largeIconsToolStripMenuItem.Text = "Large Icons";
    621       this.largeIconsToolStripMenuItem.Click += new System.EventHandler(this.largeIconsToolStripMenuItem_Click);
    622       //
    623       // smallIconsToolStripMenuItem
    624       //
    625       this.smallIconsToolStripMenuItem.Name = "smallIconsToolStripMenuItem";
    626       this.smallIconsToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
    627       this.smallIconsToolStripMenuItem.Text = "Small Icons";
    628       this.smallIconsToolStripMenuItem.Click += new System.EventHandler(this.smallIconsToolStripMenuItem_Click);
    629       //
    630       // listToolStripMenuItem
    631       //
    632       this.listToolStripMenuItem.Name = "listToolStripMenuItem";
    633       this.listToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
    634       this.listToolStripMenuItem.Text = "List";
    635       this.listToolStripMenuItem.Click += new System.EventHandler(this.listToolStripMenuItem_Click);
    636       //
    637       // ilSmallImgClient
    638       //
    639       this.ilSmallImgClient.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ilSmallImgClient.ImageStream")));
    640       this.ilSmallImgClient.TransparentColor = System.Drawing.Color.Transparent;
    641       this.ilSmallImgClient.Images.SetKeyName(0, "monitor-green.png");
    642       this.ilSmallImgClient.Images.SetKeyName(1, "monitor-orange.png");
    643       this.ilSmallImgClient.Images.SetKeyName(2, "monitor-red.png");
    644       this.ilSmallImgClient.Images.SetKeyName(3, "monitor-gray.png");
    645       //
    646       // ilSmallImgJob
    647       //
    648       this.ilSmallImgJob.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ilSmallImgJob.ImageStream")));
    649       this.ilSmallImgJob.TransparentColor = System.Drawing.Color.Transparent;
    650       this.ilSmallImgJob.Images.SetKeyName(0, "PlayHS.png");
    651       //
    652       // splitContainer1
    653       //
    654       this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
    655       this.splitContainer1.Location = new System.Drawing.Point(0, 0);
    656       this.splitContainer1.Name = "splitContainer1";
    657       //
    658       // splitContainer1.Panel1
    659       //
    660       this.splitContainer1.Panel1.Controls.Add(this.tvClientControl);
    661       //
    662       // splitContainer1.Panel2
    663       //
    664       this.splitContainer1.Panel2.Controls.Add(this.lvClientControl);
    665       this.splitContainer1.Size = new System.Drawing.Size(454, 386);
    666       this.splitContainer1.SplitterDistance = 151;
    667       this.splitContainer1.TabIndex = 0;
    668       //
    669       // tvClientControl
    670       //
    671       this.tvClientControl.Dock = System.Windows.Forms.DockStyle.Fill;
    672       this.tvClientControl.Location = new System.Drawing.Point(0, 0);
    673       this.tvClientControl.Name = "tvClientControl";
    674       this.tvClientControl.Size = new System.Drawing.Size(151, 386);
    675       this.tvClientControl.TabIndex = 0;
    676       //
    677       // splitContainer2
    678       //
    679       this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
    680       this.splitContainer2.Location = new System.Drawing.Point(0, 0);
    681       this.splitContainer2.Name = "splitContainer2";
    682       //
    683       // splitContainer2.Panel1
    684       //
    685       this.splitContainer2.Panel1.Controls.Add(this.tvJobControl);
    686       //
    687       // splitContainer2.Panel2
    688       //
    689       this.splitContainer2.Panel2.Controls.Add(this.lvJobControl);
    690       this.splitContainer2.Size = new System.Drawing.Size(454, 386);
    691       this.splitContainer2.SplitterDistance = 151;
    692       this.splitContainer2.TabIndex = 0;
    693       //
    694       // tvJobControl
    695       //
    696       this.tvJobControl.Dock = System.Windows.Forms.DockStyle.Fill;
    697       this.tvJobControl.Location = new System.Drawing.Point(0, 0);
    698       this.tvJobControl.Name = "tvJobControl";
    699       this.tvJobControl.Size = new System.Drawing.Size(151, 386);
    700       this.tvJobControl.TabIndex = 0;
     680      // refreshToolStripMenuItem
     681      //
     682      this.refreshToolStripMenuItem.Name = "refreshToolStripMenuItem";
     683      this.refreshToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
     684      this.refreshToolStripMenuItem.Text = "Refresh";
     685      this.refreshToolStripMenuItem.Click += new System.EventHandler(this.refreshToolStripMenuItem_Click);
    701686      //
    702687      // HiveServerManagementConsole
     
    732717      this.scClientControl.Panel2.ResumeLayout(false);
    733718      this.scClientControl.ResumeLayout(false);
    734       this.tcManagementConsole.ResumeLayout(false);
    735719      this.splitContainer1.Panel1.ResumeLayout(false);
    736720      this.splitContainer1.Panel2.ResumeLayout(false);
    737721      this.splitContainer1.ResumeLayout(false);
    738       this.splitContainer2.Panel1.ResumeLayout(false);
    739       this.splitContainer2.Panel2.ResumeLayout(false);
    740       this.splitContainer2.ResumeLayout(false);
     722      this.tcManagementConsole.ResumeLayout(false);
    741723      this.ResumeLayout(false);
    742724      this.PerformLayout();
     
    805787    private System.Windows.Forms.SplitContainer splitContainer1;
    806788    private System.Windows.Forms.TreeView tvClientControl;
    807     private System.Windows.Forms.SplitContainer splitContainer2;
    808     private System.Windows.Forms.TreeView tvJobControl;
     789    private System.Windows.Forms.ToolStripMenuItem refreshToolStripMenuItem;
    809790  }
    810791}
  • trunk/sources/HeuristicLab.Hive.Server.Console/3.2/HiveServerManagementConsole.cs

    r1645 r1657  
    4646
    4747    #region private variables
    48     private ResponseList<ClientGroup> clients = null;
    49     private ResponseList<ClientInfo> clientInfo = null;
     48    private ResponseList<ClientGroup> clientGroups = null;
     49    private ResponseList<ClientInfo> clients = null;
    5050    private ResponseList<Job> jobs = null;
    5151
     
    6767
    6868    private ToolTip tt = new ToolTip();
     69
     70    private const string NOGROUP = "No group";
     71    //private List<ListViewItem> clientList = new List<ListViewItem>();
     72    private Dictionary<Guid, List<ListViewItem>> clientList = new Dictionary<Guid, List<ListViewItem>>();
    6973
    7074    private IClientManager ClientManager {
     
    161165
    162166    //      ListViewGroup lvg = new ListViewGroup(cg.Name, HorizontalAlignment.Left);
    163                              
     167
    164168    //      foreach (ClientInfo ci in cg.Resources) {
    165169    //        ListViewItem item = null;
     
    235239
    236240    private void AddClients() {
    237         clients = ClientManager.GetAllClientGroups();
    238 
    239         foreach (ClientGroup cg in clients.List) {
    240           AddClientOrGroup(cg, null);
    241         }
     241      clientList.Clear();
     242      tvClientControl.Nodes.Clear();
     243
     244      clientGroups = ClientManager.GetAllClientGroups();
     245
     246      foreach (ClientGroup cg in clientGroups.List) {
     247        AddClientOrGroup(cg, null);
     248      }
     249
     250      tvClientControl.ExpandAll();
    242251    }
    243252
    244253    private void AddClientOrGroup(ClientGroup clientGroup, TreeNode currentNode) {
    245254      currentNode = CreateTreeNode(clientGroup, currentNode);
    246       ListViewGroup lvg = new ListViewGroup(clientGroup.Name, HorizontalAlignment.Left);
    247 
     255      List<ListViewItem> clientGroupList = new List<ListViewItem>();
     256      ListViewGroup lvg;
     257      if (string.IsNullOrEmpty(clientGroup.Name)) {
     258        lvg = new ListViewGroup(NOGROUP, HorizontalAlignment.Left);
     259      } else {
     260        lvg = new ListViewGroup(clientGroup.Name, HorizontalAlignment.Left);
     261      }
     262      lvClientControl.Groups.Add(lvg);
    248263      foreach (Resource resource in clientGroup.Resources) {
    249264        if (resource is ClientInfo) {
    250265          ListViewItem lvi = new ListViewItem(resource.Name, 0, lvg);
    251266          lvi.Tag = resource as ClientInfo;
    252           // has to be added to lvClientControl, not group
    253           lvClientControl.Items.Add(lvi);
     267          clientGroupList.Add(lvi);
    254268        } else if (resource is ClientGroup) {
    255269          AddClientOrGroup(resource as ClientGroup, currentNode);
    256270        }
    257271      }
    258       if (lvg.Items.Count > 0) {
    259         lvClientControl.Groups.Add(lvg);
    260       }
     272      clientList.Add(clientGroup.Id, clientGroupList);
    261273    }
    262274
    263275    private TreeNode CreateTreeNode(ClientGroup clientGroup, TreeNode currentNode) {
    264        TreeNode tn;
    265       if(string.IsNullOrEmpty(clientGroup.Name)) {
    266          tn = new TreeNode("No group");
     276      TreeNode tn;
     277      if (string.IsNullOrEmpty(clientGroup.Name)) {
     278        tn = new TreeNode(NOGROUP);
    267279      } else {
    268          tn = new TreeNode(clientGroup.Name);
     280        tn = new TreeNode(clientGroup.Name);
    269281      }
    270282      tn.Tag = clientGroup;
     
    302314        foreach (Job job in jobs.List) {
    303315          if (job.State == State.calculating) {
    304             ListViewItem lvi = new ListViewItem(job.Id.ToString(), 0, lvJobCalculating);
     316            ListViewItem lvi = new ListViewItem(job.Id.ToString(), 1, lvJobCalculating);
    305317            lvi.Tag = job;
    306318            jobObjects.Add(job.Id, lvi);
     
    310322            lvi.ToolTipText = (job.Percentage * 100) + "% of job calculated";
    311323          } else if (job.State == State.finished) {
    312             ListViewItem lvi = new ListViewItem(job.Id.ToString(), 0, lvJobFinished);
     324            ListViewItem lvi = new ListViewItem(job.Id.ToString(),0, lvJobFinished);
    313325            lvi.Tag = job;
    314326            jobObjects.Add(job.Id, lvi);
    315327            //lvJobControl.Items.Add(lvi);
    316328          } else if (job.State == State.offline) {
    317             ListViewItem lvi = new ListViewItem(job.Id.ToString(), 0, lvJobPending);
     329            ListViewItem lvi = new ListViewItem(job.Id.ToString(), 2, lvJobPending);
    318330            lvi.Tag = job;
    319331            jobObjects.Add(job.Id, lvi);
     
    345357    private void ClientClicked() {
    346358      plClientDetails.Visible = true;
    347       int i = 0;
    348       while (clientInfo.List[i].Id.ToString() != nameCurrentClient) {
    349         i++;
    350       }
    351       currentClient = clientInfo.List[i];
     359      //int i = 0;
     360      //while (clientInfo.List[i].Id.ToString() != nameCurrentClient) {
     361      //  i++;
     362      //}
     363      if (lvClientControl.SelectedItems != null && lvClientControl.SelectedItems.Count > 0) {
     364        currentClient = (ClientInfo)lvClientControl.SelectedItems[0].Tag;
     365      }
     366      if(currentClient != null) {
    352367      int percentageUsage = CapacityRam(currentClient.NrOfCores, currentClient.NrOfFreeCores);
    353368      int usage = 3;
     
    365380      lblLogin.Text = currentClient.Login.ToString();
    366381      lblState.Text = currentClient.State.ToString();
     382      }
    367383    }
    368384
     
    421437          RefreshJob(change);
    422438        } else if (change.Types == Type.Client) {
    423           RefreshClient(change);
     439          //RefreshClient(change);
    424440        } else if (change.Types == Type.ClientGroup) {
    425           RefreshClientGroup(change);
     441          //RefreshClientGroup(change);
    426442        }
    427443      }
     
    475491              ClientClicked();
    476492            }
    477             State state = clientInfo.List[change.Position].State;
     493            State state = clients.List[change.Position].State;
    478494            System.Diagnostics.Debug.WriteLine(lvClientControl.Items[i].Text.ToString());
    479495
    480496            ClientInfo ci = null;
    481497
    482             foreach (ClientInfo c in clientInfo.List) {
     498            foreach (ClientInfo c in clients.List) {
    483499              if (c.Id == change.ID) {
    484500                ci = c;
     
    574590
    575591      changes.Clear();
    576       IClientManager clientManager =
    577           ServiceLocator.GetClientManager();
    578 
    579       #region ClientInfo
    580       ResponseList<ClientInfo> clientInfoOld = clientInfo;
    581       clientInfo = clientManager.GetAllClients();
    582 
    583       IDictionary<int, ClientInfo> clientInfoOldHelp;
    584 
    585       CloneList(clientInfoOld, out clientInfoOldHelp);
    586 
    587       GetDelta(clientInfoOld.List, clientInfoOldHelp);
    588       #endregion
     592
     593      //#region ClientInfo
     594      //ResponseList<ClientInfo> clientInfoOld = clientInfo;
     595      //clientInfo = ClientManager.GetAllClients();
     596
     597      //IDictionary<int, ClientInfo> clientInfoOldHelp;
     598
     599      //CloneList(clientInfoOld, out clientInfoOldHelp);
     600
     601      //GetDelta(clientInfoOld.List, clientInfoOldHelp);
     602      //#endregion
    589603
    590604      #region Clients
    591       ResponseList<ClientGroup> clientsOld = clients;
    592 
    593       clients = clientManager.GetAllClientGroups();
    594 
    595       IDictionary<int, ClientGroup> clientsOldHelp;
    596 
    597       CloneList(clientsOld, out clientsOldHelp);
    598 
    599       GetDelta(clientsOld.List, clientsOldHelp);
     605      //ResponseList<ClientGroup> clientsOld = clients;
     606
     607     // newClients = ClientManager.GetAllClientGroups();
     608
     609      //IDictionary<Guid, ClientGroup> clientsOldHelp;
     610
     611      //CloneList(clientsOld, out clientsOldHelp);
     612
     613      //GetDelta(clientsOld.List, clientsOldHelp);
     614      //DetermineDelta();
    600615      #endregion
    601616
     
    630645    }
    631646
    632     private void CloneList(ResponseList<ClientInfo> oldList, out IDictionary<int, ClientInfo> newList) {
    633       newList = new Dictionary<int, ClientInfo>();
    634       for (int i = 0; i < oldList.List.Count; i++) {
    635         newList.Add(i, oldList.List[i]);
    636       }
    637     }
    638 
    639     private void CloneList(ResponseList<ClientGroup> oldList, out IDictionary<int, ClientGroup> newList) {
    640       newList = new Dictionary<int, ClientGroup>();
    641       for (int i = 0; i < oldList.List.Count; i++) {
    642         newList.Add(i, oldList.List[i]);
     647    //private void CloneList(ResponseList<ClientInfo> oldList, out IDictionary<int, ClientInfo> newList) {
     648    //  newList = new Dictionary<int, ClientInfo>();
     649    //  for (int i = 0; i < oldList.List.Count; i++) {
     650    //    newList.Add(i, oldList.List[i]);
     651    //  }
     652    //}
     653
     654    private void CloneList(ResponseList<ClientGroup> oldList, out IDictionary<Guid, ClientGroup> newList) {
     655      newList = new Dictionary<Guid, ClientGroup>();
     656      foreach (ClientGroup clientGroup in oldList.List) {
     657        newList.Add(clientGroup.Id, clientGroup);
    643658      }
    644659    }
     
    654669
    655670    private int CapacityRam(int noCores, int freeCores) {
    656       int capacity = ((noCores - freeCores) / noCores) * 100;
    657       System.Diagnostics.Debug.WriteLine(capacity);
    658       return capacity;
    659     }
    660 
    661     private void GetDelta(IList<ClientInfo> oldClient, IDictionary<int, ClientInfo> helpClients) {
    662       bool found = false;
    663 
    664       for (int i = 0; i < clientInfo.List.Count; i++) {
    665         ClientInfo ci = clientInfo.List[i];
    666         for (int j = 0; j < oldClient.Count; j++) {
    667           ClientInfo cio = oldClient[j];
    668           if (ci.Id.Equals(cio.Id)) {
    669             found = true;
    670             if ((ci.State != cio.State) || (ci.NrOfFreeCores != cio.NrOfFreeCores)) {
    671               changes.Add(new Changes { Types = Type.Client, ID = ci.Id, ChangeType = Change.Update, Position = i });
    672             }
    673             int removeAt = -1;
    674             foreach (KeyValuePair<int, ClientInfo> kvp in helpClients) {
    675               if (cio.Id.Equals(kvp.Value.Id)) {
    676                 removeAt = kvp.Key;
    677                 break;
    678               }
    679             }
    680             if (removeAt >= 0) {
    681               helpClients.Remove(removeAt);
    682             }
    683             break;
    684           }
    685         }
    686         if (found == false) {
    687           changes.Add(new Changes { Types = Type.Client, ID = ci.Id, ChangeType = Change.Create });
    688         }
    689         found = false;
    690       }
    691       foreach (KeyValuePair<int, ClientInfo> kvp in helpClients) {
    692         changes.Add(new Changes { Types = Type.Client, ID = kvp.Value.Id, ChangeType = Change.Delete, Position = kvp.Key });
    693       }
    694 
    695     }
    696 
    697     private void GetDelta(IList<ClientGroup> oldClient, IDictionary<int, ClientGroup> helpClients) {
    698 
    699       bool found = false;
    700       for (int i = 0; i < clients.List.Count; i++) {
    701         ClientGroup cg = clients.List[i];
    702         for (int j = 0; j < oldClient.Count; i++) {
    703           ClientGroup cgo = oldClient[j];
    704           if (cg.Id.Equals(cgo.Id)) {
    705             found = true;
    706             foreach (Resource resource in cg.Resources) {
    707               foreach (Resource resourceold in cgo.Resources) {
    708                 if (resource.Id.Equals(resourceold.Id)) {
    709                   if (resourceold.Name != resource.Name) {
    710                     changes.Add(new Changes { Types = Type.Client, ID = cg.Id, ChangeType = Change.Update, Position = i });
    711                   }
    712                 }
    713               }
    714             }
    715             for (int k = 0; k < helpClients.Count; k++) {
    716               if (cgo.Id.Equals(helpClients[k].Id)) {
    717                 helpClients.Remove(k);
    718                 break;
    719               }
    720             }
    721             break;
    722           }
    723         }
    724         if (found == false) {
    725           changes.Add(new Changes { Types = Type.ClientGroup, ID = cg.Id, ChangeType = Change.Create });
    726         }
    727         found = false;
    728       }
    729       foreach (KeyValuePair<int, ClientGroup> kvp in helpClients) {
    730         changes.Add(new Changes { Types = Type.ClientGroup, ID = kvp.Value.Id, ChangeType = Change.Delete, Position = kvp.Key });
    731       }
    732     }
     671      if (noCores > 0) {
     672        int capacity = ((noCores - freeCores) / noCores) * 100;
     673        System.Diagnostics.Debug.WriteLine(capacity);
     674        return capacity;
     675      }
     676      return 100;
     677    }
     678
     679    //private void GetDelta(IList<ClientInfo> oldClient, IDictionary<int, ClientInfo> helpClients) {
     680    //  bool found = false;
     681
     682    //  for (int i = 0; i < clientInfo.List.Count; i++) {
     683    //    ClientInfo ci = clientInfo.List[i];
     684    //    for (int j = 0; j < oldClient.Count; j++) {
     685    //      ClientInfo cio = oldClient[j];
     686    //      if (ci.Id.Equals(cio.Id)) {
     687    //        found = true;
     688    //        if ((ci.State != cio.State) || (ci.NrOfFreeCores != cio.NrOfFreeCores)) {
     689    //          changes.Add(new Changes { Types = Type.Client, ID = ci.Id, ChangeType = Change.Update, Position = i });
     690    //        }
     691    //        int removeAt = -1;
     692    //        foreach (KeyValuePair<int, ClientInfo> kvp in helpClients) {
     693    //          if (cio.Id.Equals(kvp.Value.Id)) {
     694    //            removeAt = kvp.Key;
     695    //            break;
     696    //          }
     697    //        }
     698    //        if (removeAt >= 0) {
     699    //          helpClients.Remove(removeAt);
     700    //        }
     701    //        break;
     702    //      }
     703    //    }
     704    //    if (found == false) {
     705    //      changes.Add(new Changes { Types = Type.Client, ID = ci.Id, ChangeType = Change.Create });
     706    //    }
     707    //    found = false;
     708    //  }
     709    //  foreach (KeyValuePair<int, ClientInfo> kvp in helpClients) {
     710    //    changes.Add(new Changes { Types = Type.Client, ID = kvp.Value.Id, ChangeType = Change.Delete, Position = kvp.Key });
     711    //  }
     712
     713    //}
     714
     715    private void DetermineDelta() {
     716     
     717
     718
     719    }
     720
     721
     722    //private void GetDelta(IList<ClientGroup> oldClient, IDictionary<Guid, ClientGroup> helpClients) {
     723
     724    //  bool found = false;
     725    //  for (int i = 0; i < clients.List.Count; i++) {
     726    //    ClientGroup cg = clientGroups.List[i];
     727    //    for (int j = 0; j < oldClient.Count; i++) {
     728    //      ClientGroup cgo = oldClient[j];
     729    //      if (cg.Id.Equals(cgo.Id)) {
     730    //        found = true;
     731    //        foreach (Resource resource in cg.Resources) {
     732    //          foreach (Resource resourceold in cgo.Resources) {
     733    //            if (resource.Id.Equals(resourceold.Id)) {
     734    //              if (resourceold.Name != resource.Name) {
     735    //                changes.Add(new Changes { Types = Type.Client, ID = cg.Id, ChangeType = Change.Update, Position = i });
     736    //              }
     737    //            }
     738    //          }
     739    //        }
     740    //        for (int k = 0; k < helpClients.Count; k++) {
     741    //          if (cgo.Id.Equals(helpClients[k].Id)) {
     742    //            helpClients.Remove(k);
     743    //            break;
     744    //          }
     745    //        }
     746    //        break;
     747    //      }
     748    //    }
     749    //    if (found == false) {
     750    //      changes.Add(new Changes { Types = Type.ClientGroup, ID = cg.Id, ChangeType = Change.Create });
     751    //    }
     752    //    found = false;
     753    //  }
     754    //  foreach (KeyValuePair<int, ClientGroup> kvp in helpClients) {
     755    //    changes.Add(new Changes { Types = Type.ClientGroup, ID = kvp.Value.Id, ChangeType = Change.Delete, Position = kvp.Key });
     756    //  }
     757    //}
    733758
    734759    private void GetDelta(IList<Job> oldJobs, IDictionary<int, Job> helpJobs) {
     
    820845    }
    821846
    822 
    823 
    824 
     847    private void tvClientControl_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) {
     848      lvClientControl.Items.Clear();
     849      lvClientControl.Groups.Clear();
     850      AddGroupsToListView(e.Node);
     851    }
     852
     853    private void AddGroupsToListView(TreeNode node) {
     854      if (node != null) {
     855        ListViewGroup lvg = new ListViewGroup(node.Text, HorizontalAlignment.Left);
     856        lvClientControl.Groups.Add(lvg);
     857        foreach (ListViewItem item in clientList[((ClientGroup)node.Tag).Id]) {
     858          item.Group = lvg;
     859          lvClientControl.Items.Add(item);
     860        }
     861
     862        if (node.Nodes != null) {
     863          foreach (TreeNode curNode in node.Nodes) {
     864            AddGroupsToListView(curNode);
     865          }
     866        }
     867      }
     868    }
     869
     870    private void refreshToolStripMenuItem_Click(object sender, EventArgs e) {
     871      AddClients();
     872    }
    825873  }
    826874}
  • trunk/sources/HeuristicLab.Hive.Server.Console/3.2/HiveServerManagementConsole.resx

    r1645 r1657  
    232232  </data>
    233233  <metadata name="ilLargeImgJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    234     <value>228, 11</value>
     234    <value>239, 7</value>
    235235  </metadata>
    236236  <data name="ilLargeImgJob.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
     
    238238        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
    239239        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
    240         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACc
    241         CQAAAk1TRnQBSQFMAwEBAAEEAQABBAEAASABAAEgAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
    242         AYADAAEgAwABAQEAAQgGAAEQGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
    243         AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
    244         AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
    245         AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ
    246         AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm
    247         AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz
    248         AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm
    249         AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm
    250         AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA
    251         ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm
    252         AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm
    253         ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm
    254         AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA
    255         AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ
    256         AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz
    257         AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/
    258         AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA
    259         AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM
    260         AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm
    261         ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ
    262         AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/
    263         ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM
    264         ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm
    265         AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM
    266         AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA
    267         AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA
    268         ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7
    269         Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA///AP8ADAADoX0AA6F9AAGm
    270         AWUBpgKhewABZQEnAWUCoXsAAWUBKAENAWUBpgKheQABZQEoAicBZQKheQABZQMoAUgBZQGmAqF3AAFl
    271         A0kBKAEnAWUCoXcAAWUESQEoAUgBZQGmAqF1AAFlAkkBTwJJASgBJwFlAqF1AAFmAUkDTwJJASgBSAFl
    272         AaYCoXMAAYYBSQFPAXICTwJJASgBJwFlAqFzAAGGAk8BcgFQAk8CSQEoAUgBZQGmAqFxAAGGAU8BUAGX
    273         AnICTwJJAigBZQKhcQABhgFPAXIDlwFQAk8CSQFmAaYCoXEAAYYBTwFyBJcBcgFPAUkBbAGnAcdzAAGG
    274         AVABcgGXAXgBmAFyAU8CbAGGAccBoXMAAYYBUAFyAZcBmAEIAXIBSQFsAacBx3UAAYYBUAGXAZgBeAFy
    275         AW0BbAGGAccBoXUAAYYBcgF4AQgBcgFJAWwBpwHHdwABhgNyAW0BbAGGAccBoXcAAYYBcgFPAUkBbAGn
    276         Acd5AAGGAXICbAGGAccBoXkAAYYBcgGLAacBx3sAAYYBiwGGAccBoXsAAccBpwHHfQABoQHHAaH0AAFC
    277         AU0BPgcAAT4DAAEoAwABgAMAASADAAEBAQABAQYAAQIWAAP/AQAE/wwABP8MAAT/DAAE/wwAAf8BjwL/
    278         DAAB/wGPAv8MAAH/AYMC/wwAAf8BgwL/DAAB/wGAAv8MAAH/AYAC/wwAAf8BgAE/Af8MAAH/AYABPwH/
    279         DAAB/wGAAQ8B/wwAAf8BgAEPAf8MAAH/AYABAwH/DAAB/wGAAQMB/wwAAf8BgAEAAf8MAAH/AYABAAH/
    280         DAAB/wGAAQAB/wwAAf8BgAEDAf8MAAH/AYABAwH/DAAB/wGAAQ8B/wwAAf8BgAEPAf8MAAH/AYABPwH/
    281         DAAB/wGAAT8B/wwAAf8BgAL/DAAB/wGAAv8MAAH/AYMC/wwAAf8BgwL/DAAB/wGPAv8MAAH/AY8C/wwA
    282         BP8MAAs=
     240        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAO
     241        DgAAAk1TRnQBSQFMAgEBAwEAAQQBAAEEAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
     242        AwABgAMAASADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
     243        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
     244        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
     245        AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
     246        AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
     247        AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
     248        ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
     249        AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
     250        AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
     251        AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
     252        AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
     253        AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
     254        AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
     255        AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
     256        AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
     257        ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
     258        Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
     259        AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
     260        AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
     261        AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
     262        ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
     263        Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
     264        AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
     265        AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
     266        AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
     267        AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
     268        AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
     269        AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wYAAaEBhhJsAYYBoQoA
     270        AaEUxwGhCgABoQGGAYwQZwGMAYYBoSgAAaEBbAE1FDYBNQFsAaEGAAGhAccWrAHHAaEGAAGhAWcWTQFn
     271        AaElAAGhAVAYNgFQAaEEAAGhBKwCsw7UArMErAGhBAABxAFMA00SUwNNAUwBxCMAAaEBUAM2AzcENg03
     272        AzYBUAGhAgABoQOsAdQD2w7VA9sB1AOsAaECAAGhAUwCTQFTA1kFUwxZAVMCTQFMAaEiAAFsHDYBbAIA
     273        AccCrAHVFdQC1QKsAccCAAFnAk0DUwNNElMCTQFnIQABoQE1HDYBNQKhAqwa1AKsAqECTQJTBE0UUwJN
     274        AaEgAAGGHjYBhgHHAawBrRrUAa0BrAHHAYYBTQJTBE0WUwFNAYYgAAFsHjYBbAHHAawc1AGsAccBjAFN
     275        AVMETRdTAU0BjCAAAWweNgFsAccBrBzUAawBxwFnAU0BUwNNGFMBTQFnIAABbAw2AXkBVxA2AWwBxwGs
     276        B9QC3BPUAawBxwFnBE0FUwGaA/8BmgJTAZoD/wGaCFMBTQFnIAABbAs2AVcB9gHDEDYBbAHHAawH1AHc
     277        Af8B9AHcEdQBrAHHAWcDTQZTAZoD/wEaAlMBGgP/AZoIUwFNAWcgAAFsCzYBGwL/AZ8PNgFsAccBrAfU
     278        AdwD/wH0AdwP1AGsAccBZwJNB1MBmgP/ARoCUwEaA/8BmghTAU0BZyAAAWwKNgGfBP8BeQ42AWwBxwGs
     279        B9QB3AX/AfQB3A3UAawBxwFnAU0IUwGaA/8BGgJTARoD/wGaCFMBTQFnIAABbAk2AVgF/wH2AVgNNgFs
     280        AccBrAfUAdwH/wH0AdwL1AGsAccBZwFNCFMBmgP/ARoCUwEaA/8BmghTAU0BZyAAAWwINgFXAfYC/wHC
     281        AXkC/wHDDTYBbAHHAawH1AHcCf8B9AHcCdQBrAHHAWcBTQhTAZoD/wEaAlMBGgP/AZoIUwFNAWcgAAFs
     282        CDYBnwL/AfYBVwE2AZ8C/wGfDDYBbAHHAawH1AHcC/8B9AHbB9QBrAHHAWcBTQhTAZoD/wEaAlMBGgP/
     283        AZoIUwFNAWcgAAFsCDYBWAL/AXkDNgHDAv8BeQs2AWwBxwGsB9QBCQr/ARkB2wjUAawBxwFnAU0IUwGa
     284        A/8BGgJTARoD/wGaCFMBTQFnIAABbAk2AXkBnwQ2AVgC/wH2AVgKNgFsAccBrAfUAQkI/wH0AdsK1AGs
     285        AccBZwFNCFMBmgP/ARoCUwEaA/8BmghTAU0BZyAAAWwQNgF+Av8Bwwo2AWwBxwGsB9QBCQb/AfQB3AzU
     286        AawBxwFnAU0IUwGaA/8BGgJTARoD/wGaCFMBTQFnIAABbBE2ARsC/wGfCTYBbAHHAawH1AEJBf8B3A7U
     287        AawBxwFnAU0IUwGaA/8BGgJTARoD/wGaCFMBTQFnIAABbBE2AVcB9gL/AXkINgFsAccBrAfUAQkD/wHc
     288        ENQBrAHHAWcBTQhTAZoD/wEaAlMBGgP/AZoIUwFNAWcgAAFsEjYBeQL/AZ8GNgE3ATYBbAHHAawH1AEJ
     289        Af8BCRLUAawBxwFnAU0IUwF1AxoBegJTAXoDGgF6CFMBTQFnIAABbBM2AZ8B9gFYBTYCNwE2AWwBxwGs
     290        B9QB2wHVE9QBrAHHAWcBTRxTAU0BZyAAAWwUNgFYBTYCNwI2AWwBxwGsHNQBrAHHAWcBTRxTAU0BZyAA
     291        AWwZNgM3AjYBbAHHAawc1AGsAccBjAFNHFMBTQGMIAABhgI2ATcVNgQ3AjYBhgHHAawBrQHVGNQB2wGt
     292        AawBxwGGAU0cUwFNAYYgAAGhATUBNgI3EzYENwI2ATUCoQKsAdQB2xbUAdsB1AKsAqECTQFTAXUWUwF1
     293        AVMCTQGhIQABbAI2ATcBOxY3AjYBbAIAAccCrAHVAtsR1APbAdUCrAHHAgABZwJNA3oSUwJ6AXUCTQFn
     294        IgABoQFQAjYBNxQ7AzYBUAGhAgABoQOsAdQU2wHUA6wBoQIAAaEBTAJNAVMUegFTAk0BTAGhIwABoQFQ
     295        BTYONwU2AVABoQQAAaEErAKzDtQCswSsAaEEAAHEAUwDTRJTA00BTAHEJQABoQFsATUUNgE1AWwBoQYA
     296        AaEBxxasAccBoQYAAaEBZxZNAWcBoSgAAaEBhhJsAYYBoQoAAaEUxwGhCgABoQGGAYwQZwGMAYYBoSUA
     297        AUIBTQE+BwABPgMAASgDAAGAAwABIAMAAQEBAAEBBgABAhYAA/8BAAH4AgABHwH4AgABHwH4AgABHwQA
     298        AeACAAEHAeACAAEHAeACAAEHBAABwAIAAQMBwAIAAQMBwAIAAQMEAAGAAgABAQGAAgABAQGAAgABAQQA
     299        AYACAAEBAYACAAEBAYACAAEB/wBlAAGAAgABAQGAAgABAQGAAgABAQQAAYACAAEBAYACAAEBAYACAAEB
     300        BAABwAIAAQMBwAIAAQMBwAIAAQMEAAHgAgABBwHgAgABBwHgAgABBwQAAfgCAAEfAfgCAAEfAfgCAAEf
     301        BAAL
    283302</value>
    284303  </data>
     
    289308    <value>462, 9</value>
    290309  </metadata>
     310  <metadata name="updaterWoker.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     311    <value>388, 41</value>
     312  </metadata>
     313  <metadata name="contextMenuJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     314    <value>252, 44</value>
     315  </metadata>
    291316  <metadata name="ilSmallImgJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    292317    <value>137, 50</value>
     
    296321        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
    297322        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
    298         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC0
    299         BwAAAk1TRnQBSQFMAwEBAAEFAQABBAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
    300         AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
    301         AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
    302         AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
    303         AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ
    304         AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm
    305         AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz
    306         AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm
    307         AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm
    308         AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA
    309         ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm
    310         AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm
    311         ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm
    312         AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA
    313         AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ
    314         AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz
    315         AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/
    316         AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA
    317         AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM
    318         AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm
    319         ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ
    320         AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/
    321         ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM
    322         ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm
    323         AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM
    324         AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA
    325         AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA
    326         ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7
    327         Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/+GAAGhPwABJwGhPgABKAEn
    328         AaE9AAJJAScBoTwAAUkBTwFJAScBoTsAAUkBcgFPAUkBJwGhOgABTwGXAXIBTwFJASgBoTkAAU8ClwFy
    329         AUkBpzoAAVABlwEIAUkBpzsAAXIBCAFJAac8AAFyAUkBpz0AAXIBpz4AAad6AAFCAU0BPgcAAT4DAAEo
    330         AwABQAMAARADAAEBAQABAQUAAYAXAAP/AQAC/wYAAv8GAAH7Af8GAAH5Af8GAAH4Af8GAAH4AX8GAAH4
    331         AT8GAAH4AR8GAAH4AQ8GAAH4AR8GAAH4AT8GAAH4AX8GAAH4Af8GAAH5Af8GAAH7Af8GAAL/BgAL
     323        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABq
     324        CQAAAk1TRnQBSQFMAgEBAwEAAQQBAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
     325        AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
     326        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
     327        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
     328        AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
     329        AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
     330        AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
     331        ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
     332        AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
     333        AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
     334        AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
     335        AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
     336        AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
     337        AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
     338        AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
     339        AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
     340        ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
     341        Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
     342        AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
     343        AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
     344        AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
     345        ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
     346        Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
     347        AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
     348        AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
     349        AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
     350        AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
     351        AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
     352        AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wMAAccLrAGhAwABbAo2
     353        ATUBoQMAAWcLTQGhEgACrALbB9UB2wHUAawBoQEAAVABNgI3AjYGNwI2AaEBAAFMAU0CWQJTBlkBUwFN
     354        AaEQAAGhAawN1AGsAaEONgE1AaEBTQFTAk0KUwFNEAABxw7UAawBbA82AYwBUwJNC1MBTRAAAccE1AHc
     355        CdQBrAFsBjYBVwg2AWcCTQJTAZoB/wGaAVMC/wRTAU0QAAHHBNQC/wHcB9QBrAFsBTYBGwH/CDYBZwFN
     356        A1MBmgH/ARoBUwL/BFMBTRAAAccE1AT/AdwF1AGsAWwENgFYAv8B9gc2AWcEUwGaAf8BGgFTAv8EUwFN
     357        EAABxwTUBv8B2wPUAawBbAQ2Af8B9gE2Af8BnwY2AWcEUwGaAf8BGgFTAv8EUwFNEAABxwTUBP8B9AXU
     358        AawBbAQ2AXkCNgFYAf8BWAU2AWcEUwGaAf8BGgFTAv8EUwFNEAABxwTUA/8H1AGsAWwINgEbAf8FNgFn
     359        BFMBmgH/ARoBUwL/BFMBTRAAAccE1AH/CdQBrAFsCTYB/wGfBDYBZwRTAXUBGgF6AVMCGgRTAU0QAAHH
     360        DtQBrAFsDTYBNwE2AWcOUwFNEAABxwGtDNQB2wGsAYYMNgI3ATYBhg5TAU0RAAGsAdUB2wjUAtsBrAHH
     361        AQABNgw3ATYBbAEAAU0CeglTAXoBTQFnEQABoQKsAbMH1AGzAqwCAAGhAzYHNwI2AVACAAHEAk0JUwFN
     362        AUwUAArHAaEFAAGGCWwBoQUAAYYIZwGMAaESAAFCAU0BPgcAAT4DAAEoAwABQAMAARADAAEBAQABAQUA
     363        AYAXAAP/AQABwAEBAcABAQHAAQECAAGAAQABgAEAAYBbAAGAAQABgAEAAYADAAGAAQEBgAEBAYABAQIA
     364        AeABAwHgAQMB4AEDAgAL
    332365</value>
    333366  </data>
    334   <metadata name="contextMenuJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    335     <value>252, 44</value>
    336   </metadata>
    337367  <metadata name="ilSmallImgClient.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    338368    <value>17, 50</value>
     
    343373        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
    344374        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABy
    345         DAAAAk1TRnQBSQFMAgEBBAEAAQUBAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
     375        DAAAAk1TRnQBSQFMAgEBBAEAAQkBAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
    346376        AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
    347377        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
     
    399429</value>
    400430  </data>
    401   <metadata name="updaterWoker.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    402     <value>388, 41</value>
    403   </metadata>
    404431</root>
Note: See TracChangeset for help on using the changeset viewer.