Google Toolbar-API - Leitfaden zur Herstellung Benutzerdefinierte Buttons
Einführung
Was ist eine benutzerdefinierte Schaltfläche?
Wenn angeklickt, kann eine Suchtaste eine der folgenden Aufgaben ausführen:
Eine benutzerdefinierte Schaltfläche kann die folgenden Funktionen der Benutzeroberfläche hat:
Neben Eigenschaften für die oben genannten Funktionen der Benutzeroberfläche kann eine benutzerdefinierte Schaltfläche die folgenden Eigenschaften haben (in einer XML-Datei gespeichert), die die Aufgaben der oben aufgeführt ist:
Die folgende Symbolleiste zeigt Beispiele für benutzerdefinierte Schaltflächen für Slashdot, Wikipedia und BBC (hervorgehoben). Die BBC-Taste ist ein News-Feed mit einer Drop-Down-Liste der Schlagzeilen (wie durch den Pfeil nach unten angezeigt).
Hinzufügen einer benutzerdefinierten Schaltfläche
Zum Hinzufügen oder Schaltflächen auf der Google Toolbar verwalten:
Wie man Benutzerdefinierte Buttons
Automatisch erstellen und Custom Search Schaltfläche hinzufügen
- Öffnen Sie den Internet Explorer auf der Suchseite wollen Sie für eine Suchtaste erstellen.
Beispiel: www.wikipedia.org
Ergebnis: Die benutzerdefinierte Schaltfläche installiert und sofort zur Verfügung.
Hinter den Kulissen, schafft dieses Verfahren eine XML-Datei benutzerdefinierte Schaltfläche mit einem Symbol, und speichert es unter einem gehasht Namen in:
C: \ Dokumente und Einstellungen \ larry \ Lokale Einstellungen \ Anwendungsdaten \ Google \ Custom Buttons \
Benutzerdefinierte Schaltfläche XML-Datei
HINWEIS - Es ist okay Zeilenumbrüche und Leerzeichen überall in URL-Zeichenfolgen in der XML-Datei enthalten - die Symbolleiste wird sie Streifen aus, wenn er die Datei interpretiert. Das heißt, Sie müssen sicherstellen, dass, wenn Ihr URL Räume erfordert (Sie wollen sie nicht gezupft), dass man sie mit „% 20“ ersetzt werden (wenn der Browser das für Sie nicht bereits getan hat). Viele der folgenden Beispiele zeigen die URL eingegeben auf zwei Zeilen mit einem Zeilenumbruch in der Mitte der URL, die ganz gut funktioniert. HINWEIS - In den Beispielen in diesem Handbuch wird nur der Teil des XML-Code in der
Manuelles Erstellen und eine benutzerdefinierte Schaltfläche Installieren
Um eine benutzerdefinierte Schaltfläche, um die Google Toolbar zu installieren:
C: \ Dokumente und Einstellungen \ Benutzername \ Lokale Einstellungen \ Anwendungsdaten \ Google \ Custom Buttons \ Dateiname .xml
Dabei steht Benutzername Ihren Benutzernamen Windows und Dateiname ist der Name der Datei Sie wählen die XML-Datei zu geben.
In unserer Wikipedia Beispiel für Login-Namen „larry“, speichern Sie die XML-Datei der Schaltfläche an:
C: \ Dokumente und Einstellungen \ larry \ Lokale Einstellungen \ Anwendungsdaten \ Google \ Custom Buttons \ wikipedia.xml
Hinzufügen einer Schaltfläche Titel und Tooltip
Als nächstes gezeigt wird, verwenden
Custom Search-Taste
HINWEIS - A
Benutzerdefinierte Schaltfläche für Wikipedia suchen
Addiert man diese Suche Element zum vorherigen Taste, erhalten wir:
Beachten Sie, dass die Zeichen () in der URL als entgangen ist „-amp;“. Strings in XML-Dateien benötigen Et-Zeichen (), weniger als (<) and greater-than (>) Zeichen entkommen.
Benutzerdefinierte Schaltfläche für die Google-Suche
Hier ist ein Beispiel:
Slashdot Suche
Senden Suche Aktion als POST
The Onion Suche
In diesem Beispiel wird eine post-Methode Postdata (markiert) senden:
Aktualisieren einer benutzerdefinierten Schaltfläche
Die Download-URL, die Sie wird für die Aktualisierung auf die Schaltfläche die eindeutige ID der Schaltfläche verwenden, um die XML-Datei für die Schaltfläche Host. Wenn ein zweiter Versuch gemacht wird, eine Schaltfläche aus der gleichen URL zum Download, bietet die Toolbar nur die alten zu ersetzen, nicht einen neuen hinzufügen.
Von den fünf Möglichkeiten, eine Schaltfläche hinzufügen. die ersten und letzten Wege automatisch wissen, wo die Schaltfläche Updates kommen soll, und jede
Schaltfläche Optionen
Die Option Titel ist erforderlich. Der Standard und Beschreibung ist es nicht. Verwenden Sie die Variable innerhalb einer URL-Vorlage Spezifikation des Benutzers Text einzufügen.
Es gibt keine Validieren oder Leerzeichen Trimmen des Eingangs zu diesem Zeitpunkt, und die Variable entkommt was den Benutzer eingegeben mit charset (utf-8) und CGI-Parametern zu entkommen, nur als Texteingabefeld auf einem Formular einreichen würde.
Einschließlich der aktuellen URL
In diesem Beispiel wird die aktuelle URL zu senden, um für eine ältere Version der aktuellen Seite zu sehen archive.org - archive.org erfordert die unescaped URL:
Im folgende Beispiel wird die gleiche archive.org Suche tun, sondern mit.
Einschließlich der Google Domain-Suffix
Sie sollten Variable statt Hartcodierung der Domain-String verwenden. So eine Google-Suche wirklich geschrieben werden soll:
Senden Benutzer ausgewählten Text
Dieser Vorgang erfordert die
-Buttons mit Sendevorgänge erscheint auch auf der rechten Maustaste Kontextmenü des Browsers, wenn Text ausgewählt ist.
Testen, ob eine Variable existiert oder nicht
Einfach gesagt, erlaubt es der Autor einer erweiterten benutzerdefinierten Schaltfläche sicher eine neue Funktion zu verwenden, und ermöglichen eine Rückwärtskompatibilität mit alten Parser, die über die neue Funktion nicht kennen. Zum Beispiel so tun, dass die Variable wurde gerade eingeführt. Eine URL-Vorlage wie dies könnte verwendet werden, um sicherzustellen, dass es keine Auswirkungen auf älteren Symbolleiste hatte:
Falls die Symbolleiste die Variable unterstützt, erweitern würde dies zu:
Sie können Nest Ausdrücke bis zu 10 Ebenen tief, solange die Verschachtelung geschieht nach dem „?“. Das ist in Ordnung:
Es sollte auch darauf hingewiesen werden, dass jedes Mal, wenn eine Flucht verwendet wird, die nicht erkannt wird, wird der Parser eine leere Zeichenfolge ersetzen. So Hallo Welt. wird kommen, wie Hallo Welt aus. Und wenn es eine unausgeglichene Anzahl von geschweifte Klammer ‚‘ Zeichen ist, oder jede andere Parse-Problem, wird die gesamte URL nur auf eine leere Zeichenfolge zurückgesetzt bekommen.
Wie gut aussehende Icons Make
Hier ist ein Google Mail-Symbol in base64 - verwendet eine
Benutzerdefinierte Tastensymbole können größer als 16x16, aber die Symbolleiste wird sie skaliert bis zu 16x16, so neben größer ist als nötig, werden sie nicht annähernd so gut aussehen, als ob Sie sie skaliert Editor ein Bild hoher Qualität verwendet wird.
Die besten aussehende Symbole sind diejenigen, die 24-Bit-Farben (RGB) und 8-Bit Alpha gemacht verwenden, und als XP-Stil RGBA-Symbole gespeichert. Sie können mit Alpha-Transparenz auf das Symbol als 16x16 PNG speichern und dann die 16x16-Symbol in ein XP-Stil konvertieren (ein Programm wie IconWorkshop verwendet wird), und dann, dass base64 kodieren. PNG-Dateien werden nicht direkt, da Windows nicht nativ unterstützt PNG-Dateien unterstützt, ohne viel Extramaterial zu verbinden.
Der Grund, warum Sie benötigen, ist ein Alpha-Kanal zu verwenden, da nicht jeder in der Symbolleiste Hintergrundfarbe wird die gleiche Grau, Silber oder beige sein, die Ihnen ist auf. Windows XP ermöglicht es Benutzern, ihre Farbschema anzupassen, einschließlich der Symbolleiste Hintergründe. Man könnte dieses Problem umgehen, indem ein quadratisches Symbol zu machen, die keine transparenten Teile haben, aber sie sehen nicht so interessant. Einfarbige Alpha-Kanäle, wie GIF-Bilder werden, haben körnig aussehende abgerundete Außenkanten im Vergleich zu einem richtig gebaut alpha-blended-Symbol, wie die, die auf dem Google Toolbar oder Internet Explorer selbst.
Auto-Aktualisierung Icons und Tooltips
Eines der interessantesten Dinge, eine benutzerdefinierte Schaltfläche tun kann, ist eine eigene Taste Bild und Tooltip von einem Remote-Server in bestimmten Abständen zu aktualisieren. Es verwendet einen RSS-Feed für die Aktualisierung zu tun. Dies ermöglicht eine Taste als Benachrichtigungsgerät verwendet werden soll, oder als Statussymbol (zB das Wetter, oder was auch immer Sie sich vorstellen kann). Eine Schaltfläche kann auch ein Dropdown-Menü mit einzelnen Positionen mit Text oder Symbolen. Jeder Menüpunkt kann eine eigene dynamische URL hat zu starten, wenn darauf geklickt wird. Beispiele hierfür werden im nächsten Abschnitt.
Hinzufügen eines RSS-Feed
RSS-Feeds der Verwendung
Das Protokoll für das Erhalten dieser Update-Feeds entweder Atom 1.0, Atom 0.3, RSS 2.0 oder RSS 1.0. Standard-Feeds werden in der Regel arbeiten.
Um das Symbol in der Symbolleiste zu aktualisieren oder seine Tooltip Beschreibung, aus einem Feed, müssen Sie eine Symbolleiste spezifische Erweiterung hinzufügen, um RSS-oder ATOM einen Namespace verwenden. Hier ist ein Beispiel für eine Stimmungsring-Taste, die aus einem Feed zieht:
Beachten Sie es Menü = „false“, um anzuzeigen, gibt an, dass dieses Futter nur dann verwendet wird, um das Symbol und Tooltip zu aktualisieren, nicht ein Dropdown-Menü von Subitems aufzufüllen.
Wenn dies auf einem tatsächlichen Server eingerichtet, dann ist die Dosierung wie folgt aussehen:
Das obige Beispiel ist ein Atom 1.0-Feed, mit dem benutzerdefinierten Buttons Namespace Google wie folgt angegeben:
Um den Tooltip außer Kraft setzen, die mit der Schaltfläche kam, bitte angeben:
Um das Symbol außer Kraft setzen, die mit der Schaltfläche kam, specifiy:
Der PHP-Skript, das Kraft dieses Komplex „Stimmung“ Analysesystem wie folgt aussieht:
Die Symbole sollten als das Skript im selben Ordner sein.
Mit einem Feed-die-Taste und Dropdown-Menü Icons aktualisieren
Sie können auch benutzerdefinierte serverbasierte Symbole auf die einzelnen Elemente auf dem Feed Dropdown-Menü hinzufügen. Hier ist ein Beispiel einer Wetter Taste, die ein Futter mit einem Drop-Down-Menü hat (die Standardeinstellung), sondern auch gibt Refresh-menuitem = „false“, um den Refresh-Menüpunkt zu verbergen jederzeit eine erfolgreiche Verbindung zum Server hergestellt wird. Dies sorgt für eine sauberere Optik.
Sie können unter Verwendung einer Symbolleiste spezifischen Namespace-Erweiterung neben dem Titel einer Symbolleiste auf die Schaltfläche eine kleine Menge Statustext angezeigt RSS- oder ATOM. Wenn der Benutzer über Tastentext ausgeschaltet ist, wird der Statustext zeigen nach wie vor neben der Taste. Hier ist ein Beispiel für einen E-Mail-Feed, der die Anzahl der ungelesenen Elemente neben der Schaltfläche Titel angezeigt werden:
Sie können die Benutzer auf ein Ereignis aufmerksam machen eine Symbolleiste spezifischen Namespace-Erweiterung verwenden, um RSS-oder ATOM. Der Alarm wird die Schaltfläche Symbol blinkt und ein Tooltip unter dem Symbol angezeigt. Falls die Symbolleiste nicht im Vordergrund ist, wird es auf die Titelleiste des Browsers blinken. Hier ist ein Beispiel eines Kalender Anmelders, dass ein Benutzer über eine bevorstehende Sitzung alarmiert:
Wenn der Titel eines Feed-Element enthält alle --- Zeichen, wird ein Menü Separator anstelle eines anklickbaren Menüpunkt verwendet werden.
Benutzerdefinierte Schaltflächen können nun ein Gadget anstelle eines Menüs öffnen nach unten fallen. Das Gadget kann jedes neue oder bestehende Google Universal-Gadget, inlined jedoch iGoogle-Gadgets oder Google Desktop-Gadgets werden nicht unterstützt. Das Gadget muss seine nicht in der Galerie oder gehostet auf einem Server von Google für das Gadget in einer benutzerdefinierten Schaltfläche zu arbeiten, aber es muss öffentlich sichtbar aus dem Internet sein.
Angenommen, Sie auf eine Schaltfläche wollen, den die aktuelle Uhrzeit und das Datum zeigt. In der neuen Schaltfläche API können Sie einen Link zu einem Zeitpunkt Gadget hinzufügen. Ein Gadget Mini-Fenster öffnet sich, wenn der Benutzer auf den Dropdown-Pfeil klickt:
Die Symbolleiste auf die Schaltfläche Vorlage kann die anfängliche Breite und Höhe des Gadget-Fenster angeben, wie auf die Attribute
Eine Symbolleiste Gadget kann dynamisch seine Fensterhöhe mit der Software Dynamic Höhe API aktualisieren.
Gadget URL:
Dieses Universal-Gadget zu meiner Symbolleiste
Toolbar Gadgets können ihre eigenen Präferenzen aktualisieren dynamisch die setprefs API. Gadget-Einstellungen werden zwischen Sitzungen gespeichert. Sie werden auch zu anderen Symbolleiste synchronisiert werden, wenn Symbolleiste Sync aktiviert ist.
Und es gibt eine weitere Sache. Wenn Voll Dropdown auf true gesetzt ist, können Schaltflächen Suche durchführen oder Operationen mit Gadgets senden! Im nächsten Abschnitt.
Wenn ein Gadget Voll Dropdown auf true gesetzt hat, ist es berechtigt, die Suche oder senden Aktionen mit dem Gerät selbst auszuführen. Angenommen, Sie auf eine Schaltfläche wollten, die einen Google-Karte Gadget basierend auf einer Adresse der Benutzer auf der Seite eingegeben oder in das Suchfeld ausgewählt öffnen würde:
Damit Gadgets konsistente, empfehlen wir Ihnen, den reservierten Gadget Präferenz Namen rawquery wenn die Abfrage verwenden oder SelectedText wenn die Auswahl mit.
Damit Gadgets konsistente, empfehlen wir Ihnen, den reservierten Gadget Präferenz Namen page_url wenn die vollständige URL verwenden oder page_host wenn nur der Hostname benötigt wird.
Dieses Beispiel zeigt die gesamte Kommunikation zwischen einem Gerät und einer Symbolleiste auf der Schaltfläche in der gleichen Zeit. By the way, eine andere Art und Weise auf eine Schaltfläche zu erstellen, ist direkt auf die Schaltfläche Erweitert Editor zu gehen. fügen Sie Ihre Schaltfläche Quelle über die Oberseite der Probe, und in die Symbolleiste speichern.
Hier ist die Schaltfläche Quelle:
charset
auf einem Formular fügt automatisch eine benutzerdefinierte Suche nach dem rechten Maustaste Generieren des richtigen charset Wert innerhalb des Elements der erzeugten Taste.
Verwendung EUC-jp Im folgenden Beispiel wird die param erweitert anstelle von UTF-8
Charset Werte haben manchmal andere Namen, und sind immer Groß- und Kleinschreibung. Die komplette Liste der charset Werte hängt von den Windows-Registry-Schlüssel unter HKEY_CLASSES_ROOT \ MIME \ Database \ Charset. Diejenigen, installiert auf Windows XP enthalten in der Regel:
Mehrere Sprachen
Eine benutzerdefinierte Schaltfläche können alternative URLs, Symbole und Text für bestimmte Symbolleiste locales behandeln. Die beiden Möglichkeiten, dies zu tun, sind unten aufgeführt - die erste Methode empfohlen.
Mit locale Attribute
Die empfohlene Methode ist eine Liste von XML-Tags zu erstellen, die jeweils eine locale = „iso-namen“ Attribut mit dem Iso-Namen für das Gebietsschema von Interesse verwendet wird. Hier ist ein Beispiel für eine Schaltfläche mit alternativen Französisch und Spanisch URLs und Beschreibungen:
Wenn das Gebietsschema der aktuellen Symbolleiste Sprache nicht direkt im XML-Tag gefunden werden kann, wird der erste Tag in der obigen Liste als Standard verwendet.
Mit Variable
ISO Locale Tabelle
Die derzeit unterstützten Symbolleiste locales sind:
Hosten einer benutzerdefinierten Schaltfläche
Wo Host Ihre Schaltfläche
, Die Download-URL Sie die XML-Datei für die Schaltfläche verwenden, um Host ist ziemlich wichtig, weil die URL für die Aktualisierung auf die Schaltfläche der Schaltfläche eindeutige ID wird. Wenn ein zweiter Versuch gemacht wird, eine Schaltfläche aus der gleichen URL zum Download, bietet die Toolbar nur die alten zu ersetzen, nicht einen neuen hinzufügen. Weitere Informationen finden Sie unter Benutzerdefinierte Schaltfläche aktualisieren.
Hinzufügen der Taste zu den Google-Schaltflächen-Galerie
Hinzufügen der Schaltfläche zu Googles Schaltflächen-Galerie ist eine gute Möglichkeit, die Welt über Ihre neue Schaltfläche zu lassen. Ihre XML-Datei muss bereits irgendwo gehostet werden (die Schaltflächen-Galerie wird eine direkte Verknüpfung zur Datei) und die Taste muss mit unseren redaktionellen Richtlinien entsprechen.
Wenn Sie all dies getan haben, füllen Sie das Schaltflächen-Galerie Einreichungsformular, um Google über Ihre Schaltfläche wissen.
Ein Entwickler kann einen Installations Link unter Verwendung der folgenden URL-Syntax erstellen:
wo URL verweist auf die benutzerdefinierte Schaltfläche XML-Datei. Zum Beispiel, hier ist ein Link, der eine Slashdot.com Schaltfläche installieren würde:
Die Beschriftung dieses Link hinzufügen. Wenn ein Benutzer auf diesen Link klickt, wird die Slashdot.com Taste in ihre Google-Toolbar installiert.
Die Google-URL oben ist im Grunde ein Auslöser für die Symbolleiste beliebige benutzerdefinierte Schaltfläche zu installieren. Wenn der Benutzer nicht eine kompatible Version der Toolbar hat, werden sie aufgefordert, es zu installieren. Sobald die die Symbolleiste installiert wurde, wird die benutzerdefinierte Schaltfläche automatisch hinzugefügt werden.
Verwalten von Feed-Verkehr
Web-Verkehr mit RSS-Feeds kann ein Anliegen sein. Eine Schaltfläche sollte darauf sein Futter auf einen niedrigen Bandbreite Server nicht, wenn Sie Grund zu glauben, dass es populär geworden ist und viel Verkehr haben. Der Server kann mit Auffrischanfragen überlastet.
Die benutzerdefinierte Schaltfläche verfügt über ein eigenes Refresh-Intervall Attribut für Feeds. Die Symbolleiste würdigt die „Ablaufdatum“ Zeit, dass der Server im HTTP-Header zur Verfügung stellt. Diese Einstellung überschreibt die Refresh-Intervall der Schaltfläche. Wenn Ihr Server überlastet ist, können Sie die „Ablaufdatum“ Zeit erhöhen die Belastung zu reduzieren. Wenn zum Beispiel eine Taste pro Stunde aktualisieren ist, wird „Ablaufdatum“ die Zeit eingestellt werden kann täglich zu aktualisieren, was den Verkehr drastisch reduzieren würde (vielleicht wenn die Frische der Taste Begrenzung).
Hier ist ein Beispiel PHP-Skript zum Einstellen der Zeit 1 Woche in die Zukunft Gültig bis:
Beispiel HTTP-Antwort vom Server.
XML-Referenz
Eine benutzerdefinierte Schaltfläche XML-Datei hat die folgende Struktur:
Die folgenden XML-Elemente können innerhalb eines erscheinen
Austretende Charaktere
Strings in XML-Dateien (und HTML-Dateien) müssen die folgenden drei Zeichen, die als HTML-Entitäten gezeigt entkommen: