Controles: Múltiples layouts por fila de un grid

Documentos relacionados
Controles: etiquetas, tablas e imágenes. Sus particularidades en el diseño.

Introducción: un paseo por la aplicación móvil en ejecución.

Tipos de datos estructurados

Acceso a bases de datos externas

Eventos en Smart Devices

Cómo implementar un menú de entrada para la aplicación móvil

Demo: empezando a desarrollar la aplicación en su parte web

Overview GeneXus - Demo: 2.Cómo obtener el ejecutable de la KB y declaración de algunas reglas del negocio.

COMBINAR CORRESPONDENCIA

TECNOLOGÍA E INFORMÁTICA

APUNTE TABLAS MICROSOFT WORD 2003

Trabajando con documentos

Creando una aplicación móvil con GeneXus para trabajar con los Materiales del SAP ERP parte 4

Reporting (objeto Query)

Modelo conceptual de Smart Devices

Opciones de animación y configuración

ALMACENAMIENTO Y RECUPERACIÓN DE UN LIBRO

Microsoft Word. Microsoft Word 2013 SALOMÓN CCANCE. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Diseñando más transacciones

Dos formas de devolver una colección con un Data Provider

Manejo de Filas, Columnas, Celdas y Rangos

Momentos de disparo de reglas en transacciones

Aplicación del GAM. Una vez autenticado el usuario podrá comenzar a utilizar la aplicación.

Otros elementos comunes

TUTORIAL SOBRE HOJAS DE CALCULO

Combinación de correspondencia en Microsoft Office Word 2003

Vemos, pues, que esta forma de organizar los datos es mucho más potente que utilizando las tabulaciones u otros métodos.

Guías y ayudas. Revisión de ítems en RiuNet: modificar, rechazar, aprobar INTRODUCCIÓN. Revisión de ítems. Tienes alguna duda sobre.

Elaboración de Documentos en Procesadores de Textos

GUÍA 10 Tema: Creación de Gif animado.

Programando el Evento Start, Click o De usuario en un Web Panel

Introducción a la Programación en Visual Basic y su aplicación en Excel. M.I. Jaime Alfonso Reyes Cortés

Fórmulas Globales. Page1. Video filmado con GeneXus X Evolution 2

Smooth web user experience

Manual Power Point Manejo de Hipervínculos

En esta lección vamos a ver más utilidades y opciones sobre la

Microsoft Word 2000 Laboratorio de Informática Facultad de Agronomía y Agroindustrias - Año 2006.

Historial de Revisiones

SISTEMA DE AMBIENTES DE DESPACHO

Guardar y abrir documentos (I)

Transacción de 2 niveles usada como Business Component y manejo de errores.

Momentos de disparo de reglas en transacciones

Diseñando la primera transacción

TRABAJAR OBRAS COMO TALLER MECÁNICO

Diseñando más transacciones

TABLAS WORD La tercer opción es usar el vínculo Dibujar Tabla, aquí se dimensiona la tabla dibujándola con el mouse

UNIDAD 4. MODIFICAR TABLAS DE DATOS

EJERCICIO 26 DE EXCEL

HERRAMIENTAS AVANZADAS PARA LA GESTIÓN DE PROYECTOS

PERIODO 2-1 PRESENTADOR MULTIMEDIA POWERPOINT CONCEPTOS BÁSICOS INTRODUCCIÓN AL PROGRAMA MICROSOFT POWERPOINT

USO DEL CORREO ELECTRÓNICO EN HOTMAIL.

ARCHIVOS DE LA APLICACIÓN DE TRATAMIENTOS DE TEXTOS, UBICACIÓN, TIPO Y OPERACIONES CON ELLOS

Overview GeneXus - Demo: 3. Se agregan transacciones para registrar Clientes y Productos al sistema de facturación.

Imágenes y Gráficos. capítulo 06

Organizando los datos

Prototipación y ejecución

Microsoft Word. Microsoft Word 2013 SALOMÓN CCANCE. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Administrando las bases de conocimiento (GXserver)

Cargando los tipos de datos compuestos

CURSO SOBRE LA PDi SMART USO DEL SOFTWARE NOTEBOOK

Para ingresar a la aplicación Microsoft Access 97, los pasos que se deben seguir pueden ser los siguientes:

Introducción a procedimientos, listados y comando For each

TEMA 1: LAS PRESENTACIONES EN EL LIBREOFFICE

Guía docente: Cómo crear un test y los tipos de preguntas

Qué son los subtipos?

Gestión de bases de datos de mysql desde Dreamweaver

Integridad Transaccional

UNIVERSIDAD METROPOLITANA LATIN CAMPUS GUÌA DE ESTUDIO Y EVALUACIÒN. Informática General IV- POWER POINT TEXTO ELECTRÓNICO GRATUITO EDITADO POR UMLA

1.- CREACIÓN DE CONSULTAS.

Edición y personalización de la instancia del pattern Work With aplicado a una transacción

Apunte de Tabulaciones Microsoft Office Word Tabulaciones.

Planilla de cálculo. Módulo III - OpenOffice.org Calc

UNIDAD 11 ELEMENTOS GRÁFICOS

PASOS PARA INGRESAR A WORD 2007

En este manual se propone utilizar el SkyDrive del correo electrónico del CONALEP, sin embargo también es

Capítulo 8: Añadir Animación a una Presentación

Unidad 29: Formato condicional

Cómo subir fotos y recortarlas:

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS

INTRODUCCIÓN THINK-CELL. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Microsoft Office Excel 2007.

CREACIÓN DE CARTAS, SOBRES Y ETIQUETAS PARA ENVÍO MASIVO DE CORRESPONDENCIA

OpenOffice Writer I. PROCESADOR de TEXTOS

Fila: Es un conjunto de varias celdas dispuestas en sentido horizontal.

SESION8 PATRONES CREACION DE PATRONES. Patrón de

PARAMETRIZACION CONTABLE DEL MÓDULO VENTAS

Manual Power Point Trabajar con formas

POWER POINT Tema 1. Para salir de PowerPoint (suponiendo que se tiene abierto) puede:

MOODLE 1.9 BASE DE DATOS

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 5: Informes

Vicerrectoría de Pregrado 1 Universidad de Talca

PODER JUDICIAL DE LA NACION ARGENTINA

Nos muestra el contenido de la celda activa, es decir, la casilla donde estamos situados.

OPENOFFICE IMPRESS. Creación básica de presentaciones digitales

Actualización de la Base de Datos - For each, delete, new

MANUAL DE INSTALACIÓN Y USO DE FBackup

Elementos esenciales de Word

MANUAL PERITO/OPERADOR

TABLERO DE CONTROL CREACIÓN DE UN NUEVO TABLERO. 1- Seleccione la siguiente opción dentro del Administrador de Tablero

OPENOFFICE CALC. Manejo básico de hojas de cálculo

Transcripción:

Controles: Múltiples layouts por fila de un grid Acabamos de ver el primer punto. Ahora vamos a estudiar el control grid en un aspecto: la posibilidad de variar el diseño de cada fila, para que en cada oportunidad pueda asumir un diseño diferente, entre varios posibles. Lo veremos con un ejemplo. Queremos que al seleccionar haciendo tap un speaker del grid, en lugar de llamarse (acá lo vemos) al Detail, se muestre una porción del curriculum vitae y esta flecha de aquí para que al hacer tap sobre la misma ahora sí se llame al Detail del orador. Por tanto, necesitamos para cada ítem o línea del grid, dos layouts: uno que valga cuando la línea no está seleccionada, y otro cuando sí lo está. Para ello, en la esquina superior derecha del grid, se nos despliega un menú contextual aquí (haciendo clic aquí) que permite agregar un nuevo layout para el ítem. Y la primera opción del menú nos permite seleccionar el layout que queremos editar cada vez. Page1

Aquí, al layout default, le hemos agregado un segundo layout, al que le hemos dado el nombre Selected, que incluye entonces como decíamos la imagen y el currículum vitae del orador. Hasta aquí lo definimos. Ahora tenemos que conseguir que cuando la línea está seleccionada es decir cuando se hace tap sobre ella-, se use este segundo layout, y no el primero, es decir se use al que le dimos el nombre selected y no el que se llamaba leyout. Esto se indica con la propiedad del grid: Default Selected Item Layout ven que ahí estamos indicando que el valor el leyout que queremos que se cargue cuando esta seleccionada la línea sea selected y no el otro. Pero cuando hacemos tap sobre la línea para seleccionarla, como habíamos visto por defecto, habíamos visto que el comportamiento cual era, era llevarnos al Detail de ese orador entonces lo que vamos a necesitar es deshabilitar ese comportamiento porque ahora el tap será únicamente para seleccionar la línea y que se muestre este nuevo layout el Selected y no queremos que entonces se llame automáticamente al detail en ese caso. Dónde se encuentra configurada la acción a ejecutar cuando se hace tap sobre una línea? Va a ser en la propiedad Default Action del grid. El valor <default> es llamar al Detail y lo vamos a cambiar a <None>. De este modo entonces, no se va a invocar a ningún evento como consecuencia de hacer tap sobre la línea y lo que se va a hacer simplemente es cargar el otro layout el layout selected. Vamos a verlo ya implementado en GeneXus. Estamos viendo el work with de speaker en edición en nodo list y también estamos viendo el emulador ya levantado y el live editing escuchando. De hecho si vamos a la ventana del live inspector, bueno acá tenemos entonces las pantallita que estábamos visualizando, perfecto, entonces Si miramos en esta KB cree yo para ganar tiempo los dos layout, si hacemos clic en la porción derecha del grid vemos que tenemos la opción en el menú contextual que decíamos hace un rato tenemos la posibilidad de agregar Page2

nuevos layout o de seleccionar entre los que están agregados, vemos el Leyout 1 que es el que estamos viendo, o podemos elegir el otro, que se llama Selected que vemos que está mostrando el Curriculum Vitae y está esta imagen que también agregue, entonces estamos viendo este leyout Si ahora vamos a las propiedades vemos que indiqué que la default Selected layout era el Layout Selected de esta manera entonces cuando se selecciones una línea se va a elegir cargar este layout y no el otro, y a la vez en la default action vean que modifique la opción por defecto la podemos ver que el valor por defecto default, que el valor default correspondía a llamar al nodo detail Word wild la cambié por none, acá entonces decíamos podríamos haber solucionado el layout 1 o ninguno Ahora que sucede nosotros lo que queremos que el usuario al hacer tap en la imagen se invoque al Detail del orador. Esta imagen corresponde a un control en el layout al que llame Arrow, entonces vamos a ver que haciendo botón derecho sobre el control, Go to event tenemos todos estos eventos touch asociados al control que podemos programar, por ejemplo el tap que es el que nos va a servir, hacemos clic aquí y veamos que nos llevó a la solapa de eventos del nodo list para que podamos programar la acción que queremos, los comandos que queremos que se ejecuten como consecuencia de hacer tap sobre ese control de nombre arrow Que es lo que queremos hacer cuando el usuario haga tap sobre esa flecha? Bueno llamar invocar al work with del speaker al nodo detail. Entonces para eso vamos a arrastrar, que sucede cuando hacemos tap en lo que tenemos programado hasta el momento se está cargando entonces el layout selected está mostrando el curriculum vitae y si yo hago tap sobre la flecha no pasa nada. Ahora si vamos a descomentar Estamos llamando a un work with, como decíamos el work with contiene su objeto el list y el detail. Todo work with tiene un nivel, en este caso es uno solo y a quien queremos llamar es al nodo detail, al que le vamos a tener que pasar el speaker id la clave del orador entonces lo elegimos para evitar cometer errores al digitarlo y vamos a ver qué pasa ahora con el emulador, que pasa cuando hacemos tap sobre el elemento, vemos que está llamando entonces al detail del orador seleccionado, otra vez vemos que otra vez está funcionando el live inspector y entonces un evento del cliente un evento que se va a ejecutar en el propio dispositivo vemos como sin siquiera haber guardado el Word with en este caso la transacción ya lo estamos viendo en ejecución como está funcionando correctamente tal como lo queríamos grabamos, entonces esto es lo que hicimos ese tap y vimos como live editing nos permite, va a estar escuchando los eventos del usuario. Ahora la posibilidad está de cargar una línea u otra un layout u otro en el grid de acuerdo a nuestro deseo a que nos interese programar se puede hacer en ram time, es decir vamos a poder especificar que layout queremos que se cargue para una línea en ram time con el Page3

nombre del grid, ítem, layout y allí diciendo cual es el layout queremos que se cargue en esa ocasión. Vamos a verlo con un ejemplo Aquí tenemos la transacción que registra las conferencias. Y a su lado el listado de conferencias (el trabajar con Sessions), agrupados por fecha como vemos. Si queremos que la session es una keynote además de la información de los tracks (que vemos ahí) en las salas en los que se va a dictar la conferencia el nombre de la conferencia y los oradores de la conferencia queremos que también aparezca un resumen de su descripción, como podemos ver acá en este caso, esto va a ser una keynote, entonces vamos a tener que definir un nuevo layout que contenga esta información adicional y cargar uno u otro layout dependiendo si la sesión si la conferencia es o no una keynote. Entonces para hacer eso vamos a hacer una carga que vamos a realizar en rand time porque va a depender de la línea a ser cargada en cada oportunidad en ese grid. Entonces lo que vamos a hacer en el evento load, el evento donde se están cargando cada una de las líneas del grid vamos a preguntar si la sesión es una keynot entonces vamos a cargar el layout que hemos llamado keynot y en caso contrario se va a cargar el default. Observemos que la propiedad Default Selected Item Layout queda con el valor none. Page4

Vamos a verlo en GeneXus ya implementado Aquí ya hemos ingresado no solamente la transacción session y el Word with sino todas las otras que vamos a necesitar luego para ir implementando nuestra aplicación Event day a la que nos queremos acercarnos por eso vemos que están los restaurant, las salas, etc Bueno vamos a abrir la transacción session, vamos a la sección de paterns vamos al list y aquí vemos que tenemos el layout 1 el default y también tenemos el kynote ya implementado, si vamos a los eventos vamos a ver que entonces yo programe el evento loud del grid 1 en este caso como este Word with tiene un solo grid podríamos haber utilizado como vamos a ver después cuando veamos los evento directamente el evento loud no había que indicar el grid porque hay uno solo. Pero buen elegimos escribir grid uno punto load. Y acá vemos entre todas las cosas que se hacen que estamos preguntando si session is a kyenot y en ese caso cargamos el layout correspondiente el kyenot Una cosa interesante antes de mostrarles esto, igual voy a abrir el emulador, vamos a volver vemos que agregue al dashboard el ítem sección y aquí vemos como está saliendo en ejecución esto que programamos si vemos los colores estos colores que están apareciendo acá, estos se están cargando de acuerdo al color del track cada track va a tener un color si voy a la actualización track vamos a ver que definí un dominio color y un atributo track clas edit y acá lo que estamos haciendo obteniendo para esa conferencia que se está cargando que se está cargando en el grid estamos obteniendo los track y el color y ese color es el que va a permitir que aparezca esto que veíamos acá que son las conferencias con estos colores que corresponde al track. Y esto se hace con las clases que habíamos definido yo le mostré en otra clase anterior. Esto es la clase del tema simple Android que estábamos utilizando y vemos como acá cambiando en forma dinámica la clase logramos ese efecto de color, bueno, esto lo dejamos para que ustedes lo vean después. Básicamente es eso vemos como de esta manera podemos cargar de forma dinámica el layout que nos interesa. Por último, mencionemos que entre las propiedades del grid se encuentra la Selection Type, que permite indicar el comportamiento cuando se selecciona una línea del grid. Observemos los valores que están apareciendo ahí abajo. Bueno, dependiendo de cada uno, y de si se ha definido un layout diferente del default en la propiedad Default Selected Item Layout, y también del valor de la Default Action, va a ser el comportamiento. Page5

Acá por ejemplo, con la opción Keep selection while executing vemos que la línea queda seleccionada hasta que la Default Action termine, y queda seleccionada mostrando cuál es ese color que aparezca ahí, bueno el que tenga configurado Highlighted Background color de la clase del grid, de la clase que tenga asociado el grid. En esta tablita se puede ver el comportamiento de acuerdo a cada valor de la propiedad. No vamos a detenernos en esto van a poder estudiarlas ustedes yendo al wiki buscando esta propiedad selection while. Hemos estudiado entonces la posibilidad de definir varios layouts para las líneas de un grid y elegir cuál se cargará en cada oportunidad. Paralelamente hemos visto cómo configurar las características de la selección. Ahora vamos a pasar al siguiente punto donde vamos a ver la posibilidad de modificar para cada control, su tipo, de manera que luzca y se comporte de una manera diferente a la predefinida. Page6