コード例 #1
0
        internal RangeTemplate(string name, IXLRange range, TempSheetBuffer buff, TemplateErrors errors, IDictionary <string, object> globalVariables)
        {
            _rowRange      = range;
            _cells         = new TemplateCells(this);
            _tagsEvaluator = new TagsEvaluator();
            var wb = _rowRange.Worksheet.Workbook;

            _buff            = buff;
            _errors          = errors;
            _globalVariables = globalVariables;
            _tags            = new TagsList(_errors);
            _rangeTags       = new TagsList(_errors);
            Name             = name;
            Source           = name;
            var rangeName = name + "_tpl";

            if (wb.NamedRanges.TryGetValue(rangeName, out var namedRange))
            {
                namedRange.Add(range);
            }
            else
            {
                wb.NamedRanges.Add(rangeName, range);
            }

            _evaluator = new FormulaEvaluator();
        }
コード例 #2
0
        private void FindTagTextBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            int LastSelectedIndex = TagsList.SelectedIndex;

            string Mask  = FindTagTextBox.Text;
            int    Index = 0;

            if (Mask.Length == 0)
            {
                TagsList.SelectedIndex = LastSelectedIndex;
                TagsList.ScrollIntoView(TagsList.SelectedItem);
                return;
            }

            // Искать метки в списке по мере набора имени
            foreach (var CurrentTag in LabelsCollection)
            {
                if (CurrentTag.Value.StartsWith(Mask))
                {
                    TagsList.SelectedIndex = Index;
                    TagsList.ScrollIntoView(TagsList.SelectedItem);
                    return;
                }
                Index++;
            }

            TagsList.SelectedIndex = LastSelectedIndex;
            TagsList.ScrollIntoView(TagsList.SelectedItem);
        }
コード例 #3
0
        public async Task <TagServiceResponse <TagsList> > GetTags(bool includeInActive = false)
        {
            var response = new TagServiceResponse <TagsList>();

            try
            {
                var tagClient = await GetTagClient();

                var tags = await tagClient.GetTagsAsync(Scope);

                var tagsList = new TagsList();
                tagsList.Count = tags.Count;
                tagsList.Tags  = tags.Select(x => new Tag
                {
                    Active = x.Active ?? false,
                    Name   = x.Name,
                    Id     = x.Id,
                    Url    = x.Url
                }).ToList();

                response.Data = tagsList;
                response.IsSuccessStatusCode = true;
            }
            catch (Exception exception)
            {
                _log.Error(exception, "Error getting Tags");
                response.Exception = exception;
            }

            return(response);
        }
コード例 #4
0
    private void MyDataBind()
    {
        using (SqlConnection conn = new DB().GetConnection())
        {
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from  [ArticleTags] where ID  not in (" + Label3.Text + ") order by ID asc ";
            conn.Open();
            SqlDataReader rd = cmd.ExecuteReader();
            TagsList.DataSource     = rd;
            TagsList.DataTextField  = "TagName";
            TagsList.DataValueField = "ID";
            TagsList.DataBind();
            rd.Close();



            cmd.CommandText = "select * from [Articles_ArticleTags] where ArticleID = @ArticleID";
            cmd.Parameters.AddWithValue("@ArticleID", IDLabel.Text);
            SqlDataReader rd1 = cmd.ExecuteReader();
            ListBox1.DataSource     = rd1;
            ListBox1.DataTextField  = "ArticleTagName";
            ListBox1.DataValueField = "ArticleTagID";
            ListBox1.DataBind();
            rd1.Close();
        }
    }
コード例 #5
0
 public void AddUsedTags()
 {
     if (Used)
     {
         if (TagsList.Contains("FreeToUse"))
         {
             TagsList.Remove("FreeToUse");
         }
         if (!TagsList.Contains("Used"))
         {
             TagsList.Insert(0, "Used");
         }
     }
     else
     {
         if (TagsList.Contains("Used"))
         {
             TagsList.Remove("Used");
         }
         if (!TagsList.Contains("FreeToUse"))
         {
             TagsList.Insert(0, "FreeToUse");
         }
     }
 }
コード例 #6
0
        public void Get_by_type_should_return_tags_with_inherits()
        {
            var errList = new TemplateErrors();
            var list    = new TagsList(errList)
            {
                new GroupTag {
                    Name = "val1"
                },
                new GroupTag {
                    Name = "val2"
                },
                new SortTag {
                    Name = "val3"
                },
                new ProtectedTag {
                    Name = "val4"
                },
                new DescTag {
                    Name = "val5"
                },
                new ColsFitTag {
                    Name = "val6"
                }
            };

            list.GetAll <SortTag>().Select(x => x.Name).Should().BeEquivalentTo("val1", "val2", "val3", "val5");
        }
コード例 #7
0
 protected void Page_Load(object sender, EventArgs e)
 {
     RandomID.Text = Request["RandomID"];
     if (!IsPostBack)
     {
         if (Session["UserID"] == null)
         {
             Util.ShowMessage("会话超期,请重新登录", "Login.aspx");
         }
         else
         {
             using (SqlConnection conn = new DB().GetConnection())
             {
                 string     userid = Convert.ToString(Session["UserID"]);
                 string     sql    = "select * from UserTags order by ID desc";
                 SqlCommand cmd    = new SqlCommand(sql, conn);
                 conn.Open();
                 SqlDataReader rd = cmd.ExecuteReader();
                 TagsList.DataSource     = rd;
                 TagsList.DataTextField  = "TagName";
                 TagsList.DataValueField = "ID";
                 TagsList.DataBind();
                 rd.Close();
             }
         }
         init();
     }
 }
コード例 #8
0
        public CollectiblesViewModel(CollectiblesList list, TagsList tags)
        {
            SearchText = new ReactiveProperty <string>("");

            AllItems = list.Collectibles.Select(item => new CollectibleViewModel(item, SearchText, tags.Tags)).ToReactiveCollection();

            Func <CollectibleViewModel, CollectibleViewModel, int> sortByTitle = (a, b) => String.Compare(a.OriginalTitle, b.OriginalTitle);

            Func <CollectibleViewModel, bool> filter = vm =>
            {
                if (string.IsNullOrEmpty(SearchText.Value))
                {
                    return(true);
                }

                if (SearchText.Value.StartsWith("t:"))
                {
                    var tag = SearchText.Value.Substring(2).ToLower();

                    return(vm.Tags.Any(t => t.Name.ToLower().Contains(tag)));
                }

                if (vm.OriginalTitle.ToLower().Contains(SearchText.Value.ToLower()))
                {
                    return(true);
                }

                return(false);
            };

            Items = AllItems.WhereMany(filter, t => t.Tags.ObserveCountChanged().AsUnitObservable(), SearchText.AsUnitObservable()).Sort(sortByTitle, null);

            SelectedItems = Items.WhereMany(vm => vm.IsSelected.Value, vm => vm.IsSelected.AsUnitObservable()).Sort(sortByTitle, null);
        }
コード例 #9
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string UserID = Convert.ToString(Session["UserID"]);


            if (Session["RoleID"] != null && !String.IsNullOrEmpty(Session["RoleID"].ToString()) && (Session["RoleID"].ToString() == "1" || Session["RoleID"].ToString() == "2"))
            {
                //ClassifyPanel.Visible = true;
            }
            else
            {
                //ClassifyPanel.Visible = false;
            }

            using (SqlConnection conn = new DB().GetConnection())
            {
                string     sql = "select * from  [UserTags]  where [UserID] = @UserID order by ID asc   ";
                SqlCommand cmd = new SqlCommand(sql, conn);
                cmd.Parameters.AddWithValue("@UserID", UserID);
                conn.Open();
                SqlDataReader rd = cmd.ExecuteReader();
                TagsList.DataSource     = rd;
                TagsList.DataTextField  = "TagName";
                TagsList.DataValueField = "ID";
                TagsList.DataBind();
                rd.Close();
            }
        }
    }
コード例 #10
0
        public void ReloadTagsData()
        {
            List <ColorTagState> backupTags = null;

            if (TagsList == null)
            {
                TagsList = new List <ColorTagState> ();
            }
            else
            {
                backupTags = new List <ColorTagState> ();
                backupTags.AddRange(TagsList);
                TagsList.Clear();
            }

            if (AnnCategoryTagUtil.Instance == null)
            {
                return;
            }

            var tagList     = AnnCategoryTagUtil.Instance.GetTags();
            var tempTagList = new List <AnnotationTag> ();

            tempTagList.AddRange(tagList);

            if (tagList != null)
            {
                foreach (var tag in tempTagList)
                {
                    var colorTag = new ColorTagState();
                    colorTag.CheckState = NSCellStateValue.Off;
                    if (backupTags != null)
                    {
                        for (int i = 0; i < backupTags.Count; i++)
                        {
                            if (tag.TagId == backupTags [i].Tag.TagId)
                            {
                                colorTag.CheckState = backupTags [i].CheckState;
                                break;
                            }
                        }
                    }

                    colorTag.Tag = tag;
                    TagsList.Add(colorTag);
                }
            }

            if (backupTags != null)
            {
                backupTags.Clear();
                backupTags = null;
            }

            if (TagsTableView != null)
            {
                TagsTableView.ReloadData();
            }
        }
コード例 #11
0
 public void SetTagItems(IEnumerable <Tag> tags)
 {
     foreach (var tag in tags)
     {
         TagsList.Add(new SelectListItem()
         {
             Value = tag.TagID.ToString(),
             Text  = tag.TagName
         });
     }
 }
コード例 #12
0
        internal RangeTemplate(IXLNamedRange range, TempSheetBuffer buff)
        {
            _rowRange      = range.Ranges.First();
            _cells         = new TemplateCells(this);
            _tagsEvaluator = new TagsEvaluator();
            var wb = _rowRange.Worksheet.Workbook;

            _buff      = buff;
            _tags      = new TagsList();
            _rangeTags = new TagsList();
            Name       = range.Name;
            Source     = range.Name;
            wb.NamedRanges.Add(range.Name + "_tpl", range.Ranges);
        }
コード例 #13
0
        public void Add_with_same_priority_should_increase_count()
        {
            var list = new TagsList
            {
                new GroupTag {
                    Name = "val1"
                },
                new GroupTag {
                    Name = "val2"
                }
            };

            list.Count.Should().Be(2);
        }
コード例 #14
0
        private void RenderSubrange(RangeTemplate ownRng, object item, FormulaEvaluator evaluator, TemplateCell cell,
                                    TagsList tags, ref int iCell, ref int row)
        {
            var start = _buff.NextAddress;
            // the child template to which the cell belongs
            var formula = ownRng.Source.ReplaceLast("_", ".");

            if (evaluator.Evaluate(formula, new Parameter(Name, item)) is IEnumerable value)
            {
                var valArr = value.Cast <object>().ToArray();
                ownRng.Generate(valArr);

                if (ownRng.IsHorizontal)
                {
                    int shiftLen = ownRng._colCnt * (valArr.Length - 1);
                    tags.Where(tag => tag.Cell.Row == cell.Row && tag.Cell.Column > cell.Column)
                    .ForEach(t =>
                    {
                        t.Cell.Column += shiftLen;
                        t.Cell.XLCell  = _rowRange.Cell(t.Cell.Row, t.Cell.Column);
                    });
                }
                else
                {
                    // move current template cell to next (skip subrange)
                    row += ownRng._rowCnt + 1;
                    while (_cells[iCell].Row <= row - 1)
                    {
                        iCell++;
                    }

                    iCell--; // roll back. After it became clear that it was too much, we must go back.

                    int shiftLen = ownRng._rowCnt * (valArr.Length - 1);
                    tags.Where(tag => tag.Cell.Row > cell.Row)
                    .ForEach(t =>
                    {
                        t.Cell.Row   += shiftLen;
                        t.Cell.XLCell = _rowRange.Cell(t.Cell.Row, t.Cell.Column);
                    });
                }
            }

            var rng       = _buff.GetRange(start, _buff.PrevAddress);
            var rangeName = ownRng.Name;
            var dnr       = rng.Worksheet.Workbook.NamedRange(rangeName);

            dnr.SetRefersTo(rng);
        }
コード例 #15
0
        public void Add_with_same_priority_should_increase_count()
        {
            var errList = new TemplateErrors();
            var list    = new TagsList(errList)
            {
                new GroupTag {
                    Name = "val1"
                },
                new GroupTag {
                    Name = "val2"
                }
            };

            list.Count.Should().Be(2);
        }
コード例 #16
0
        internal RangeTemplate(IXLNamedRange range, TempSheetBuffer buff, TemplateErrors errors, IDictionary <string, object> globalVariables)
        {
            _rowRange      = range.Ranges.First();
            _cells         = new TemplateCells(this);
            _tagsEvaluator = new TagsEvaluator();
            var wb = _rowRange.Worksheet.Workbook;

            _buff            = buff;
            _errors          = errors;
            _globalVariables = globalVariables;
            _tags            = new TagsList(_errors);
            _rangeTags       = new TagsList(_errors);
            Name             = range.Name;
            Source           = range.Name;
            wb.NamedRanges.Add(range.Name + "_tpl", range.Ranges);
        }
コード例 #17
0
    private void MyDataBind()
    {
        using (SqlConnection conn = new DB().GetConnection())
        {
            SqlCommand cmd = conn.CreateCommand();
            conn.Open();
            cmd.CommandText = "select * from  [CommonWord]  order by ID desc  ";

            SqlDataReader rd = cmd.ExecuteReader();
            TagsList.DataSource     = rd;
            TagsList.DataTextField  = "CommonWord";
            TagsList.DataValueField = "ID";
            TagsList.DataBind();

            rd.Close();
        }
    }
コード例 #18
0
        public void DragItemFromIndexToIndex(NSTableView tableView, int dragRow, int toRow)
        {
            IsDraggedTag = true;

            //Console.WriteLine("from:{0} to:{1}", dragRow, toRow);
            AnnotationTag dragItem = TagsList [dragRow];

            if (dragRow < toRow)
            {
                TagsList.Insert(toRow, dragItem);
                TagsList.RemoveAt(dragRow);
            }
            else
            {
                TagsList.RemoveAt(dragRow);
                TagsList.Insert(toRow, dragItem);
            }
        }
コード例 #19
0
        async void tagsListviewcloseClicked(object sender, EventArgs e1)
        {
            tagsListView.ItemsSource = tagsList1;
            tagsListView.ItemsSource = null;
            var      args         = (TappedEventArgs)e1;
            TagsList t2           = args.Parameter as TagsList;
            var      itemToRemove = tagsList.Single(r => r.name == t2.name);

            tagsList.Remove(itemToRemove);

            int cusid = App.tagsDict.FirstOrDefault(x => x.Value == t2.name.ToString()).Key;

            tagIdsList.Remove(cusid);

            tagsListView.ItemsSource   = tagsList;
            tagsListView.RowHeight     = 40;
            tagsListView.HeightRequest = 40 * tagsList.Count;
            mainstack.HeightRequest    = mainstack.HeightRequest - 40;
        }
コード例 #20
0
ファイル: User_Tag.aspx.cs プロジェクト: XJHSG/SEST
    private void UpdateTags()
    {
        string userid = Convert.ToString(Session["UserID"]);

        using (SqlConnection conn = new DB().GetConnection())
        {
            string     sql = "select * from UserTags where UserID = @UserID order by ID desc";
            SqlCommand cmd = new SqlCommand(sql, conn);
            cmd.Parameters.AddWithValue("@UserID", userid);
            conn.Open();

            SqlDataReader rd = cmd.ExecuteReader();
            TagsList.DataSource     = rd;
            TagsList.DataTextField  = "TagName";
            TagsList.DataValueField = "ID";
            TagsList.DataBind();
            rd.Close();
        }
    }
コード例 #21
0
        private void OnAddClickHandler(object obj)
        {
            if (TagText != string.Empty && TagsList.Count(t => t.Name == TagText) == 0)
            {
                Tag newTag = dataRepository.TagCollection.FirstOrDefault(t => t.Name == TagText);
                if (newTag == null)
                {
                    newTag      = new Tag();
                    newTag.Name = TagText;
                    dataRepository.CreateTag(newTag);
                    newTag = dataRepository.TagCollection.FirstOrDefault(t => t.Name == TagText);
                }

                currentBlurb.Tags.Add(newTag);
                TagsList.Add(newTag);
                OnPropertyChanged("TagsList");
                TagText = string.Empty;
            }
        }
コード例 #22
0
ファイル: LinkViewModel.cs プロジェクト: Gitesss/SaveMyURL
        private void GetTags()
        {
            using (var logic = new TagService())
            {
                foreach (var link in Links)
                {
                    foreach (var tag in logic.GetCollection(link.Id))
                    {
                        TagsList.Add(tag);
                    }
                    link.Tags = TagsList;
                }

                foreach (var tag in logic.GetCollectionTags())
                {
                    AllTagsList.Add(tag);
                }
            }
        }
コード例 #23
0
        public override void ViewDidLoad()
        {
            if (TagsList == null)
            {
                TagsList = new List <AnnotationTag> (0);
            }
            else
            {
                TagsList.Clear();
            }

            var tagList = AnnCategoryTagUtil.Instance.GetTags();

            if (tagList != null)
            {
                TagsList.AddRange(tagList);
            }

            TagTableView.UsesAlternatingRowBackgroundColors               = false;
            TagTableView.EnclosingScrollView.ScrollerKnobStyle            = NSScrollerKnobStyle.Default;
            TagTableView.EnclosingScrollView.VerticalScroller.ControlSize = NSControlSize.Small;
            TagTableView.SelectionHighlightStyle             = NSTableViewSelectionHighlightStyle.Regular;
            TagTableView.EnclosingScrollView.BackgroundColor = NSColor.White;
            TagTableView.EnclosingScrollView.BorderType      = NSBorderType.BezelBorder;
            TagTableView.GridStyleMask = NSTableViewGridStyle.None;

            TagTableView.DataSource = new EditTagTableDataSource(TagsList, this);
            TagTableView.Delegate   = new EditTagTableDelegate(TagsList, this);
            TagTableView.ReloadData();

            var attributedTitle = Utility.AttributeTitle("Done", NSColor.Red, 13);

            DoneButton.AttributedTitle = attributedTitle;
            var alterTitle = Utility.AttributeTitle("Done", NSColor.Red, 13);

            DoneButton.AttributedAlternateTitle = alterTitle;

            string[] typeArray = { "NSStringPboardType" };
            TagTableView.RegisterForDraggedTypes(typeArray);

            this.CurrentTagIndex = -1;
        }
コード例 #24
0
        public void Items_should_be_sorted_by_priority()
        {
            var list = new TagsList
            {
                new GroupTag {
                    Name = "val1"
                },
                new GroupTag {
                    Name = "val2"
                },
                new OnlyValuesTag {
                    Name = "val3"
                },
                new ProtectedTag {
                    Name = "val4"
                }
            };

            list.Count.Should().Be(4);
            list.Select(x => x.Name).Should().BeEquivalentTo("val3", "val1", "val2", "val4");
        }
コード例 #25
0
        public void AddTagToTableView(string color, string title)
        {
            if (this.IsTagEdit)
            {
                var curTag = TagsList [this.CurrentTagIndex];
                curTag.Color = color;
                curTag.Title = title;
                AnnCategoryTagUtil.Instance.UpdateTag(curTag.TagId, title, color);
            }
            else
            {
                var newTag = new AnnotationTag();
                newTag.Color = color;
                newTag.Title = title;
                Guid id = AnnCategoryTagUtil.Instance.AddTag(title, color);
                newTag.TagId = id;

                TagsList.Add(newTag);
            }

            TagTableView.ReloadData();
        }
コード例 #26
0
        public void ReloadAnnotationData()
        {
            if (AnnCategoryTagUtil.Instance == null)
            {
                return;
            }
            if (TagsList == null)
            {
                TagsList = new List <AnnotationTag> ();
            }
            else
            {
                TagsList.Clear();
            }

            var tag = new AnnotationTag();

            tag.Color = string.Empty;
            tag.Title = "All Tags";
            tag.TagId = Guid.Empty;
            TagsList.Add(tag);

            var noTag = new AnnotationTag();

            noTag.Color = string.Empty;
            noTag.Title = "No tag";
            noTag.TagId = Guid.Empty;
            TagsList.Add(noTag);

            var tags = AnnCategoryTagUtil.Instance.GetTags();

            TagsList.AddRange(tags);

            if (TagsTableView != null)
            {
                TagsTableView.ReloadData();
            }
        }
コード例 #27
0
        public TagsList[] GetTaskList()
        {
            List <TagsList> data = new List <TagsList>();

            var tags = context.Tasks.Select(m => m.Tags).Distinct().ToArray();


            foreach (var tag in tags)
            {
                TagsList list = new TagsList()
                {
                    Tag   = tag,
                    Tasks = context.Tasks.Where(m => m.Tags == tag).ToList().Select(m => new TaskDispayModel()
                    {
                        Tag = tag, Title = m.Name, ComplexLevel = m.Level.ToString()
                    }).ToArray()
                };
                data.Add(list);
            }


            return(data.ToArray());
        }
コード例 #28
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string UserID = Convert.ToString(Session["UserID"]);



            using (SqlConnection conn = new DB().GetConnection())
            {
                string     sql = "select * from  [ArticleTags]  where [UserID] = @UserID order by ID asc   ";
                SqlCommand cmd = new SqlCommand(sql, conn);
                cmd.Parameters.AddWithValue("@UserID", UserID);
                conn.Open();
                SqlDataReader rd = cmd.ExecuteReader();
                TagsList.DataSource     = rd;
                TagsList.DataTextField  = "TagName";
                TagsList.DataValueField = "ID";
                TagsList.DataBind();
                rd.Close();
            }
        }
    }
コード例 #29
0
        public void UpdateTags()
        {
            TagsClean = "";
            if (tags == null)             // TODO: v0.7.7 returns null tags when there are no plugins enabled.
            {
                tags = "";                // Use empty string as fallback instead
            }
            var separatedTags = tags.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

            foreach (var s in separatedTags)
            {
                TagsClean += s.Substring(Math.Max(s.IndexOf(':') + 1, 0)).Trim() + ", ";
            }
            TagsClean = TagsClean.Trim().TrimEnd(',');
            TagsList.Clear();
            foreach (var s in separatedTags)
            {
                TagsList.Add(s.Trim());
            }

            // TODO: Apparently we can crash here with a COMException
            try
            {
                TagsGroups.Clear();
            }
            catch (Exception e)
            {
                // Drop original collection, can cause more COMExceptions
                TagsGroups = new ObservableCollection <ArchiveTagsGroup>();
#if WINDOWS_UWP
                Crashes.TrackError(e);
#endif
            }
            var tmp = new List <ArchiveTagsGroup>();
            foreach (var s in separatedTags)
            {
                var parts      = s.Trim().Split(new char[] { ':' }, 2);
                var @namespace = parts.Length == 2 ? parts[0] : "other";
                var group      = tmp.FirstOrDefault(tg => tg.Namespace.Equals(@namespace));
                if (group == null)
                {
                    group = AddTagsGroup(tmp, @namespace);
                }
                var tag = parts[parts.Length - 1];
                if (parts[0].Equals("date_added"))
                {
                    if (long.TryParse(tag, out long unixTime))
                    {
                        tag = Util.UnixTimeToDateTime(unixTime).ToString();
                    }
                }
                group.Tags.Add(new ArchiveTagsGroupTag {
                    FullTag = s.Trim(), Tag = tag, Namespace = @namespace
                });
            }
            tmp.Sort((a, b) => string.Compare(a.Namespace, b.Namespace));
            var c = tmp.Find(g => g.Namespace.Equals("other"));
            if (c != null)
            {
                tmp.Remove(c);
                tmp.Add(c);
            }
            try
            {
                tmp.ForEach(g =>
                {
                    g.Namespace = g.Namespace.UpperFirstLetter().Replace('_', ' ');
                    TagsGroups.Add(g);
                });
            }
            catch (Exception e)
            {
                // Handle damaged collection just in case
#if WINDOWS_UWP
                Crashes.TrackError(e);
#endif
            }
        }
コード例 #30
0
ファイル: TagsView.cs プロジェクト: Frolov-Nikita/ModbusSimJs
 public void Load(TagsList tags)
 {
     Tags = tags;
     FillList();
 }