Esempio n. 1
0
        public LimnorContextMenuCollection GetObjectMenuData(object obj)
        {
            LimnorXmlDesignerLoader2 l = this.Loader as LimnorXmlDesignerLoader2;
            UInt32 id = l.ObjectMap.GetObjectID(obj);

            if (_menuData == null)
            {
                _menuData = new Dictionary <UInt32, LimnorContextMenuCollection>();
            }
            LimnorContextMenuCollection data;

            if (!_menuData.TryGetValue(id, out data))
            {
                if (obj == l.RootObject)
                {
                    data = new LimnorContextMenuCollection(l.GetRootId());
                }
                else
                {
                    MemberComponentId mc = MemberComponentId.CreateMemberComponentId(l.GetRootId(), obj, id, null);
                    data = new LimnorContextMenuCollection(mc);
                }
                _menuData.Add(id, data);
            }
            return(data);
        }
        public LimnorContextMenuCollection GetObjectMenuData(object obj)
        {
            LimnorXmlDesignerLoader2 l = this.Loader as LimnorXmlDesignerLoader2;
            IClass ic = l.GetRootId().CreateMemberPointer(obj);

            if (ic != null)
            {
                return(LimnorContextMenuCollection.GetMenuCollection(ic));
            }
            return(null);
        }
        public ObjectExplorerView(LimnorXmlDesignerLoader2 designerLoader)
        {
            InitializeComponent();
            _loader      = designerLoader;
            BackColor    = Color.LightGray;
            _objExplorer = new TreeViewObjectExplorer();
            _objExplorer.SetProject(designerLoader.Project);
            _objExplorer.ActionsHolder = _loader.GetRootId();
            this.splitContainer1.Panel1.Controls.Add(_objExplorer);
            _objExplorer.Dock     = DockStyle.Fill;
            txtDesc.AcceptsTab    = true;
            txtDesc.AcceptsReturn = true;
            ContextMenu cm = new ContextMenu();

            cm.MenuItems.Add(new MenuItem("View/Edit", mnu_editDesc));
            txtDesc.ContextMenu = cm;
        }
        public void OnDataLoaded()
        {
            ClassPointer      objId = _loader.GetRootId();
            TreeNodeClassRoot r     = _objExplorer.CreateClassRoot(true, objId, _objExplorer.StaticScope);

            r.SetDesigner(_loader);
            _objExplorer.Nodes.Add(r);
            _objExplorer.Nodes.Add(new TreeNodeDocCollection(_objExplorer, objId));
            if (objId.Interface == null)
            {
                if (!objId.IsStatic)
                {
                    _objExplorer.Nodes.Add(new TreeNodeDatabaseConnectionList(objId));
                }
                TreeNodeActionCollection tnas = new TreeNodeActionCollection(_objExplorer, r, false, objId, 0);
                _objExplorer.Nodes.Add(tnas);
                tnas.AdjustActionIcon();
            }
            _objExplorer.LoadTypeNodes();
            txtDesc.Text = SerializeUtil.GetNodeDescription(_loader.Node);
        }