AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Desktop Widget Engine (v0.72)
Thema durchsuchen
Ansicht
Themen-Optionen

Desktop Widget Engine (v0.72)

Ein Thema von littleDave · begonnen am 27. Aug 2008 · letzter Beitrag vom 14. Aug 2011
Antwort Antwort
Seite 25 von 26   « Erste     15232425 26      
Benutzerbild von littleDave
littleDave
Registriert seit: 27. Apr 2006
Hallo

ich hab mal wieder ein Projekt, welches ich hier veröffentlichen will: Eine ...


Downloads
  • hier ist eine Übersicht über alle Versionen
  • hier (ca. 1.5 MB) kann die aktuellste Version heruntergeladen werden
  • hier könnt ihr weitere Widgets herunterladen und eure eigenen Widgets hochladen
  • hier ist jetzt der komplette ChangeLog seit Version 0.1 aufgelistet
  • hier sind jetzt die möglichen Startparameter aufgelistet

Was ist eine Widget Engine?
Widget? Was ist das denn? ... Hm, das ist nicht so schnell zu beschreiben. Kurz gesagt: Widgets sind kleine Fenster, die auf dem Desktop sitzen und unterschiedliche Aufgaben übernehmen können. Jedes Widget ist dabei nur eine Ansammlungen von Anweisungen, Bildern oder sonstigen Daten. Diese Daten werden dann von einem Hauptprogramm visualisiert und verarbeiten. Diese Widget-Engine ist dabei dieses Hauptprogramm.

Wie funktioniert das ganze?
Das ist ganz einfach. Im Hauptprogramm klickt ihr einfach auf Widgets und dann auf Add widget. In einem Dialog wählt ihr dann die Widget-Datei aus, die ihr starten wollt. Danach erscheint ein neues Fenster auf dem Bildschirm - fertig: das Widget läuft jetzt.

Screenshots (für größere Version einfach auf das Bild klicken)
Mal ein Paar Widgets auf dem Desktop
http://widgets.godlikesoft.de/progra...p001-small.jpg http://widgets.godlikesoft.de/progra...p002-small.jpg http://widgets.godlikesoft.de/progra...p006-small.jpg
Der Editor
http://widgets.godlikesoft.de/progra...p003-small.jpg http://widgets.godlikesoft.de/progra...p004-small.jpg
Die Widget-Auswahl
http://widgets.godlikesoft.de/progra...p005-small.jpg

Kann ich selbst Widgets erstellen?
Natürlich! Im Hauptprogramm ist ein Widget-Editor dabei, mit dem ihr neue Widgets erstellen und bearbeiten könnt.

Wie erstelle ich eigene Widgets?
Das ist schon nicht so einfach zu beschreiben, da ihr durch die Script-Sprache extrem viel Möglichkeiten habt.
Zuerst wählt ihr im Menü unter Edit den Punkt Create new Widget aus. Dort gibst du die ersten groben Daten zu deinem Widget ein (diese können natürlich später noch geändert werden). Unten müsst ihr noch die Zieldatei eingeben, in dem die Daten gespeichert werden sollen. Danach erscheint der Editor. Der Editor ist ungefähr so aufgebaut wie ihr es von Delphi gewohnt seid. Es gibt einen Form-Designer und einen Code-Editor. Im Formdesigner könnt ihr Komponenten hinzufügen, bearbeiten und löschen. Im Code-Editor bearbeitet ihr die Funktionalität des Widgets. Die Programmiersprache des Widgets ist Pascal, somit könnt ihr wahrscheinlich gleich loslegen. Als Scriptsprache verwende ich (wie könnte es anders sein ), meine Script-Engine. Um alle Funktionen zu beschreiben bräuchte ich jetzt sehr lange - am besten schaut ihr euch bereits mitgelieferten Widgets im Editor an.

Wie veröffentliche ich meine eigenen Widgets
Das ist ganz einfach: sobald ihr euer Widget fertig habt, klickt ihr im Editor auf Datei -> Publish-Datei erstellen.... Nachdem ihr die Publish-Datei gespeichert habt, geht ihr auf Website der Desktop Widget Engine. Dort loggt ihr euch mit eurem Account ein (wenn ihr noch keinen habt, einfach kurz registrieren) und wählt dann rechts unten den Eintrag Publish own widget. Dann wählt ihr die gerade erstellte Publish-Datei aus und wählt noch die Kategorie des Widgets - fertig.

Wichtige Sachen für den Editor
  • Events zuweisen:
    Um einer Komponente ein Event zuzuweisen solltet ihr im Object-Inspector den Tab "Events" auswählen. Dort klickst ihr doppelt auf den Namen des Events. Dann wird automatisch alles nötige erstellt. Ihr könnt die Events natürlich auch manuell eintragen, jedoch ist solltet ihr dann genau wissen, welche Parameter wann wo kommen. Wenn eine Event-Funktion falsche Parameter hat, wird das Widget zwar erfolgreich kompiliert, die Event-Funktion wird aber niemals erreicht.
  • Bilder zuweisen:
    Widgets sind meistens mit einer aufwendigeren grafischen Oberfläche ausgestattet. In dieser Widget-Engine geht das natürlich auch. Dafür fügt ihr einfach ein Image hinzu und wählt im Objekt-Inspektor den Eintrag "Graphic" aus. Dort findet ihr einen Eintrag "ImageFile", welcher einen Dialog öffnet. In diesem Dialog wählt ihr das gewünschte Bild aus. Dabei könnt ihr nur Bilder auswählen, die sich in der Wiget-Datei befinden. Um eine Datei hinzuzufügen wählt ihr links den Eintrag Add file to folder.
    ACHTUNG: Bei den Bildern werden nur PNGs, JPEGs, Bitmaps und Gifs unterstützt. Andere Bildtypen funktionieren nicht!

Was ist alles dabei?
Das Hauptpacket besteht nur aus einer analogen Uhr und einer SideBar. Wenn ihr weitere Widgets haben wollt, geht ihr auf die Website der Desktop Widget Engine. Dort könnt ihr viele weitere Widgets herunterladen.

Eigene PlugIns?
Die Funktionalität von Widgets kann man mit Hilfe von PlugIns erweitern. Die Erweiterbarkeit mit Hilfe durch PlugIns ist extrem groß. Um ein PlugIn zu erstellen, solltet ihr vorher die PlugIn-API-Reference herunterladen (der Download-Link befindet sich am Ende dieses Abschnitts). Dort findet ihr einen Pascal-Header sowie eine Hilfe, die euch anhand des mitgelieferten Beispiels erklärt, wie ihr ein PlugIn erstellen könnt und worauf ihr achten müsst. Die PlugIn-API findet ihr hier (ca. 1 MB)

Noch ein paar Hinweise
  • Getestet mit Windows XP
  • Verwende Komponenten: Sysygy Script Engine, SynEdit, Jedi Component Library, GraphicEx, GR32 (TBitmap32)
  • Aktuelle Version: 0.72
  • Programmiert mit Delphi 7
  • Das Programm erstellt folgende Ordner:
    • Den Ordner "Desktop Widget Engine" in %APPDATA%
  • Das Programm erstellt folgende Registry-Einträge:
    • "Desktop Widget Engine" in "HKCU\Software\Microsoft\Windows\CurrentVersion\Ru n\" (nur falls die Einstellung "Autostart" aktiviert wurde)
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
 
H3llsing

 
Delphi 2010 Enterprise
 
#241
  Alt 15. Jan 2009, 15:40
hmpf :/

wär das nich noch mit ner schicken Library zu realisieren @ littleDave ???
wäre nämlich extrem praktisch da es unmengen an tollen komponenten gibt
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

 
Delphi 12 Athens
 
#242
  Alt 15. Jan 2009, 15:51
Das ist doch aber dann eine immense Baustelle, denn dann müsste er ja quasi die VCL nachbauen...

Sherlock
Oliver
  Mit Zitat antworten Zitat
H3llsing

 
Delphi 2010 Enterprise
 
#243
  Alt 15. Jan 2009, 16:14
hmm und wie wärs wenn du lieber littleDave in deinem nächsten upgrade die Twebbrowser komponnente selber mit implementierst?

btw super Engine
  Mit Zitat antworten Zitat
PeterPanino

 
Delphi 10.4 Sydney
 
#244
  Alt 28. Mär 2009, 20:53
Zitat von littleDave:
Zudem hab ich mal ein (sehr) kurzes Beispielvideo erstellt
Hallo littleDave, in dem Short Demo Video sieht man eine "Intellisense"-Funktion im Editor, d.h. nach einem Punkt klappt ein Member-Menü mit den zum Objekt passenden Einträgen auf. In der neuesten Version 0.72 gibt es diese Hilfsfunktion aber anscheinend nicht, oder kann man die sonstwie aufrufen?
  Mit Zitat antworten Zitat
Florian Hämmerle
 
#245
  Alt 29. Mär 2009, 16:02
Ich wollte auch mal was zu deinen Projekten sagen:
Was du hier so lieferst ist echt toll, vor allem deine Scripting Engine find ich hervorragend. Und wie du so motiviert bei der Sache bleibst find ich auch sehr gut, da ich mir vorstellen kann, dass es öfters zu sehr heiklen Problemen kommt, die sich nicht so einfach lösen lassen.

in diesem Sinne: WEITER SO

mfg Flö
  Mit Zitat antworten Zitat
Florian Hämmerle
 
#246
  Alt 28. Apr 2009, 18:50
Kannst du mir sagen, wie du deine "VCL" für die Engine programmiert hast? Also die Komponenten TwgTimer, TwgImage etc.
Oder kann man sich das irgendwo anschauen wie das gemacht wurde? Arbeite auch gerade an sowas ähnlichem und hab bis jetzt noch nichts wirklich gutes gefunden außer deinen Projekten!

Scriptsprache + Widget-Engine sind echt das beste der Art was ich auf meiner Suche (und die dauerte wenn ich alles zusammenrechne sicher schon über 30h durchs Inet surfen!!) nach Scriptsprache allgemein und im speziellen mit Delphi gefunden habe!!

Nochmal ein GANZ GANZ GANZ GROSSES LOB!!

Viele Grüße, Florian
  Mit Zitat antworten Zitat
Regan

 
Turbo Delphi für Win32
 
#247
  Alt 17. Dez 2009, 23:33
Moin,

ich grabe den Thread hier auch mal aus. Ich bin nämlich an einer Weiterentwicklung interessiert
CrossPost DF
Ich habe diese Engine hier in Australien auf zwei Rechnern installiert und alle sind damit sehr zufrieden. Bitte lass das Projekt nicht sterben. Alternativ kannst du ja auch das Ganze als Gemeinschaftsprojekt machen.

MfG
Regan
  Mit Zitat antworten Zitat
Florian Hämmerle
 
#248
  Alt 18. Dez 2009, 17:13
Ja wäre auch mein Wunsch. Würd mich auch über offenlegung des Sourcecodes freuen.

Schöne Grüße und frohes Schaffen () Florian
  Mit Zitat antworten Zitat
David Martens

 
Delphi XE Enterprise
 
#249
  Alt 9. Aug 2011, 15:31
Ich bin durch Zufall auf dieses Projekt gestoßen. (Eigentlich wollte ich nur sehen ob man Windows Gadgets auch mit Delphi programmieren kann.)

Ich hab's auch gleich ausprobiert, aber leider kann ich kein zweites Formular in meinem Test-Widget erstellen, ich bekomme da immer eine Zugriffsverletzung.

Leider ist das Projekt so alt, das die Widgets von anderen auch nicht mehr vorhanden sind.

Kann man eigentlich den Sourcecode bekommen?

Gruß
David
  Mit Zitat antworten Zitat
David Martens

 
Delphi XE Enterprise
 
#250
  Alt 14. Aug 2011, 12:30
Kann denn keiner helfen?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 25 von 26   « Erste     15232425 26      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz