Exemple #1
0
 public TreeDocumentsViewModel(BauMvvm.ViewModels.BaseObservableObject viewModelParent, FileModel.DocumentType documentType,
                               FileModel file, FilesModelCollection files)
 {
     ViewModelParent = viewModelParent;
     DocumentType    = documentType;
     File            = file;
     Files           = files;
 }
 public SelectFilesProjectViewModel(ProjectModel project, FileModel.DocumentType idDocumentType, FilesModelCollection filesSelected)
 {
     // Inicializa las propiedades
     Project        = project;
     FilesSelected  = filesSelected;
     IDDocumentType = idDocumentType;
     // Carga por primera vez el combo de proyectos
     LoadTreeFiles(project);
 }
Exemple #3
0
        /// <summary>
        ///		Convierte un elemento <see cref="BlogEntryViewModel"/> en el icono asociado
        /// </summary>
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            string icon = null;

            // Convierte la entrada según el estado en el icono asociado
            if (value is FileModel.DocumentType)
            {
                FileModel.DocumentType intFileType = (FileModel.DocumentType)((int)value);

                // Obtiene la dirección del icono
                switch (intFileType)
                {
                case FileModel.DocumentType.Document:
                    icon = "/BauControls;component/Themes/Images/Document.png";
                    break;

                case FileModel.DocumentType.Folder:
                    icon = "/BauControls;component/Themes/Images/Folder.png";
                    break;

                case FileModel.DocumentType.File:
                    icon = "/BauControls;component/Themes/Images/File.png";
                    break;

                case FileModel.DocumentType.Image:
                    icon = "/BauControls;component/Themes/Images/Image.png";
                    break;

                case FileModel.DocumentType.SiteMap:
                    icon = "/BauControls;component/Themes/Images/PageBase.png";
                    break;

                case FileModel.DocumentType.Reference:
                    icon = "/BauControls;component/Themes/Images/Reference.png";
                    break;

                case FileModel.DocumentType.Section:
                    icon = "/BauControls;component/Themes/Images/Section.png";
                    break;

                case FileModel.DocumentType.Tag:
                    icon = "/BauControls;component/Themes/Images/Tag.png";
                    break;

                case FileModel.DocumentType.Template:
                    icon = "/BauControls;component/Themes/Images/Template.png";
                    break;
                }
            }
            // Devuelve la dirección del icono
            return(icon);
        }
Exemple #4
0
 public SelectFilesProjectView(ProjectModel project, FileModel.DocumentType idDocumentType, FilesModelCollection filesSelected)
 {
     // Inicializa los componentes
     InitializeComponent();
     // Inicializa el ViewModel
     ViewModel        = new SelectFilesProjectViewModel(project, idDocumentType, filesSelected);
     DataContext      = ViewModel;
     ViewModel.Close += (sender, result) =>
     {
         DialogResult = result.IsAccepted;
         Close();
     };
 }
Exemple #5
0
        /// <summary>
        ///		Comprueba si un archivo hace referencia al tipo de documento buscado
        /// </summary>
        private bool IsReference(FileModel file, FileModel.DocumentType documentType)
        {
            bool isReference = false;

            // Comprueba si es una referencia
            if (file.FileType == FileModel.DocumentType.Reference)
            {
                ReferenceModel reference      = new Application.Bussiness.Documents.ReferenceBussiness().Load(file);
                FileModel      fileReferenced = new Application.Bussiness.Solutions.FileFactory().GetInstance(file.Project, reference.FileNameReference);

                // Indica si el archivo referenciado es del tipo buscado
                isReference = fileReferenced.FileType == documentType;
            }
            // Devuelve el valor que indica si el archivo es una referencia al tipo buscado
            return(isReference);
        }
Exemple #6
0
        /// <summary>
        ///		Obtiene los archivos de un tipo de una carpeta
        /// </summary>
        private FilesModelCollection GetFiles(ProjectModel project, FilesModelCollection filesProject, FileModel.DocumentType idDocumentType)
        {
            FilesModelCollection files = new FilesModelCollection(project);

            // Añade a la colección de salida los archivos de determinado tipo
            foreach (FileModel fileProject in filesProject)
            {
                if (fileProject.FileType == idDocumentType)
                {
                    files.Add(fileProject);
                }
                else
                {
                    files.AddRange(fileProject.Files);
                }
            }
            // Devuelve la colección de archivos
            return(files);
        }
Exemple #7
0
 /// <summary>
 ///		Obtiene los archivos de determinado tipo
 /// </summary>
 public FilesModelCollection GetFiles(ProjectModel project, FileModel.DocumentType idDocumentType)
 {
     return(GetFiles(project, new FileBussiness().Load(project), idDocumentType));
 }
Exemple #8
0
        /// <summary>
        ///		Abre el formulario de selección de archivos de un proyecto
        /// </summary>
        public SystemControllerEnums.ResultType SelectFilesProject(ProjectModel project, FileModel.DocumentType idDocumentType, FilesModelCollection filesSelected,
                                                                   out FilesModelCollection filesOutput)
        {
            SelectFilesProjectView frmNewSelect = new SelectFilesProjectView(project, idDocumentType, filesSelected);

            SystemControllerEnums.ResultType result;

            // Inicializa los datos de salida
            filesOutput = new FilesModelCollection(project);
            // Muestra el formulario
            result = DocWriterPlugin.MainInstance.HostPluginsController.HostViewsController.ShowDialog(frmNewSelect);
            // Recoge los valores
            if (result == SystemControllerEnums.ResultType.Yes)
            {
                filesOutput = frmNewSelect.ViewModel.FilesSelected;
            }
            // Devuelve el resultado
            return(result);
        }
        /// <summary>
        ///		Crea un archivo
        /// </summary>
        public FileModel CreateFile(ProjectModel project, FileModel folderParent, string name, FileModel.DocumentType type)
        {
            FileModel file = new FileModel(project);

            // Asigna las propiedades
            file.Title        = name;
            file.FullFileName = GetPath(project, folderParent, name);
            file.FileType     = type;
            // Si es un archivo de tipo documento, añade al nombre de archivo, el nombre de archivo predeterminado, si no recoge el
            // título normalizado
            if (!file.IsDocumentFolder)
            {
                file.FullFileName += file.GetExtension(type);
            }
            else
            {
                file.Title = Path.GetFileName(file.FullFileName);
            }
            // Crea el directorio
            LibCommonHelper.Files.HelperFiles.MakePath(file.Path);
            // Graba el archivo
            if (file.FileType == FileModel.DocumentType.File)
            {
                LibCommonHelper.Files.HelperFiles.SaveTextFile(file.FullFileName, "");
            }
            else if (file.FileType != FileModel.DocumentType.Folder)
            {
                new Documents.DocumentBussiness().Save(file);
            }
            // Devuelve el archivo
            return(file);
        }