Hilfe mit dem Assistant

Alles rund um die Programmierung mit Qt
Antworten
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Hilfe mit dem Assistant

Beitrag von Marco812 »

Hallo,

wie würdet ihr eine Hilfe mit dem Assistant aufbauen.

Würdet ihr den QAssistantClient benutzen um den Assistant zu starten. Problem dabei ist, wenn jetzt der Assistant nicht mit dem QAssistantClient bzw. aus dem Programm gestartet wird, sondern Manuel dann ist die Hilfe nicht verfügbar. Wäre es sinnvoll den Assistant an die eigenen Bedürfnisse anzupassen und den überflüssigen Code zu entfernen, der die Defaulthilfe aufruft. Wie sieht es aus wenn die Hilfe in mehreren Sprachen zur verfügung stehen soll, muss ich dann alle HTML-Seiten mehrmals erstellen oder kann ich so eine art "tr" einfügen. Sollten die HTML-Seiten als resource mit in den Assistant Kompiliert werden, damit der Benutzer nichts ändern kann. Dann hätte man so eine art Helpfile wie es sie unter Windows gibt.

Kennt ihr evtl. ein Tutorial oder Beispielprojekt dazu wie man so eine Hilfe aufbaut?

Gruß

Marco812
Zuletzt geändert von Marco812 am 27. September 2006 09:30, insgesamt 1-mal geändert.
caligano
Beiträge: 126
Registriert: 19. August 2006 15:33

Re: Eigene Hilfe aufbauen (Assistant)

Beitrag von caligano »

Marco812 hat geschrieben: Kennt ihr evtl. ein Tutorial oder Beispielprojekt dazu wie man so eine Hilfe aufbaut?
Hallo!

Das hier könnte dich interessieren : http://www.trolltech.com/developer/videos
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Beitrag von Marco812 »

Hallo,

danke für den Tipp, aber dieses Video ist mir bekannt und das dazugehörige Tutorial (http://my.opera.com/qtcoder/forums/topic.dml?id=134716) auch.

Meine frage war vereinfacht, welche Struktur macht Sinn um eine mehrsprachige Hilfe mit dem Assistant aufzubauen, wobei dieser extern und aus dem Programm gestartet werdet kann.

Gruß

Marco812
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Beitrag von Marco812 »

Hallo,

kann mir jemand sagen, wie ich mit "setArguments" eine oder ähnlichem eine Übersetzungsdatei aus einer Resource laden kann und nicht nur das verzeichniss angeben ("-resourceDir").

Ich meine etwas in der Art:

Translator* clientTranslator = new QTranslator();
clientTranslator ->load( ":/translation/client_"+ language + ".qm" );
client.installTranslator( clientTranslator );

Gruß

Marco812
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Ich würde Sprachdateien gar nicht in die Resource packen, da schlecht erweiterbar. Mach es extern, dann kann es jeder selbst erweitern und du musst Dich nicht drum kümmern.
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Beitrag von Marco812 »

Das verstehe ich nicht, was soll denn erweitert werden? Wenn alles übersetzt ist muss nichts mehr geändert werden und vom Benutzer schon gar nicht, oder sehe ich das falsch?

Es wäre nett wen du mir dennoch sagen könntest wie ich eine resource sinnvoll mit dem assistant laden kann.
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Marco812 hat geschrieben:Das verstehe ich nicht, was soll denn erweitert werden?
Na die Anzahl der verfügbaren Sprachen. Als ich eine bestimmte App entwickelt habe, wurde die in 17 Sprachen übersetzt. Inzwischen sind es über 20, mit deinem Ansatz hätte ich jedesmal eine neue Version rausbringen müssen, mit neuer Versionsnummer, obwohl sich an der Logik nichts geändert hat.
Marco812 hat geschrieben:Wenn alles übersetzt ist muss nichts mehr geändert werden und vom Benutzer schon gar nicht, oder sehe ich das falsch?
LanguagePacks sind inzwischen die Regel, hier mal ein Beispiel. Man besorgt sich die neueste Programmversion und die Übersetzung, sobald sie fertig ist.
Marco812 hat geschrieben:Es wäre nett wen du mir dennoch sagen könntest wie ich eine resource sinnvoll mit dem assistant laden kann.
Sorry, mit dem Assistenten habe ich noch nichts gemacht. Müsste raten und probieren und dazu fehlt mir momentan die Zeit.
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Beitrag von Marco812 »

OK, du hast mich überzeugt.

Allerdings habe ich jetzt noch eine Frage dazu. Jetzt habe ich ein Verzeichnis mit x Übersetzungsdateien, woher weiß ich welche geladen werden soll? Kann ich irgendwie das Komplette Verzeichnis durchsuchen und anhand der verfügbaren Übersetzungsdateien dem Benutzer die Verfügbaren Sprachen zur Auswahl anzeigen?
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Mit QDir::entryInfoList und entsprechendem Filter bekommst Du alle Files eines Verzeichnisses. Mit QLocal bekommst Du die Sprache des aktuellen Systems und wenn Du dynamisch die Sprache umschalten willst, musst Du dir noch zusätzlich was basteln. Die Sprachdateinamen müssen dann ein bestimmtes Format haben, z.B. MyApp_en_uk.qm, und welche geladen wird, ergibt sich dann aus QLocale oder der dynamischen Einstellung.
Marco812
Beiträge: 139
Registriert: 22. November 2005 11:28

Beitrag von Marco812 »

Vielen Dank für die Hilfe, funktioniert jetzt alles soweit ganz gut.
Antworten