Cuando presentamos la interfaz de usuario de la cinta de opciones en Office 2007, también presentamos el modelo RibbonX (extensibilidad de la cinta de opciones), una forma nueva de personalizar la interfaz de usuario de Office mediante programación. RibbonX habilita a otros programadores y proveedores de soluciones a usar la cinta de opciones como base mediante la creación de fichas y grupos personalizados, de acuerdo con los escenarios únicos que enfrentan sus clientes y optimizados para ellos.

Office 2010 amplía el marco de la plataforma de extensibilidad de la interfaz de usuario, ya que admite la personalización de la nueva vista Backstage. También agrega varias y poderosas características a la plataforma RibbonX existente.

Extensión de la vista Backstage

La vista Backstage es una nueva parte integral de la interfaz de usuario de Office. Eleva las características de los archivos (imprimir, compartir, distribuir, colaborar, etc.) de la misma forma en que la cinta de opciones elevó las características de creación de documentos. En Office 2010, gran parte de nuestra atención sobre la extensibilidad se centra en hacer que sea sencillo para terceros extender toda la interfaz de usuario de la vista Backstage de formas significativas.

Puede preguntarse: “¿cuándo corresponde extender la cinta de opciones y cuándo la vista Backstage?”. Si está desarrollando una solución destinada a escenarios que contemplan la edición de documentos y generación de contenido (es decir, las características ayudarán a los clientes cuando trabajen en el documento), lo que se debe hacer es extender la cinta de opciones. Pero, si los clientes necesitan una solución que los ayude a trabajar con documentos, procesos y flujos de trabajo personalizados asociados con esos documentos, lo que se recomienda hacer es extender la vista Backstage.

Ejemplo 1: Administración efectiva de proyectos y procesos mediante la personalización de la ficha Backstage

Más que nunca, los documentos de la actualidad evolucionan con esfuerzos colaborativos, pasando por varias etapas y ciclos. Los procesos vinculados a esos documentos, por lo general, están muy personalizados y son específicos de la organización. La vista Backstage ofrece un buen lugar para mostrar información sobre las personalizaciones de los documentos y los procesos idiosincrásicos y les permite a los usuarios “mover” esos documentos por varias etapas.

A continuación, se muestra un complemento que agrega una ficha personalizada Proceso Contoso (Contoso Process) a la vista Backstage: las personalizaciones de la interfaz de usuario que se ven en el ejemplo se realizaron con el nuevo modelo de extensibilidad de Backstage. La ficha Proceso Contoso (Contoso Process) muestra metadatos relevantes sobre la hoja de cálculo y la fase en la que se encuentra, como los pasos que faltan para que la hoja pase a la siguiente etapa. Los grupos Programado para la fase de diseño (Schedule For Design Phase) y Asuntos de diseño abiertos (Open Design Issues) están en rojo, lo que indica que hay asuntos que necesitan atención inmediata. El gráfico de la derecha ofrece una “idea más general,” un resumen sobre las partes del proceso en las que se encuentran las demás hojas de cálculo relacionadas. Es fácil imaginar cómo los metadatos personalizados se pueden obtener de la biblioteca de SharePoint que hospeda las hojas de cálculo.

clip_image002

La interfaz de usuario de Contoso Process muestra metadatos personalizados y una interfaz de usuario que tiene en cuenta el contexto para la administración de procesos

Una vez resueltos todos los problemas de diseño, se puede habilitar el botón Salir de la fase de diseño (Exit Design Phase) que se encuentra en la parte superior de la ficha mediante programación. A hacer clic en él, la hoja de cálculo pasa a la fase de revisión legal y la ficha actualiza su contenido dinámicamente para mostrar el estado nuevo y los requisitos de la fase nueva.

clip_image004

La interfaz de usuario de Proceso Contoso (Contoso Process) se actualiza dinámicamente para reflejar la fase nueva en la que se encuentra la hoja de cálculo

Ejemplo 2: Integración de características personalizadas con fichas Backstage incorporadas

Imagine que es programador de soluciones y que un escenario común de sus clientes involucra compartir documentos. Les agradan las capacidades incorporadas de la ficha Compartir de la vista Backstage, pero también desean tener una forma directa de intercambiar los documentos con Windows Live Hotmail y Facebook. La extensibilidad de Backstage le permite crear e integrar estas dos características personalizadas en la ficha incorporada Compartir.

Aquí se puede observar el formulario Enviar mediante correo electrónico (Send Using E-Mail) personalizado si se agrega el grupo Enviar por Hotmail (Send via Hotmail) (en la parte inferior derecha de la imagen):

clip_image006

El grupo personalizado Enviar por Hotmail (Send via Hotmail) se integra en el formulario Enviar mediante correo electrónico (Send Using E-Mail) incorporado

Aquí se muestra la ficha Compartir (Share) personalizada con una nueva tarea Publicar en Facebook (Post to Facebook) agregada; además del formulario asociado:

clip_image008

La ficha Compartir (Share) incorporada se extiende con una tarea Publicar en Facebook (Post to Facebook) personalizada

Ejemplo 3: Agregar comandos rápidos y personalizados de archivos en la vista Backstage

Ahora imagine que es programador y que sus clientes realizan grandes cantidades de trabajo intenso de edición en varios documentos simultáneamente. Abren y cierran documentos con frecuencia y no quieren que se les solicite guardar los cambios al cerrarlos.

Con la extensibilidad de la vista Backstage, fácilmente puede reemplazar el comando Cerrar (Close) incorporado por un control personalizado Guardar y cerrar (Save & Close) que guarde el documento automáticamente antes de cerrarlo.

clip_image010

clip_image011

imagen

Panel de navegación de Backstage antes y después de reemplazar el comando Cerrar (Close) con la personalización Guardar y cerrar (Save & Close)

Extensibilidad de la vista Backstage: Introducción general para programadores

Las personalizaciones de Backstage se definen en el mismo archivo de marcado que contiene las personalizaciones de la cinta de opciones y el menú contextual; Backstage es simplemente otro nodo de nivel superior. Su jerarquía interna es, en muchos sentidos, similar a la de la cinta de opciones. Principalmente, al igual que la cinta de opciones, Backstage usa fichas como bloques de creación. Las fichas de Backstage pueden tener una o dos columnas de grupos. La ficha personalizada Proceso Contoso (Contoso Process), del ejemplo anterior, tiene dos columnas:

imagen

A diferencia de la cinta de opciones, Backstage también puede hospedar botones en el nivel superior, se muestran como comandos rápidos en el panel de navegación, como el comando Guardar y cerrar (Save and Close) del ejemplo anterior.

Si bien los grupos en la cinta de opciones y Backstage tienen una organización espacial diferente del contenido, pueden hospedar varios tipos de controles idénticos, con devoluciones de llamadas (funciones personalizadas que definen comportamientos de control únicos y que son llamadas por el código de Office) para los controles que sean iguales entre ambos.

Se ofrecerán más detalles sobre la extensibilidad de Backstage, su estructura y características en la próxima documentación Beta. Cuando la compilación Beta de Office 2010 está disponible al público, se publicará la documentación en el Centro para programadores de Office en MSDN. Incluirá el esquema XML de Backstage completo, la lista de identificadores de controles incorporados, un artículo completo sobre la extensibilidad de Backstage y muchos ejemplos de código de extensibilidad de Backstage.

Personalizaciones del menú de Office de Office 2007

Si en su solución se personalizó el menú de Office en Office 2007, continuará trabajando en Office 2010. Todas las funcionalidades personalizadas que se agregaron al menú de Office se muestran en al delimitador desplegable Complementos (Add-Ins) en el panel de navegación de Backstage:

clip_image012

Las adiciones personalizadas al menú de Office (de Office 2007) se ven en el panel de navegación de Backstage

Mejoras en la plataforma RibbonX

La activación de fichas y la escala automática de grupos son características que los programadores que crean soluciones para cintas de opciones solicitan frecuentemente. La activación de fichas permite que los programadores activen una ficha a pedido; esto trae la ficha al primer plano (como si estuviera seleccionada) en respuesta a algún evento. La escala automática de grupos permite que se adapte el diseño de los grupos de la cinta de opciones personalizada para ajustarse mejor al tamaño de la ventana horizontal. Mejorar la extensibilidad del menú contextual es otro pedido sobre características recurrente. Respondimos todos estos pedidos en Office 2010.

Compatibilidad con la activación de fichas

Imagine un escenario en el que tenga que desarrollar una solución para Excel con varias fichas personalizadas. Si cada una de las fichas personalizadas corresponde a un tipo de datos, seguramente quiera asegurarse de que la ficha correcta esté en primer plano cuando el usuario interactúa con el tipo de datos correspondiente. Logrará esto con el método ActivateTab en el objeto IRibbonUI (al pasar un parámetro del tipo cadena en el que especifique la ficha personalizada que se debe activar):

IRibbonUI.ActivateTab(String tabID).

Puede usar un método “paralelo” ActivateTabMso para activar una ficha incorporada y el método ActivateTabQ para activar una ficha compartida entre varios complementos (ActivateTabQ requiere un parámetro del tipo cadena que especifique el espacio de nombre del complemento de destino).

Escala automática de grupos personalizados

Probablemente notó que los grupos de cintas de opciones incorporados cambian el diseño cuando cambia el tamaño de la ventana. Cuando la ventana es más grande, los grupos de la cinta de opciones usan el espacio para mostrar etiquetas o “aumentar” el tamaño de algunos comandos; a medida que la ventana se achica, los grupos se adaptan y “empaquetan” más funcionalidades en menos espacio.

Imagine que el cliente que le solicitó la solución desea ejecutar ventanas sin maximizar para poder tener varias aplicaciones visibles al mismo tiempo. Sin embargo, cuando achican la ventana de la aplicación, no quieren que los comandos del grupo de comandos cambien de tamaño a un solo botón y tener que hacer un clic más. Sin tener que definir cuándo o exactamente cómo el grupo personalizado escala, en Office 2010 puede indicar que el grupo debe cambiar el diseño para adaptarse (mediante la configuración de la propiedad autoScale en “true”) y Office se asegurará de que tenga el tamaño más conveniente de acuerdo con el tamaño cambiante de la ventana.

Este ejemplo muestra cómo un grupo de un complemento escalaría con autoScale=true; debe asignar un icono al grupo para cuando el grupo se convierta en un solo botón:

clip_image013

En Office 2010 un grupo personalizado puede cambiar su diseño para adaptarse mejor a la ventana de la aplicación de tamaño modificado

Extensibilidad del menú contextual

Si está desarrollando una solución en Office y un acceso eficiente para funcionalidades contextuales de uso frecuente es importante para los usuarios de su solución, probablemente consideró personalizar los menús del botón secundario. Algunos menús contextuales se pueden extender con el modelo de objeto CommandBars. Sin embargo, hay menús contextuales que no se pueden cambiar de esta forma; por ejemplo, PowerPoint 2007 contiene menús contextuales a los que no se puede obtener acceso mediante el modelo de objetos CommandBars ni tampoco se puede usar este modelo para agregar varios tipos de controles (galerías, botones de división) a los menús contextuales.

En Office 2010, también puede confiar en el familiar modelo RibbonX para personalizar los menús contextuales. Ahora, todos los tipos de controles compatibles con los menús incorporados se pueden agregar para personalizar los menús contextuales. Se puede tener acceso a los menús contextuales en Office 2010 como un nodo de nivel superior nuevo en el archivo de marcado de la interfaz de usuario personalizado, el mismo archivo que hospeda la cinta de opciones.

clip_image014

imagen

Menú contextual de celdas personalizado de Excel con un botón de división personalizado, una galería y un separador agregados

Conclusión

La nueva plataforma de extensibilidad de Backstage y las mejoras de extensibilidad de la cinta de opciones le permiten desarrollar soluciones para Office 2010 que son más ricas que las que podía desarrollar en el pasado. Esperamos que ya haya comenzado a usar estas características en la compilación de la Vista previa técnica de Office 2010 y agradecemos sus continuos comentarios.

Más información

- Mirko Mandic, administrador de programas de la Experiencia del usuario de Office

Actualización -3/11: se agregaron más vínculos a recursos en "Más información" al final de la entrada.

Actualización - 20/11: se agregaron más artículos técnicos con la versión Beta pública de Office 2010, vea el comentario de Mirko a continuación (publicado el 20/11) para conocer los detalles.

Publicado originalmente: martes 3 de noviembre de 2009 a las 6:04 a. m. por OffTeam

Esta entrada de blog es una traducción. Puede consultar el artículo original en http://blogs.technet.com/office2010/archive/2009/11/03/ui-extensibility-in-office-2010.aspx.