2 Win7 For Devs Ux Touch Sensors

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Notes on slide 1

    2-3 demos on taskbar & jumplists

    [TDM, DEV][What - Windows 7 Taskbar feature overview] Not all the features in the Windows 7 Taskbar are applicable to all applications. Each application needs to be evaluated on its own.

    [TDM, DEV] [Taskbar Icons – Details]ICONSAre you putting your best foot forward?Make sure your icon looks greatCheck different DPIsCheck different glass colors and disabled glassHow does Color Hot-track look?Determined by your icon’s dominant colorIcons OverlayDo you need to surface notifications?Does this help the user make a decision?Single icon at a time (LIFO)No animationsIdeally, application-specific Group vs. UngroupCan you retire your icon in the Notification Area?Progress barDoes your program require progress status?Does this help the user make a decision?Do you already surface a progress dialog?One detailed progress at a time[TDM, DEV]ICONSAre you putting your best foot forward?Make sure your icon looks greatCheck different DPIsCheck different glass colors and disabled glassHow does Color Hot-track look?Determined by your icon’s dominant colorIcons OverlayDo you need to surface notifications?Does this help the user make a decision?Single icon at a time (LIFO)No animationsIdeally, application-specific Group vs. UngroupCan you retire your icon in the Notification Area?

    Native codeITaskbarList3* ptl = ...;ptl->SetOverlayIcon(hwnd, hicon, L"Accessible Description");ptl->SetProgressState(hwnd, TBPF_NORMAL);for (inti = 0; i < MAX; ++i) {ptl->SetProgressValue(hwnd, i, MAX);}

    NativeDwmSetWindowAttribute( ...,DWMWA_HAS_ICONIC_BITMAP,...);DwmSetWindowAttribute(...,DWMWA_FORCE_ICONIC_REPRESENTATION,...);/* in the WndProc */case WM_DWMSENDICONICLIVEPREVIEWBITMAP: HBITMAP hbm = ...;DwmSetIconicLivePreviewBitmap(...hbm,...);

    Native codeDwmSetWindowAttribute( ...,DWMWA_HAS_ICONIC_BITMAP,...);DwmSetWindowAttribute(...,DWMWA_FORCE_ICONIC_REPRESENTATION,...);/* in the WndProc */case WM_DWMSENDICONICTHUMBNAIL: HBITMAP hbm = ...;DwmSetIconicThumbnail(hwnd, hbm, ...);

    [TDM, DEV][Windows 7 Taskbar Details]In the earlier taskbar posts, we discussed how Windows Media Player’s deskband offers valuable background music controls, but only a mere 3% of sessions ever enjoy the functionality. The new taskbar exposes a feature called Thumbnail Toolbars that surface up to seven window controls right in context of taskbar buttons. Unlike a Jump List that applies globally to a program, this toolbar is contextual to just a specific window. By embracing this new feature, Media Player can now reach a majority of peopleDoes your window require controls?Surface commands that users access regularlyCommands must be contextual to a windowDon’t duplicate Jump List tasksCan you replace a Desktop Toolbar?

    Native codeUINT wm_tbc = RegisterWindowMessage( "TaskbarButtonCreated");MSG m; GetMessage(..., &m);if (m.message == wm_tbc) { ITaskbarList3* ptl = ...; THUMBBUTTON btn = {...};ptl->ThumbBarAddButtons(m.hWnd, 1, &btn);}

    [TDM, DEV]All the major web browsers offer tabs and a method of managing these tabs. One could argue tab toolbars are really like taskbars since they facilitate switching. These TDI (Tabbed Document Interface) and MDI (Multiple Document Interface) programs have always resorted to creating their own internal window management systems as the Windows taskbar was not optimized to help their scenarios. Some programs like Excel did custom work to surface their child windows on the taskbar, but this approach was somewhat of a hack.Since the new taskbar already groups individual windows of a program under a single button, we can now offer a standard way for programs that have child windows to expose them. Again, the taskbar offers a single, consistent place to access real windows as well as child windows. These custom window switchers also behave as regular windows on the taskbar with rich thumbnails and even Aero Peek.Does your program have switchers that need to be surfaced?Do users need to regularly switch to them?Provide a visual representation for your client area’s switcherTaskbar bitmap (thumbnail)Peek bitmap (real size)

    Native Use ITaskbarList3::RegisterTab, SetTabOrder, SetTabActiveChild window must create a proxy top-level window for custom thumbnail and peekThe proxy window is typically invisibleProxy window must handle WM_ACTIVATE and WM_SYSCOMMAND

    [TDM, DEV][Windows 7 Taskbar Details – Important enough to not hide]Jump Lists are a new feature of the Windows 7 taskbar that accomplish just this. Think of this feature as a mini Start Menu for each program or an evolved version of the system menu. First, the you don’t need to even start the program to quickly launch a file or access a task. Second, destinations don’t take up valuable space on the taskbar; they are automatically organized by their respective program in a simple list. Should one have ten programs pinned or running on her taskbar, this means she could have quick access to over 150 destinations she uses all the time, without even the need to customize the UI! Since the Jump List shows lots of text for each of its items, gone are the days of having identical icons on your taskbar that are indistinguishable without a tooltip. Should you wish to keep a specific destination around, you can simply pin it to the list.

    [ DEV][Why - Windows 7 Taskbar details]Jump Lists are a new feature of the Windows 7 taskbar that accomplish just this. Think of this feature as a mini Start Menu for each program or an evolved version of the system menu. Jump Lists surface commonly used nouns (destinations) and verbs (tasks) of a program. There are several advantages this new approach provides. Do destinations apply to your program?Nouns: Items consumed/created by your programDynamic based upon individual user patternRecent or frequent or custom list?Do tasks apply to your program?Verbs: Program actionsTasks should not require your program to be runningTasks are static and apply to all usersTasks should globally apply to your program, not a specific window

    Native - SHAddToRecentDocs(SHARDW_PATH, "file.ext");

    NativeIObjectCollection* poc = ...;IShellLink* task = ...;poc.AddObject(task);ICustomDestinationList* pcdl = ...;pcdl.BeginList(...);IObjectArray* poa = ... poc;pcdl.AddUserTasks(poa);pcdl.CommitList();

    NativeIObjectCollection* poc = ...;IShellItem* item = ...;poc.AddObject(item);ICustomDestinationList* pcdl = ...;pcdl.BeginList(...);IObjectArray* poa = ... poc;pcdl.AppendCategory(L"Sales", poa);pcdl.CommitList();

    1 demo on Scenic ribbon

    [TDM, DEV][What- Windows 7 Ribbon Platform overview]The Ribbon – a very successful concept from Office 2007 has become a first class citizen in Windows 7 and it is evolved into a developer platform. Many developers asked us to enable ease access to the office Ribbon. So in Windows 7 we have created the Ribbon which will also be redistributed available to Windows VistaIt is a Win 32 native COM base APIAnd it has a very close functionality to the office Ribbon

    [TDM, DEV][What - Windows 7 Ribbon Platform available controls]Show Live Movie Maker Beta to emphasize that other Windows apps are using the Ribbon

    [TDM, DEV]Sensor Platform Windows 7 has changed how developers use sensors. It includes native support for sensors, expanded by a new development platform for working with sensors, including location sensors, such as GPS devices. Built on the Sensor platform, the Windows Location APIs are a new Windows 7 feature that enables application developers to access the user’s physical location information. The Windows Location APIs can abstract hardware, simultaneously support multiple applications, and seamlessly switch between different technologies, relieving the application developer of the burden of managing these constraints. The Location APIs can be used by programmers through the C++ programming language (by programmers familiar with COM), or by using COM objects in scripting languages, such as JScript®. Scripting support gives easy access to location data for projects such as gadgets or web pages.Windows 7 provides a solid, easy-to-use platform for using sensor devices, such as an ambient light sensor or a temperature gauge, to create environmental awareness in Windows applications. PCs can use sensors that are built into the computer, connected through wired or wireless connections, or connected through a network or the Internet.The Sensor and Location APIs provide a standard way to discover sensors, and to programmatically access data that sensors provideThe Sensor control panel lets users enable or disable sensors, control access to sensors that might expose sensitive data, view sensor properties, and change the descriptions of sensors.The Sensor Class Extension is a core part of the driver development model for the Sensor platform. It provides the following mechanisms, which are used when writing a User-Mode Driver Framework (UMDF) sensor driver:Integration with the Sensor platformSecurity enforcement

    [TDM, DEV]

    Native codeinterface ILocation : IUnknown{HRESULT RegisterForReport(ILocationEvents* pEvents, REFIID reportType, ULONG dwRequestedReportInterval); HRESULT GetReport( REFIID reportType,ILocationReport** ppLocationReport);// other functions};interface ILocationEvents : IUnknown{HRESULT OnLocationChanged( REFIID reportType,ILocationReport* pNewReport);HRESULT OnStatusChanged( REFIID reportType, LOCATION_REPORT_STATUS newStatus);};

    Native codeinterface ILatLongReport : ILocationReport{HRESULT GetLatitude(DOUBLE* latitude);HRESULT GetLongitude(DOUBLE* longitude);HRESULT GetAltitude(DOUBLE* altitude);HRESULT GetAltitudeError(DOUBLE* altitudeError);HRESULT GetErrorRadius(DOUBLE* errorRadius);};interface ICivicAddressReport : ILocationReport{ HRESULT GetAddressLine1(BSTR* pbstrAddress1); HRESULT GetAddressLine2(BSTR* pbstrAddress2); HRESULT GetCity(BSTR* pbstrCity); HRESULT GetStateProvince(BSTR* pbstrState); HRESULT GetPostalCode(BSTR* pbstrPostalCode); HRESULT GetCountryRegion(BSTR* pbstrCountry);};

    MSDN Reader or Car Game or 3D Marbles, also two ‘test’ demos – acelerometer and light

    Nativeinclude HRESULT hr;CComPtr pSensorManager;pSensorManager.CoCreateInstance(CLSID_SensorManager);CComPtr pALSCollection;CComPtr pALSSensor;// Get all the ALS sensors on the systempSensorManager->GetSensorsByType(SENSOR_TYPE_AMBIENT_LIGHT, &pALSCollection);hr = pSensorManager->RequestPermissions( 0, // Owner window pALSCollection, // Collection of sensors requiring permissions TRUE); // Modal flagif(SUCCEEDED(hr)){pALSCollection->GetAt(0, &pALSSensor);}

    Native codeSTDMETHODIMP CALSEventSink::OnDataUpdated(ISensor* pSensor, ISensorDataReport* pNewData){PROPVARIANT lightLevel; PropVariantInit(&lightLevel); // Get the sensor reading from the ISensorDataReport objectpNewData->GetSensorValue(SENSOR_DATA_TYPE_LIGHT_LEVEL_LUX, &lightLevel);// Extract the float value from the PROPVARIANT objectfloat luxValue = V_FLOAT(lightLevel);// Normalize the light sensor datadouble lightNormalized = ::pow(luxValue, 0.4) / 100.0;// Handle UI changes based on the normalized LUX data // which ranges from 0.0 - 1.0 for a lux range of// 0 lux to 100,000 lux, this method represents such a // handler that would be implemented in your application UpdateUI(lightNormalized); PropVariantClear(&lightLevel);return S_OK;}

    Show MT Picture Animation Demo (also talk about Scenic Animation)Show MT Multi Touch Paint

    [DEV, TDM][High level overview of Why Multi Touch]Multi-touch offers clear differentiation with a high “WOW” factor for consumersMulti-touch enhances on-the-go use and opens up new scenarios for business90% of people in focus groups claimed they would pay a 20-30% premium for a PC with multi-touchSeeing is believing: Consumer purchase intent doubles after hands-on experienceMulti-touch is major investment area for Windows 7MT is defined a two or more independently trackable touch points.MT scored very favorably in user testingConsumer awareness and interest in touch is highCustomers view touch interaction as the next stage of computingTouch offers a direct personal “natural” connection to their applications and freedom from the keyboard and mouse.Touch would help users be more efficient and be fun to use.

    [TDM, DEV][High level overview of Why Multi Touch]Which application scenarios get the biggest benefit from touch?Content consumption, mobile, media and entertainmentDecide which tier of investment is appropriate:Good – Free support, UX tweaksBetter – Gesture support, touch-friendly UXBest – Touch-optimized experience

    [DEV]Multi Touch

    Show MT Picture Animation Demo (also talk about Scenic Animation)Show MT Multi Touch PaintPinballVirtual Earth

    Favorites, Groups & Events

    2 Win7 For Devs Ux Touch Sensors - Presentation Transcript

    1. Windows 7 for Developers II
      Lynn Langit
      http://blogs.msdn.com/SoCalDevGal
      Microsoft – Developer Evangelist
    2. Windows 95
    3. 7 Ways on Windows 7
      Fundamentals
      Libraries
      Taskbar
      Ribbon
      Sensor and Location
      Multi Touch
      Graphics
      *AppCompat*
    4. Windows 7 Taskbar in action
      Demo
    5. Windows 7 Taskbar
      Enhanced user experience
      Quick and easy launch of applications
      Easier to manage windows
      The user is in control
      Clean and lightweight
      Standard Windows UX guidelines
      All of Microsoft’s products
      Enhanced Taskbar & Desktop
      Jump Lists
      Thumbnail Toolbars
      Custom Switchers
      Icons
      Overlay Icons
      Progress Bars
    6. Windows 7 Taskbar – Icons
      Face of your program
      Large and small icons
      Only customer can pin
      Color hot-track
      Icon Overlay
      Surface important notifications
      Appears over your program’s icon
      Progress bar
      Surface important notifications
      Appears in your taskbar button
    7. IconsBest practices
      Are you putting your best foot forward?
      Make sure your icon looks great
      Check different DPIs
      Check different glass colors and disabled glass
      How does Color Hot-track look?
      Determined by your icon’s dominant color
    8. Get More From Taskbar ButtonsOverlay and progress icons
      Consolidate: Uncluttered notification area
      Provide progress and additional information through the taskbar button
      It’s free if you use standard progress dialogs
    9. Taskbar Overlay and ProgressDesign considerations
      Notification area is now user controlled:
      Leave yourself out if possible!
      Use taskbar buttons for custom progress or status information
    10. Peek Preview (Aero Peek)
      Live peek without a click
    11. Live Thumbnails
      Live thumbnails: A live preview
      Windows Vista: One thumbnail per window
      Windows 7: Grouped thumbnails
    12. Windows 7 Taskbar – Thumbnails
      Remote-control for a window
      Surface key commands
      Accessible from taskbar thumbnail
      Up to seven buttons
    13. Thumbnail ToolbarsContrasting Thumbnail Toolbar commands and user tasks
    14. Exposing Custom ThumbnailsOverriding Automatic Thumbnail Preview
      To provide a custom thumbnail preview representation for a window:
      Set the DWM window attribute to say you will provide an “iconic bitmap” for the window
      Respond to the window messages DWM will then send in order to set the preview – done for both thumbnail- and full-sized previews
    15. Hi phone!
    16. Windows 7 Taskbar – Custom Switchers
      Surface custom UI (e.g. TDI/MDI)
      Custom thumbnails for each window
      Appears in your program’s window list
    17. MDI and TDI Window Switchers
      What about Internet Explorer tabs?
    18. Windows API Code Pack for the .NET Library
      Managed class library to access to Win 7 features
      Windows Shell namespace
      Windows Vista and Windows 7 Task Dialogs.
      Support for Shell property system.
      Taskbar Jumplists, Icon Overlay and Progress bar.
      Common file dialogs
      Support for Direct3D 11.0 and DXGI 1.0/1.1 APIs.
      Sensor Platform APIs
      Extended Linguistic Services APIs
      http://code.msdn.com/windowsAPICodePack
    19. Windows 7 Taskbar – Jump Lists
      Mini Start Menu for your program
      Surface key destinations and tasks
      Customizable
      Accessible via right-click and via drag
      APIs use the name “Destination List”
    20. Pinned category
      Destinations
      (“nouns”)
      Known categories
      Custom categories
      User Tasks
      Tasks
      (“verbs”)
      Taskbar Tasks
      Windows 7 Taskbar – Jump Lists
    21. Customizing the Jump ListStep 1: Get the free stuff to work
      Associate your program with the file extension
      Use common file dialogs
      Use explicit recent document API
    22. Customizing the Jump ListStep 2: Adding tasks
      What would your user like to do?
      Launch your application with special arguments?
      Launch other applications?
      Tasks are IShellLink objects
      Rich shortcut semantics including arguments, working directory, icon, and so on.
    23. Customizing the Jump ListStep 3: Do you have categories?
      Does it make sense to categorize documents?
      Is frequent, recent, pinned not enough?
      For example, Inbox, Outbox, Sales, Marketing …
      Categories contain IShellItem or IShellLink objects
      These are documents: You need a file association
    24. Scenic Ribbon
      Demo
    25. Application Menu
      Help
      Contextual Tab Set
      Tab
      Quick Access Toolbar
      Contextual Tab
      In-box with Windows 7, redistribution available to Vista
      Win32 API & UI markup via XAML-based format
      Near feature parity with Microsoft Office 2007 Ribbon & WPF Ribbon
      Dialog Launcher
      Group (aka “Chunk”)
      Windows Ribbon
    26. Combo Boxes
      Spinners
      Mini Toolbar &Contextual Menu
      Group Dialog Launchers
      Buttons & Split Buttons
      Color Pickers
      Tooltips
      Categorized Menus
      Font Control
      “In-Ribbon” Galleries
      Dropdown Galleries
      Tabs & Groups
      Check Boxes
      Windows Ribbon - Controls
    27. Scenic 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
      &lt;Ribbon&gt;
      &lt;Tab&gt; &lt;Button … /&gt;
      &lt;/Tab&gt;
      &lt;/Ribbon&gt;
    28. Integrating Windows Ribbon
      Application
      Ribbon Platform
      CoCreateInstance
      IUIApplication
      Initialize (HWND, IUIApplication*)
      LoadUI( resourceName )
      OnCreateCommand
      IUIFramework
      Execute, UpdateProperty
      IUICommandHandler
      Get/SetUICommandProperty, InvalidateUICommand
    29. MFC
      Scenic
      WPF
      Target:
      Managed
      Target:
      MFC native
      Target:
      Native
      needs .NET 3.5
      Win2K or newer
      Vista or newer
      Office 2007 & Windows styles
      Office 2007 & Windows styles1
      Windows visual style
      Official release in late 2009
      in Visual Studio 2008 SP1
      Ships with Windows 7
      Microsoft’s Ribbon Strategy
      Windows Ribbon - Roadmap
    30. Sensor & Location API
      New
    31. Limitations Of Sensors Today
      Location devices exposed as virtual COM ports
      Exclusive application access
      Not secure
      Proprietary data formats (NMEA, others)
      GPS doesn’t work indoors
      Hard to support multiple technologies at once
      Sensors are integrated as vertical solutions
      Applications need to know sensorhardware specifics
      Limited adoption and scope
    32. Sensor And Location Platform
      Provides unified driver model for all types of sensor devices
      Physical sensors (e.g., GPS devices, Light Sensors)
      Logical sensor (e.g., Wi-Fi triangulation resolver)
      Provides standard APIs for accessing sensors
      Sensor API: C++/COM / Managed code (Windows Bridge)
      Raw access to any sensor
      Location API: C++/COM, Idispatch
      Managed code (Windows 7 API Code Pack)
      Abstracted API for location data
      Puts user in control of information disclosure
    33. Sensor Architecture
      Application
      Application
      Sensor API
      User
      Location and Other Sensors Control Panel
      System
      Sensor Class Extension
      UMDF Sensor Driver
      Sensor
      Device
    34. What Info Do Sensors Use?
      Enumerated via category and type
      Category represents what is being sensed
      Type represents how it is sensed
      Properties (read-only or read-write)
      Data (property keys for units, data field…)
      Events (data-driven)
      State
    35. Location Platform Benefits
      Single API call to answer “Where am I?”
      Independent of provider used todetermine location
      Synchronous and Asynchronous models
      Script/automation compatible
      Automatic transition between providers
      Most accurate providers have priority
      Concurrent access for multiple applications
      Default Location
      Provided by user as fallback when no other sources are available
    36. Location Architecture
      Gadget or Script
      Application
      Application
      Location API
      Location IDispatch Interface
      Sensor API
      User
      Location and Other Sensors Control Panel
      System
      Sensor Class Extension
      Sensor Class Extension
      UMDF Sensor Driver
      UMDF Sensor Driver
      Sensor
      Device
      Logical Location Sensor
      (Triangulation)
    37. Geographic Data (ILatLongReport)
      Latitude, longitude, altitude, associated error required
      Most common format
      Best format for precise location
      Can reverse geo-code later
      Civic Address (ICivicAddressReport)
      Zip, Country required
      Most human readable
      Best for ‘rough’ location estimates,street directions
      Types Of Location Data
    38. Location data is considered PII (user consent required)
      All sensors are disabled by default
      Admin rights required to enable a sensor
      Sensors can be configured on a per-user basis
      “Enable Dialog” invoked by applications
      Privacy And Access Control
    39. Location Summary
      • C++/COM
      • IDispatch (script, .NET interop)
      Single, convenient API for accessing current location
      • Lat/Long and Address formats
      Enables applications to be device-agnostic
      User consent required toaccess data
      • Opt-in via ‘Enable Dialog’ orControl Panel
    40. Sensor Demo
      Demo
    41. Light-Aware Applications
      Photos taken in direct sunlight
      UI with light-awareness,
      100% screen brightness
      UI without light-awareness,
      40% screen brightness
    42. Ambient Light Sensors
      Measure light intensity (i.e., illuminance) in LUX (lumens/square meter)
      Includes class driver support for ACPI light sensors
      Working with OEMs to integrate light sensors into notebook designs
      Adaptive brightness feature supported
      OS automatically adjusts display backlight
      Light-aware applications can use these sensors to optimize UI content for various lighting conditions
    43. How To Build Light-Aware UI
      Scale
      Change font size/zoom level
      ‘Weight’ of lines
      Contrast
      Color
      Saturation
      Complementary vs Adjacent
      Smooth transitions between changes are extremely important for overall user experience
      Fades or animations
      Data smoothing/hysteresis
    44. Sensor API Summary
      • C++/COM
      • Synchronous and asynchronousdata access
      Rich API for accessing raw sensor data
      • Discovery via category or type
      Direct access to individual sensors
      Extensible architecture
      • Data and properties mappedto PROPERTYKEY andPROPVARIANT pairs
    45. Samples
      C++/COM samples in Windows SDK
      JScript location sample in Windows SDK
      WPF/.NET samples in Sensor Development Kit CD
      XNA + XNA Racing Game sample
      Tools
      Light Simulator (SDK)
      Hardware
      Get a Sensor Development Kit
      Getting Started
    46. Based on Freescale JM Badge Board (HID)
      Sensors
      Ambient light sensor
      3D Accelerometer
      Dual touch strip sensors
      Developer tools
      Sample firmware code
      Sample driver code
      Diagnostic and sample applications
      Light-aware MSDN Reader
      Marble game
      Sensor Development Kit
    47. Multi Touch in Windows 7
      New
    48. Multi Touch Hardware Availability
      HP TouchSmart All-in-One PC
      NextWindow digitizer
      Drivers: http://www.nextwindow.com/windriver/index.html
      NextWindow Touch Overlay
      NextWindow digitizer
      Drivers: http://www.nextwindow.com/windriver/index.html
      Dell Latitude XT or Tx2
      N-trig digitizer
      Drivers: in progress and are targeted for Beta availability.
      HP TouchSmart tx2z series
      N-trig digitizer
      Drivers: in progress and are targeted for Beta availability.
    49. Multi Touch Is Here
      MT = two or more independently traceable touch points
      Consumers & MT
      scored very favorably in user testing
      offers clear differentiation with a high “WOW” factor for consumers
      enhances on-the-go use & enables new scenarios
      Hardware
      Multi-touch capable machines in market today in a broad set of form factors
    50. Multi Touch Scenarios
      That led to four areas of investment:
      Developer Platform: At the root is the touch developer platform that exposes touch APIs for any application
      UI Enhancements: Focusing on the core scenarios, many parts of the core UI have been optimized for touch experiences.
      Gestures: Multi-touch gestures have been added to enable consistent panning and zooming in most applications.
      Applications: A set of multi-touch focused applications that demonstrate the power of touch. These will ship separate from Win7.
      Navigating and consuming the web
      Reading & sorting email
      Viewing photos
      Playing casual games
      Consuming music and video
      Navigating files & arranging windows
      Using Office applications
      All focused on consumption
    51. Control Panel – Pen and Touch
    52. Gestures and Developers Platform
      Consistent Multi-touch gestures
      Gestures for double click, right click, single & two finger panning, two finger zoom, and two finger rotation are built into the Windows 7 platform.
      These gestures are available across the OS and available “for free” to most applications.
      Multi-touch platform
      Delivered first for Win32 and COM
      Integrated into next version of WPF 4.0 shipping post Windows 7
      Touch enabled vs. Touch optimized applications
      Feature support
      Gesture notifications: WM_GESTURE
      Inertia and feedback algorithms
      Raw data support: WM_TOUCH or RTS
      “Surface-style” API providing 2D manipulation and inertia support
    53. Development Tiers
    54. Multi Touch Development Roadmap
      Windows 7 Release
      NET 4.0 / Surface 2.0 Release
      Native
      Win32
      Application
      WinFormsApplication
      WPF Application
      Surface Application
      Surface SDK
      1.0
      Surface SDK 2.0
      Multi-Touch Controls
      Surface
      Multi-Touch Controls & API
      Multi-Touch API
      WPF 3.5 SP1
      WPF 4.0
      WPF 3.5
      Managed Wrapper and Interop
      Managed Wrapper and Interop
      Multi-Touch API and Controls
      Surface Hardware
      Windows 7
      Surface Hardware
      Windows Vista
      Windows 7
      Multi-Touch API
    55. Multi Touch in Windows 7
      Demo
    56. Windows 7 Integration Library
      Windows7.Multitouch.Handler is base class for Touch & Gesture handlers
      Use Factory to create one of the handlers
      For WinForms
      managed Win32 hWnd, & WPF gesture support handler subclass Window (hWnd)
      For WPF touch support,
      use stylus event with help of Factory.EnableStylusEvents() method
    57. Multi Touch in WPF 4.0
      UIElement and UIElement3D changes
      Gesture events (tracking)
      Touch system gesture events (single)
      Raw touch events
      Multi-touch support in controls:
      ScrollViewer update to accept pan gestures
      Base controls updated to be multi-touch aware
      Multi-capture support
      New multi-touch specific controls
      Compatible with Surface SDK 2.0
    58. Track Resources
      Windows 7 RC Training for Developers
      Windows content on Channel 9 
      Windows 7 Developer Center on MSDN
      Windows Application Compatibility Roadmap
      Windows 7 Blog for Developers
      My blog series – http://blogs.msdn.com/SoCalDevGal#Win7DevSeries
      My MSDN show – MSDN geekSpeak
      My Facebook group ‘Windows 7 Developers’
      Links, Video & Screencasts
    59. Related Content
      Breakout Sessions
      WCL201 Developing for Windows 7
      WCL301 Windows Application Readiness for Developers
      WCL302 Optimizing Your Application for the Windows 7 User Experience
      Whiteboard Session
      WTB215 Windows Client Development Discussion
      Hands-on Lab
      WCL08-HOL Windows 7: Mitigating Application Issues Using Shims
    60. Tech·Ed Africa 2009 sessions will be made available for download the week after the event from: www.tech-ed.co.za
      www.microsoft.com/teched
      International Content & Community
      www.microsoft.com/learning
      Microsoft Certification & Training Resources
      http://microsoft.com/technet
      Resources for IT Professionals
      http://microsoft.com/msdn
      Resources for Developers
      Resources
    61. Required Slide
      10 pairs of MP3 sunglasses to be won
      Complete a session evaluation and enter to win!
    62. © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
      The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

    + llangitllangit, 4 months ago

    custom

    673 views, 0 favs, 1 embeds more stats

    TechEd Africa session on Windows 7 UX improvements, more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 673
      • 658 on SlideShare
      • 15 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 23
    Most viewed embeds
    • 15 views on http://blogs.msdn.com

    more

    All embeds
    • 15 views on http://blogs.msdn.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories