Vista Sidebar Gadgets Steve Marx Technical Evangelist Microsoft Corporation.

Slides:



Advertisements
Similar presentations
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
Advertisements

Windows Vista Presentation Advances Daniel Moth Developer & Platform Group, Microsoft Ltd
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
The Web Warrior Guide to Web Design Technologies
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Macromedia Dreamweaver MX 2004 Design Professional Web Page DEVELOPING A.
A problem in IMS Learning Design To promote interoperability, few services Local tool frameworks like LAMS have much richer tool environment –Easy provisioning.
CIS101 Introduction to Computing Week 05. Agenda Your questions CIS101 Survey Introduction to the Internet & HTML Online HTML Resources Using the HTML.
CIS101 Introduction to Computing
Chapter 9 Introduction to the Document Object Model (DOM) JavaScript, Third Edition.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 10: Server Administration.
Developing Windows Vista gadgets iSDC Workshop, November 9 th Mark Blomsma Software architect Develop-One.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2006 Microsoft Corporation.
Internet Explorer 8 For Developers Gal Kogman BNL
4.01B Authoring Languages and Web Authoring Software 4.01 Examine webpage development and design.
Hypertext Markup Language (HTML) Created by Sarah Dooley & Amanda Foster Edited and presented by Caroline Hallam September 9, 2014.
WIN-B331 Get a consistent, personal Windows experience that matches your unique work style Easy for IT to deliver personal, user-defined experiences.
TUTORIAL 8: Enhancing a Web Site with Advanced CSS
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
LEARN THE QUICK AND EASY WAY! VISUAL QUICKSTART GUIDE HTML and CSS 8th Edition Chapter 2: Working with Webpage Files.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
WEB329 ASP.NET: A Lap Around the New Enhancements for Web Developers in Microsoft Visual Studio 2005 Omar Khan Lead Program Manager Web Platform and Tools.
Test Review. What is the main advantage to using shadow copies?
DHTML - Introduction Introduction to DHTML, the DOM, JS review.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
11 Aug 2015Windows1 Microsoft Windows Windows 7 (2009  2013) like Windows Vista but faster and more stable Installed on 61% of computers Enterprise edition.
ASP.NET 2.0 Chapter 5 Advanced Web Controls. ASP.NET 2.0, Third Edition2 Objectives.
Chapter 2 Developing a Web Page. Chapter 2 Lessons Introduction 1.Create head content and set page properties 2.Create, import, and format text 3.Add.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
SEG3210 DHTML Tutorial. DHTML DHTML is a combination of technologies used to create dynamic and interactive Web sites. –HTML - For creating text and image.
Features and Updates Native UTF-8 support Innovative user interface to simplify everyday tasks Enhanced Photo Gallery 2.0 Windows-style control panel interface.
TUTORIAL 10: PROGRAMMING WITH JAVASCRIPT Session 2: What is JavaScript?
Intro to Web Dev Session 2 – Planning and Structure.
Introduction to web development and HTML MGMT 230 LAB.
DHTML - Introduction Chapter Introduction to DHTML, the DOM, JS review.
The Microsoft Technical Roadshow 2007 Rich Client Development in XAML Mark Johnston Developer & Platform Group Microsoft Ltd
Create Windows ® Applications with.NET Carlotta Eaton ( Associate Professor of IST New River Community College Slides by Microsoft.
Overview of Silverlight Mike Taulty Developer & Platform Group Microsoft Ltd
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
Creating a Web Site Review of Concepts. Templates Templates are special HTML files that are used to quickly create pages on a web site. They contain the.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
4.01B Authoring Languages and Web Authoring Software 4.01 Examine webpage development and design.
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
Positioning Objects with CSS and Tables
Rich Internet Applications 9. HTML 5 and RIAs. HTML 5 Standard currently under development by W3C Aims to improve the language with support for the latest.
05 | Integrating JavaScript and MVC 4 Jon Galloway | Tech Evangelist Christopher Harrison | Head Geek.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
XP New Perspectives on Macromedia Dreamweaver MX 2004 Tutorial 5 1 Adding Shared Site Elements.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
JavaScript and Ajax (JavaScript Dynamic HTML (DHTML)) Week 7 Web site:
Week 1: Introduction to HTML and Web Design
Chapter 17 The Need for HTML 5.
ArcGIS for Server Security: Advanced
DHTML.
Objective % Select and utilize tools to design and develop websites.
Microsoft Office SharePoint Server 2007 Enterprise Search
Google Web Toolkit Tutorial
Cognos 8 Cognos Connection Cognos CoE
Objective % Select and utilize tools to design and develop websites.
Manual testing of Windows Metro style apps built using HTML
Section 10.1 YOU WILL LEARN TO… Define scripting
ITI 133 HTML5 Desktop and Mobile Level I
HTML5 Level I Session II Chapter 3 - How to Use HTML to Structure a Web Page
Dynamic Web Pages Jin Wu INF 385E Information Architecture
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Tech Ed North America /1/2019 2:58 AM Required Slide
JavaScript CS 4640 Programming Languages for Web Applications
4/20/2019 Share © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or.
Web Application Development Using PHP
Presentation transcript:

Vista Sidebar Gadgets Steve Marx Technical Evangelist Microsoft Corporation

WHAT IS A GADGET? WHAT IS THE PURPOSE FOR GADGETS? To allow an end user to be more efficient and productive. A small, lightweight, specialized application. Small: physically small dimensions. Lightweight: much less coding than a full application. Specialized: performs a specific, limited action or function.

SIDEBAR GADGETS SIDEBAR GADGETS Mini Desktop Applications Mini Desktop Applications Rich – dynamic, desktop-based user experience. Secure Enterprise Functionality. Only works in Vista Sidebar (docked and undocked). Examples Vista Desktop with Sidebar (includes docked gadgets) Vista Sidebar Gadget (undocked)

GADGET GALLERY GADGET GALLERY For all Live and Sidebar Gadgets Main User-Facing Gadget Site Upload and Download Gadgets. Primary Gadget User Community. Gallery.Live.com Gadget Gallery (gallery.live.com) Home Page.

SIDEBAR GADGET DEMO

STEPS FOR BUILDING A GADGET Design the Gadget Size Considerations Dynamic Content and Network Calls Code and Package the Gadget HTML and DHTML (JavaScript) JavaScript API Extensions

SIDEBAR GADGET APIs SIDEBAR GADGET APIs Rich Selection of Sidebar APIs Classes System.Net.NetworkInterface System.PowerStatus System.Shell System.Shell.Drive System.Shell.Folder System.Shell.Folder.Items System.Shell.Item System.Shell.RecycleBin System.SideShow System.Sound Classes System.Debug System.Diagnostics System.Diagnostics.EventLog System.Environment System.Gadget System.Gadget.Flyout System.Gadget.Settings System.Gadget.Sidebar System.Machine System.Net.NetworkInformation

USING THE GADGET API Accessing Settings System.Gadget.settingsUI = "settings.htm"; System.Gadget.onSettingsClosed = closedEvent; Setting Dock and Undock Events System.Gadget.onDock = procDockEvent; System.Gadget.onUndock = procUndockEvent;

ACCESSING VOLUME INFORMATION Gadget API’s Give Simple Access to Shell, Folder and Drive Information var curDrive = System.Shell.drive("c"); var strFreeSpace = "Free Space (MB): " + curDrive.freeSpace; var strDriveFormat = "Drive Format: " + curDrive.driveFormat; var strVolumeLabel = "Drive Label: " + curDrive.volumeLabel; var strTotalDriveSize = "Drive Size (MB): " + curDrive.totalSize; var strTotalFreeSpace = "Free Space (MB): " + curDrive.totalFreeSpace; var strRootDirectory = "Root Directory? : " + curDrive.rootDirectory; var strDriveType = "Drive Type: " + curDrive.driveType;

GADGET PROJECT STRUCTURE (GadgetRoot)/gadget.xml (GadgetRoot)/gadget.htm (GadgetRoot)/flyout.htm (GadgetRoot)/settings.htm (GadgetRoot)/en-US/ (GadgetRoot)/core/ (GadgetRoot)/css/ (GadgetRoot)/images/ (GadgetRoot)/images/background/ (GadgetRoot)/images/icons/ (GadgetRoot)/images/nav/ (GadgetRoot)/js/ (GadgetRoot)/js/gadget.js (GadgetRoot)/js/flyout.js (GadgetRoot)/js/settings.js (GadgetRoot)/js/local.js

DEAFULT GADGET.HTM FILE HEAD Section – generally consists of a few tags that load the CSS and JavaScript files needed by the gadget. BODY Section – generally consists of an HTML framework that is dynamically modified as needed to create the main gadget layout and UI for both of the main gadget states: docked and undocked. <div id="gadgetContentFrame" onmousedown="javascript:return false;" onmousemove="javascript:return false;"> ***ADD DOCKED NAV WITH NO FLYOUT HERE*** ***ADD UNDOCKED NAV FOR SMALL LAYOUT HERE*** ***ADD UNDOCKED NAV FOR LARGE LAYOUT HERE***

GADGET UI & LAYOUT CONSTRAINTS Minimum Size - 25px wide by 60px high Maximum Docked Size - 130px wide Undocked Gadgets - Any Size Flyout - Any Size

SIDEBAR GADGET MANIFEST SIDEBAR GADGET MANIFEST The gadget.xml file Core Elements

SIDEBAR GADGET MANIFEST Clock Microsoft.Live <info url=" text="Gadget Info" /> ©2006 Microsoft Corporation Gadget description. <base type="HTML" apiVersion="1.0.0" src="sidebarclock.html" />

GADGET PROJECT AND FILES DEMO

GADGET VISIBILITY Gadgets Need to Understand User Scenarios The gadget is docked to the sidebar and has been scrolled offscreen. The gadget is docked to the sidebar and the sidebar has been minimized. The workstation is locked or the user has "fast-user-switched" to another session on the console. The power management timeout for the monitor has elapsed and the monitor is turned off. System.Gadget.visibilityChanged A gadget can be informed of potential visibility state changes by assigning a callback to this event

RICH GRAPHICS Special Objects to Enhance User Experience gbackground gimage gText Simple mechanism to add special effect to Text, Image and Backgrounds such as Glow, Shadow Opacity, Rotation, Soft Edges <g:background id="gadgetBackground" src="images/partiallyTransparent.png" style="position:absolute;top:0; left:0;z-index:-999">

LOCALIZATION Full Localization Support Including Full MUI (Multilingual User Interface) Integration Gadget Root is Default Language Add Language Specific Folders for each Supported Language

GADGET SECURITY Gadgets are Treated as Executables Similar to an EXE download from the Web Can Host and Interact with ActiveX Objects IE7 Protected Mode is Bypassed All Code is Local, and Code is Accessing System API’s

AUTHENTICATION & DATA SECURITY Authentication Windows Authentication. Extendable Using ActiveX. Data Security – SSL available

DISTRIBUTE THE GADGET Gadget Gallery (Gallery.Live.com) Gallery for all Windows Live gadgets (Live, Sidebar, etc.). International – over 30 languages; localized to most major regions. Promotional and advertising opportunities. Sidebar Gadgets In Box Gadgets – locked; unbranded, Microsoft only.* * cannot promote branded gadget; required by consent decree. OEMs – can preinstall any gadget; great partnership opportunity. Preferred Gadget Installers – for OEMs, MSDN download, etc.

BUILDING A GADGET DEMO

GADGET RESOURCES Gallery (gallery.live.com): upload and download gadgets MicrosoftGadgets.com: gadget dev resources & community MSDN: Sidebar and Live gadget dev resources Q&A Now!