Exemplo n.º 1
0
        private void SearchResponseCallBack(SearchResponseArgs e)
        {
            //更换逻辑,区分直接的和间接的。
            int  tmp           = 0;
            bool obj_attribute = false;

            if (e.Result != null)
            {
                tags.Clear();
                resources.Clear();
                foreach (IRequestObject obj in e.Result)
                {
                    obj_attribute = e.Result_Attribute[tmp];
                    if (obj is Tag)
                    {
                        TagItem item = TagItem.CreateTagItem(obj as Tag);

                        if (item.Tag.TagID == null)
                        {
                            item.State = TagItemState.FreeNew;
                            //说明为直接获得。
                        }
                        else
                        {
                            item.State = TagItemState.FreeImmediate;
                            //说明为间接获得。
                        }
                        tags.Add(item);
                    }
                    else if (obj is Resource)
                    {
                        ResourceItem item = new ResourceItem(obj as Resource);

                        if (obj_attribute)
                        {
                            //说明为直接获得。
                        }
                        else
                        {
                            //说明为间接获得。
                        }
                        resources.Add(item);
                    }
                    else
                    {
                        throw new Exception("New IRequestObject imported!");
                    }
                    tmp++;
                }
            }
            else
            {
            }
        }
Exemplo n.º 2
0
 private void tagCreatedCallBack(TagCreatedResponseEArgs e)
 {
     if (e.tag != null)
     {
         TagItem tmpTag = TagItem.CreateTagItem(e.tag);
         tags.Add(tmpTag);
         TagAddAndSearch = tmpTag;
         foreach (ResourceItem resc in selectedResources)
         {
             if (RelationCreated != null)
             {
                 RelationCreated(e.tag, resc.Resource, RelationCreatedCallBack);
             }
         }
     }
 }
Exemplo n.º 3
0
        public static TagItem CreateTagItem(Tag tag)
        {
            TagItem item = new TagItem(tag, TagItemState.FreeNew);

            return(item);
        }