Ejemplo n.º 1
0
        private void FindTweet(string text)
        {
            TreeViewManager panel = dicPanel[selectPanel];

            int index = TweetInstence.FindTweet(selectPanel, panel.treeView.SelectedItem as ClientTweet, text);

            if (index == -1)
            {
                return;
            }

            TreeViewItem selTweet = panel.treeView.ItemContainerGenerator.ContainerFromIndex(index) as TreeViewItem;

            //panel.listBox.Items.MoveCurrentTo(selTweet);
            selTweet.IsSelected = true;
            selTweet.Focus();
            textBoxFind.Focus();
        }
        public override void Refresh()
        {
            ArrayList aspects = (ArrayList)model.Aspects;

            //Order is important
            //aspects.Sort(new AspectComparer());

            #region Prune Aspects

            IList     prune    = new ArrayList();
            Hashtable existing = new Hashtable();
            foreach (IGenericAspect aspect in aspects)
            {
                existing[aspect] = aspect;
            }

            foreach (TreeNode node in this.Nodes)
            {
                AspectNode aspectNode = node as AspectNode;
                if (aspectNode != null)
                {
                    if (!existing.Contains(aspectNode.Aspect))
                    {
                        prune.Add(aspectNode);
                    }
                }
            }

            foreach (TreeNode pruneNode in prune)
            {
                this.Nodes.Remove(pruneNode);
            }

            #endregion

            #region Add Aspects

            IList insert = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                AspectNode aspectNode = node as AspectNode;
                if (aspectNode != null)
                {
                    existing[aspectNode.Aspect] = aspectNode.Aspect;
                }
            }

            foreach (IGenericAspect aspect in aspects)
            {
                if (!existing.Contains(aspect))
                {
                    insert.Add(aspect);
                }
            }

            foreach (IGenericAspect aspect in insert)
            {
                AspectNode insertNode = new AspectNode(aspect);
                this.Nodes.Add(insertNode);
            }

            #endregion

            #region Order Aspects

            int i = 0;
            foreach (IGenericAspect aspect in aspects)
            {
                NodeBase node = TreeViewManager.FindNodeByObject(this.Nodes, aspect);
                if (node.Index != i)
                {
                    this.Nodes.Remove(node);
                    this.Nodes.Insert(i, node);
                }
                i++;
            }

            #endregion


            base.Refresh();
        }
Ejemplo n.º 3
0
 private void Awake()
 {
     main = this;
 }
Ejemplo n.º 4
0
        public override void Refresh()
        {
            if (model == null)
            {
                return;
            }

            ArrayList aspects = (ArrayList)aspectMatcher.MatchAspectsForType(type, model.Aspects);

            this.ImageIndex         = 1;
            this.SelectedImageIndex = 1;

            foreach (PresentationAspect aspect in aspects)
            {
                aspect.AppliedOnTypes.Add(type);
            }

            if (aspects.Count > 0)
            {
                this.ImageIndex         = 9;
                this.SelectedImageIndex = 9;
            }

            //Order is important
            //aspects.Sort(new AspectComparer());

            #region Prune Aspects

            IList     prune    = new ArrayList();
            Hashtable existing = new Hashtable();
            foreach (IGenericAspect aspect in aspects)
            {
                existing[aspect] = aspect;
            }

            foreach (TreeNode node in this.Nodes)
            {
                AspectNode aspectNode = node as AspectNode;
                if (aspectNode != null)
                {
                    if (!existing.Contains(aspectNode.Aspect))
                    {
                        prune.Add(aspectNode);
                    }
                }
            }

            foreach (TreeNode pruneNode in prune)
            {
                this.Nodes.Remove(pruneNode);
            }

            #endregion

            #region Add Aspects

            int   insertAt = -1;
            int   i        = 0;
            IList insert   = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                AspectNode aspectNode = node as AspectNode;
                if (aspectNode != null)
                {
                    existing[aspectNode.Aspect] = aspectNode.Aspect;
                }

                MethodNode methodNode = node as MethodNode;
                if (methodNode != null)
                {
                    if (insertAt == -1)
                    {
                        insertAt = i;
                    }
                    methodNode.Aspects = aspects;
                }
                i++;
            }

            foreach (IGenericAspect aspect in aspects)
            {
                if (!existing.Contains(aspect))
                {
                    insert.Add(aspect);
                }
            }

            foreach (IGenericAspect aspect in insert)
            {
                AspectNode insertNode = new AspectNode(aspect);
                this.Nodes.Insert(insertAt, insertNode);
            }

            #endregion

            #region Order Aspects

            i = 0;
            foreach (IGenericAspect aspect in aspects)
            {
                NodeBase node = TreeViewManager.FindNodeByObject(this.Nodes, aspect);
                if (node.Index != i)
                {
                    this.Nodes.Remove(node);
                    this.Nodes.Insert(i, node);
                }
                i++;
            }

            #endregion

            base.Refresh();
        }
Ejemplo n.º 5
0
        private void RefreshInterceptorNodes()
        {
            this.ImageIndex         = 10;
            this.SelectedImageIndex = 10;

            IList interceptors = new ArrayList();

            foreach (IGenericAspect aspect in aspects)
            {
                foreach (PresentationPointcut pointcut in aspect.Pointcuts)
                {
                    if (pointcut.IsMatch(method, this.Type))
                    {
                        pointcut.AppliedOnMethods.Add(this.method);

                        foreach (PresentationInterceptor interceptor in pointcut.Interceptors)
                        {
                            interceptors.Add(interceptor);
                        }
                    }
                }
            }

            #region Prune Interceptors

            IList     prune    = new ArrayList();
            Hashtable existing = new Hashtable();
            foreach (PresentationInterceptor interceptor in interceptors)
            {
                existing[interceptor] = interceptor;
            }

            foreach (TreeNode node in this.Nodes)
            {
                InterceptorNode interceptorNode = node as InterceptorNode;
                if (interceptorNode != null)
                {
                    if (!existing.Contains(interceptorNode.Interceptor))
                    {
                        prune.Add(interceptorNode);
                    }
                }
            }

            foreach (TreeNode pruneNode in prune)
            {
                this.Nodes.Remove(pruneNode);
            }

            #endregion

            #region Add Interceptors

            IList insert = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                InterceptorNode interceptorNode = node as InterceptorNode;
                if (interceptorNode != null)
                {
                    existing[interceptorNode.Interceptor] = interceptorNode.Interceptor;
                }
            }

            foreach (PresentationInterceptor interceptor in interceptors)
            {
                if (!existing.Contains(interceptor))
                {
                    insert.Add(interceptor);
                }
            }

            foreach (PresentationInterceptor interceptor in insert)
            {
                InterceptorNode insertNode = new InterceptorNode(interceptor);
                this.Nodes.Add(insertNode);
            }

            #endregion

            #region Order Interceptors

            int i = 0;
            foreach (PresentationInterceptor interceptor in interceptors)
            {
                NodeBase node = TreeViewManager.FindNodeByObject(this.Nodes, interceptor);
                if (node.Index != i)
                {
                    this.Nodes.Remove(node);
                    this.Nodes.Insert(i, node);
                }
                i++;
            }

            #endregion
        }
Ejemplo n.º 6
0
        public override void Refresh()
        {
            this.Text = aspect.Name;

            int pointcutsStartAt = -1;

            #region Prune Targets

            IList     prune    = new ArrayList();
            Hashtable existing = new Hashtable();
            foreach (AspectTarget target in aspect.Targets)
            {
                existing[target] = target;
            }

            foreach (TreeNode node in this.Nodes)
            {
                AspectTargetNode targetNode = node as AspectTargetNode;
                if (targetNode != null)
                {
                    if (!existing.Contains(targetNode.Target))
                    {
                        prune.Add(targetNode);
                    }
                }
            }

            foreach (TreeNode pruneNode in prune)
            {
                this.Nodes.Remove(pruneNode);
            }

            #endregion

            #region Prune Mixins

            prune    = new ArrayList();
            existing = new Hashtable();
            foreach (PresentationMixin mixin in aspect.Mixins)
            {
                existing[mixin] = mixin;
            }

            foreach (TreeNode node in this.Nodes)
            {
                MixinNode mixinNode = node as MixinNode;
                if (mixinNode != null)
                {
                    if (!existing.Contains(mixinNode.Mixin))
                    {
                        prune.Add(mixinNode);
                    }
                }
            }

            foreach (TreeNode mixinNode in prune)
            {
                this.Nodes.Remove(mixinNode);
            }

            #endregion

            #region Prune Pointcuts

            prune    = new ArrayList();
            existing = new Hashtable();
            foreach (IPointcut pointcut in aspect.Pointcuts)
            {
                existing[pointcut] = pointcut;
            }

            foreach (TreeNode node in this.Nodes)
            {
                PointcutNode pointcutNode = node as PointcutNode;
                if (pointcutNode != null)
                {
                    if (!existing.Contains(pointcutNode.Pointcut))
                    {
                        prune.Add(pointcutNode);
                    }
                }
            }

            foreach (TreeNode pruneNode in prune)
            {
                this.Nodes.Remove(pruneNode);
            }

            #endregion

            #region Add Targets

            int   insertAt = -1;
            int   i        = 0;
            IList insert   = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                AspectTargetNode targetNode = node as AspectTargetNode;
                if (targetNode != null)
                {
                    existing[targetNode.Target] = targetNode.Target;
                }

                if (insertAt == -1)
                {
                    MixinNode mixinNode = node as MixinNode;
                    if (mixinNode != null)
                    {
                        insertAt = i;
                    }
                }
                i++;
            }

            foreach (AspectTarget target in aspect.Targets)
            {
                if (!existing.Contains(target))
                {
                    insert.Add(target);
                }
            }

            foreach (AspectTarget target in insert)
            {
                AspectTargetNode insertNode = new AspectTargetNode(target);
                this.Nodes.Insert(insertAt, insertNode);
            }

            #endregion

            #region Add Mixins

            insertAt = -1;
            i        = 0;
            insert   = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                MixinNode mixinNode = node as MixinNode;
                if (mixinNode != null)
                {
                    existing[mixinNode.Mixin] = mixinNode.Mixin;
                }

                if (insertAt == -1)
                {
                    PointcutNode pointcutNode = node as PointcutNode;
                    if (pointcutNode != null)
                    {
                        insertAt         = i;
                        pointcutsStartAt = i;
                    }
                }
                i++;
            }

            foreach (PresentationMixin mixin in aspect.Mixins)
            {
                if (!existing.Contains(mixin))
                {
                    insert.Add(mixin);
                }
            }

            foreach (PresentationMixin mixin in insert)
            {
                MixinNode insertNode = new MixinNode(mixin);
                this.Nodes.Insert(insertAt, insertNode);
            }

            #endregion

            #region Add Pointcuts

            insert   = new ArrayList();
            existing = new Hashtable();

            foreach (TreeNode node in this.Nodes)
            {
                PointcutNode pointcutNode = node as PointcutNode;
                if (pointcutNode != null)
                {
                    existing[pointcutNode.Pointcut] = pointcutNode.Pointcut;
                }
            }

            foreach (IPointcut pointcut in aspect.Pointcuts)
            {
                if (!existing.Contains(pointcut))
                {
                    insert.Add(pointcut);
                }
            }

            foreach (IPointcut pointcut in insert)
            {
                PointcutNode insertNode = new PointcutNode(pointcut);
                this.Nodes.Add(insertNode);
            }

            #endregion

            #region Order Pointcuts

            i = pointcutsStartAt;
            foreach (IPointcut pointcut in aspect.Pointcuts)
            {
                NodeBase node = TreeViewManager.FindNodeByObject(this.Nodes, pointcut);
                if (node.Index != i)
                {
                    this.Nodes.Remove(node);
                    this.Nodes.Insert(i, node);
                }
                i++;
            }

            #endregion

            base.Refresh();
        }