Vývoj Windows Sidebar Gadgets

Slides:



Advertisements
Podobné prezentace
Web Michal Žůrek Jak se na něj dívám já..
Advertisements

Technologie pro publikování na webu 1
Zoner Foto Studio Bohumil Bareš.
Registr systému Windows
Ing. Jan Mittner  Ing. Jan Mittner    KH  v případě zájmu vždy po cvičení.
Vývoj aplikací s využitím JavaFX
Martin Holý.  HTML  xHTML  CSS  JavaScript  PHP.
Základy HTML.
Štěpán Bechynský. 2 Kompatibilita DOCTYPE META Tag – Hlavička protokolu HTTP – X-UA-Compatible: IE=7 3.
Formuláře Formuláře lze nalézt téměř na každém webu. Formuláře lze nalézt téměř na každém webu. Použití formulářů: Použití formulářů: Blog Blog Uživatelské.
Práce se soubory. Ukládání dat Textové soubory s jednoduchou strukturou (např..txt a.csv) textové soubory s vnitřní hierarchií (např..xml) Soubory binárního.
Programujeme Google Gadgets Miroslav Slavík Copyright © Gug.cz, 2007 Gug.cz.
Návrh a tvorba WWW Cvičení 2 CSS 3. Cascading Style Sheet Cascading Style Sheet (kaskádové styly) je stylový jazyk, který se používá pro popis vzhledu.
Tomáš Pijáček, PIJ006.  CSS – Cascading Style Sheets  Jazyk pro popis způsobu zobrazení stránek napsaných v jazycích HTML, XHTML, XML  Oddělení vzhledu.
Adobe Dreamweaver CS4 Ing. Martin Dosedla.
Tvorba webových aplikací
VY_32_INOVACE_4.3.IVT1.11/Oc Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jaroslav Ochodek CZ.1.07/1.5.00/ Tvorba webových.
Třídy, generické třídy, pseudotřídy
Odkazy Pomocí odkazu se lze pohybovat mezi stránkami. Cílem může být další stránka nebo identifikátor na aktuální stránce. Pomocí odkazu se lze pohybovat.
VY_32_INOVACE_56_MS_Word_V. Autor : Trýzna Stanislav Školní rok : 2011/2012 Určeno pro : šestý ročník Předmět: informatika Téma : základní orientace v.
Blokový model v CSS Obr. 1.
Ing.Josef Veselý Označení šablony a vzdělávací sady viz.rozpis.
Prezentace v Powerpointu
Seznam - menu Seznam a jeho položky lze použít například i na vytvoření vysouvacího menu. Seznam a jeho položky lze použít například i na vytvoření vysouvacího.
CSS – rámečky Mgr. Lenka Švancarová.
Přehled dalších vlastností
CSS: šířka prvku, rámečky, okraje, výplně plovoucí prvky #CSS – šířka prvku, rámečky, okraje, výplně #CSS – plovoucí prvky.
Gymnázium, Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Hodonín Tvorba webu Úvod do CSS 1.
Tomáš Urych, ESO9 Intranet a.s.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Kaskádové styly - CSS.
ActionScript Moderní počítačové aplikace. Charakteristika Je odvozen od JavaScriptu Integruje do Flashe interaktivní ovládání Umožňuje vytvořit přehledné.
Ant Připravil: Ing. Jan Kolomazník. strana 2 Proč vznikl Potřeba sestavovat komplexní Nezávisle na platformě Popis založený na xml Spouštění různých úloh.
Návrh a tvorba WWW Cvičení 4
CSS styly Kaskádové styly (CSS – Cascading Style Sheets) jsou prostředkem, který zajišťuje jednotný vzhled publikovaných stránek. Technologii CSS podporují.
CSS Cascading Style Sheets Kaskádové styly
DHTML Jan Felger. Kapitola 0: Základní tagy Základy HTML © Jan Felger 2005 Úvod Tato prezentace zobrazuje pouze zcela základní minimum znalostí, které.
Dílna Caché II. CSP pro pokročilé Tomáš Vaverka. Zdroje HTML Tag Reference v sekci Reference Material v dokumentaci Caché HTML Tag Reference v sekci Reference.
XHTML – obrázky Mgr. Lenka Švancarová Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Lenka Švancarová. Dostupné z Metodického portálu.
Power Point– popis prostředí
AJAX nejmodernější webová technologie… seminář pro učitele ZŠ a SŠ Mgr. Marek Osuchowski Ostravská univerzita © 2011.
Návrh a tvorba WWW Přednáška 12 JavaScript III.. Výjimky v JavaScriptu Výjimky jsou způsob jak řešit neočekávané nebo výjimečné situace ke kterým dochází.
Copyright (C) 2000 Vema, a. s.1 V3 klient Michal Máčel Provozní integrace G2, HR/Win a internetu.
HTML 5 a CSS 3.
TNPW1 Technologie pro publikování na webu Cvičení č. 2 Překlad URL na fyzickou adresu stránky Editor Macromedia Homesite „Hello world“ v XHTML (úvod do.
Hlavní partneři a prezentátoři. XPages snadno a rychle? Dan Vrána, CubeTeam
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Vzdálené počítačové sítě a programování v prostředí Windows Okruhy ke zkoušce z předmětu: Ing. Zdeněk Votruba LVALVA.
Textové soubory Vytváření a zpracování textových souborů.
Internet Explorer 8 Štěpán Bechynský Developer Evangelist Microsoft s.r.o.
Mgr. Vlastislav Kučera lekce č. 5.  Boxy  Vlastnosti ◦ width ◦ height ◦ padding ◦ border ◦ margin.
Windows 7 & Internet Explorer 8 vývoj aplikací a kompatibilita Štěpán Bechynský, Ondřej Štrba Developer Evangelists
Windows XP a live distribuce Knoppix, Danix apod
Title of the document The content of the document Úroveň 1 Úroveň 2 Úroveň 3 Titulek Výrobky Služby O nás Autorem materiálu a všech jeho částí, není-li.
PV175 SPRÁVA MS WINDOWS I Podzim 2008 Řízení přístupu Manželka pošle svého manžela informatika nakoupit se slovy: "Kup chleba a když budou mít rohlíky,
PHP Programy pro tvorbu WWW stránek - 01
Styly CSS VýhodyDruhyZápis. Výhody CSS oddělení struktury od formátování oddělení struktury od formátování přilinkováním souboru styl.css lze formátovat.
CSS – menu vlevo Mgr. Lenka Švancarová. CSS – menu vlevo.
Internetové publikování Doc. Ing. Petr Zámostný, Ph.D. místnost: A-72a tel.: 4222, 4167 (sekretariát ústavu 111)
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
B AT SOUBORY Jednoduché skripty ve Windows. O PAKOVÁNÍ PŘÍKAZU OPAKUJ. off for /L %i in ( ) do ( echo *** echo %i echo *** ) Zápis: Opakuj.
Základy tvorby www stránky v HTML kódu. © Mgr. Petr Loskot, leden Časopis PPK Časopis PC World.
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_ICT_04 ORGANIZACE DAT V PC Zpracovala: Mgr. Květoslava Štikovcová Číslo.
Krátký úvodní kurz HTML Jenyk Obecně 1 - html  V HTML jazyce nezáleží na rozložení a délce řádku, extrémem je napsat celý program v jednom řádku.
NetBeans Plugin.  Echo2 web framework (Ajax, Java)  NetBeans IDE (modularita, Swing designer)  Vizuální design uživatelského rozhraní (WYSIWYG)  Drag.
ZONER CALLISTO Ovládání programu
C# WPF.
Vlastnosti souborů Jaroslava Černá.
VYUŽITÍ ARCGIS API FOR JAVASCRIPT PRO PUBLIKACI MAPOVÝCH SLUŽEB ÚRM
Desktopové aplikace na .NET Core
Transkript prezentace:

Vývoj Windows Sidebar Gadgets Jaroslav Klíma, MFF UK 12.4.2007

Vývoj Windows Sidebar Gadgets Co jsou to Microsoft Gadgets? Sidebar gadget overview Nástroje pro vývoj Hello World Lokalizace Manifest Windows Sidebar API Instalace COM interop

Co jsou to Microsoft Gadgets? Jednoduché jednoúčelové „miniaplikace“ Na desktopu, na webu, na jiném zařízení V budoucnu: Univerzální gadgety Nyní: Windows SideShow gadgets Web gadgets Windows Sidebar gadgets

Device gadgets Windows SideShow (přídavný display na telefonu, na dálkovém ovládání a podobně)

Web gadgets někdy též Live Gadgets Windows Live Spaces – Live.com

Desktop gadgets Windows Sidebar

Sidebar gadget - přehled Postranní panel Umístění vlevo/vpravo, na konkrétní monitor Matoucí „On top of other windows“ Galerie gadgetů Inteligentní umístění gadgetů

Instalace gadgetů Distribuce ve formě souboru *.gadget Jde o *.zip nebo *.cab archiv s novou koncovkou Po double kliknutí se automaticky nainstaluje Umístění souborů gadgetu C:\Program Files\Windows Sidebar\Gadgets\ nebo C:\Users\{profile}\AppData\Local\Microsoft\Windows Sidebar\Gadgets\

Přidání gadgetu do postranního panelu Galerie gadgetů Systémové i uživatelské gadgety Preview image Detaily výrobce Double-click / drag & drop

Stavy gadgetu Docked/undocked Flyout Settings Více instancí V postranním panelu, nebo volně Flyout Po kliknutí může gadget „expandovat“ Settings Panel nastavení gadgetu Více instancí Každá má vlastní nastavení

Gadget z pohledu programátora DHTML soubor se styly a manifestem Obsah v HTML Skripty v JavaScriptu nebo VBscriptu Styly CSS Popis gadgetu v manifestu – gadget.xml Jméno, verze, autor, popis HTML soubor s obsahem gadgetu

Nástroje pro vývoj Notepad, PSPad... Microsoft Visual Studio + IE Syntax highlighting IntelliSense (*) Validace (*) Debugging (*)

Hello world! Manifest Obsah Jméno Verze Jméno souboru s obsahem Platorma Obsah HTML soubor

Lokalizace Jazyk podle jazykového balíčku OS :-/ Podadresáře v kořenovém adresáři Všechny soubory s relativní cestou se hledají v pořadí: 1) \cs-CZ\path\file.ext 2) \cs\path\file.ext 3) \en-US\path\file.ext 4) \en\path\file.ext 5) \path\file.ext

Manifest Povinné elementy Kódování souboru a verze XML <?xml...?> Jméno gadgetu <name> Verze gadgetu <version> Hostitelská aplikace <host> Jméno a verze Typ a umístění souboru s obsahem Požadované oprávnění

Nepovinné elementy: Údaje o autorovi, www, logo <author> <info url=“…”/> <logo src=“…”/> (48x48) </author> Copyright <copyright> Popis gadgetu <description> Ikony <icon> Náhled <defaultImage>

Obsah gadgetu Používáme HTML, CSS a JavaScript Na renderování se použije Internet Explorer Rozdíly proti web stránce: Gadget API Nefunkční alert() Debugging debugger;

Gadget je interaktivní Vznikají události - events Specifikujeme skripty které se pustí při vzniku událostí, například: <body onLoad=“LoadHandler()” onMouseEnter=“MouseEnterHandler()” onMouseLeave=“MouseLeaveHandler()” onClick=“ClickHandler()” >

Windows Sidebar API System.Debug System.Diagnostics System.Environment Metoda outputString(string) System.Diagnostics Metoda EventLog.writeEntry(string [, type]) type 0 = Success 1 = Error 2 = Warning 3 = Information System.Environment Metoda getEnvironmentVariable(varName)

System.Machine Properties: availableMemory, processorArchitecture, totalMemory Kolekce CPUs – informace o procesorech jde o kolekci, nikoliv o pole – používáme .item(i) namísto indexeru vlastnosti “name” a “usagePercentage” PowerStatus.* properties batteryCapacityRemaining batteryCapacityTotal batteryPercentRemaining batteryStatus enumBatteryStatus isBatteryCharging isPowerLineConnected Událost PowerStatus.powerLineStatusChanged

System.Network.Wireless Properties: address ipv6Address primaryDNSAddress secureConnection signalStrength ssid Events: connectionChanged signalStrengthChanged

System.Shell Metody: chooseFile(…), chooseFolder(…) - vrací System.Shell.Item drive(driveLetter) - vrací System.ShellDrive execute(...) - jako ShellExecute z Win API itemFromPath(path) – vrací System.Shell.Item knownFolder(path) – vrací System.Shell.Folder knownFolderPath(name) – vrací System.Shell.Folder refreshDesktop() – znovu načte ikony na desktop saveFileDialog(...) – vrací string, vybranou cestu

metoda itemFromFileDrop(…) – podpora Drag & Drop: System.Shell metoda itemFromFileDrop(…) – podpora Drag & Drop: <BODY ondragenter=event.returnValue = false"    ondragover=event.returnValue = false"    ondrop="fileDragDropped"> function fileDragDropped(event) { var sFile; var i=0; try while(System.Shell.itemFromFileDrop(event.dataTransfer, i).path)  {   sFile = System.Shell.itemFromFileDrop(event.dataTransfer, i).path;   i++;  } } catch(err) {} }

System.Shell.Folder metody: properties: copyHere(…) moveHere(…) newFolder(…) parse(path) properties: Self – vrací System.Shell.Folder Parent – vrací string s cestou

System.Shell.Item metody: properties: invokeVerb(verb) – „open“, „edit“... metadata() – např. pro obrázky rozměry, dpi... properties: isFile isFileSystem isFolder isLink link modifyDate name path SHFolder size type

Ostatní objekty Windows Sidebar API: System.ContactManager System.MessageStore System.Shell.RecycleBin – event i metody System.Sound – beep() a playSound() System.Time – getLocalTime(), timeZones System.Gadget...

Gadget API – System.Gadget události: onDock, onUndock onShowSettings, onSettingsClosing, onSettingsClosed visibilityChanged

metody: beginTransition() endTransition(transitionType, seconds) System.Gadget.TransitionType.morph System.Gadget.TransitionType.none close()

properties: background – cesta k obrázku s pozadím docked - dock state (true nebo false) name – jméno gadgetu z manifestu opacity – průhlednost v procentech path – cesta k HTML s obsahem gadgetu platformVersion - verze OS settingsUI – cesta k HTML nastavení gadgetu version – verze gadgetu z manifestu visible – viditelnost gadgetu (true nebo false)

System.Gadget.Sidebar událost onDockSideChanged property dockSide

System.Gadget.Flyout události onHide a onShow properties: file – cesta k HTML s obsahem flyoutu document – vrací objekt HTML document show – indikuje jestli je flyout zobrazen

System.Gadget.Settings metody pro čtení a zápis persistentních nastavení nastavení jsou specifická pro každou instanci gadgetu write(name), writeString(name) read(name), readString(name)

System.Gadget.Settings.closingEvent při ošetření události onSettingsClosing: System.Gadget.onSettingsClosing = HandleSettingsClosing; function HandleSettingsClosing(e) { ... }

System.Gadget.Settings.closingEvent properties: e.closeAction System.Gadget.Settings.closeAction.commit System.Gadget.Settings.closeAction.cancel e.action - .commit nebo .cancel e.cancel – nastavíme na true nebo false e.cancellable – můžeme nastavit cancel na true?

Grafické objekty podobně jako v ASP.NET, existují nové objekty kterých vlastnosti můžeme nastavovat jak v skriptu, tak deklarativně nové elementy html: <g:background> = objekt gbackground <g:image> = objekt gimage objekt gText (?)

Grafické objekty - pozadí <g:background> document.body.g.background – nefunguje musíme přiřadit ID a pak najít podle něj properties: attributes: src, rotation, opacity blur, brightness, softEdge left, top, height, width metody: addGlow, addShadow addImageObject, addTextObject, removeObjects move

Grafické objekty – obrázky <g:image> var image = document.getElementById(id); properties: jako gbackground metody: addGlow(color, radius, alpha) addShadow(color, radius, alpha, deltaX, deltaY) addImageObject(path, offsetX, offsetY) addTextObject(text, font, size, color, offsetX, offsetY) removeObjects() – všechny objekty a efekty move(offsetX, offsetY)

Tipy Nastavit padding a margin u <body> na 0px Automatický refresh var timer = window.setInterval(method, interval); Knihovna Math zaokrouhlování a podobně

COM interop můžeme použít zaregistrované objekty ActiveX var axObject = new ActiveXObject(„Namespace.Class"); axObject.DoSomething()

Zdroje Galerie gadgetů: Windows Sidebar Reference http://microsoftgadgets.com/ http://gallery.live.com/ Windows Sidebar Reference http://msdn2.microsoft.com/en-us/library/aa965850.aspx Články pro začátečníky i pokročilé http://www.codeproject.com/gadgets