× Aktuálně z oboru

Programátoři po celém světě dnes slaví Den programátorů [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]
Celá zprávička [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]

Widgety v Opeře

[ http://programujte.com/profil/288-martin-starman/ ]Google [ :4:?rel=author ]       [ http://programujte.com/profil/118-zdenek-lehocky/ ]Google [ ?rel=author ]       10. 8. 2007       12 310×

V tomto článku se vám pokusím přiblížit funkci a tvorbu widgetů pro internetový prohlížeč Opera.

Úvod

Widgety [vidžity] (u nás nazývané jako pomůcky) jsou s Operou spjaty už od její deváté verze. Widgety jsou malé aplikace, které mohou běžet mimo okno prohlížeče. Je to vlastně interaktivní webová stránka, která vám může přidat chybějící funkci v prohlížeči nebo ji vylepšit, popřípadě zkrátit dlouhou chvíli ve formě her.

Widgety pro Operu najdete na oficiálních stránkách společnosti Opera ASA a to na http://widgets.opera.com/ [ http://widgets.opera.com/ ], kde najdete více jak 1 200 (ke dni 28. 7. 2007) těchto pomůcek.

Tvorba widgetů

Jestli chcete vědět, jak takový widget vytvořit, můžete si přečíst oficiální návod na komunitním portále Opery [ http://my.opera.com/community/dev/widgets/ ]. Samozřejmě v angličtině. Pro ty, co neumí anglicky, se tento problém pokusím trochu nakousnout. Předpokládám, že alespoň trochu ovládáte HTML, XML, CSS, popřípadě JavaScript. Pokud ne, doporučuji vám některý z našich kurzů.

Widget se skládá nejméně ze dvou souborů. Jsou jimi soubory index.html a konfigurační soubor config.xml. Tyto soubory mají stejnou strukturu, jako byste psali webové stránky. A jak bývá zvykem u všech kurzů tohoto typu, prvním programem je Hello World! Tím také začneme. Pro začátek jsem použil kódy z my.opera.com [ http://my.opera.com/community/dev/widgets/first/ ].

Vytvoříme si soubor index.html a vytvoříme v něm následující obsah:

<!DOCTYPE html>
<html>
  <head>
    <title>Hello World!</title>
  </head>
  <body>
    <p>Hello World!</p>
  </body>
</html>

Soubor config.xml bude vypadat takto:

<?xml version="1.0" encoding="utf-8"?>
<widget>
  <widgetname>Hello World!</widgetname>
  <description>
    This is the very first widget written!
  </description>
  <width>500</width>
  <height>300</height>
  <author>
    <name>John Doe</name>
    <link>http://acme-widget.example.com</link>
    <organization>Acme Examples, inc.</organization>
  </author>
  <id>
    <host>example.com</host>
    <name>HelloWorld</name>
    <revised>2006-01</revised>
  </id>
</widget>

Tuto základní strukturu by měl obsahovat každý widget. Další informace o konfiguračním souboru můžete najít na stránkách Opery v článku Widget information file syntax [ http://oxine.opera.com/widgets/documentation/widget-configuration.html ]. Widget si můžete prohlédnout spuštěním souboru config.xml. Dostaneme toto:

Toto je první widget Hello World!. Můžete s ním libovolně pohybovat, ale musíte kliknout přesně na některé písmeno. Vypneme ho přes menu Pomůcky → Správce pomůcek → Zavřít. Nebo na něj klikneme pravým tlačítkem a vybereme Zavřít. Pouhý text není ale dobře použitelný. Widgety si lze libovolně ostylovat pomocí kaskádových stylů (CSS). Soubor index.html pak může vypadat takto:

<!DOCTYPE html>
<html>
  <head>
    <title>Hello World!</title>
    <link rel="stylesheet" type="text/css" href="helloworld.css">
  </head>
  <body>
    <div id="frontview">
      <div class="top">
        <p>Hello World!</p>
      </div>
  </body>
</html>

Poté si samozřejmě musíme vytvořit soubor kaskádových stylů helloworld.css. Ten si můžete upravit sami, pokud pokud máte potřebné znalosti. V mém případě vypadá takto:

body {
  width: 454px;
  margin: 0;
  padding: 0;
  color: white;
  background: transparent url(pozadi.PNG) scroll no-repeat top left;
}
div.top {
  padding: 45px 0 0 45px;
  width: 454px;
  height: 100px;
}

Po spuštění souboru config.xml se nám otevře toto:

Na začátku jsem psal o JavaScriptu. Ten se samozřejmě také může na widgetu objevit. Pomocí JavaScriptu můžeme našemu widgetu vdechnout „život“. Na ukázku předvedu digitální hodiny. Ty není problém naprogramovat a na Internetu je plno takového kódu zdarma ke stažení. Samozřejmě můžete použít i něco jiného. Kód na hodiny vypadá nějak takto:

<script language="JavaScript">
    	sekundy = 0;
		hodiny = 0; 
		minuty = 0;
		function cas(){
	ted = new Date();
	hodiny = ted.getHours();
	minuty = ted.getMinutes();
	sekundy = ted.getSeconds();
	hodinky.innerHTML = (hodiny + " : " + minuty + " : " + sekundy);
	setTimeout('cas()', 990);
}
</script>

Tento kód vložte do souboru index.html mezi tagy <head></head>. Samozřejmě je lepší zapsat javascriptový kód do externího souboru pro lepší přehlednost. Mezi tagy <body></body> musíme ještě zapsat to, co spouští ony hodiny:

<script language="JavaScript">
cas();
</script>

V mém případě dostaneme toto:


Tak, to je konec mého příkladu, ale možností widgetů určitě ne. Pokud chcete vědět více, odkážu vás na oficiální návod [ http://my.opera.com/community/dev/widgets/ ]. Na konec ještě jedna připomínka. Pokud nechcete začít psát úplně od začátku, můžete si stáhnout předpřipravený základ [ http://my.opera.com/community/dev/widgets/resources/ ].

Bezpečnost

Jak jsem již psal, widget je interaktivní webová stránka, takže k němu Opera přistupuje jako k ostatním stránkám. Proto vás možná napadne otázka, jak je to s bezpečností. Většina widgetů obsahuje JavaScript, který může být potenciální hrozbou. Opera je však s bezpečností na velmi dobré úrovni, proto žádné větší riziko nehrozí. Budete-li stahovat widgety z oficiálních stránek [ http://widgets.opera.com/ ], troufám si říct, že nehrozí vůbec žádné riziko.

Závěrem

Widgety nejsou žádnou novinkou, přesto vám mohou zpříjemnit život a doufám, že vám tento návod trochu pomohl pochopit funkci a kostru widgetů pro Operu.

Zdroj: http://widgets.opera.com/

Článek stažen z webu Programujte.com [ http://programujte.com/clanek/2007080501-widgety-v-opere/ ].