Agenda Les Share Add-in Le Ruban dOffice "12" DémonstrationRibbonX Programmer le Ruban dOffice "12"...

Post on 03-Apr-2015

105 views 0 download

Transcript of Agenda Les Share Add-in Le Ruban dOffice "12" DémonstrationRibbonX Programmer le Ruban dOffice "12"...

AgendaAgenda

Les Share Add-inLes Share Add-in

Le Ruban d’Office "12"Le Ruban d’Office "12"

DémonstrationDémonstration

RibbonXRibbonX

Programmer le Ruban d’Office "12"Programmer le Ruban d’Office "12"

DémonstrationDémonstration

CustomTaskPaneCustomTaskPane

DémonstrationDémonstration

DéploiementDéploiement

Les Share Add-inLes Share Add-in

Add-in: Projet d’extensibilité d’Office Add-in: Projet d’extensibilité d’Office "12""12"

Utilisés pour rajouter des Utilisés pour rajouter des fonctionnalitésfonctionnalités

Permettent la modification du ruban et Permettent la modification du ruban et la création de CustomTaskPanela création de CustomTaskPane

Un Share Add-in développé pour Office Un Share Add-in développé pour Office 2003 fonctionnera sur Office "12"2003 fonctionnera sur Office "12"

Architecture des Share Add-inArchitecture des Share Add-inUnmanaged

Office (Outlook)

Host Application

AddinLoader.dll

Addin Loader

IDTExtensibility2 proxy

AddinLoader.dll

Addin Loader

IDTExtensibility2 proxy

Managed

Add-in Domain #N

Managed Add in

Add -in Domain #3

Managed Add in

Add -in Domain #2

Managed Add in

AddinLoader.dll

Addin Loader

IDTExtensibility2 proxy

Le Ruban d’Office "12"Le Ruban d’Office "12"

Menus / Barres d’outils n’existent plus !Menus / Barres d’outils n’existent plus !

Configurable via un fichier XMLConfigurable via un fichier XML

Peut-être lié au document ou à l’applicationPeut-être lié au document ou à l’application

Schéma du fichier XML du Ruban Schéma du fichier XML du Ruban d’Office "12"d’Office "12"

Le Ruban est composé d’un ensemble d’onglets (tab)Le Ruban est composé d’un ensemble d’onglets (tab)

Chaque onglet est composé d’un (ou plusieurs) Chaque onglet est composé d’un (ou plusieurs) groupe (chunk)groupe (chunk)

Chaque groupe comporte un ou plusieurs contrôlesChaque groupe comporte un ou plusieurs contrôles

ribbontabs

tabchunk

controlchunk

control

Aperçu du Ruban d’Office "12"Aperçu du Ruban d’Office "12"

Onglet (Tab)Onglet (Tab)

GroupGroupee

RubanRubanControlControlee

Aperçu du Ruban d’Office "12"Aperçu du Ruban d’Office "12"

demodemo

RibbonXRibbonX

X pour eXtensibilityX pour eXtensibility

Technologie utilisée pour programmer Technologie utilisée pour programmer le ruban d’Office "12"le ruban d’Office "12"

Implémentation de l’interface Implémentation de l’interface IRibbonExtensibilityIRibbonExtensibility

public class Connect : Object, Extensibility.IDTExtensibility2, IRibbonExtensibilitypublic class Connect : Object, Extensibility.IDTExtensibility2, IRibbonExtensibility{{

#region IRibbonExtensibility Members #region IRibbonExtensibility Members public string GetCustomUI()public string GetCustomUI(){{}} #endregion #endregion

}}

Programmer le Ruban d’Office Programmer le Ruban d’Office "12""12"

Les VSTO 3 vous permettent de Les VSTO 3 vous permettent de modifier le Ruban d’Office "12"modifier le Ruban d’Office "12"

Simples modifications du fichier XMLSimples modifications du fichier XML

<customUI xmlns="http://schemas.microsoft.com/office/2005/06/customui"<customUI xmlns="http://schemas.microsoft.com/office/2005/06/customui"progID="Demo"progID="Demo"xmlns:x="Demo">xmlns:x="Demo">

<ribbon><ribbon><tabs><tabs>

<tab id="x:CustomTab" label="Onglet Démo"><tab id="x:CustomTab" label="Onglet Démo"> <chunk id="x:MyFirstChunk" label="Section de Démo: Boutons prédéfinis"><chunk id="x:MyFirstChunk" label="Section de Démo: Boutons prédéfinis">

<toggleButton id="Bold" size="large" /><toggleButton id="Bold" size="large" /><toggleButton id="Italic" size="large" /><toggleButton id="Italic" size="large" />

</chunk> </chunk> </tab></tab>

</tabs></tabs></ribbon></ribbon></customUI></customUI>

Les contrôles disponiblesLes contrôles disponibles

Dans Office 2003, il n’y avait que 5 contrôles Dans Office 2003, il n’y avait que 5 contrôles disponibles:disponibles:

msoControlButton,msoControlEdit,msoControlPopup,msoControlComboBox,msoControlDropdown

ButtonsButtonsMenusMenusSplitButtons SplitButtons ToggleButtonsToggleButtonsLabels Labels EditBoxesEditBoxesCheckBoxes CheckBoxes DropDownsDropDownsComboBoxesComboBoxesGalleries Galleries

Programmer le Ruban Programmer le Ruban d’Office "12"d’Office "12"

demodemo

CustomTaskPaneCustomTaskPane

Panneau d’actions des documents OfficePanneau d’actions des documents Office

Avec Office "12", ils ne sont plus Avec Office "12", ils ne sont plus simplement liés aux documents mais simplement liés aux documents mais aussi à l’applicationaussi à l’application

Implémentation de l’interface Implémentation de l’interface ICustomTaskPaneConsumer ICustomTaskPaneConsumer

public class Connect : Object, Extensibility.IDTExtensibility2, ICustomTaskPaneConsumerpublic class Connect : Object, Extensibility.IDTExtensibility2, ICustomTaskPaneConsumer {{

// Méthode qui sera utilisée pour créer le CustomeTaskPane// Méthode qui sera utilisée pour créer le CustomeTaskPane#region ICustomTaskPaneConsumer Members#region ICustomTaskPaneConsumer Memberspublic void CTPFactoryAvailable(ICTPFactory CTPFactoryInst)public void CTPFactoryAvailable(ICTPFactory CTPFactoryInst){{}}#endregion#endregion

}

Développement d’un Développement d’un CustomTaskPaneCustomTaskPane

demodemo

DéploiementDéploiement

Un projet de déploiement est Un projet de déploiement est automatiquement crééautomatiquement créé

Votre Share Add-in doit être exposé Votre Share Add-in doit être exposé comme objet COMcomme objet COM

Une clé est ajoutée dans la base de Une clé est ajoutée dans la base de registre:registre:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\XXX\Addins\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\XXX\Addins\

ContactContact

lebrun_thomas@hotmail.comlebrun_thomas@hotmail.com

http://morpheus.developpez.comhttp://morpheus.developpez.com