• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Windows 7 Developer APIs - Multi Touch and Scenic Ribbon
 

Windows 7 Developer APIs - Multi Touch and Scenic Ribbon

on

  • 4,806 views

Windows 7 Developer MSDN Presentation October 2009 - part 3 Multi Touch and Scenic Ribbon

Windows 7 Developer MSDN Presentation October 2009 - part 3 Multi Touch and Scenic Ribbon

Statistics

Views

Total Views
4,806
Views on SlideShare
4,755
Embed Views
51

Actions

Likes
1
Downloads
55
Comments
0

3 Embeds 51

http://blogs.msdn.com 25
http://www.slideshare.net 25
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Windows 7 Developer APIs - Multi Touch and Scenic Ribbon Windows 7 Developer APIs - Multi Touch and Scenic Ribbon Presentation Transcript

    • Windows 7: Building Next Generation UI with Multitouch & WindowsRibbon
      Lynn Langit
      Developer evangelist – Microsofthttp://blogs.msdn.com/Socaldevgal
    • Today’s Agenda
      Taking your application to the next level with Windows 7
      Building next generation UI with Multitouch & Windows Ribbon in Windows 7
      • Ribbon Markup and API
      • Windows 7 Multitouch Overview
      • Developing Multitouch Application
      Beyond human interaction with Windows 7 Sensor & Location Platform
    • The Ribbon
      Consistency Counts
    • Microsoft ® Office 2007 Ribbon
      Office Button
      Contextual Tab Set
      Help
      Tab
      Quick Access Toolbar
      Contextual Tab
      Dialog Box Launcher
      Group (aka “Chunk”)
    • Windows Scenic Ribbon
      Office Button
      Contextual Tab Set
      Quick Access Toolbar
      Help
      Tab
      Contextual Tab
      Dialog Box Launcher
      Group (aka “Chunk”)
      In-box with Windows® 7, redistribution available to Windows Vista®
      Win32 API, COM-based (targets native developers first)
      Feature parity (or close) with Microsoft Office 2007 Ribbon
    • The Ribbon Landscape
      MFC
      Scenic
      WPF
      Target:
      Managed
      Target:
      MFC native
      Target:
      Native
      needs .NET Framework 3.5
      Windows 2000 or later
      Windows Vista or later
      Office 2007 and Windows styles
      Office 2007 and Windows styles
      Windows visual style
      Coming soon…Official release in 2009
      Available now in Visual Studio® 2008 SP1
      Ships with Windows 7
      Microsoft’s Ribbon Strategy
      1 Office 2007 style available now,  Windows style available 2009
    • Windows Ribbon API Architecture
      Strong Model-View-Controller separation
      Code and markup decoupling
      Small C++ API surface
      Application-specific business logic
      void DoStuff()
      {


      }
      Windows Scenic Ribbon
      COM API
      Initialization and
      events handling
      MyHandler::Execute(…){DoStuff();}
      Markup
      Organization of controls
      <Ribbon>
      <Tab> <Button … />
      </Tab>
      </Ribbon>
    • Windows Ribbon Controls
      Tabs and groups
      Check boxes
      Help button
      Font control
      Buttons & split buttons
      Categorized menus
      Dropdown galleries
      Tooltips
      Spinners
      Group dialog launchers
      “In-Ribbon” galleries
      Mini toolbar andcontextual menu
      Combo boxes
      Color pickers
    • Ribbon MarkupCommands Section
      XAML-based. Consists of two sections: commands and views
      Command elements specify a name (ref. in the views section), a label, an image (.bmp only) and tooltip. An ID (number) may also be specified
      <?xmlversion="1.0" encoding="utf-8"?>
      <Applicationxmlns='http://schemas.microsoft.com/windows/2009/Scenic/Intent'>
      <Application.Commands>
      <CommandName='Home' LabelTitle='Home'/>
      <CommandName='HomePage' LabelTitle='HomePage'>
      <Command.LargeImages>
      <ImageSource='res/HomePageHH.bmp'/>
      </Command.LargeImages>
      </Command>
      </Application.Commands>
    • Ribbon Markup Views Section
      Specifies the organization of commands into tabs, groups, quick access toolbar, and application menu
      Specifies the controls to use for each command
      <Application.Views>
      <Ribbon>
      <Ribbon.Tabs>
      <TabCommandName='Home'>
      <GroupCommandName='GoHomePage' SizeDefinition='OneButton'>
      <ButtonCommandName='HomePage'/>
      </Group>
      </Tab>
      </Ribbon.Tabs>
      </Ribbon>
      </Application.Views>
      </Application>
    • More About Views
      Windows Ribbon supports two types of views: the ribbon view and the contextual UI view
      The contextual UI provides a richer context system than previously available
    • Application Modes
      You may wish to hide some controls in different modes of your application
      In Microsoft Paint, the Text tab should only be available when editing text
      In the markup, define the application modes in which a control is available
      Propagates to child controls
      In code, call the IUIFrameworkSetModes function
      Bit mask. 0 is the default mode
      <ButtonCommandName='Paste' ApplicationModes='1,3'/>
    • Windows 7 Ribbon
      demo
    • Windows 7Multi-Touch
      The Future is here!
    • 3 things to know….
      the screens
      the hardware
      the software
    • Screens - How to touch
      ResistiveThink Push Down and drag
    • Screens - How to touch
      CapacitiveThink Electric Impulse
    • Screens - How to touch
      InfraredThink laser pointer(s)
    • Multi-Touch Hardware Available Now
      Capacitive
      HP Touchsmart tx2N-trig (2-10)
      Capacitive
      Dell LatitudeXT2N-Trig (2-10)
      Infrared
      HP Touchsmart IQ816
      NewWindow(2)
    • Multi-Touch Development TiersGood – Better – Best
      Windows application can target one of three levels of touch integration
      Good: No specific touch APIs are used but the application UI is appropriately sized and works well with the built-in gestures
      Better: The gesture APIs are supported to give smooth natural interactions
      Best: Deep touch-focused experiences designed to take advantage of multi-touch features
    • WM_Touch – WM_Gesture
    • Windows7.Multitouch
      Easy
      to
      Write
      code
      now
      PC’s, Form Factors, Technology
      Windows7.Multitouch.WPF
      WM_Touch
    • Massive Multi-touch, Multi-user
      Easier to Write code soon
      PC’s, Form Factors, Technology
    • The API
      protected event EventHandler<WMTouchEventArgs> Touchdown; // touch down event handler
      protected event EventHandler<WMTouchEventArgs> Touchup; // touch up event handler
      protected event EventHandler<WMTouchEventArgs> TouchMove; // touch move event handler
      // Private data members
      private int x; // touch x client coordinate in pixels
      private int y; // touch y client coordinate in pixels
      private int id; // contact ID
      private int mask; // mask which fields in the structure are valid
      private int flags; // flags
      private int time; // touch event time
      private intcontactX; // x size of the contact area in pixels
      private intcontactY; // y size of the contact area in pixels
    • Windows 7 With Windows Touch
      demo
    • More Information
      Multi-Touch Systems that I Have Known and Loved
      http://www.billbuxton.com/multitouchOverview.html
      Mike Taulty’s Blog http://bit.ly/NKVTN
      Example Photo App http://bit.ly/d4eE9
    • Summary
      Modernize your user interface with Windows Ribbon
      Simplify features discoverability and user usability
      Windows Touch is here!
      Hardware is ready
      Consumers want it
      Has a “cool” factor
      Flexible and extensible programming modules
    • Also in Windows 7
      We’ve covered the main areas, but there are so many additional features in Windows 7
      Federated Search
      Windows Web Services
      Internet Explorer® 8
      Windows PowerShell™ 2.0
      Windows Biometric Framework
      MSI 5.0
      Windows Animation Framework
      XPS Document Support
      Other …
    • Learn More About Windows 7
      Technical Resources
      Community Resources
      • Windows Developer Center on MSDN
      http://msdn.microsoft.com/en-us/windows/dd433113.aspx
      • Windows Application Compatibility Developer Center http://www.msdn.microsoft.com/en-us/windows/aa904987.aspx
      • Windows 7 Remediation Labs
      http://www.readyset7.com/workshops
      • Windows 7 Training Kit for Developers
      http://go.microsoft.com/?linkid=9681321
      • “PhotoView” Reference Application (XP2Win7Project) http://code.msdn.microsoft.com/XP2Win7
      • Windows 7 Blog for Developers www.windowsteamblog.com/blogs/developers.aspx
      • Windows 7 on Channel 9 http://channel9.msdn.com/tags/Windows+7
    • SoCal Windows 7 Developer Resources
      Technical Resources
      • Slides – http://blogs.msdn.com/SoCalDevGal
      • Code samples – my blog (as above)
      • Recordings – from San Diego MSDN event – watch my blog for the link
      • Conference – PDC09 – Nov 17-19 in LA - http://microsoftpdc.com/
      • PreCon – FREE – Windows 7 Developer Bootcamp @PDC09 – Mon, Nov 16 in LA – must register http://microsoftpdc.com/Registration
      Training Resources
      Community Events
      • Lynn’s blog series – http://blogs.msdn.com/SoCalDevGal #Win7DevSeries
      • Underground @PDC – Wed, Nov 18 – 7pm until late
      • CodeCampLA – Sat/Sun, Nov 20 – 21 - http://www.lacodecamp.com/