示例#1
0
        protected override ProjectTreeItem CreateTreeItemForItem(ScriptAndHeader item)
        {
            ProjectTree     treeController = _guiController.ProjectTree;
            ProjectTreeItem newItem        = (ProjectTreeItem)treeController.AddTreeBranch(this, GetNodeID(item), item.Name, ICON_KEY);

            newItem.AllowDoubleClickWhenExpanding = true;

            const string editHeaderText = "Edit Header";
            const string editScriptText = "Edit Script";

            if (item.Name != Path.GetFileNameWithoutExtension(Script.GLOBAL_HEADER_FILE_NAME))
            {
                newItem.AllowLabelEdit      = true;
                newItem.LabelTextProperty   = item.Header.GetType().GetProperty("NameForLabelEdit");
                newItem.LabelTextDataSource = item.Header;
                treeController.AddTreeLeaf(this, GetNodeID(item.Header), editHeaderText, ICON_KEY);
                treeController.AddTreeLeaf(this, GetNodeID(item.Script), editScriptText, ICON_KEY);
            }
            else
            {
                treeController.AddTreeLeaf(this, GetNodeID(item.Header), editHeaderText, "MenuIconGlobalHeader");
                treeController.AddTreeLeaf(this, GetNodeID(item.Script), editScriptText, "MenuIconGlobalScript");
            }

            return(newItem);
        }