Exemplo n.º 1
0
 public ExplorerProjectNodeViewModel(ExplorerProjectViewModel treeViewModel, IHierarchicalViewModel parent,
                                     string text, ProjectItemDefinitionModel itemDefinition,
                                     object tag = null, bool lazyLoad = true,
                                     BauMvvm.ViewModels.Media.MvvmColor foreground = null)
     : base(parent, text, tag, lazyLoad, foreground)
 {
     TreeViewModel  = treeViewModel;
     ItemDefinition = itemDefinition;
 }
Exemplo n.º 2
0
 public ProjectItemDefinitionBuilder(ProjectItemDefinitionBuilder parent,
                                     string id, string name, ProjectItemDefinitionModel.ItemType type)
 {
     // Inicializa los generadores
     ParentBuilder = parent;
     // Crea el elemento
     Item = new ProjectItemDefinitionModel(id, name, type);
     // Añade el elemento padre
     if (parent != null)
     {
         ParentBuilder.Item.Items.Add(Item);
     }
 }
Exemplo n.º 3
0
        /// <summary>
        ///		Carga los archivos de proyecto
        /// </summary>
        protected void LoadProjectFiles(ExplorerProjectNodeViewModel root, string path, string folderDefinitionId)
        {
            if (!string.IsNullOrEmpty(path) && System.IO.Directory.Exists(path))
            {
                // Carga las carpetas
                foreach (string child in System.IO.Directory.GetDirectories(path))
                {
                    ExplorerProjectNodeViewModel folder = AddNode(root, System.IO.Path.GetFileName(child), folderDefinitionId, child);

                    LoadProjectFiles(folder, child, folderDefinitionId);
                }
                // Carga los archivos
                foreach (string file in System.IO.Directory.GetFiles(path))
                {
                    ProjectItemDefinitionModel definition = Definition.SearchByExtension(System.IO.Path.GetExtension(file));

                    if (definition != null)
                    {
                        AddNode(root, System.IO.Path.GetFileName(file), definition, file);
                    }
                }
            }
        }
Exemplo n.º 4
0
        /// <summary>
        ///		Añade un nodo
        /// </summary>
        protected ExplorerProjectNodeViewModel AddNode(IHierarchicalViewModel parent, string text, ProjectItemDefinitionModel definition, object tag, bool lazyLoad = false)
        {
            ExplorerProjectNodeViewModel node = new ExplorerProjectNodeViewModel(this, parent, text, definition, tag, lazyLoad);

            // Cambia la negrita
            node.IsBold     = definition?.IsBold ?? false;
            node.Icon       = definition?.Icon;
            node.Foreground = definition?.Foreground ?? MvvmColor.Black;
            // Añade el nodo a la lista
            if (parent == null)
            {
                Children.Add(node);
            }
            else
            {
                parent.Children.Add(node);
            }
            // Devuelve el nodo
            return(node);
        }