Silverlight for Windows Embedded

Preview:

DESCRIPTION

Silverlight for Windows Embedded. 8 Février 2010 Nicolas Besson – MVP Windows Embedded Fabien Decret – MVP Device Application Dev . from Adeneo Embedded. Agenda. LA famille Windows Embedded Introduction a Windows Embedded CE 6.0 R3 Les ingrédients d’une interface graphique - PowerPoint PPT Presentation

Citation preview

22

Silverlight for Windows Embedded8 Février 2010 Nicolas Besson – MVP Windows EmbeddedFabien Decret – MVP Device Application Dev.from Adeneo Embedded

33

Agenda

LA famille Windows EmbeddedIntroduction a Windows Embedded CE 6.0 R3Les ingrédients d’une interface graphiqueSilverlight for Windows EmbeddedLes outils de développementGestion d’une brasserie en silverlight

44

Extensive portfolio of design and system integration

6 Windows Embedded MostValuable Professionals

25+ Windows CE Microsoft Certified Technology Specialists

4 C# Microsoft Certified Professionals

Adeneo Embedded Overview

50+ engineers located in North America and EuropeSpecialists in system integration on 32-bit embedded devicesCapabilities to manage full SW/HW device developmentSubsidiary of AdetelGroup

ISV/Software SolutionsMobility Solutions

Excellence Awards2007 - 2008 - 2009

Recognized high level of expertise with technologies from Microsoft

Eval

uatio

n 4-day Scheduled Trainings Customized Trainings

Arch

itect

ure Support ContractsDesign ReviewReference BSPs with Support & Maintenance

Des

ign Application

DevelopmentFirmware ExpertiseTurnkey SW/HW Design

Progressive Services Offering

55

La Famille Windows Embedded

Consumer

Robotics

Portable media

Industrial Automation

Telematics

Thin Client

Personal Navigation

Industrial Automation

MedicalEntertainment

Thin Client

Point of Service

Dedicated servers

Kiosks

Entertainment

Digital Signage

66

Windows Embedded CE 6.0 R3

Destiné aux petits équipementsArchitecture matériel indépendantDifférentes familles de processeur

ARM, MIPS, SH4, x86Système temps réelModulaire 10,000+ composantsRiche interface graphique

MFC 8.0.Net Compact Framework 3.5Support Silverlight

77

Ingrédients d’une IHM

Designer Développeur

88

Silverlight for Windows Embedded

Technologie Silverlight desktop adapté à l’embarquéLangage XAML : description interface graphiqueLangage natif uniquement

Version standalone, browser web non requisDécorrélation Interface Graphique/intelligence cœur de métierSupport accélération graphique

OpenGL ESDirectDraw

99

Designer

Développeur

Silverlight

DesignIHM

Dev.action Déploiement

Revue

Silverlight

Cycle de développement

Designer

Développeur

DesignIHM

Dev. IHM Dev.Back-end Integration DeploimentR

evue

Methode traditionnelle

Temps Gagné !

Méthode Traditionnelle

1010

Processus de génération

XAML

Expression Blend

Silverlight for Windows Embedded est un Framework applicatif permettant les OEMs de créer des interfaces graphiques utilisateurs innovantes

Permet aux OEMs de facilement proposer un élément différentiateur à leurs produits en utilisant Expression Design Suite tout en développant en code natif

OEMs peuvent s’appuyer sur la communauté des designer web et développeurs PC

App Web

App Desktop

IHM Produit

1111

Architecture

Application

XAMLRessources

(Images, Polices)Contrôles personnalisés

Silverlight Runtime

Silverlight CoreRendering Engine

Platform Plug-in(OpenGL ES 2.0, DDraw,

GDI, OpenVG )

Driver Graphique (BSP)

1212

Outils de développement

Visual Studio 2005/2008Réalisation de la gestion cœur de métier

Expression BlendRéalisation de l’interface et

expérience utilisateur

1313

Outils de développement

Expression BlendRéalisation de l’expérience

utilisateur

Outil destiné au DesignerCréation de control personnalisésFourni avec des projets d’exemple :Media playerTablette internet

1414

Outils de développement

Visual Studio 2005/2008Réalisation des actions cœur de métier

Projet applicatif C++ Platform Builder Visual Studio 2005/2008 avec SDKIntégration du fichier XAML généré sous Expression

BlendImplémentation des handlers d’actionCompilation de l’application

1515

DémoExpression Blend 2.0 SP1

1616

Mise en œuvre [1/3]

Etape 1Création du projet Expression BlendCréation d’éléments graphiques

personnalisésBouton, éléments complexes d’interface

Etape 2Design de l’application et animationsCréation du story boardValidation du fichier XAML

1717

<UserControlxmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"x:Class="SilverlightApplication1.Page"Width="336" Height="233" xmlns:SilverlightApplication1="clr-namespace:SilverlightApplication1">

<UserControl.Background><LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">

<GradientStop Color="#FF62DF25"/><GradientStop Color="#FFFFFFFF" Offset="1"/><GradientStop Color="#FF505050" Offset="0.54"/>

</LinearGradientBrush></UserControl.Background>

<Grid x:Name="LayoutRoot" RenderTransformOrigin="0.805,0.19"><Grid.Background>

<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"><GradientStop Color="#FFFFE3E3"/><GradientStop Color="#FFCF6565" Offset="1"/>

</LinearGradientBrush></Grid.Background><SilverlightApplication1:CylinderUserControl Margin="8,8,121,-16" x:Name="myCylinder"/>

<Button Height="48" Margin="0,47,14,0" VerticalAlignment="Top" Content="Fill" x:Name="Btn_Fill" HorizontalAlignment="Right" Width="148"/>

<Button Margin="0,99,14,85" Content="Empty" x:Name="Btn_Empty" Width="148" HorizontalAlignment="Right"/><Button Margin="0,0,14,36" Content="Quit" x:Name="Btn_Quit" Height="45" HorizontalAlignment="Right" VerticalAlignment="Bottom"

Width="148"/></Grid>

</UserControl>

1818

Mise en œuvre [2/3]

Etape 3Création du projet VS2005Ajout du XAML dans les ressources

Etape 4Ajout de handler et exécution des animations

1919

class BtnEventHandler{public:

HRESULT OnClick(IXRDependencyObject* source,XRMouseButtonEventArgs* args)

{// Affiche une boite de messageMessageBox(NULL,TEXT("Silverlight Sample"),

TEXT("Silverlight for Embedded OnClick handler"),MB_OK);return S_OK;

}};

int WINAPI WinMain(….){….

// Identification du bouton déclaré dans XAMLroot->FindName(TEXT("Btn_Fill"), &btn);// Y associe un delegateCreateDelegate(&handler,

&BtnEventHandler::OnClick,&clickdelegate));

btn->AddClickEventHandler(clickdelegate));….

}

2020

Mise en œuvre [3/3]

Etape 5Compilation, déploiement et …..

2121

Gesture

Nouvelle API pour gestion du mouvement des doigts sur écran tactilePar exemple vitesse de décélération lors d’un scroll ->

mouvement du contrôleNouveau message WM_GESTURE qui introduit de nouveaux

événements tels que :SelectDouble SelectPanScrollHold

Créer des contrôles Win32 supportant la Gesture

2222

Physics engine

Permet de calculer une animation de points en réponse à une action de Gesture

Le physics engine génère une suite de points à partir d’une vélocité, d’un angle et d’une zone délimitée.

Les animations peuvent être définis sur l’axe X et Y (2D)

AccélérationDécélérationBoundary

2323

Architecture

PhysicsEngine.dll

TouchUtil.lib

Touch.dll

TouchRecognizer.dll

OEM Recognizer.dll

Applications

GWES.dll

GestureAnimation.lib

TouchGesture.lib

2424

Pré-requis pour le device

Mise à jour vers Windows Embedded CE 6.0 R3Ajout de Silverlight for Windows EmbeddedAjout support de Touch and Gesture

SYSGEN_TOUCHGESTURE

Ajout support de PhysicsSYSGEN_PHYSICSENGINE

2525

Limitation de Silverlight for Windows Embedded

Fonctionnalités limitées à celles disponibles avec la version Web de Silverlight 2 sans le binding et media element

Les performances de Silverlight for Windows Embedded dépendent :de la puissance du processeur, de l’accélération vidéo matériel (2D), du driver Vidéo,la qualité du BSP.

2626

Exemple d’utilisation

Produits grand publique :Equipement de navigation GPSElectroménager intelligentEquipement audio haut de gamme

Produits industriel :Centrale de supervision de productionLogiciel embarqué dans engins agricolesTout équipement possédant une interface tactile ou moyen de

pointage.Exemple d’implémentation :Browser web fourni avec Windows Embedded CE 6.0 R3Supervision d’une brasserie

2727

DémoThe brewery : le suivi de production de la bière dans la brasserie du 21eme siècle.

2828

Conclusion

Silverlight for Windows Embedded CE 6.0 R3Séparation de l’IHM et du « code »Amélioration de l’expérience utilisateur:

Support de Gesture pour une gestion simplifiée des interactions avec l’utilisateur.Support de Physics pour la gestion d’effets.

2929

Quelques liens pour aller plus loin…

Le site Windows Embedded en Français:http://www.windowsembedded.fr

Les blogs :Nicolas Besson – MVP – Adeneo Embedded

http://nicolasbesson.blogspot.com

Fabien Decret – MVP – Adeneo Embeddedhttp://fabdecret.blogspot.com

Pierre Cauchois – Micrsosoft - resp. du parcours Embeddedhttp://blogs.msdn.com/pierreca

Concours « Je vois des Windows Partout »http://msdn.microsoft.com/fr-fr/windowsembedded/msdn.windows.partout.aspx

3030

Retrouvez-nous dehors…

Stand D34 – Windows EmbeddedDes experts pour répondre à toutes vos questionsUn beau bar, de belles démos et une bonne ambiance ^^

Recommended