SergioSCA commited on
Commit
58cf5d4
verified
1 Parent(s): 816e04a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -31
app.py CHANGED
@@ -27,23 +27,6 @@ def actualizar_tareas(modalidades_seleccionadas):
27
  # Eliminar duplicados y devolver una lista de tareas disponibles
28
  return list(set(tareas_disponibles))
29
 
30
- # Funci贸n para ajustar el estilo del panel din谩micamente
31
- def ajustar_estilo_panel(tareas_disponibles):
32
- # Calcular la altura 贸ptima del panel en funci贸n del n煤mero de tareas
33
- altura_base = 50 # Altura m铆nima del panel
34
- altura_por_tarea = 30 # Altura por cada tarea
35
- altura_total = altura_base + len(tareas_disponibles) * altura_por_tarea
36
- # Devolver el estilo CSS actualizado
37
- estilo_css = f"""
38
- .expanded-checkbox {{
39
- max-height: {altura_total}px; /* Altura din谩mica */
40
- overflow-y: auto; /* Scroll vertical si es necesario */
41
- border: 1px solid #ccc; /* Borde para mejorar la visibilidad */
42
- padding: 10px; /* Espaciado interno */
43
- }}
44
- """
45
- return estilo_css
46
-
47
  # Funci贸n para generar el encabezado del CSV (ahora incluye 'id')
48
  def generar_encabezado(modalidades_seleccionadas, tareas_seleccionadas):
49
  if not modalidades_seleccionadas or not tareas_seleccionadas:
@@ -116,22 +99,10 @@ with gr.Blocks() as demo:
116
  with gr.Row():
117
  gr.Markdown("### Selecciona Tareas")
118
  tareas_disponibles = gr.CheckboxGroup(choices=[], label="Tareas Disponibles", interactive=True, elem_classes=["expanded-checkbox"])
119
- estilo_css = gr.HTML("") # Para aplicar estilos din谩micos
120
-
121
- def actualizar_panel(modalidades_seleccionadas):
122
- # Actualizar las tareas disponibles
123
- tareas = actualizar_tareas(modalidades_seleccionadas)
124
- # Ajustar el estilo del panel
125
- nuevo_estilo = ajustar_estilo_panel(tareas)
126
- return {
127
- tareas_disponibles: gr.CheckboxGroup.update(choices=tareas),
128
- estilo_css: gr.HTML.update(value=nuevo_estilo)
129
- }
130
-
131
  modalidades_seleccionadas.change(
132
- fn=actualizar_panel,
133
  inputs=modalidades_seleccionadas,
134
- outputs=[tareas_disponibles, estilo_css]
135
  )
136
 
137
  # Panel 3: Generar Encabezado del CSV
@@ -166,5 +137,15 @@ with gr.Blocks() as demo:
166
  outputs=vista_previa_csv
167
  )
168
 
 
 
 
 
 
 
 
 
 
 
169
  # Ejecutar la aplicaci贸n
170
  demo.launch()
 
27
  # Eliminar duplicados y devolver una lista de tareas disponibles
28
  return list(set(tareas_disponibles))
29
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  # Funci贸n para generar el encabezado del CSV (ahora incluye 'id')
31
  def generar_encabezado(modalidades_seleccionadas, tareas_seleccionadas):
32
  if not modalidades_seleccionadas or not tareas_seleccionadas:
 
99
  with gr.Row():
100
  gr.Markdown("### Selecciona Tareas")
101
  tareas_disponibles = gr.CheckboxGroup(choices=[], label="Tareas Disponibles", interactive=True, elem_classes=["expanded-checkbox"])
 
 
 
 
 
 
 
 
 
 
 
 
102
  modalidades_seleccionadas.change(
103
+ fn=lambda modalidades: actualizar_tareas(modalidades), # Usamos una lambda para simplificar
104
  inputs=modalidades_seleccionadas,
105
+ outputs=tareas_disponibles
106
  )
107
 
108
  # Panel 3: Generar Encabezado del CSV
 
137
  outputs=vista_previa_csv
138
  )
139
 
140
+ # Estilo CSS para expandir el 谩rea de selecci贸n de tareas
141
+ demo.css = """
142
+ .expanded-checkbox {
143
+ max-height: 200px; /* Altura m谩xima */
144
+ overflow-y: auto; /* Scroll vertical si es necesario */
145
+ border: 1px solid #ccc; /* Borde para mejorar la visibilidad */
146
+ padding: 10px; /* Espaciado interno */
147
+ }
148
+ """
149
+
150
  # Ejecutar la aplicaci贸n
151
  demo.launch()