From 9ec955df8662c20a4cb3e2fd144eea0fc807440a Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Sun, 2 Mar 2014 18:35:17 +0100 Subject: [PATCH] Updated localizations + fixed #10 + fixed #17 + extra external web browser settings --- localization/rssguard-cs_CZ.ts | 25 +- localization/rssguard-de_DE.ts | 484 +++++++++++++++++---------------- localization/rssguard-en_GB.ts | 25 +- localization/rssguard-fr_FR.ts | 25 +- localization/rssguard-nl_NL.ts | 123 +++++---- localization/rssguard-pt_BR.ts | 25 +- resources/text/CHANGELOG | 2 + src/core/networkfactory.cpp | 21 ++ src/core/networkfactory.h | 3 + src/gui/formsettings.cpp | 15 + src/gui/formsettings.ui | 148 +++++----- src/gui/formupdate.cpp | 43 ++- src/gui/formupdate.h | 10 + src/gui/messagesview.cpp | 21 +- 14 files changed, 586 insertions(+), 384 deletions(-) diff --git a/localization/rssguard-cs_CZ.ts b/localization/rssguard-cs_CZ.ts index 01c489a55..72ad4d1c1 100644 --- a/localization/rssguard-cs_CZ.ts +++ b/localization/rssguard-cs_CZ.ts @@ -1,6 +1,6 @@ - + CornerButton @@ -80,10 +80,12 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Názvy kanálů/kategorií. Counts of unread/all meesages. + Feed list header "counts" column tooltip. Počty nepřečtených/všech zpráviček. @@ -187,7 +189,9 @@ Status auto-aktualizace: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. Nelze upravit položku @@ -613,7 +617,9 @@ Status auto-aktualizace: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. Lokalizace @@ -675,10 +681,12 @@ Status auto-aktualizace: %5 Code + Lang. code column of language list. Kód Version + Version column of skin list. Verze @@ -780,6 +788,7 @@ Status auto-aktualizace: %5 Name + Skin list name column. Název @@ -1589,42 +1598,52 @@ currently installed one. MessagesModel Id + Tooltip for ID of message. Read + Tooltip for "read" column in msg list. Přečteno Deleted + Tooltip for "deleted" column in msg list. Smazáno Important + Tooltip for "important" column in msg list. Důležité Feed + Tooltip for name of feed for message. Kanál Title + Tooltip for title of message. Nadpis Url + Tooltip for url of message. Author + Tooltip for author of message. Autor Created on + Tooltip for creation date of message. Vytvořeno Contents + Tooltip for contents of message. Obsah diff --git a/localization/rssguard-de_DE.ts b/localization/rssguard-de_DE.ts index 11c6f0c35..da3b80dc1 100644 --- a/localization/rssguard-de_DE.ts +++ b/localization/rssguard-de_DE.ts @@ -1,6 +1,6 @@ - + CornerButton @@ -80,16 +80,18 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Titel der Feeds/Kategorien. Counts of unread/all meesages. + Feed list header "counts" column tooltip. Anzahl ungelesener/aller Nachrichten. Root Name of root item of feed list which can be seen in feed add/edit dialog. - + Wurzel @@ -177,7 +179,9 @@ Auto-update status: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. Kann das Item nicht editieren @@ -427,7 +431,7 @@ Auto-update status: %5 Switch &fullscreen/normal mode - Schalte zwischen &Vollbild- und Normalmodus um. + Schalte zwischen &Vollbild- und Normalmodus um. Add new standard feed. @@ -509,10 +513,6 @@ Auto-update status: %5 Mark selected messages as &unread - - Add new feed/category - - &About application @@ -521,22 +521,6 @@ Auto-update status: %5 Displays extra info about this application. - - Update &all feeds - - - - Update &selected feeds - - - - &Edit selected feed/category - - - - &Delete selected feed/category - - Mark &selected feeds as read @@ -558,11 +542,35 @@ Auto-update status: %5 - Mark all &feeds as read + Marks all messages in all feeds read. This does not take message filters into account. - Marks all messages in all feeds read. This does not take message filters into account. + Deletes all messages from all feeds. + + + + Add new feed/category + + + + Update &all feeds + + + + Update &selected feeds + + + + &Edit selected feed/category + + + + &Delete selected feed/category + + + + Mark all &feeds as read @@ -573,10 +581,6 @@ Auto-update status: %5 Clean all feeds - - Deletes all messages from all feeds. - - FormSettings @@ -603,7 +607,9 @@ Auto-update status: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. Sprache @@ -665,10 +671,12 @@ Auto-update status: %5 Code + Lang. code column of language list. Code Version + Version column of skin list. Version @@ -747,11 +755,17 @@ Auto-update status: %5 <li>reload current web page (drag mouse up)</li> <li>open new web browser tab (drag mouse down)</li> </ul> - + Mausgesten mit mittlerer Maustaste benutzen. Mögliche Gesten sind: +<ul> +<li>vorherige Webseite (ziehe Maus nach links)</li> +<li>nächste Webseite (ziehe Maus nach rechts)</li> +<li>aktuelle Webseite neu laden (ziehe Maus nach oben)</li> +<li>neuen Webbrowserreiter öffnen (ziehe Maus nach unten)</li> +</ul> Queue new tabs (with hyperlinks) after the active tab - + Reihe neue Reiter (mit Hyperlink) nach dem aktiven Reiter ein no icon theme @@ -764,6 +778,7 @@ Auto-update status: %5 Name + Skin list name column. Name @@ -784,23 +799,23 @@ Auto-update status: %5 Hide tab bar if just one tab is visible - + Verstecke die Reiterleiste falls nur ein Reiter sichtbar ist Some critical settings were changed and will be applied after the application gets restarted. - + Ein paar kritische Einstellungen wurden geändert und werden nach dem Programmneustart angewendet. Critical settings were changed - + Kritische Einstellungen wurden geändert Problem with application restart - + Problem mit Programmneustart Application couldn't be restarted. Please, restart it manually for changes to take effect. - + Die Applikation konnte nicht neu gestartet werden. Bitte starten Sie sie neu damit die Änderungen angewendet werden können. Feeds & messages @@ -808,7 +823,7 @@ Auto-update status: %5 Some critical settings are not set. You must fix these settings in order confirm new settings. - + Ein paar kritische Einstellungen sind nicht gesetzt. Sie müssen diese Einstellungen korrigieren damit neue gesetzt werden können. Feeds @@ -820,7 +835,7 @@ Auto-update status: %5 Web browser executable - + Ausführbare Datei des Webbrowsers ... @@ -828,20 +843,20 @@ Auto-update status: %5 Executable parameters - + Parameter der ausführbaren Datei Note that "%1" (without quotation marks) is placeholder for URL of selected message. - + Beachten Sie, dass "%1" (ohne Anführungszeichen) der Platzhalter der URL der selektierten Nachricht ist. Select web browser executable - + Wählen Sie die ausführbare Datei des Webbrowsers Executables (*.*) File filter for external browser selection dialog. - + Ausführbare Dateien (*.*) Opera 12 or older @@ -849,7 +864,7 @@ Auto-update status: %5 Executable file of web browser - + Ausführbare Datei des Webbrowsern Parameters to executable @@ -857,37 +872,39 @@ Auto-update status: %5 some keyboard shortcuts are not unique - + einige Tastaturkombinationen sind nicht eindeutig List of errors: %1. - + Liste der Fehler: +%1. List of changes: %1. - + Liste der Änderungen: +%1. language changed - + Sprache geändert icon theme changed - + Icon-Thema geändert skin changed - + Skin geändert Use sample arguments for - + Verwenden Sie Beispielargumente für Use in-memory database as the working database - + Verwenden Sie die In-Speicherdatenbank als aktuelle Datenbank Usage of in-memory working database has several advantages and pitfalls. Make sure that you are familiar with these before you turn this feature on. Advantages: @@ -905,23 +922,23 @@ Authors of this application are NOT responsible for lost data. in-memory database switched - + In-Speicherdatenbank umgeschaltet Internal web browser - + Interner Webbrowser External web browser - + Externer Webbrowser Remove all read messages from all standard feeds on application exit - + Lösche alle gelesenen Nachrichten aus allen Standard-Feeds beim Beenden der Applikation WARNING: Note that switching to another data storage type will NOT copy existing your data from currently active data storage to newly selected one. - + Warnung: Beachten Sie, dass das Umschalten auf einen anderen Datenspeicherung ihre bestehenden Daten NICHT auf den neuen selektierten kopieren wird. Database driver @@ -933,19 +950,19 @@ Authors of this application are NOT responsible for lost data. Test setup - + Testkonfiguration Note that speed of used MySQL server and latency of used connection medium HEAVILY influences the final performance of this application. Using slow database connections leads to bad performance when browsing feeds or messages. - + Beachten Sie, dass die Geschwindigkeit und Latenz des verwendeten MySQL-Servers SEHR vom verwendeten Verbindungsmedium abhängt und die Applikation somit beeinflusst. Langsame Verbindungen führen zu einer schlechten Performanz der Feeds oder Nachrichten. Right mouse button double-click - + Doppelklick der rechten Maustaste Auto-update all feeds every - + Auto-Update alle Feeds alle minutes @@ -953,11 +970,11 @@ Authors of this application are NOT responsible for lost data. Feed connection timeout - + Verbindungs-Timeout des Feed Connection timeout is time interval which is reserved for downloading new messages for the feed. If this time interval elapses, then download process is aborted. - + Der Verbindungs-Timeout ist das Intervall welches für das Herunterladen neuer Nachrichten reserviert ist. Falls dieses Intervall abläuft wird das Herunterladen abgebrochen. ms @@ -965,111 +982,111 @@ Authors of this application are NOT responsible for lost data. Update all feed on application startup - + Update alle Feeds bei Applikationsstart Data storage - + Datenspeicher SQLite (embedded database) - + SQLite (eingebaute Datenbank) MySQL/MariaDB (dedicated database) - + MySQL/MariaDB (zugeordnete Datenbank) Hostname of your MySQL server - + Hostname Ihres MySQL Servers Username to login with - + Benutzername zum einloggen Password for your username - + Passwort für Ihren Benutzernamen data storage backend changed - + Datenspeicher-Backend wurde geändert Hostname is empty. - + Hostname ist leer. Hostname looks ok. - + Hostname sieht okay aus. Username is empty. - + Benutzername ist leer. Username looks ok. - + Benutzername sieht okay aus. Password is empty. - + Passwort ist leer. Password looks ok. - + Passwort sieht okay aus. Toolbar button style - + Toolbar-Knopfstil Hide main window when it is minimized - + Verstecke das Hauptfenster wenn es minimisiert ist No connection test triggered so far. - + Bisher noch kein Verbindungstest ausgelöst. Note that these settings are applied only on newly established connections. - + Beachte, dass diese Einstellungen nur auf neue Verbindungen angewendet werden. Select browser - + Wähle Browser aus No proxy - + Kein Proxy System proxy - + System Proxy Icon only - + Nur Icon Text only - + Nur Text Text beside icon - + Text neben Icon Text under icon - + Text unter Icon Follow OS style - + Folge Betriebssystemstil Keep message selection in the middle of the message list viewport - + Behalte die Nachrichten in der Mitte des Nachrichten-Listenfelds You did not executed any connection test yet. @@ -1084,7 +1101,7 @@ Authors of this application are NOT responsible for lost data. FormStandardCategoryDetails Parent category - + Stammkategorie Title @@ -1100,11 +1117,11 @@ Authors of this application are NOT responsible for lost data. Select parent item for your category. - + Selektieren Sie das Stamm-Item für Ihre Kategorie Select icon for your category. - + Selektieren Sie das Icon für Ihre Kategorie Add new standard category @@ -1112,35 +1129,35 @@ Authors of this application are NOT responsible for lost data. Edit existing standard category - + Editiere die Standardkategorie Category name is ok. - + Kategoriename ist okay. Category name is too short. - + Kategoriename ist zu kurz. Description is empty. - + Beschreibung ist leer. The description os ok. - + Die Beschreibung ist okay. Select icon file for the category - + Selektiere die Icon-Datei für die Kategorie Images (*.bmp *.jpg *.jpeg *.png *.svg *.tga) - + Bilder (*.bmp *.jpg *.jpeg *.png *.svg *.tga) Select icon - + Selektiere Icon Cancel @@ -1149,74 +1166,74 @@ Authors of this application are NOT responsible for lost data. Look in: Label to describe the folder for icon file selection dialog. - + Schauen Sie in: Icon name: - + Icon-Name: Icon type: - + Icon-Typ: Category title - + Kategorietitel Set title for your category. - + Setzen Sie den Titel für die Kategorie. Category description - + Kategoriebeschreibung Set description for your category. - + Setzen Sie die Beschreibung für die Kategorie. Icon selection - + Icon-Selektion Load icon from file... - + Lade Icon aus Datei... Do not use icon - + Icon nicht verwenden Use default icon - + Standard-Icon verwenden Cannot add category - + Kategorie kann nicht hinzugefügt werden Category was not added due to error. - + Kategorie wurde nicht hinzugefügt aufgrund eines Fehler. Cannot edit category - + Kategorie kann nicht editiert werden Category was not edited due to error. - + Kategorie wurde nicht editiert aufgrund eines Fehler. FormStandardFeedDetails Parent category - + Stammkategorie Select parent item for your feed. - + Selektieren Sie das Stamm-Item für Ihren Feed. Type @@ -1224,7 +1241,7 @@ Authors of this application are NOT responsible for lost data. Select type of the standard feed. - + Selektiere den Typ des Standard-Feeds. Title @@ -1240,11 +1257,11 @@ Authors of this application are NOT responsible for lost data. Encoding - + Enkodierung Select encoding of the standard feed. If you are unsure about the encoding, then select "UTF-8" encoding. - + Selektiere die Enkodierung des Standard-Feeds. Falls Sie unsicher sind wählen einfach die "UTF-8" Enkodierung. Icon @@ -1252,59 +1269,59 @@ Authors of this application are NOT responsible for lost data. Select icon for your feed. - + Selektieren Sie das Icon für Ihren Feed. Add new standard feed - + Füge einen neuen Standard-Feed hinzu. Edit existing standard feed - + Editiere die Standardkategorie Feed name is ok. - + Feed-Name ist okay. Feed name is too short. - + Feed-Name ist zu kurz. Description is empty. - + Beschreibung ist leer. The description os ok. - + Die Beschreibung ist okay. Feed title - + Feed-Titel Set title for your feed. - + Setzen Sie den Titel für Ihren Feed. Feed description - + Feed-Beschreibung Set description for your feed. - + Setzen Sie die Beschreibung für Ihren Feed. Set url for your feed. - + Setze die URL für Ihren Feed. Some feeds require authentication, including GMail feeds. BASIC, NTLM-2 and DIGEST-MD5 authentication schemes are supported. - + Gewisse Feeds brauchen eine Authentifizierung, wie z.b. Gmail-Feeds. BASIC, NTLM-2 und DIGEST-MD5 Authentifizierungsmodelle werden unterstützt. Requires authentication - + Benötigt Authentifizierung Username @@ -1316,43 +1333,43 @@ Authors of this application are NOT responsible for lost data. The url is ok. - + Die URL ist okay. The url does not meet standard pattern. Does your url start with "http://" or "https://" prefix. - + Die URL entspricht nicht dem Standardmuster. Beginnt Ihre URL mit "http://" oder "https://"? The url is empty. - + Die URL ist leer. Username is ok or it is not needed. - + Benutzername ist okay oder wird nicht benötigt. Username is empty. - + Benutzername ist leer. Password is ok or it is not needed. - + Passwort ist okay oder wird nicht benötigt. Password is empty. - + Passwort ist leer. Select icon file for the feed - + Selektiere die Icon-Datei für den Feed. Images (*.bmp *.jpg *.jpeg *.png *.svg *.tga) - + Bilder (*.bmp *.jpg *.jpeg *.png *.svg *.tga) Select icon - + Selektiere Icon Cancel @@ -1361,15 +1378,15 @@ Authors of this application are NOT responsible for lost data. Look in: Label for field with icon file name textbox for selection dialog. - + Schauen Sie in: Icon name: - + Icon-Name: Icon type: - + Icon-Typ: Full feed url including scheme @@ -1377,27 +1394,27 @@ Authors of this application are NOT responsible for lost data. Set username to access the feed. - + Setzen Sie den Benutzernamen um zum Feed zu gelangen. Set password to access the feed. - + Setzen Sie das Passwort um zum Feed zu gelangen. Icon selection - + Icon-Selektion Load icon from file... - + Lade Icon aus Datei... Do not use icon - + Icon nicht verwenden Use default icon - + Standard-Icon verwenden Select the auto-update strategy for this feed. Default auto-update strategy means that the feed will be update in time intervals set in application settings. @@ -1413,86 +1430,86 @@ Authors of this application are NOT responsible for lost data. Cannot add feed - + Kann Feed nicht hinzufügen Feed was not added due to error. - + Feed wurde nicht hinzugefügt aufgrund eines Fehler. Cannot edit feed - + Feed kann nicht editiert werden Feed was not edited due to error. - + Feed wurde nicht editiert aufgrund eines Fehler. Fetch it now - + Jetzt abrufen Fetch metadata - + Metadaten abrufen No metadata fetched so far. - + Bisher keine Metadaten abgerufen. Auto-update using global interval - + Auto-Update benutzt globales Intervall Auto-update every - + Auto-Update alle Do not auto-update at all - + Kein Auto-Update ausführen All metadata fetched successfully. - + Alle Metadaten wurden erfolgreich abgerufen. Feed and icon metadata fetched. - + Feed- und Icon-Metadaten abgerufen. Result: %1. - + Resultat: %1. Feed or icon metatada not fetched. - + Feed- oder Icon-Metadaten nicht abgerufen. Error: %1. - + Fehler: %1. No metadata fetched. - + Keine Metadaten abgerufen. FormUpdate Current release - + Aktuelle Version Available release - + Verfügbare Version Changes - + Änderungen Status - + Status unknown @@ -1502,33 +1519,36 @@ Authors of this application are NOT responsible for lost data. List with updates was not downloaded successfully. - + List mit Updates wurde nicht +erfolgreich heruntergeladen. New release available. - + Neue Version verfügbar. This is new version which can be downloaded and installed. - + Dies ist die neue Version welche +heruntergeladen und installiert werden kann. This is new version. Upgrade to it manually or via your system package manager. - + Dies ist die neue Version. Updaten Sie manuell oder über den System-Package-Manager. Error: '%1'. - + Fehler: '%1'. No new release available. - + Keine neue Version verfügbar. This release is not newer than currently installed one. - + Diese Version ist nicht neuer als +die aktuell installierte. Check for updates @@ -1554,101 +1574,111 @@ currently installed one. LocationLineEdit Website address goes here - + Die Webseitenadresse kommt hierhin MessagesModel Id + Tooltip for ID of message. ID Read - + Tooltip for "read" column in msg list. + Lesen Deleted + Tooltip for "deleted" column in msg list. Gelöscht Important + Tooltip for "important" column in msg list. Wichtig Feed + Tooltip for name of feed for message. Feed Title + Tooltip for title of message. Titel Url + Tooltip for url of message. Url Author + Tooltip for author of message. Author Created on - + Tooltip for creation date of message. + Erstellt am Contents + Tooltip for contents of message. Inhalt Id of the message. - + ID der Nachricht. Is message read? - + Wurde die Nachricht gelesen? Is message deleted? - + Wurde die Nachricht gelöscht? Is message important? - + Ist die Nachricht wichtig? Id of feed which this message belongs to. - + ID des Feeds zu welchem die Nachricht gehört. Title of the message. - + Titel der Nachricht. Url of the message. - + URL der Nachricht. Author of the message. - + Author der Nachricht. Creation date of the message. - + Erstellungsdatum der Nachricht. Contents of the message. - + Inhalt der Nachricht. MessagesView Context menu for messages - + Kontextmenü der Nachricht External browser not set - + Externer Browser wurde nicht gesetzt External browser is not set, head to application settings and set it up to use this feature. @@ -1656,19 +1686,19 @@ currently installed one. Meesage without URL - + Nachricht ohne URL Message '%s' does not contain URL. - + Nachricht "%" enthält keine URL. Problem with starting external web browser - + Problem mit Start des externen Webbrowsers External web browser could not be started. - + Externer Webbrowser konnte nicht gestartet werden. @@ -1759,35 +1789,35 @@ currently installed one. LANG_VERSION Version of your translation, e.g. 1.0. - 0.02 + 0.03 LANG_AUTHOR Name of translator - optional. - Martin Rotter + Patrick Scheller LANG_EMAIL Email of translator - optional. - rotter.martinos@gmail.com + patlecat@gmail.com ShortcutCatcher Reset shortcut. - + Kürzel zurücksetzen. Set shortcut. - + Kürzel setzen. StatusBar Fullscreen mode - + Vollbildmodus Switch application between fulscreen/normal states right from this status bar icon. @@ -1798,11 +1828,11 @@ currently installed one. TabBar Close this tab. - + Schliesse diesen Reiter. Close tab - + Schliesse Reiter @@ -1813,7 +1843,7 @@ currently installed one. Browse your feeds and messages - + Blätteren Sie Ihre Feeds und Nachrichten Web browser @@ -1825,14 +1855,14 @@ currently installed one. TrayIconMenu Close opened modal dialogs first. - + Schliessen Sie zuerst alle modalen Fenster. WebBrowser Navigation panel - + Navigations-Panel Back @@ -1844,7 +1874,7 @@ currently installed one. Reload - + Neu laden Stop @@ -1861,15 +1891,15 @@ currently installed one. Decrease zoom. - + Zoom verkleinern. Reset zoom to default. - + Zoom auf Standard zurücksetzen. Increase zoom. - + Zoom vergrössern. Written by @@ -1893,42 +1923,42 @@ currently installed one. Reload current web page. - + Aktuelle Webseite neu laden. Stop web page loading. - + Stoppe das laden der Webseite. WebView Reload web page - + Webseite neu laden Copy link url - + URL-Link kopieren Copy image - + Bild kopieren Copy image url - + Bild-URL kopieren Open link in new tab - + Link in neuem Reiter öffnen Follow link - + Link folgen Open image in new tab - + Bild in neuem Reiter öffnen Page not found @@ -1960,11 +1990,11 @@ currently installed one. Reload current web page. - + Lade aktuelle Webseite neu. Copy selection - + Kopiere Selektion Copies current selection into the clipboard. diff --git a/localization/rssguard-en_GB.ts b/localization/rssguard-en_GB.ts index 6fdec0ca8..5126060cf 100644 --- a/localization/rssguard-en_GB.ts +++ b/localization/rssguard-en_GB.ts @@ -1,6 +1,6 @@ - + CornerButton @@ -80,10 +80,12 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Counts of unread/all meesages. + Feed list header "counts" column tooltip. @@ -177,7 +179,9 @@ Auto-update status: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. @@ -603,7 +607,9 @@ Auto-update status: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. @@ -665,10 +671,12 @@ Auto-update status: %5 Code + Lang. code column of language list. Version + Version column of skin list. @@ -764,6 +772,7 @@ Auto-update status: %5 Name + Skin list name column. @@ -1561,42 +1570,52 @@ currently installed one. MessagesModel Id + Tooltip for ID of message. Read + Tooltip for "read" column in msg list. Deleted + Tooltip for "deleted" column in msg list. Important + Tooltip for "important" column in msg list. Feed + Tooltip for name of feed for message. Title + Tooltip for title of message. Url + Tooltip for url of message. Author + Tooltip for author of message. Created on + Tooltip for creation date of message. Contents + Tooltip for contents of message. diff --git a/localization/rssguard-fr_FR.ts b/localization/rssguard-fr_FR.ts index afbdb4fe1..4369e8d2a 100644 --- a/localization/rssguard-fr_FR.ts +++ b/localization/rssguard-fr_FR.ts @@ -1,6 +1,6 @@ - + CornerButton @@ -80,10 +80,12 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Counts of unread/all meesages. + Feed list header "counts" column tooltip. @@ -177,7 +179,9 @@ Auto-update status: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. @@ -603,7 +607,9 @@ Auto-update status: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. Langage @@ -665,10 +671,12 @@ Auto-update status: %5 Code + Lang. code column of language list. Code Version + Version column of skin list. Version @@ -764,6 +772,7 @@ Auto-update status: %5 Name + Skin list name column. Nom @@ -1563,42 +1572,52 @@ currently installed one. MessagesModel Id + Tooltip for ID of message. Id Read + Tooltip for "read" column in msg list. Lire Deleted + Tooltip for "deleted" column in msg list. Supprimé Important + Tooltip for "important" column in msg list. Important Feed + Tooltip for name of feed for message. Title + Tooltip for title of message. Titre Url + Tooltip for url of message. Url Author + Tooltip for author of message. Auteur Created on + Tooltip for creation date of message. Contents + Tooltip for contents of message. diff --git a/localization/rssguard-nl_NL.ts b/localization/rssguard-nl_NL.ts index ff963570b..2cf167408 100644 --- a/localization/rssguard-nl_NL.ts +++ b/localization/rssguard-nl_NL.ts @@ -1,12 +1,12 @@ - + CornerButton Open new web browser tab. Tooltip for "new tab" webbrowser corner button. - + Open een nieuw webbrowser tabblad @@ -80,10 +80,12 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Naam van feeds/categorieën. Counts of unread/all meesages. + Feed list header "counts" column tooltip. Aantal van alle ongelezen berichten. @@ -184,7 +186,9 @@ Status automatisch bijwerken: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. Kan item niet bewerken @@ -222,7 +226,7 @@ Status automatisch bijwerken: %5 %1 is performing scheduled update of some feeds. RSS Guard is performing updates right now. - + %1 is geplande updates van sommige feeds aan het uitvoeren. @@ -286,12 +290,12 @@ Status automatisch bijwerken: %5 <body>%5 is a (very) tiny feed reader.<br><br>This software is distributed under the terms of GNU General Public License, version 3.<br><br>Contacts:<ul><li><a href="mailto://%1">%1</a> ~email</li><li><a href="%2">%2</a> ~website</li></ul>You can obtain source code for %5 from its website.<br><br><br>Copyright (C) 2011-%3 %4</body> - + <body>%5 is een (zeer) makelijk te gebruiken feed lezer<br><br>Dit programma is beschikbaar onder te termen van de GNU General Public License versie 3.<br><br>Contacts:<ul><li><a href="mailto://%1">%1</a> ~email</li><li><a href="%2">%2</a> ~website</li></ul>U kunt de broncode voor %5 op de website..<br><br><br>Auteursrecht (C) 2011-%3 %4</body> About %1 About RSS Guard dialog title. - + Over %1 @@ -510,79 +514,79 @@ Status automatisch bijwerken: %5 Mark selected messages as &read - + Markeer geselecteerde berichten als &gelezen Mark selected messages as &unread - - - - Add new feed/category - + Markeer geselecteerde berichten als &ongelezen &About application - + &Over RSSguard Displays extra info about this application. - - - - Update &all feeds - - - - Update &selected feeds - - - - &Edit selected feed/category - - - - &Delete selected feed/category - + Toon extra informatie over RSSguard. Mark &selected feeds as read - + Markeer ge&selecteerde feeds als gelezen Mark selected feeds as unread - + Markeer geselecteerde bericht als ongelezen &Delete selected messages - + Verwij&der geselecteerde berichten. Clean selected feeds - + Wis geselecteerde feeds Deletes all messages from selected feeds. - - - - Mark all &feeds as read - + Verwijder alle berichten van geselecteerde feeds. Marks all messages in all feeds read. This does not take message filters into account. - - - - View selected feeds in newspaper mode - - - - Clean all feeds - + Markeer alle berichten van alle feeds als gelezen. Dit is niet van toepassing op berichten filters in account. Deletes all messages from all feeds. - + Verwijder alle berichten van alle feeds. + + + Add new feed/category + Voeg nieuwe feeds/categorieën toe + + + Update &all feeds + &Alle feeds bijwerken + + + Update &selected feeds + Update ge&selecteerde feeds + + + &Edit selected feed/category + B&ewerk geselecteerde feed/categorie + + + &Delete selected feed/category + Verwij&der geselecteerde feed/categorie + + + Mark all &feeds as read + Markeer alle &feeds als gelezen + + + View selected feeds in newspaper mode + Bekijk de geselecteerde items in de krantweergave modus + + + Clean all feeds + Alle feeds opschonen @@ -610,7 +614,9 @@ Status automatisch bijwerken: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. Taal @@ -672,10 +678,12 @@ Status automatisch bijwerken: %5 Code + Lang. code column of language list. Code Version + Version column of skin list. Versie @@ -777,6 +785,7 @@ Status automatisch bijwerken: %5 Name + Skin list name column. Naam @@ -1098,11 +1107,11 @@ Auteurs van Rssguard zijn NIET verantwoordelijk voor verlies van gegevens. You did not executed any connection test yet. - + U heeft nog geen verbindings test uitgevoerd. Launch %1 on operating system startup - + Laad %1 als systeem opstart @@ -1589,42 +1598,52 @@ de geïnstalleerde. MessagesModel Id + Tooltip for ID of message. ld Read + Tooltip for "read" column in msg list. Lees Deleted + Tooltip for "deleted" column in msg list. verwijder Important + Tooltip for "important" column in msg list. Belangrijk Feed + Tooltip for name of feed for message. Feed Title + Tooltip for title of message. Titel Url + Tooltip for url of message. Url Author + Tooltip for author of message. Auteur Created on + Tooltip for creation date of message. Gemaakt op Contents + Tooltip for contents of message. Inhoud diff --git a/localization/rssguard-pt_BR.ts b/localization/rssguard-pt_BR.ts index eef29d40e..99eeb475d 100644 --- a/localization/rssguard-pt_BR.ts +++ b/localization/rssguard-pt_BR.ts @@ -1,6 +1,6 @@ - + CornerButton @@ -80,10 +80,12 @@ Titles of feeds/categories. + Feed list header "titles" column tooltip. Títulos dos feeds/categorias. Counts of unread/all meesages. + Feed list header "counts" column tooltip. Quantidade de mensagens não lidas/todas. @@ -177,7 +179,9 @@ Auto-update status: %5 Cannot edit item - Warning messagebox title when selected item cannot be edited. + Warning messagebox title when selected item cannot be edited. +---------- +Warning messagebox title when selected item cannot be edited. Não foi possível editar o item @@ -603,7 +607,9 @@ Auto-update status: %5 Language - Language settings section. + Language settings section. +---------- +Language column of language list. @@ -665,10 +671,12 @@ Auto-update status: %5 Code + Lang. code column of language list. Version + Version column of skin list. @@ -764,6 +772,7 @@ Auto-update status: %5 Name + Skin list name column. @@ -1561,42 +1570,52 @@ currently installed one. MessagesModel Id + Tooltip for ID of message. Read + Tooltip for "read" column in msg list. Deleted + Tooltip for "deleted" column in msg list. Important + Tooltip for "important" column in msg list. Feed + Tooltip for name of feed for message. Title + Tooltip for title of message. Título Url + Tooltip for url of message. Author + Tooltip for author of message. Created on + Tooltip for creation date of message. Contents + Tooltip for contents of message. diff --git a/resources/text/CHANGELOG b/resources/text/CHANGELOG index 6409b3c05..1e6f07f12 100644 --- a/resources/text/CHANGELOG +++ b/resources/text/CHANGELOG @@ -2,6 +2,8 @@ [1.9.9.6]
  • [~] Message list optimizations.
  • +
  • [+] Feed list categories exapand status is now persistent.
  • +
  • [+] System-wide external web browser can now be used.
[1.9.9.6] diff --git a/src/core/networkfactory.cpp b/src/core/networkfactory.cpp index 3ea8eb873..daf1f5945 100644 --- a/src/core/networkfactory.cpp +++ b/src/core/networkfactory.cpp @@ -17,17 +17,38 @@ #include "core/networkfactory.h" +#include "core/defs.h" #include "core/silentnetworkaccessmanager.h" #include "core/feedsmodelstandardfeed.h" +#include "core/settings.h" #include #include #include +#include +#include NetworkFactory::NetworkFactory() { } +bool NetworkFactory::openUrlInExternalBrowser(const QString &url) { + if (Settings::instance()->value(APP_CFG_BROWSER, + "custom_external_browser", + false).toBool()) { + QString browser = Settings::instance()->value(APP_CFG_BROWSER, + "external_browser_executable").toString(); + QString arguments = Settings::instance()->value(APP_CFG_BROWSER, + "external_browser_arguments", + "%1").toString(); + + return QProcess::startDetached(browser, QStringList() << arguments.arg(url)); + } + else { + return QDesktopServices::openUrl(url); + } +} + QString NetworkFactory::networkErrorText(QNetworkReply::NetworkError error_code) { switch (error_code) { case QNetworkReply::ProtocolUnknownError: diff --git a/src/core/networkfactory.h b/src/core/networkfactory.h index c4db0c668..a8c361d82 100644 --- a/src/core/networkfactory.h +++ b/src/core/networkfactory.h @@ -32,6 +32,9 @@ class NetworkFactory { explicit NetworkFactory(); public: + static bool openUrlInExternalBrowser(const QString &url); + + // Returns human readable text for given network error. static QString networkErrorText(QNetworkReply::NetworkError error_code); // Performs SYNCHRONOUS download if favicon for the site, diff --git a/src/gui/formsettings.cpp b/src/gui/formsettings.cpp index 33b74fbab..3e88da3f3 100755 --- a/src/gui/formsettings.cpp +++ b/src/gui/formsettings.cpp @@ -229,6 +229,15 @@ bool FormSettings::doSaveCheck() { resulting_information.append(tr("some keyboard shortcuts are not unique")); } + // User selected custom external browser but did not set its + // properties. + if (m_ui->m_grpCustomExternalBrowser->isChecked() && + (m_ui->m_txtExternalBrowserExecutable->text().simplified().isEmpty() || + !m_ui->m_txtExternalBrowserArguments->text().simplified().contains("%1"))) { + everything_ok = false; + resulting_information.append(tr("custom external browser is not set correctly")); + } + if (!everything_ok) { resulting_information.replaceInStrings(QRegExp("^"), QString::fromUtf8(" • ")); @@ -345,12 +354,18 @@ void FormSettings::loadBrowser() { m_ui->m_txtExternalBrowserArguments->setText(settings->value(APP_CFG_BROWSER, "external_browser_arguments", "%1").toString()); + m_ui->m_grpCustomExternalBrowser->setChecked(settings->value(APP_CFG_BROWSER, + "custom_external_browser", + false).toBool()); } void FormSettings::saveBrowser() { Settings *settings = Settings::instance(); // Save settings of GUI of web browser. + settings->setValue(APP_CFG_BROWSER, + "custom_external_browser", + m_ui->m_grpCustomExternalBrowser->isChecked()); settings->setValue(APP_CFG_BROWSER, "browser_progress_color", m_initialSettings.m_webBrowserProgress.name()); diff --git a/src/gui/formsettings.ui b/src/gui/formsettings.ui index e1cc331d3..c656bad80 100644 --- a/src/gui/formsettings.ui +++ b/src/gui/formsettings.ui @@ -17,7 +17,7 @@ - 0 + 5 @@ -633,7 +633,7 @@ Authors of this application are NOT responsible for lost data. - 0 + 1 @@ -712,73 +712,91 @@ Authors of this application are NOT responsible for lost data. External web browser - - - - - Web browser executable + + + + + <html><head/><body><p>If unchecked, then default system-wide web browser is used.</p></body></html> - - - - - - - - Executable file of web browser - - - - - - - ... - - - - - - - - - Executable parameters + + Custom external web browser - - - - - - Parameters to executable + + false - - - - - - Use sample arguments for - - - - - - - QComboBox::AdjustToContents - - - - Select browser - - - - - - - - Note that "%1" (without quotation marks) is placeholder for URL of selected message. - - - Qt::AlignCenter + + true + + + + + Web browser executable + + + + + + + + + Executable file of web browser + + + + + + + ... + + + + + + + + + Executable parameters + + + + + + + Parameters to executable + + + + + + + Use sample arguments for + + + + + + + QComboBox::AdjustToContents + + + + Select browser + + + + + + + + Note that "%1" (without quotation marks) is placeholder for URL of selected message. + + + Qt::AlignCenter + + + + diff --git a/src/gui/formupdate.cpp b/src/gui/formupdate.cpp index f3c552aad..6232574b1 100755 --- a/src/gui/formupdate.cpp +++ b/src/gui/formupdate.cpp @@ -21,12 +21,11 @@ #include "core/systemfactory.h" #include "core/networkfactory.h" #include "gui/iconthemefactory.h" - -#if !defined(Q_OS_WIN) #include "gui/messagebox.h" -#endif +#include "gui/systemtrayicon.h" #include +#include FormUpdate::FormUpdate(QWidget *parent) @@ -37,6 +36,12 @@ FormUpdate::FormUpdate(QWidget *parent) setWindowFlags(Qt::MSWindowsFixedSizeDialogHint | Qt::Dialog); setWindowIcon(IconThemeFactory::instance()->fromTheme("application-about")); + m_btnUpdate = m_ui->m_buttonBox->addButton(tr("Update"), QDialogButtonBox::ActionRole); + m_btnUpdate->setToolTip(tr("Download new installation files.")); + m_btnUpdate->hide(); + + connect(m_btnUpdate, SIGNAL(clicked()), this, SLOT(startUpdate())); + #if !defined(Q_OS_WIN) MessageBox::iconify(m_ui->m_buttonBox); #endif @@ -49,6 +54,10 @@ FormUpdate::~FormUpdate() { delete m_ui; } +bool FormUpdate::isUpdateForThisSystem() { + return m_updateInfo.m_urls.keys().contains(OS_ID); +} + // TODO: tady v update nacist do m_lblSupportedPlatforms // seznam platform ktery danej release podporuje oddelenej carkama // treba "Windows, OS2" atp atp. @@ -59,6 +68,8 @@ FormUpdate::~FormUpdate() { void FormUpdate::checkForUpdates() { QPair update = SystemFactory::instance()->checkForUpdates(); + m_updateInfo = update.first; + if (update.second != QNetworkReply::NoError) { //: Uknown release. m_ui->m_lblAvailableRelease->setText(tr("unknown")); @@ -73,7 +84,6 @@ void FormUpdate::checkForUpdates() { m_ui->m_txtChanges->setText(update.first.m_changes); if (update.first.m_availableVersion > APP_VERSION) { -#if defined(Q_OS_WIN) || defined(Q_OS_OS2) m_ui->m_lblStatus->setStatus(WidgetWithStatus::Ok, tr("New release available."), tr("This is new version which can be\ndownloaded and installed.")); @@ -82,16 +92,31 @@ void FormUpdate::checkForUpdates() { // is available. // TODO: Tady po stisku update tlacitka se provede // stazeni archivu do tempu. -#else - m_ui->m_lblStatus->setStatus(WidgetWithStatus::Ok, - tr("New release available."), - tr("This is new version. Upgrade to it manually or via your system package manager.")); -#endif + m_btnUpdate->setVisible(isUpdateForThisSystem()); } else { m_ui->m_lblStatus->setStatus(WidgetWithStatus::Warning, tr("No new release available."), tr("This release is not newer than\ncurrently installed one.")); + m_btnUpdate->show(); + } + } +} + +void FormUpdate::startUpdate() { + if (!NetworkFactory::openUrlInExternalBrowser(m_updateInfo.m_urls.value(OS_ID).m_fileUrl)) { + if (SystemTrayIcon::isSystemTrayActivated()) { + SystemTrayIcon::instance()->showMessage(tr("Cannot update application"), + tr("Cannot navigate to installation file. Check new installation downloads " + "manually on project website."), + QSystemTrayIcon::Warning); + } + else { + MessageBox::show(this, + QMessageBox::Warning, + tr("Cannot update application"), + tr("Cannot navigate to installation file. Check new installation downloads " + "manually on project website.")); } } } diff --git a/src/gui/formupdate.h b/src/gui/formupdate.h index c9732d29d..3d18d6e37 100644 --- a/src/gui/formupdate.h +++ b/src/gui/formupdate.h @@ -19,9 +19,12 @@ #define FORMUPDATE_H #include +#include #include "ui_formupdate.h" +#include "core/systemfactory.h" + namespace Ui { class FormUpdate; @@ -35,12 +38,19 @@ class FormUpdate : public QDialog { explicit FormUpdate(QWidget *parent = 0); virtual ~FormUpdate(); + // Returns true if current update provides + // installation file for current platform. + bool isUpdateForThisSystem(); + protected slots: // Check for updates and interprets the results. void checkForUpdates(); + void startUpdate(); private: Ui::FormUpdate *m_ui; + UpdateInfo m_updateInfo; + QPushButton *m_btnUpdate; }; #endif // FORMUPDATE_H diff --git a/src/gui/messagesview.cpp b/src/gui/messagesview.cpp index 545b6ef62..f64bbc1b3 100644 --- a/src/gui/messagesview.cpp +++ b/src/gui/messagesview.cpp @@ -20,14 +20,13 @@ #include "core/messagesproxymodel.h" #include "core/messagesmodel.h" #include "core/settings.h" +#include "core/networkfactory.h" #include "gui/formmain.h" #include "gui/messagebox.h" #include #include #include -#include -#include MessagesView::MessagesView(QWidget *parent) @@ -241,26 +240,10 @@ void MessagesView::loadFeeds(const QList &feed_ids) { } void MessagesView::openSelectedSourceArticlesExternally() { - QString browser = Settings::instance()->value(APP_CFG_BROWSER, - "external_browser_executable").toString(); - QString arguments = Settings::instance()->value(APP_CFG_BROWSER, - "external_browser_arguments", - "%1").toString(); - - if (browser.isEmpty() || arguments.isEmpty()) { - MessageBox::show(this, - QMessageBox::Critical, - tr("External browser not set"), - tr("External browser is not set, head to application settings and set it up to use this feature.")); - - return; - } - foreach (const QModelIndex &index, selectionModel()->selectedRows()) { QString link = m_sourceModel->messageAt(m_proxyModel->mapToSource(index).row()).m_url; - if (!QProcess::startDetached(browser, - QStringList() << arguments.arg(link))) { + if (!NetworkFactory::openUrlInExternalBrowser(link)) { MessageBox::show(this, QMessageBox::Critical, tr("Problem with starting external web browser"),