Commit 94520476 by Tecnicos

Actualizado el archivo de la carpeta

parent 35d3725a
Showing with 26 additions and 19 deletions
......@@ -8,40 +8,46 @@ import 'formato.dart';
class Carpeta extends ElementoSeleccionable {
final Directory _directory;
bool _incluirSubcarpetas = false;
// bool _open = false;
final List<InfoFormato> _formatos = <InfoFormato>[];
final _elementos = <FileSystemEntity>[];
Directory get directory => _directory;
List<InfoFormato> get formatos => List.unmodifiable(_formatos);
List<FileSystemEntity> get elementos => List.unmodifiable(_elementos);
// bool get isOpen => _open;
bool get incluyeSubcarpetas => _incluirSubcarpetas;
Carpeta({required super.id, required Directory directory}):
_directory = directory,
super(nombre: directory.path.split('/').last, icon: const Icon(Icons.folder_outlined))
{
final elementos = directory.listSync(recursive: _incluirSubcarpetas, followLinks: false);
// Ahora mismo no funciona por tema permisos pero Diego está trabajando en ello
for(var fse in elementos) {
Formato? f = Formato.fromExtension(fse.path.split(".").last);
if (f != null) {
/*
Creo que podríamos usar mejor _elementos que _formatos
para la construcción de las CarpetaWidget, pero no voy a
quitar _formatos para que la pagina de configuración de la
carpeta siga funcionando
*/
_formatos.add(
InfoFormato (
final archivos = directory.listSync(recursive: false, followLinks: false);
for(var a in archivos) {
Formato? f = Formato.fromExtension(a.path.split(".").last);
if(f != null){
final i = InfoFormato(
formato: f,
carpeta: this,
subCarpeta: false);
if(!_formatos.contains(i)){
_formatos.add(i);
}
}
}
final subcarpeta = directory.listSync(recursive: true, followLinks: false);
for(var a in subcarpeta) {
Formato? f = Formato.fromExtension(a.path.split(".").last);
if(f != null){
final i = InfoFormato(
formato: f,
)
);
_elementos.add(fse);
carpeta: this,
subCarpeta: true);
if(!_formatos.contains(i)){
_formatos.add(i);
}
}
}
}
/*
......@@ -95,11 +101,12 @@ class Carpeta extends ElementoSeleccionable {
class InfoFormato extends Convertible {
final Carpeta _carpeta;
bool seleccionado;
bool subCarpeta;
Carpeta get carpeta => _carpeta;
InfoFormato({required Formato formato, required Carpeta carpeta,
bool? seleccionado}):
bool? seleccionado, required bool this.subCarpeta}):
_carpeta = carpeta,
seleccionado = seleccionado ?? false,
super(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment