public void AddBooleanEntry()
        {
            int    count       = 1;
            string newNameBase = "New boolean entry ";
            string newName     = newNameBase + count;

            while (ContainsResourceName(newName))
            {
                count++;
                newName = newNameBase + count;
            }

            var          selectedItem = GetSelectedItems().FirstOrDefault();
            ResourceItem item         = new ResourceItem(this, newName, false);

            item.IsNew = true;
            if (selectedItem != null)
            {
                item.SortingCriteria = selectedItem.Name;
            }
            else
            {
                item.SortingCriteria = item.Name;
            }
            ResourceItems.Add(item);
            SelectItem(item);
            StartEditing();
        }
        void View_SelectionChanged(object sender, EventArgs e)
        {
            if (longUpdateRunning)
            {
                return;
            }

            ResourceItem selectedItem = SelectedItems.OfType <ResourceItem>().FirstOrDefault();

            if (selectedItem != null)
            {
                if (itemViews.ContainsKey(selectedItem.ResourceType))
                {
                    var itemView = itemViews[selectedItem.ResourceType];
                    itemView.ResourceItem = selectedItem;
                    view.SetItemView(itemView);
                }
                else
                {
                    view.SetItemView(null);
                }
            }

            // When selection is changed, reset any new item marked with IsNew to pass the filter
            foreach (var newItem in ResourceItems.Where(ri => ri.IsNew))
            {
                newItem.IsNew = false;
            }
        }
Beispiel #3
0
        private void DownloadSelected()
        {
            var view = ServiceLocator.Current.GetInstance <IContentView>(RegionNames.CloudDriveTransferView);

            if (view == null)
            {
                return;
            }
            FolderBrowserDialog openBrowserDialog = new FolderBrowserDialog {
                ShowNewFolderButton = true, SelectedPath = KnownFolders.GetPath(KnownFolder.Downloads)
            };
            DialogResult result = openBrowserDialog.ShowDialog();

            if (result == DialogResult.OK)
            {
                this.NotifyMessageInfo("正在下载文件,请稍后...");
                var downloadItems = ResourceItems.Where(resourceItem => resourceItem.IsSelected && !resourceItem.IsFolder).ToList();
                this._eventAggregator.GetEvent <PubSubEvent <TransferActionInfo> >().Publish(new TransferActionInfo()
                {
                    DownloadFileList = downloadItems,
                    TargetPath       = openBrowserDialog.SelectedPath,
                    WorkingType      = WorkingTypeEnum.Download
                });
                //TransferList();
            }
        }
Beispiel #4
0
 private void ResouceCopy()
 {
     this.LastCutOrCopyResourceItems.Clear();
     this.MessageExtensionInfo = this.MessageExtensionInfoTooltip = string.Empty;
     if (ResourceItems.Any(item => item.IsSelected))
     {
         var tootipInfo = new StringBuilder();
         foreach (var resourceItem in this.ResourceItems)
         {
             if (resourceItem.IsSelected)
             {
                 this.LastCutOrCopyResourceItems.Add(resourceItem.CloneJson());
                 resourceItem.IsSelected = false;
                 tootipInfo.AppendLine(resourceItem.ItemName);
             }
         }
         this._cutOrCopyStatus = CutOrCopyEnum.Copy;
         System.Windows.Forms.Clipboard.SetData(CommonConstant.ClipboardCopyResourceItemsDataFormats, "复制");
         this.MessageExtensionInfo        = string.Format("选定{0}个复制的资源", this.LastCutOrCopyResourceItems.Count);
         this.MessageExtensionInfoTooltip = tootipInfo.ToString().TrimEnd(Environment.NewLine.ToCharArray());
     }
 }
Beispiel #5
0
        public ResourceData(string id, params object[] content)
        {
            Id = id;

            foreach (var parobj in content)
            {
                if (parobj is ResourceItem)
                {
                    ResourceItems.Add(parobj as ResourceItem);
                }
                else if (parobj is IEnumerable <ResourceItem> )
                {
                    foreach (var grpparobj in parobj as IEnumerable <ResourceItem> )
                    {
                        ResourceItems.Add(grpparobj);
                    }
                }
                else
                {
                    throw new ArgumentException();
                }
            }
        }