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 18 von 26   « Erste     8161718 1920     Letzte »    
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
 
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#171
  Alt 6. Nov 2008, 13:10
Version 0.66 ist online!

Neue Website: hier

Die erste Version der Website ist jetzt online. Auf der Website könnt ihr eure Widgets und eure PlugIns hochladen und diese natürlich auch Downloaden. Durch die Website hab ich das Download-Prozedere komplett geändert. Im Download-Paket sind jetzt nur noch 2 Widgets vorhanden. Somit muss man sich jetzt nicht mehr Widgets herunterladen, die man garnicht haben will.

Sonst gibt es nicht viele Änderungen, ein paar Probleme mit dem Ausfaden hab ich noch behoben.

Ach ja, noch was: ich hab im SideBar-Code noch ein Fehler mit [Win]+[D] behoben - falls bei euch die SideBar wieder nicht mehr angezeigt wird - sofort sagen, dann mach ich das wieder rückgängig.

Grüße
Dave
  Mit Zitat antworten Zitat
Namenloser

 
FreePascal / Lazarus
 
#172
  Alt 6. Nov 2008, 14:33
Zitat von littleDave:
Ach ja, noch was: ich hab im SideBar-Code noch ein Fehler mit [Win]+[D] behoben - falls bei euch die SideBar wieder nicht mehr angezeigt wird - sofort sagen, dann mach ich das wieder rückgängig.
Ist bei mir leider der Fall (wenn ich den FormType auf "Desktop Icon" stelle, was ja Standard ist). Ich benutze Vista Home Premium mit Service Pack 1.

Ansonsten alles super (nach wie vor )!

Schön, dass du die Vorschläge zu den Icons berücksichtigt hast.
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#173
  Alt 6. Nov 2008, 15:00
Zitat von NamenLozer:
Zitat von littleDave:
Ach ja, noch was: ich hab im SideBar-Code noch ein Fehler mit [Win]+[D] behoben - falls bei euch die SideBar wieder nicht mehr angezeigt wird - sofort sagen, dann mach ich das wieder rückgängig.
Ist bei mir leider der Fall (wenn ich den FormType auf "Desktop Icon" stelle, was ja Standard ist). Ich benutze Vista Home Premium mit Service Pack 1.
Ok, ich habs wieder rückgängig gemacht

Zitat von littleDave:
Schön, dass du die Vorschläge zu den Icons berücksichtigt hast.
Na klar
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

 
Delphi 12 Athens
 
#174
  Alt 6. Nov 2008, 15:03
Gratz zur Website und danke für das heise-widget...muss ichs nimmer machen, ich seh auch gleich was ich falsch gemacht habe, Du hast einfach das Root gleich gelassen und nicht ein anderes genommen.

Am Wochenende schau ich mal nach Börsentickern...mal sehen ob ich das hinbekomme.

Sherlock
Oliver
  Mit Zitat antworten Zitat
Henning der zweite

 
Delphi 5 Standard
 
#175
  Alt 8. Nov 2008, 18:21
Also erstmal, ich bin henni aus dem Delphi-Forum.
Zur Thoosje Sidebar: Könnte es sein, das du das Uhrenskin davon abkopiert hast?
Henning D.
  Mit Zitat antworten Zitat
Alt 8. Nov 2008, 22:31     Erstellt von EWeiss
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Inhalt von Autor entfernt
Alt 8. Nov 2008, 22:41     Erstellt von EWeiss
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Inhalt von Autor entfernt
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#176
  Alt 9. Nov 2008, 23:48
Zitat von Henning der zweite:
Also erstmal, ich bin henni aus dem Delphi-Forum.
Zur Thoosje Sidebar: Könnte es sein, das du das Uhrenskin davon abkopiert hast?
Ne, ich kannte die Thoosje SideBar da noch nicht, daher nein.

Zitat von EWeiss:
Zitat:
Aber ich hab schon einen Punkt von der Liste mit eingebaut: Wenn man jetzt die SideBar woanders positioniert, werden die angedockten Widgets (jetzt endlich) mit verschoben. Das wollt ich eigendlich schon viel früher einbauen, jedoch hab ich mich erst jetzt dazu überwinden können.
Was hast verwendet meine Magnetic.pas hehehee
Auch nicht, hatte das Andocken an sich ja schon länger drinnen. Das mit den Fenster-An-Fenster-Andocken hab ich später gemacht, jedoch hab ich dafür einfach nur die bisherige Funktion erweitert. Das war noch bevor du die Magnetic.pas veröffentlicht hast - und das "Mit-Verschieben" könnte zwar vom Datum her stimmen, jedoch hab ich das ebenfalls selber eingebaut. Ich will ja nicht, dass sich mehrere Fenster "gleichzeitig" verschieben, sondern bei mir musst ich ja einfach nur die relative Position der Fenster zur SideBar wiederherstellen.

Zitat von EWeiss:
Zitat:
Das erste, was beim Start auffallen sollte ist, dass die Widgets beim Start jetzt einfaden und nicht einfach aufpoppen.
Von meiner SkinEngine ? Ach ne du verwendest ja kein GDI32 oder doch ?
Meine WidgetEngine benutzt die GDI+ nicht. Auch von deiner SkinEngine wird nichts benutzt. Ich arbeite mit TBitmap32 und MSDN-Library durchsuchenUpdateLayeredWindow
  Mit Zitat antworten Zitat
Alt 10. Nov 2008, 07:43     Erstellt von EWeiss
Dieser Beitrag wurde von fkerber gelöscht. - Grund: Inhalt von Autor entfernt
Benutzerbild von CK_CK
CK_CK

 
Delphi 2006 Enterprise
 
#177
  Alt 10. Nov 2008, 18:02
Hi!
Wirklich tolles Programm. Läuft seit gestern dauerhaft bei mir (Autostart)

Ich hätte noch ein paar Punkte, die mir das Leben erleichtern würden :
  • Die Sidebar "merkt" sich nicht, dass sie nicht auf die Maus reagieren soll
  • Die Kontext-Menüs (rechte Maustaste) der Widgets könnten meiner Meinung nach anders angezeigt werden (Das spezifische Menü der Widgets sollte einfacher zu erreichen sein). Ich stelle mir das so vor (Beispiel Wetter-Widget):
    - Update Weather
    - --------------
    - Change Location
    - Metric Unit
    - -----------
    - Widget Engine
    - Sicherheitseinstellungen...
    - Widgettyp
    - Auf Maus reagieren
    - Widgets hinzufügen...
    - ...
  • Der Widget-Editor sollte einen einfach erreichbaren Datei-Explorer für die Ressourcen haben (mit exportieren der Dateien)
  • Den Widgets kann man keine .wav-Dateien hinzufügen
  • Man kann keine .wav-Dateien abspielen (PlaySound) -> Hab' eine "Eieruhr" programmiert, die aber ohne Sound sinnlos ist )
So, das war meine Liste. Ich hoffe, du bist nicht beleidigt, denn das Programm ist ansonsten wirklich super klasse!

Liebe Grüße,
Chris
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#178
  Alt 11. Nov 2008, 14:51
Zitat von EWeiss:
Zitat:
Auch nicht, hatte das Andocken an sich ja schon länger drinnen.
jo wäre ja kein Beinbruch gewesen
Viel mir nur auf weil es so plötzlich kam.

Wenn ich gute Informationen hier bekomme wie die bei OpenGL von dir
verwende ich sie auch immerhin ersparrt das ne menge Arbeit.

Nix für ungut war nur ne frage.

liebe grüße Emil
Die Frage ist ja ansich berechtigt, jedoch würd ich das dann auch in den verwendeten Komponenten dazuschreiben . Aber ist ja auch kein Problem!

Zitat von CK_CK:
Hi!
Wirklich tolles Programm. Läuft seit gestern dauerhaft bei mir (Autostart)
Das freut mich

Zitat von CK_CK:
  • Die Sidebar "merkt" sich nicht, dass sie nicht auf die Maus reagieren soll
Ja, das stimmt - hab ich auch erst vor kurzem bemerkt. Werd ich noch ausbessern.

Zitat von CK_CK:
  • Die Kontext-Menüs (rechte Maustaste) der Widgets könnten meiner Meinung nach anders angezeigt werden (Das spezifische Menü der Widgets sollte einfacher zu erreichen sein). Ich stelle mir das so vor (Beispiel Wetter-Widget):
    - Update Weather
    - --------------
    - Change Location
    - Metric Unit
    - -----------
    - Widget Engine
    - Sicherheitseinstellungen...
    - Widgettyp
    - Auf Maus reagieren
    - Widgets hinzufügen...
    - ...
Auch eine sehr gute Idee - werd mal genauer drüber nachdenken. Ich muss ja zugeben, extrem übersichtlich ist das ja noch nicht. Werd das sicher nochmal überarbeiten müssen. Jedoch will ich es gleich möglichst richtig machen, daher kann ich nicht sofort zusagen. Aber anschauen werd ich mir es auf jedenfall - und der Vorschlag schaut ja auf den ersten Blick ganz gut aus

Zitat von CK_CK:
  • Der Widget-Editor sollte einen einfach erreichbaren Datei-Explorer für die Ressourcen haben (mit exportieren der Dateien)
Mal schauen, was sich da noch machen lässt (man bin ich froh, dass es vergessen habe ich den bisherigen Daten-Explorer zu übersetzen )

Zitat von CK_CK:
  • Den Widgets kann man keine .wav-Dateien hinzufügen
  • Man kann keine .wav-Dateien abspielen (PlaySound) -> Hab' eine "Eieruhr" programmiert, die aber ohne Sound sinnlos ist )
Ah, stimmt - daran hab ich bisher noch nicht gedacht . Wird auf jedenfall so schnell wie möglich eingebaut - muss mir erst über die Umsetzung gedanken machen.

Zitat von CK_CK:
So, das war meine Liste. Ich hoffe, du bist nicht beleidigt, denn das Programm ist ansonsten wirklich super klasse!
Wieso beleidigt - im Gegenteil. Ich danke dir für die wirklich konstruktive Kritik.

Also im Moment bin ich sehr beschäftigt und komme nicht mehr zum programmieren. Bisher ging ja alles sehr schnell, doch ich muss mich gerade um wichtigere Sachen kümmern. Werd die Vorschläge aber auf keinen Fall vergessen!

Wie gesagt, dauert noch etwas
Grüße
Dave
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#179
  Alt 12. Nov 2008, 13:26
Ich habe gerade Version 0.67 hochgeladen.

So, ich hab jetzt die Möglichkeit eingebaut, direkt "Sounddateien" in den Widgets speichern zu können und sie auch direkt abspielen zu können. Dafür gibt es jetzt einen neue, ganz simple Komponente: TwgSound. Unterstützt werden alle Soundtypen, mit der die BASS.dll umgehen kann.

Zudem speichert jetzt die SideBar, ob sie auf die Maus reagieren soll oder nicht.

An der ScriptEngine hat sich jetzt auch einiges getan: sie unterstützt jetzt auch WideString und PChar. Somit kann man jetzt mit strings, UTF8Strings, WideStrings und mit PChars arbeiten - ohne lästige Konvertierungsroutinen - das passiert alles intern per Compiler-Magic.

Durch die Benutzung von WideStrings ist es jetzt auch für PlugIns möglich, strings als Funktionsergebniss für eine Funktion anzugeben - dabei muss das Funktionsergebnis WideStrings sein. Ich habe die PlugIn-API dafür aktualisiert und auch ein Beispiel für einer Funktion mit WideString als Funktionsergebniss eingebaut. An der API an sich hat sich nichts geändert - somit sind auch ältere PlugIns weiterhin kompatibel.

Im Moment arbeite ich an einem Konzept, wie ich am besten eine Multi-Language-Fähigkeit für die Widgets bereitstellen kann. Dies dauert aber noch etwas. Auf meiner Roadmap bis Version 0.7 steht, dass die Widgets komplett in Unicode laufen sollen - mal schauen, ob ich das schaffe.

Den Download-Links gibts im ersten Post oder hier (ca. 1.5 MB). Den ChangeLog findet ihr hier.

Grüße
Dave
  Mit Zitat antworten Zitat
Benutzerbild von CK_CK
CK_CK

 
Delphi 2006 Enterprise
 
#180
  Alt 12. Nov 2008, 19:50
Vielen Dank für das Update!

Im Anhang ist mein kleiner Countdown. Vielleicht gefällt er dir ja und du willst ihn auf deine Seite packen (hab' nur noch nicht herausgefunden, wie man ein Vorschaubild erstellen kann).

Liebe Grüße,
Chris
Angehängte Dateien
Dateityp: zip utils_-_count_down_457.zip (521,5 KB, 8x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 18 von 26   « Erste     8161718 1920     Letzte »    


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 03: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