示例#1
0
        public void RegisterWorkspaceType(string resType, int[] linkPropIDs, WorkspaceResourceType wrType)
        {
            WorkspaceTypeRec rec = new WorkspaceTypeRec(resType, linkPropIDs, Core.Props.Parent, wrType);

            _workspaceTypes.Add(rec);
            _resTypeToWorkspaceRec [resType] = rec;
        }
示例#2
0
        public IResourceList GetChildResources(IResource parent)
        {
            IResourceList result = null;

            if (parent == _treeRoot)
            {
                return(_workspaceContentsList);
            }
            WorkspaceResourceType wrType = Core.WorkspaceManager.GetWorkspaceResourceType(parent.Type);

            if (wrType == WorkspaceResourceType.Container && parent.HasLink(_workspaceManager.Props.InWorkspace, _workspace))
            {
                // if it's a container that is not linked recursively - do not show children
                return(Core.ResourceStore.EmptyResourceList);
            }

            result = parent.GetLinksToLive(null, _dataProvider.ParentProperty);
            result = result.Minus(_workspace.GetLinksToLive(null, _workspaceManager.Props.ExcludeFromWorkspace));
            string sortProps = Core.ResourceTreeManager.GetResourceNodeSort(parent);

            if (sortProps != null)
            {
                result.Sort(sortProps);
            }
            return(result);
        }
示例#3
0
 internal WorkspaceTypeRec(string resType, int[] linkPropIDs,
                           int recurseLinkPropId, WorkspaceResourceType wrType)
 {
     _resType           = resType;
     _linkPropIds       = linkPropIDs;
     _recurseLinkPropId = recurseLinkPropId;
     _workspaceResType  = wrType;
 }
示例#4
0
        private void UpdateAvailableTreeSelection()
        {
            bool allFolders = true;

            foreach (IResource selResource in _tvAvailable.SelectedResources)
            {
                WorkspaceResourceType wrType = _workspaceManager.GetWorkspaceResourceType(selResource.Type);
                if (wrType != WorkspaceResourceType.Folder)
                {
                    allFolders = false;
                }
            }
            _btnAdd.Enabled             = !allFolders;
            _btnAddWithChildren.Enabled = (_tvAvailable.SelectedResources.Count > 0);
        }