MessagesDialog:

- Renamed "Favorite Tags" to "Quick View".
- Added the quick view "Starred" to the list to show all messages signed with a star.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4231 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2011-06-04 22:54:03 +00:00
parent 7661f4486d
commit 57ec7b34ce
5 changed files with 204 additions and 126 deletions

View File

@ -66,6 +66,16 @@
#define ROLE_UNREAD Qt::UserRole + 3
#define ROLE_MSGFLAGS Qt::UserRole + 4
#define ROLE_QUICKVIEW_TYPE Qt::UserRole
#define ROLE_QUICKVIEW_ID Qt::UserRole + 1
#define ROLE_QUICKVIEW_TEXT Qt::UserRole + 2
#define QUICKVIEW_TYPE_NOTHING 0
#define QUICKVIEW_TYPE_STATIC 1
#define QUICKVIEW_TYPE_TAG 2
#define QUICKVIEW_STATIC_ID_STARRED 1
#define ROW_INBOX 0
#define ROW_OUTBOX 1
#define ROW_DRAFTBOX 2
@ -144,7 +154,7 @@ MessagesDialog::MessagesDialog(QWidget *parent)
ui.setupUi(this);
m_bProcessSettings = false;
m_bInChange = false;
inChange = false;
m_nLockUpdate = 0;
connect(ui.messagestreeView, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(messageslistWidgetCostumPopupMenu(QPoint)));
@ -152,7 +162,7 @@ MessagesDialog::MessagesDialog(QWidget *parent)
connect(ui.messagestreeView, SIGNAL(clicked(const QModelIndex&)) , this, SLOT(clicked(const QModelIndex&)));
connect(ui.messagestreeView, SIGNAL(doubleClicked(const QModelIndex&)) , this, SLOT(doubleClicked(const QModelIndex&)));
connect(ui.listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(changeBox(int)));
connect(ui.tagWidget, SIGNAL(currentRowChanged(int)), this, SLOT(changeTag(int)));
connect(ui.quickViewWidget, SIGNAL(currentRowChanged(int)), this, SLOT(changeQuickView(int)));
connect(ui.tabWidget, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int)));
connect(ui.tabWidget, SIGNAL(tabCloseRequested(int)), this, SLOT(tabCloseRequested(int)));
connect(ui.newmessageButton, SIGNAL(clicked()), this, SLOT(newmessage()));
@ -283,8 +293,8 @@ MessagesDialog::MessagesDialog(QWidget *parent)
ui.tagButton->setMenu(menu);
// fill tags
fillTags();
// fill quick view
fillQuickView();
// create timer for navigation
timer = new QTimer(this);
@ -339,9 +349,9 @@ void MessagesDialog::processSettings(bool load)
msgwheader->restoreState(Settings->value("MessageTree").toByteArray());
}
// state of tag list
bool value = Settings->value("tagList", true).toBool();
ui.Tags_Button->setChecked(value);
// state of quick view list
bool value = Settings->value("QuickViewList", true).toBool();
ui.quickViewsButton->setChecked(value);
// state of splitter
ui.msgSplitter->restoreState(Settings->value("Splitter").toByteArray());
@ -358,8 +368,8 @@ void MessagesDialog::processSettings(bool load)
Settings->setValue("MessageTree", msgwheader->saveState());
Settings->setValue("MessageTreeVersion", messageTreeVersion);
// state of tag list
Settings->setValue("tagList", ui.Tags_Button->isChecked());
// state of quick view list
Settings->setValue("QuickViewList", ui.quickViewsButton->isChecked());
// state of splitter
Settings->setValue("Splitter", ui.msgSplitter->saveState());
@ -397,46 +407,60 @@ bool MessagesDialog::eventFilter(QObject *obj, QEvent *event)
return MainPage::eventFilter(obj, event);
}
void MessagesDialog::fillTags()
void MessagesDialog::fillQuickView()
{
MsgTagType tags;
rsMsgs->getMessageTagTypes(tags);
std::map<uint32_t, std::pair<std::string, uint32_t> >::iterator tag;
// fill tags
m_bInChange = true;
inChange = true;
// save current selection
QListWidgetItem *item = ui.tagWidget->currentItem();
uint32_t nSelectecTagId = 0;
QListWidgetItem *item = ui.quickViewWidget->currentItem();
int nSelectedType = 0;
uint32_t nSelectedId = 0;
if (item) {
nSelectecTagId = item->data(Qt::UserRole).toInt();
nSelectedType = item->data(ROLE_QUICKVIEW_TYPE).toInt();
nSelectedId = item->data(ROLE_QUICKVIEW_ID).toInt();
}
QListWidgetItem *itemToSelect = NULL;
QString text;
ui.tagWidget->clear();
ui.quickViewWidget->clear();
// add static items
item = new QListWidgetItem(tr("Starred"), ui.quickViewWidget);
item->setIcon(QIcon(IMAGE_STAR_ON));
item->setData(ROLE_QUICKVIEW_TYPE, QUICKVIEW_TYPE_STATIC);
item->setData(ROLE_QUICKVIEW_ID, QUICKVIEW_STATIC_ID_STARRED);
item->setData(ROLE_QUICKVIEW_TEXT, item->text()); // for updateMessageSummaryList
if (nSelectedType == QUICKVIEW_TYPE_STATIC && nSelectedId == QUICKVIEW_STATIC_ID_STARRED) {
itemToSelect = item;
}
for (tag = tags.types.begin(); tag != tags.types.end(); tag++) {
text = TagDefs::name(tag->first, tag->second.first);
item = new QListWidgetItem (text, ui.tagWidget);
item = new QListWidgetItem (text, ui.quickViewWidget);
item->setForeground(QBrush(QColor(tag->second.second)));
item->setIcon(QIcon(":/images/foldermail.png"));
item->setData(Qt::UserRole, tag->first);
item->setData(Qt::UserRole + 1, text); // for updateMessageSummaryList
item->setData(ROLE_QUICKVIEW_TYPE, QUICKVIEW_TYPE_TAG);
item->setData(ROLE_QUICKVIEW_ID, tag->first);
item->setData(ROLE_QUICKVIEW_TEXT, text); // for updateMessageSummaryList
if (tag->first == nSelectecTagId) {
if (nSelectedType == QUICKVIEW_TYPE_TAG && tag->first == nSelectedId) {
itemToSelect = item;
}
}
if (itemToSelect) {
ui.tagWidget->setCurrentItem(itemToSelect);
ui.quickViewWidget->setCurrentItem(itemToSelect);
}
m_bInChange = false;
inChange = false;
updateMessageSummaryList();
}
@ -691,42 +715,44 @@ void MessagesDialog::editmessage()
void MessagesDialog::changeBox(int)
{
if (m_bInChange) {
if (inChange) {
// already in change method
return;
}
m_bInChange = true;
inChange = true;
MessagesModel->removeRows (0, MessagesModel->rowCount());
ui.tagWidget->setCurrentItem(NULL);
ui.quickViewWidget->setCurrentItem(NULL);
m_eListMode = LIST_BOX;
insertMessages();
insertMsgTxtAndFiles();
m_bInChange = false;
inChange = false;
}
void MessagesDialog::changeTag(int)
void MessagesDialog::changeQuickView(int newrow)
{
if (m_bInChange) {
Q_UNUSED(newrow);
if (inChange) {
// already in change method
return;
}
m_bInChange = true;
inChange = true;
MessagesModel->removeRows (0, MessagesModel->rowCount());
ui.listWidget->setCurrentItem(NULL);
m_eListMode = LIST_TAG;
m_eListMode = LIST_QUICKVIEW;
insertMessages();
insertMsgTxtAndFiles();
m_bInChange = false;
inChange = false;
}
void MessagesDialog::messagesTagsChanged()
@ -735,7 +761,7 @@ void MessagesDialog::messagesTagsChanged()
return;
}
fillTags();
fillQuickView();
insertMessages();
}
@ -823,7 +849,8 @@ void MessagesDialog::insertMessages()
unsigned int msgbox = 0;
bool isTrash = false;
bool doFill = true;
uint32_t tagId = 0;
int quickViewType = 0;
uint32_t quickViewId = 0;
QString boxText;
QIcon boxIcon;
@ -868,14 +895,19 @@ void MessagesDialog::insertMessages()
}
break;
case LIST_TAG:
case LIST_QUICKVIEW:
{
QListWidgetItem *item = ui.tagWidget->currentItem();
QListWidgetItem *item = ui.quickViewWidget->currentItem();
if (item) {
tagId = item->data (Qt::UserRole).toInt();
quickViewType = item->data(ROLE_QUICKVIEW_TYPE).toInt();
quickViewId = item->data(ROLE_QUICKVIEW_ID).toInt();
boxText = item->text();
boxIcon = item->icon();
if (quickViewType == QUICKVIEW_TYPE_NOTHING) {
doFill = false;
}
} else {
doFill = false;
}
@ -917,10 +949,14 @@ void MessagesDialog::insertMessages()
continue;
}
}
} else if (m_eListMode == LIST_TAG) {
} else if (m_eListMode == LIST_QUICKVIEW && quickViewType == QUICKVIEW_TYPE_TAG) {
MsgTagInfo tagInfo;
rsMsgs->getMessageTag(it->msgId, tagInfo);
if (std::find(tagInfo.tagIds.begin(), tagInfo.tagIds.end(), tagId) == tagInfo.tagIds.end()) {
if (std::find(tagInfo.tagIds.begin(), tagInfo.tagIds.end(), quickViewId) == tagInfo.tagIds.end()) {
continue;
}
} else if (m_eListMode == LIST_QUICKVIEW && quickViewType == QUICKVIEW_TYPE_STATIC) {
if ((it->msgflags & RS_MSG_STAR) == 0) {
continue;
}
} else {
@ -1305,7 +1341,7 @@ void MessagesDialog::markWithStar(bool checked)
getSelectedMsgCount (&Rows, NULL, NULL, NULL);
setMsgStar(Rows, checked);
}
}
void MessagesDialog::setMsgStar(const QList<int> &Rows, bool star)
{
@ -1333,6 +1369,8 @@ void MessagesDialog::setMsgStar(const QList<int> &Rows, bool star)
item[COLUMN_DATA]->setData(msgFlag, ROLE_MSGFLAGS);
InitIconAndFont(item);
Lock.setUpdate(true);
}
}
@ -1567,6 +1605,7 @@ void MessagesDialog::updateMessageSummaryList()
unsigned int newSentboxCount = 0;
unsigned int inboxCount = 0;
unsigned int trashboxCount = 0;
unsigned int starredCount = 0;
/* calculating the new messages */
// rsMsgs->getMessageCount (&inboxCount, &newInboxCount, &newOutboxCount, &newDraftCount, &newSentboxCount);
@ -1589,6 +1628,11 @@ void MessagesDialog::updateMessageSummaryList()
tagCount [*tagId] = nCount;
}
if (it->msgflags & RS_MSG_STAR) {
starredCount++;
continue;
}
/* calculate box */
if (it->msgflags & RS_MSG_TRASH) {
trashboxCount++;
@ -1721,19 +1765,36 @@ void MessagesDialog::updateMessageSummaryList()
item->setText(textItem);
}
/* set tag counts */
int nRowCount = ui.tagWidget->count();
for (int nRow = 0; nRow < nRowCount; nRow++) {
QListWidgetItem *pItem = ui.tagWidget->item(nRow);
int nCount = tagCount[pItem->data(Qt::UserRole).toInt()];
int rowCount = ui.quickViewWidget->count();
for (int row = 0; row < rowCount; row++) {
QListWidgetItem *item = ui.quickViewWidget->item(row);
switch (item->data(ROLE_QUICKVIEW_TYPE).toInt()) {
case QUICKVIEW_TYPE_TAG:
{
int count = tagCount[item->data(ROLE_QUICKVIEW_ID).toInt()];
QString sText = pItem->data(Qt::UserRole + 1).toString();
if (nCount) {
sText += " (" + QString::number(nCount) + ")";
QString text = item->data(ROLE_QUICKVIEW_TEXT).toString();
if (count) {
text += " (" + QString::number(count) + ")";
}
pItem->setText(sText);
item->setText(text);
}
break;
case QUICKVIEW_TYPE_STATIC:
{
QString text = item->data(ROLE_QUICKVIEW_TEXT).toString();
switch (item->data(ROLE_QUICKVIEW_ID).toInt()) {
case QUICKVIEW_STATIC_ID_STARRED:
text += " (" + QString::number(starredCount) + ")";
break;
}
item->setText(text);
}
break;
}
}
}

View File

@ -54,8 +54,8 @@ private slots:
void messageslistWidgetCostumPopupMenu( QPoint point );
void folderlistWidgetCostumPopupMenu(QPoint);
void changeBox( int newrow );
void changeTag( int newrow );
void changeBox(int newrow);
void changeQuickView(int newrow);
void updateCurrentMessage();
void currentChanged(const QModelIndex&);
void clicked(const QModelIndex&);
@ -123,15 +123,15 @@ private:
void processSettings(bool load);
void setToolbarButtonStyle(Qt::ToolButtonStyle style);
void fillTags();
void fillQuickView();
void closeTab(const std::string &msgId);
bool m_bProcessSettings;
bool m_bInChange;
bool inChange;
int m_nLockUpdate; // use with LockUpdate
enum { LIST_NOTHING, LIST_BOX, LIST_TAG } m_eListMode;
enum { LIST_NOTHING, LIST_BOX, LIST_QUICKVIEW } m_eListMode;
std::string mCurrMsgId;

View File

@ -1018,11 +1018,6 @@ border-image: url(:/images/closepressed.png)
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="styleSheet">
<string notr="true">QTabBar::tab {
}
</string>
</property>
<property name="tabsClosable">
<bool>true</bool>
</property>
@ -1177,7 +1172,7 @@ border-image: url(:/images/closepressed.png)
</widget>
</item>
<item row="3" column="0">
<widget class="QListWidget" name="tagWidget">
<widget class="QListWidget" name="quickViewWidget">
<property name="maximumSize">
<size>
<width>160</width>
@ -1193,7 +1188,7 @@ border-image: url(:/images/closepressed.png)
</widget>
</item>
<item row="2" column="0">
<widget class="QToolButton" name="Tags_Button">
<widget class="QToolButton" name="quickViewsButton">
<property name="minimumSize">
<size>
<width>0</width>
@ -1207,14 +1202,14 @@ border-image: url(:/images/closepressed.png)
</size>
</property>
<property name="styleSheet">
<string notr="true">QToolButton#Tags_Button{
<string notr="true">QToolButton#quickViewsButton{
background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,
stop:0 #FEFEFE, stop:1 #E8E8E8);
border: 1px solid #CCCCCC;}</string>
</property>
<property name="text">
<string>Favorite Tags</string>
<string>Quick View</string>
</property>
<property name="icon">
<iconset resource="images.qrc">
@ -1390,9 +1385,9 @@ padding: 4px;
</resources>
<connections>
<connection>
<sender>Tags_Button</sender>
<sender>quickViewsButton</sender>
<signal>toggled(bool)</signal>
<receiver>tagWidget</receiver>
<receiver>quickViewWidget</receiver>
<slot>setVisible(bool)</slot>
<hints>
<hint type="sourcelabel">

View File

@ -6956,12 +6956,12 @@ p, li { white-space: pre-wrap; }
<name>MessagesDialog</name>
<message>
<location filename="../gui/MessagesDialog.ui" line="+576"/>
<location filename="../gui/MessagesDialog.cpp" line="+603"/>
<location filename="../gui/MessagesDialog.cpp" line="+627"/>
<source>New Message</source>
<translation>Neue Nachricht</translation>
</message>
<message>
<location filename="../gui/MessagesDialog.cpp" line="-65"/>
<location filename="../gui/MessagesDialog.cpp" line="-66"/>
<source>Reply to Message</source>
<translation>Antworten nur an Absender</translation>
</message>
@ -6976,20 +6976,20 @@ p, li { white-space: pre-wrap; }
<translation>In neuem Tab öffnen</translation>
</message>
<message>
<location line="+54"/>
<location line="+55"/>
<source>Remove Message</source>
<translation>Nachricht entfernen</translation>
</message>
<message>
<location filename="../gui/MessagesDialog.ui" line="+393"/>
<location filename="../gui/MessagesDialog.cpp" line="-397"/>
<location filename="../gui/MessagesDialog.cpp" line="-412"/>
<source>Date</source>
<translation>Datum</translation>
</message>
<message>
<location line="-5"/>
<location filename="../gui/MessagesDialog.cpp" line="-1"/>
<location line="+705"/>
<location line="+728"/>
<source>From</source>
<translation>Von</translation>
</message>
@ -7070,17 +7070,17 @@ p, li { white-space: pre-wrap; }
<translation>Anhänge</translation>
</message>
<message>
<location line="+180"/>
<location filename="../gui/MessagesDialog.cpp" line="-46"/>
<location line="+806"/>
<location line="+175"/>
<location filename="../gui/MessagesDialog.cpp" line="-51"/>
<location line="+823"/>
<location line="+10"/>
<source>Inbox</source>
<translation>Posteingang</translation>
</message>
<message>
<location line="+9"/>
<location filename="../gui/MessagesDialog.cpp" line="-812"/>
<location line="+825"/>
<location filename="../gui/MessagesDialog.cpp" line="-829"/>
<location line="+842"/>
<location line="+8"/>
<source>Outbox</source>
<translation>Postausgang</translation>
@ -7092,10 +7092,15 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<location line="+9"/>
<location filename="../gui/MessagesDialog.cpp" line="-825"/>
<location filename="../gui/MessagesDialog.cpp" line="-842"/>
<source>Sent</source>
<translation>Gesendet</translation>
</message>
<message>
<location line="+56"/>
<source>Quick View</source>
<translation>Schnellansicht</translation>
</message>
<message>
<source>Download all Recommended Files</source>
<translation type="obsolete">Alle Dateien runterladen</translation>
@ -7113,7 +7118,7 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Schlagwörter:</translation>
</message>
<message>
<location line="+173"/>
<location line="+117"/>
<location line="+3"/>
<source>Print...</source>
<translation>Drucken...</translation>
@ -7159,8 +7164,8 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Dokument drucken</translation>
</message>
<message>
<location line="-412"/>
<location filename="../gui/MessagesDialog.cpp" line="-673"/>
<location line="-407"/>
<location filename="../gui/MessagesDialog.cpp" line="-691"/>
<source>Subject</source>
<translation>Betreff</translation>
</message>
@ -7195,7 +7200,12 @@ p, li { white-space: pre-wrap; }
<translation>Gewählte Nachricht weiterleiten</translation>
</message>
<message>
<location line="+311"/>
<location line="+182"/>
<source>Starred</source>
<translation>Gekennzeichnet</translation>
</message>
<message>
<location line="+167"/>
<source>Edit</source>
<translation>Bearbeiten</translation>
</message>
@ -7205,17 +7215,17 @@ p, li { white-space: pre-wrap; }
<translation>Als neu bearbeiten</translation>
</message>
<message>
<location line="+30"/>
<location line="+7"/>
<source>Remove Messages</source>
<translation>Nachrichten entfernen</translation>
</message>
<message>
<location line="-39"/>
<location line="-40"/>
<source>Forward Message</source>
<translation>Weiterleiten</translation>
</message>
<message>
<location line="-353"/>
<location line="-367"/>
<source>Click to sort by attachments</source>
<translation>Klicken, um nach Anhang zu sortieren</translation>
</message>
@ -7231,12 +7241,12 @@ p, li { white-space: pre-wrap; }
</message>
<message>
<location line="+1"/>
<location line="+697"/>
<location line="+720"/>
<source>Click to sort by from</source>
<translation>Klicken, um nach Von zu sortieren</translation>
</message>
<message>
<location line="-696"/>
<location line="-719"/>
<source>Click to sort by date</source>
<translation>Klicken, um nach Datum zu sortieren</translation>
</message>
@ -7262,7 +7272,7 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Empfohlene Dateien einblenden</translation>
</message>
<message>
<location line="+698"/>
<location line="+721"/>
<source>Click to sort by to</source>
<translation>Klicken, um nach Empfänger zu sortieren</translation>
</message>
@ -7283,8 +7293,8 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">HTML-Dateien (*.htm *.html);;Alle Dateien (*)</translation>
</message>
<message>
<location line="-653"/>
<location line="+299"/>
<location line="-676"/>
<location line="+313"/>
<source>Reply to All</source>
<translation>Allen antworten</translation>
</message>
@ -7296,13 +7306,13 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;p, li { white-space: pre-wrap; }&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;Arial&apos;; font-size:8pt; font-weight:400; font-style:normal;&quot;&gt;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Alle Dateien runterladen&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<location filename="../gui/MessagesDialog.ui" line="+432"/>
<location filename="../gui/MessagesDialog.ui" line="+427"/>
<source>Total Inbox:</source>
<translation>Posteingang gesamt:</translation>
</message>
<message>
<location line="-277"/>
<location filename="../gui/MessagesDialog.cpp" line="-352"/>
<location line="-272"/>
<location filename="../gui/MessagesDialog.cpp" line="-366"/>
<source>Content</source>
<translation>Inhalt</translation>
</message>
@ -7320,20 +7330,19 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Schlagwort</translation>
</message>
<message>
<location line="+177"/>
<location filename="../gui/MessagesDialog.cpp" line="+583"/>
<location line="+852"/>
<location line="+172"/>
<location filename="../gui/MessagesDialog.cpp" line="+601"/>
<location line="+869"/>
<location line="+5"/>
<source>Trash</source>
<translation>Papierkorb</translation>
</message>
<message>
<location line="+47"/>
<source>Favorite Tags</source>
<translation>Schlagwörter</translation>
<translation type="obsolete">Schlagwörter</translation>
</message>
<message>
<location line="+67"/>
<location line="+114"/>
<source>Folders</source>
<translation>Ordner</translation>
</message>
@ -7346,7 +7355,7 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Neues Schlagwort...</translation>
</message>
<message>
<location filename="../gui/MessagesDialog.cpp" line="-1155"/>
<location filename="../gui/MessagesDialog.cpp" line="-1187"/>
<source>Mark as read</source>
<translation>Als gelesen markieren</translation>
</message>
@ -7361,7 +7370,7 @@ p, li { white-space: pre-wrap; }
<translation>Kennzeichnung</translation>
</message>
<message>
<location line="+18"/>
<location line="+30"/>
<source>Undelete</source>
<translation>Wiederherstellen</translation>
</message>
@ -7371,14 +7380,14 @@ p, li { white-space: pre-wrap; }
<translation>Papierkorb leeren</translation>
</message>
<message>
<location line="+237"/>
<location line="+841"/>
<location line="+240"/>
<location line="+858"/>
<location line="+8"/>
<source>Drafts</source>
<translation>Entwürfe</translation>
</message>
<message>
<location line="-808"/>
<location line="-820"/>
<source>To</source>
<translation>An</translation>
</message>
@ -7387,12 +7396,12 @@ p, li { white-space: pre-wrap; }
<translation type="obsolete">Editieren...</translation>
</message>
<message>
<location line="-696"/>
<location line="-719"/>
<source>Click to sort by star</source>
<translation>Klicken, um nach Kennzeichnung zu sortieren</translation>
</message>
<message>
<location line="+1424"/>
<location line="+1459"/>
<location line="+4"/>
<location line="+4"/>
<location line="+4"/>
@ -9845,7 +9854,7 @@ Lockdatei:
<translation>Der Start mit einem RetroShare Link wird nur unter Windows unterstützt.</translation>
</message>
<message>
<location filename="../gui/TurtleRouterDialog.cpp" line="+108"/>
<location filename="../gui/TurtleRouterStatistics.cpp" line="+136"/>
<source>(Age in seconds)</source>
<translation type="unfinished"></translation>
</message>
@ -9855,13 +9864,13 @@ Lockdatei:
<translation type="unfinished"></translation>
</message>
<message>
<location line="+215"/>
<source>Evolution of search requests:</source>
<location line="+135"/>
<source>Search requests repartition:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
<source>Evolution of tunnel requests:</source>
<location line="+6"/>
<source>Tunnel requests repartition:</source>
<translation type="unfinished"></translation>
</message>
</context>
@ -12322,7 +12331,7 @@ p, li { white-space: pre-wrap; }
<context>
<name>TransfersDialog</name>
<message>
<location filename="../gui/TransfersDialog.cpp" line="+291"/>
<location filename="../gui/TransfersDialog.cpp" line="+297"/>
<source>Cancel</source>
<translation>Abbrechen</translation>
</message>
@ -12332,7 +12341,7 @@ p, li { white-space: pre-wrap; }
<translation>Fertige ausblenden</translation>
</message>
<message>
<location line="-152"/>
<location line="-157"/>
<location line="+59"/>
<source>Status</source>
<translation>Status</translation>
@ -12361,7 +12370,7 @@ p, li { white-space: pre-wrap; }
<translation>Zeige Cache Übertragungen</translation>
</message>
<message>
<location line="+83"/>
<location line="+80"/>
<source>Uploads</source>
<translation></translation>
</message>
@ -12385,11 +12394,6 @@ p, li { white-space: pre-wrap; }
<source>Outstanding</source>
<translation>Ausstehend</translation>
</message>
<message>
<location line="+25"/>
<source>Tunneling</source>
<translation></translation>
</message>
<message>
<location filename="../gui/TransfersDialog.cpp" line="-2"/>
<location line="+60"/>
@ -12445,7 +12449,7 @@ p, li { white-space: pre-wrap; }
<translation>Übertragen</translation>
</message>
<message>
<location line="+118"/>
<location line="+123"/>
<source>Play</source>
<translation>Abspielen</translation>
</message>
@ -12570,7 +12574,7 @@ p, li { white-space: pre-wrap; }
<translation>Soll dieser Download wirklich abgebrochen und gelöscht werden?</translation>
</message>
<message>
<location line="-914"/>
<location line="-919"/>
<source>Speed / Queue position</source>
<translation>Geschwindigkeits- / Warteschlangenposition</translation>
</message>
@ -12597,7 +12601,17 @@ p, li { white-space: pre-wrap; }
<translation>Prüfsumme</translation>
</message>
<message>
<location line="+95"/>
<location line="+50"/>
<source>Router Statistics</source>
<translation type="unfinished">Router Statistiken</translation>
</message>
<message>
<location line="+2"/>
<source>Router Requests</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+48"/>
<source>Copy RetroShare Link</source>
<translation>Kopiere RetroShare Link</translation>
</message>
@ -12832,14 +12846,14 @@ p, li { white-space: pre-wrap; }
<context>
<name>TurtleRouterDialog</name>
<message>
<location filename="../gui/TurtleRouterDialog.cpp" line="-183"/>
<location line="+94"/>
<location filename="../gui/TurtleRouterDialog.cpp" line="+28"/>
<location line="+127"/>
<source>Search requests</source>
<translation>Suchanfragen</translation>
</message>
<message>
<location line="-89"/>
<location line="+109"/>
<location line="-122"/>
<location line="+142"/>
<source>Tunnel requests</source>
<translation>Tunnelanfragen</translation>
</message>
@ -12852,15 +12866,23 @@ p, li { white-space: pre-wrap; }
<translation>Router Statistiken</translation>
</message>
<message>
<location line="+18"/>
<location line="+14"/>
<source>F2F router information</source>
<translation>F2F Routerinformationen</translation>
</message>
</context>
<context>
<name>TurtleRouterStatistics</name>
<message>
<location filename="../gui/TurtleRouterStatistics.ui" line="+14"/>
<source>Router Statistics</source>
<translation type="unfinished">Router Statistiken</translation>
</message>
</context>
<context>
<name>TurtleRouterStatisticsWidget</name>
<message>
<location filename="../gui/TurtleRouterDialog.cpp" line="+79"/>
<location filename="../gui/TurtleRouterStatistics.cpp" line="+11"/>
<source>Turtle router traffic:</source>
<translation type="unfinished"></translation>
</message>