From 064b619f703acd7e19fe80bba8a8e0abfc0cea53 Mon Sep 17 00:00:00 2001 From: thunder2 Date: Sun, 21 Nov 2010 21:12:35 +0000 Subject: [PATCH] Added standard context menu to the input text in private chat, group chat and create forum message. Added paste RetroShare link to the context menu of the text edit and file list in message composer. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3846 b45a01b8-16f6-495d-af2f-9b41ad6348cc --- retroshare-gui/src/gui/MessengerWindow.cpp | 2 +- retroshare-gui/src/gui/PeersDialog.cpp | 28 +- retroshare-gui/src/gui/PeersDialog.h | 5 - retroshare-gui/src/gui/PeersDialog.ui | 9 +- retroshare-gui/src/gui/TransfersDialog.cpp | 4 +- .../src/gui/chat/PopupChatDialog.cpp | 19 +- retroshare-gui/src/gui/chat/PopupChatDialog.h | 25 +- .../src/gui/chat/PopupChatDialog.ui | 3 + .../src/gui/forums/CreateForumMsg.cpp | 17 +- .../src/gui/forums/CreateForumMsg.ui | 4 +- .../src/gui/msgs/MessageComposer.cpp | 47 ++ retroshare-gui/src/gui/msgs/MessageComposer.h | 5 +- .../src/gui/msgs/MessageComposer.ui | 6 + retroshare-gui/src/lang/retroshare_de.qm | Bin 277170 -> 274838 bytes retroshare-gui/src/lang/retroshare_de.ts | 435 +++++++----------- 15 files changed, 260 insertions(+), 349 deletions(-) diff --git a/retroshare-gui/src/gui/MessengerWindow.cpp b/retroshare-gui/src/gui/MessengerWindow.cpp index ca7c457aa..c96c67898 100644 --- a/retroshare-gui/src/gui/MessengerWindow.cpp +++ b/retroshare-gui/src/gui/MessengerWindow.cpp @@ -334,7 +334,7 @@ void MessengerWindow::messengertreeWidgetCostumPopupMenu( QPoint point ) recommendfriendAct->setDisabled(true); } - QAction* pastePersonAct = new QAction(QIcon(IMAGE_PASTELINK), tr( "Paste retroshare Link" ), &contextMnu ); + QAction* pastePersonAct = new QAction(QIcon(IMAGE_PASTELINK), tr( "Paste RetroShare Link" ), &contextMnu ); if(!RSLinkClipboard::empty(RetroShareLink::TYPE_PERSON)) { connect( pastePersonAct , SIGNAL( triggered() ), this, SLOT( pastePerson() ) ); } else { diff --git a/retroshare-gui/src/gui/PeersDialog.cpp b/retroshare-gui/src/gui/PeersDialog.cpp index 324959b2f..39be3b30e 100644 --- a/retroshare-gui/src/gui/PeersDialog.cpp +++ b/retroshare-gui/src/gui/PeersDialog.cpp @@ -166,14 +166,8 @@ PeersDialog::PeersDialog(QWidget *parent) connect(ui.Sendbtn, SIGNAL(clicked()), this, SLOT(sendMsg())); connect(ui.emoticonBtn, SIGNAL(clicked()), this, SLOT(smileyWidgetgroupchat())); - ui.lineEdit->setContextMenuPolicy(Qt::CustomContextMenu) ; connect(ui.lineEdit,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(contextMenu(QPoint))); - pasteLinkAct = new QAction(QIcon(":/images/pasterslink.png"), tr( "Paste retroshare Link" ), this ); - connect( pasteLinkAct , SIGNAL( triggered() ), this, SLOT( pasteLink() ) ); - - connect( ui.msgText, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(displayInfoChatMenu(const QPoint&))); - connect(ui.textboldChatButton, SIGNAL(clicked()), this, SLOT(setFont())); connect(ui.textunderlineChatButton, SIGNAL(clicked()), this, SLOT(setFont())); connect(ui.textitalicChatButton, SIGNAL(clicked()), this, SLOT(setFont())); @@ -346,15 +340,16 @@ void PeersDialog::pasteLink() ui.lineEdit->insertHtml(RSLinkClipboard::toHtml()) ; } -void PeersDialog::contextMenu( QPoint point ) +void PeersDialog::contextMenu(QPoint point) { - if(RSLinkClipboard::empty()) - return ; + QMenu *contextMnu = ui.lineEdit->createStandardContextMenu(); - QMenu contextMnu(this); - contextMnu.addAction( pasteLinkAct); + contextMnu->addSeparator(); + QAction *action = contextMnu->addAction(QIcon(":/images/pasterslink.png"), tr("Paste RetroShare Link"), this, SLOT(pasteLink())); + action->setDisabled(RSLinkClipboard::empty()); - contextMnu.exec(QCursor::pos()); + contextMnu->exec(QCursor::pos()); + delete(contextMnu); } void PeersDialog::peertreeWidgetCostumPopupMenu( QPoint point ) @@ -1672,15 +1667,6 @@ void PeersDialog::on_actionClearChat_triggered() ui.msgText->clear(); } -void PeersDialog::displayInfoChatMenu(const QPoint& pos) -{ - // Log Menu - QMenu myChatMenu(this); - myChatMenu.addAction(ui.actionClearChat); - // XXX: Why mapToGlobal() is not enough? - myChatMenu.exec(mapToGlobal(pos)+QPoint(0,80)); -} - void PeersDialog::smileyWidgetgroupchat() { Emoticons::showSmileyWidget(this, ui.emoticonBtn, SLOT(addSmileys()), true); diff --git a/retroshare-gui/src/gui/PeersDialog.h b/retroshare-gui/src/gui/PeersDialog.h index 393c860f5..dec0d9c34 100644 --- a/retroshare-gui/src/gui/PeersDialog.h +++ b/retroshare-gui/src/gui/PeersDialog.h @@ -85,8 +85,6 @@ public slots: void on_actionClearChat_triggered(); void on_actionMessageHistory_triggered(); - void displayInfoChatMenu(const QPoint& pos); - // called by notifyQt when another peer is typing (in group chant and private chat) void updatePeerStatusString(const QString& peer_id,const QString& status_string,bool is_private_chat) ; @@ -198,9 +196,6 @@ private: /* (2) Utility Fns */ QTreeWidgetItem *getCurrentPeer(); - /** Defines the actions for the context menu */ - QAction* pasteLinkAct; - IMHistoryKeeper historyKeeper; ChatStyle style; diff --git a/retroshare-gui/src/gui/PeersDialog.ui b/retroshare-gui/src/gui/PeersDialog.ui index 77278324b..f88f19f3e 100644 --- a/retroshare-gui/src/gui/PeersDialog.ui +++ b/retroshare-gui/src/gui/PeersDialog.ui @@ -721,6 +721,9 @@ background: white;} 200 + + 200 + Friends @@ -938,9 +941,6 @@ p, li { white-space: pre-wrap; } 60 - - Qt::DefaultContextMenu - QTextEdit#msgText{border: 1px solid #CCCCCC; background: white;} @@ -1002,6 +1002,9 @@ background: white;} 0 + + Qt::CustomContextMenu + QTextEdit#lineEdit{border: 1px solid #CCCCCC; } diff --git a/retroshare-gui/src/gui/TransfersDialog.cpp b/retroshare-gui/src/gui/TransfersDialog.cpp index a2b398274..5e52decbf 100644 --- a/retroshare-gui/src/gui/TransfersDialog.cpp +++ b/retroshare-gui/src/gui/TransfersDialog.cpp @@ -262,9 +262,9 @@ TransfersDialog::TransfersDialog(QWidget *parent) connect( clearcompletedAct , SIGNAL( triggered() ), this, SLOT( clearcompleted() ) ); - copylinkAct = new QAction(QIcon(IMAGE_COPYLINK), tr( "Copy retroshare Link" ), this ); + copylinkAct = new QAction(QIcon(IMAGE_COPYLINK), tr( "Copy RetroShare Link" ), this ); connect( copylinkAct , SIGNAL( triggered() ), this, SLOT( copyLink() ) ); - pastelinkAct = new QAction(QIcon(IMAGE_PASTELINK), tr( "Paste retroshare Link" ), this ); + pastelinkAct = new QAction(QIcon(IMAGE_PASTELINK), tr( "Paste RetroShare Link" ), this ); connect( pastelinkAct , SIGNAL( triggered() ), this, SLOT( pasteLink() ) ); queueDownAct = new QAction(QIcon(":/images/go-down.png"), tr("Down"), this); connect(queueDownAct, SIGNAL(triggered()), this, SLOT(priorityQueueDown())); diff --git a/retroshare-gui/src/gui/chat/PopupChatDialog.cpp b/retroshare-gui/src/gui/chat/PopupChatDialog.cpp index 960174422..fe9e9ca88 100644 --- a/retroshare-gui/src/gui/chat/PopupChatDialog.cpp +++ b/retroshare-gui/src/gui/chat/PopupChatDialog.cpp @@ -130,8 +130,6 @@ PopupChatDialog::PopupChatDialog(const std::string &id, const QString &name, QWi connect(NotifyQt::getInstance(), SIGNAL(peerStatusChanged(const QString&, int)), this, SLOT(updateStatus(const QString&, int))); connect(NotifyQt::getInstance(), SIGNAL(peerHasNewCustomStateString(const QString&, const QString&)), this, SLOT(updatePeersCustomStateString(const QString&, const QString&))); - std::cerr << "Connecting custom context menu" << std::endl; - ui.chattextEdit->setContextMenuPolicy(Qt::CustomContextMenu) ; connect(ui.chattextEdit,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(contextMenu(QPoint))); // Create the status bar @@ -164,9 +162,6 @@ PopupChatDialog::PopupChatDialog(const std::string &id, const QString &name, QWi colorChanged(mCurrentColor); fontChanged(mCurrentFont); - pasteLinkAct = new QAction(QIcon(":/images/pasterslink.png"), tr( "Paste retroshare Link" ), this ); - connect( pasteLinkAct , SIGNAL( triggered() ), this, SLOT( pasteLink() ) ); - updateAvatar() ; updatePeerAvatar(id) ; @@ -432,14 +427,16 @@ void PopupChatDialog::pasteLink() void PopupChatDialog::contextMenu( QPoint point ) { - std::cerr << "In context menu" << std::endl ; - if(RSLinkClipboard::empty()) - return ; + std::cerr << "In context menu" << std::endl ; - QMenu contextMnu(this); - contextMnu.addAction( pasteLinkAct); + QMenu *contextMnu = ui.chattextEdit->createStandardContextMenu(); - contextMnu.exec(QCursor::pos()); + contextMnu->addSeparator(); + QAction *action = contextMnu->addAction(QIcon(":/images/pasterslink.png"), tr("Paste RetroShare Link"), this, SLOT(pasteLink())); + action->setDisabled(RSLinkClipboard::empty()); + + contextMnu->exec(QCursor::pos()); + delete(contextMnu); } void PopupChatDialog::resetStatusBar() diff --git a/retroshare-gui/src/gui/chat/PopupChatDialog.h b/retroshare-gui/src/gui/chat/PopupChatDialog.h index 97e80a073..fb584273d 100644 --- a/retroshare-gui/src/gui/chat/PopupChatDialog.h +++ b/retroshare-gui/src/gui/chat/PopupChatDialog.h @@ -50,6 +50,7 @@ public: static void updateAllAvatars(); static void privateChatChanged(int list, int type); + void updateStatusString(const QString& peer_id, const QString& statusString); void updatePeerAvatar(const std::string&); std::string getPeerId() { return dialogId; } QString getTitle() { return dialogName; } @@ -60,18 +61,6 @@ public: void activate(); public slots: - void pasteLink() ; - void contextMenu(QPoint) ; - - void smileyWidget(); - void addSmiley(); - - void fileHashingFinished(AttachFileItem* file); - - void resetStatusBar() ; - void updateStatusTyping() ; - void updateStatusString(const QString& peer_id, const QString& statusString) ; - void updateStatus(const QString &peer_id, int status); protected: @@ -92,6 +81,17 @@ protected: void updateAvatar(); private slots: + void pasteLink() ; + void contextMenu(QPoint) ; + + void fileHashingFinished(AttachFileItem* file); + + void smileyWidget(); + void addSmiley(); + + void resetStatusBar() ; + void updateStatusTyping() ; + void on_actionMessageHistory_triggered(); void addExtraFile(); void addExtraPicture(); @@ -125,7 +125,6 @@ private: QAction *actionTextBold; QAction *actionTextUnderline; QAction *actionTextItalic; - QAction *pasteLinkAct ; std::string dialogId; QString dialogName; diff --git a/retroshare-gui/src/gui/chat/PopupChatDialog.ui b/retroshare-gui/src/gui/chat/PopupChatDialog.ui index 5fb26625e..c3934cbcf 100644 --- a/retroshare-gui/src/gui/chat/PopupChatDialog.ui +++ b/retroshare-gui/src/gui/chat/PopupChatDialog.ui @@ -789,6 +789,9 @@ p, li { white-space: pre-wrap; } 30 + + Qt::CustomContextMenu + QTextEdit{border: 1px solid #B8B6B1; border-radius: 6px; diff --git a/retroshare-gui/src/gui/forums/CreateForumMsg.cpp b/retroshare-gui/src/gui/forums/CreateForumMsg.cpp index e86e5817d..f4886635d 100644 --- a/retroshare-gui/src/gui/forums/CreateForumMsg.cpp +++ b/retroshare-gui/src/gui/forums/CreateForumMsg.cpp @@ -66,26 +66,21 @@ CreateForumMsg::CreateForumMsg(std::string fId, std::string pId) /** context menu searchTablewidget2 **/ void CreateForumMsg::forumMessageCostumPopupMenu( QPoint point ) { - QMenu contextMnu (this); + QMenu *contextMnu = ui.forumMessage->createStandardContextMenu(); - QAction *pasteLinkAct = new QAction(QIcon(":/images/pasterslink.png"), tr( "Paste retroshare Link" ), &contextMnu ); - QAction *pasteLinkFullAct = new QAction(QIcon(":/images/pasterslink.png"), tr( "Paste retroshare Link Full" ), &contextMnu ); + contextMnu->addSeparator(); + QAction *pasteLinkAct = contextMnu->addAction(QIcon(":/images/pasterslink.png"), tr("Paste RetroShare Link"), this, SLOT(pasteLink())); + QAction *pasteLinkFullAct = contextMnu->addAction(QIcon(":/images/pasterslink.png"), tr("Paste full RetroShare Link"), this, SLOT(pasteLinkFull())); if (RSLinkClipboard::empty()) { pasteLinkAct->setDisabled (true); pasteLinkFullAct->setDisabled (true); - } else { - connect(pasteLinkAct , SIGNAL(triggered()), this, SLOT(pasteLink())); - connect(pasteLinkFullAct , SIGNAL(triggered()), this, SLOT(pasteLinkFull())); } - contextMnu.addAction(pasteLinkAct); - contextMnu.addAction(pasteLinkFullAct); - - contextMnu.exec(QCursor::pos()); + contextMnu->exec(QCursor::pos()); + delete(contextMnu); } - void CreateForumMsg::newMsg() { /* clear all */ diff --git a/retroshare-gui/src/gui/forums/CreateForumMsg.ui b/retroshare-gui/src/gui/forums/CreateForumMsg.ui index 5f0745f57..dbcfa998a 100644 --- a/retroshare-gui/src/gui/forums/CreateForumMsg.ui +++ b/retroshare-gui/src/gui/forums/CreateForumMsg.ui @@ -187,7 +187,7 @@ border: 1px solid #CCCCCC;} - Paste retroshare link + Paste RetroShare Link @@ -262,7 +262,7 @@ p, li { white-space: pre-wrap; } 0 0 440 - 60 + 57 diff --git a/retroshare-gui/src/gui/msgs/MessageComposer.cpp b/retroshare-gui/src/gui/msgs/MessageComposer.cpp index 2136e0b2d..f7024069f 100644 --- a/retroshare-gui/src/gui/msgs/MessageComposer.cpp +++ b/retroshare-gui/src/gui/msgs/MessageComposer.cpp @@ -151,12 +151,15 @@ MessageComposer::MessageComposer(QWidget *parent, Qt::WFlags flags) connect(ui.msgText, SIGNAL(currentCharFormatChanged(const QTextCharFormat &)), this, SLOT(currentCharFormatChanged(const QTextCharFormat &))); connect(ui.msgText, SIGNAL(cursorPositionChanged()), this, SLOT(cursorPositionChanged())); + connect(ui.msgText,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(contextMenu(QPoint))); connect(ui.msgText->document(), SIGNAL(modificationChanged(bool)), actionSave, SLOT(setEnabled(bool))); connect(ui.msgText->document(), SIGNAL(modificationChanged(bool)), this, SLOT(setWindowModified(bool))); connect(ui.msgText->document(), SIGNAL(undoAvailable(bool)), actionUndo, SLOT(setEnabled(bool))); connect(ui.msgText->document(), SIGNAL(redoAvailable(bool)), actionRedo, SLOT(setEnabled(bool))); + connect(ui.msgFileList, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuFileList(QPoint))); + setWindowModified(ui.msgText->document()->isModified()); actionSave->setEnabled(ui.msgText->document()->isModified()); actionUndo->setEnabled(ui.msgText->document()->isUndoAvailable()); @@ -448,6 +451,50 @@ void MessageComposer::closeEvent (QCloseEvent * event) } } +void MessageComposer::contextMenu(QPoint) +{ + QMenu *contextMnu = ui.msgText->createStandardContextMenu(); + + contextMnu->addSeparator(); + QAction *action = contextMnu->addAction(QIcon(":/images/pasterslink.png"), tr("Paste RetroShare Link"), this, SLOT(pasteLink())); + action->setDisabled(RSLinkClipboard::empty()); + + contextMnu->exec(QCursor::pos()); + delete(contextMnu); +} + +void MessageComposer::pasteLink() +{ + ui.msgText->insertHtml(RSLinkClipboard::toHtml()) ; +} + +void MessageComposer::contextMenuFileList(QPoint) +{ + QMenu contextMnu(this); + + QAction *action = contextMnu.addAction(QIcon(":/images/pasterslink.png"), tr("Paste RetroShare Link"), this, SLOT(pasteRecommended())); + action->setDisabled(RSLinkClipboard::empty(RetroShareLink::TYPE_FILE)); + + contextMnu.exec(QCursor::pos()); +} + +void MessageComposer::pasteRecommended() +{ + std::vector links; + RSLinkClipboard::pasteLinks(links); + + for (uint32_t i = 0; i < links.size(); i++) { + if (links[i].valid() && links[i].type() == RetroShareLink::TYPE_FILE) { + FileInfo fileInfo; + fileInfo.fname = links[i].name().toStdString(); + fileInfo.hash = links[i].hash().toStdString(); + fileInfo.size = links[i].size(); + + addFile(fileInfo); + } + } +} + static void setNewCompleter(QTableWidget *tableWidget, QCompleter *completer) { int rowCount = tableWidget->rowCount(); diff --git a/retroshare-gui/src/gui/msgs/MessageComposer.h b/retroshare-gui/src/gui/msgs/MessageComposer.h index f17ffeb87..a9b111a3f 100644 --- a/retroshare-gui/src/gui/msgs/MessageComposer.h +++ b/retroshare-gui/src/gui/msgs/MessageComposer.h @@ -84,8 +84,11 @@ protected: virtual void dropEvent(QDropEvent *event); private slots: - /* toggle Contacts DockWidget */ + void contextMenu(QPoint); + void pasteLink(); + void contextMenuFileList(QPoint); + void pasteRecommended(); void on_contactsdockWidget_visibilityChanged(bool visible); void toggleContacts(); diff --git a/retroshare-gui/src/gui/msgs/MessageComposer.ui b/retroshare-gui/src/gui/msgs/MessageComposer.ui index 4b835db42..6c5dd6c6f 100644 --- a/retroshare-gui/src/gui/msgs/MessageComposer.ui +++ b/retroshare-gui/src/gui/msgs/MessageComposer.ui @@ -696,6 +696,9 @@ border: 1px solid #CCCCCC;} 4 + + Qt::CustomContextMenu + Qt::TextEditorInteraction @@ -809,6 +812,9 @@ border: 1px solid #CCCCCC;} 0 + + Qt::CustomContextMenu + true diff --git a/retroshare-gui/src/lang/retroshare_de.qm b/retroshare-gui/src/lang/retroshare_de.qm index 2a295181e647530be2c2e95c6da03c8b163abdc2..bcfaaf0efd14c293f420e300934b9b659985e4f3 100644 GIT binary patch delta 15009 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 delta 15332 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 MGTK&@I+gtY0CIbIbN~PV diff --git a/retroshare-gui/src/lang/retroshare_de.ts b/retroshare-gui/src/lang/retroshare_de.ts index 073a42520..fcb878cd3 100644 --- a/retroshare-gui/src/lang/retroshare_de.ts +++ b/retroshare-gui/src/lang/retroshare_de.ts @@ -2405,12 +2405,7 @@ p, li { white-space: pre-wrap; } Forum - - Paste retroshare link - RetroShare Link einfügen - - - + Forum Post Beitrag @@ -2435,17 +2430,18 @@ p, li { white-space: pre-wrap; } Erstelle Forumbeitrag - - Paste retroshare Link + + + Paste RetroShare Link RetroShare Link einfügen - - Paste retroshare Link Full + + Paste full RetroShare Link Vollen RetroShare Link einfügen - + In Reply to Als Antwort auf @@ -2465,7 +2461,7 @@ p, li { white-space: pre-wrap; } Zusätzliche Datei hinzufügen - + Attach File Datei anhängen @@ -2681,10 +2677,6 @@ p, li { white-space: pre-wrap; } Status: - - Priority - Priorität - Priority: @@ -2975,10 +2967,6 @@ Das ist nützlich, wenn Du eine externe Festplatte freigibst und die Datei nicht EmailPage - - Invite Friend by Email - Einladung per E-Mail versenden - Invite Friends by Email @@ -4231,10 +4219,6 @@ Fill in your GPG password when asked, to sign your new key. Idle Time Zeit bis zur Untätigkeit - - seconds - Sekunden - GraphFrame @@ -4274,7 +4258,7 @@ Fill in your GPG password when asked, to sign your new key. GraphWidget - + Click and drag the nodes around, and zoom with the mouse wheel or the '+' and '-' keys @@ -4793,10 +4777,6 @@ p, li { white-space: pre-wrap; } IntroPage - - This wizard will help you to connect to your friend(s) to RetroShare network. There are three possible ways to do this: - Dieser Assistent wird Dir helfen, dich mit Deinen Freunden zu verbinden. Es gibt 3 Möglichkeiten: - &Make friend with selected friends of my friends @@ -5072,7 +5052,7 @@ p, li { white-space: pre-wrap; } MainWindow - + Network Netzwerk @@ -5352,18 +5332,18 @@ Bitte gib etwas Speicher frei und drücke OK. MessageComposer - + Compose Verfassen - + Contacts Kontakte - + Search for Name: Suche Name: @@ -5393,12 +5373,12 @@ Bitte gib etwas Speicher frei und drücke OK. >> Bcc - + Subject: Betreff: - + Paragraph Absatz @@ -5509,12 +5489,12 @@ Bitte gib etwas Speicher frei und drücke OK. Bcc - + Recommended Files Empfohlene Dateien - + File Name Dateiname @@ -5579,7 +5559,7 @@ Bitte gib etwas Speicher frei und drücke OK. Blockquote hinzufügen - + &Left &Links @@ -5600,19 +5580,25 @@ Bitte gib etwas Speicher frei und drücke OK. - + Save Message Nachricht speichern - + Message has not been Sent. Do you want to save message to draft box? Nachricht wurde noch nicht gesendet. Möchtest Du die Nachricht in den Entwürfen speichern? - + + + Paste RetroShare Link + RetroShare Link einfügen + + + Re: Re: @@ -5812,17 +5798,17 @@ Willst Du die Nachricht speichern ? Datei nicht gefunden oder Dateiname nicht akzeptiert. - + Friend Recommendation(s) Freundempfehlung(en) - + No Title Kein Titel - + I recommend a good friend of me, you can trust him too when you trust me. <br> Copy friend link and paste to Friends list Ich empfehle Dir einen guten Freund von mir. Du kannst ihm vertrauen, wenn Du mir vertraust. <br> Kopiere den Link und füge ihn in der Freundesliste ein @@ -6328,7 +6314,12 @@ p, li { white-space: pre-wrap; } Peer-Details - + + Paste RetroShare Link + RetroShare Link einfügen + + + Export Friend Zertifikat des Freundes exportieren @@ -6424,18 +6415,13 @@ p, li { white-space: pre-wrap; } Recomend this Friend to... Freund weiterempfehlen... - - - Paste retroshare Link - RetroShare Link einfügen - RetroShare Messenger - + @@ -6513,42 +6499,67 @@ p, li { white-space: pre-wrap; } NetworkDialog - - + + Select a pem/pqi File Wählen einer PEM- oder PQI-Datei - - + + File Not Found Datei nicht gefunden - - + + %1 does not exist. Would you like to create it? %1 ist nicht vorhanden. Möchten Sie es jetzt erstellen? - - + + Failed to Create File Es ist nicht gelungen, die Datei zu erstellen - - + + Unable to create %1 [%2] Kann %1 [%2] nicht erstellen - + + Personal signature + + + + + GPG key signed by you + + + + + Marginally trusted peer + + + + + Fully trusted peer + + + + + Untrusted peer + + + + Has authenticated me Hat mich authentifiziert - + has authenticated you. Right-click and select 'make friend' to be able to connect. hat mich authentifiziert. @@ -6651,10 +6662,6 @@ p, li { white-space: pre-wrap; } Create a new Profile Erstelle ein neues Profil - - Welcome to RetroShare. - Willkommen bei RetroShare. - Network @@ -6671,21 +6678,13 @@ p, li { white-space: pre-wrap; } Show keys that are not validated by the GPG web of trust Zeige Schlüssel, die nicht vom web of trust bestätigt sind - - Log - Log - Clear Leeren - RetroShare %1 started. - RetroShare %1 gestartet. - - - + Deny friend Blockiere Freund @@ -6710,12 +6709,12 @@ p, li { white-space: pre-wrap; } Nachbar-Details... - + Unknown Unbekannt - + Authentication matrix Authentifizierungsmatrix @@ -6725,27 +6724,7 @@ p, li { white-space: pre-wrap; } Netzwerk Ansicht - - Authenticated - Authentifiziert - - - - GPG key signed - GPG Schlüssel unterzeichnet - - - - Not Authenticated - Nicht authentifiziert - - - - GPG key not signed - GPG Schlüssel nicht unterzeichnet - - - + yourself selbst @@ -6768,46 +6747,6 @@ p, li { white-space: pre-wrap; } Sorry, certificate file creation failed Zertifikat-Datei konnte nicht erstellt werden - - UPNP is active. - UPNP ist aktiv. - - - UPNP not found or not enabled. - UPNP wurde nicht gefunden oder ist nicht aktiviert. - - - DHT is running. - DHT ist gestartet. - - - DHT is off. - DHT ist ausgeschaltet. - - - Stun external address detection is working. - Stun externe Adresserkennung arbeitet. - - - Stun is not working. - Stun arbeitet nicht. - - - Local network detected - Lokales Netzwerk gefunden - - - No local network detected - Kein lokales Netzwerk gefunden - - - ip found via external address finder - Ip gefunden via externem IP Adress-Finder - - - external address finder didn't found anything - Externer IP Adress-Finder hat nichts gefunden - Network Status @@ -6891,32 +6830,12 @@ p, li { white-space: pre-wrap; } - Refresh - Erneuern - - - - Basic + Redraw - - Friends - Freunde - - - - Extended - - - - - Display mode: - - - - - Friends level: + + Friendship level: @@ -7046,10 +6965,6 @@ p, li { white-space: pre-wrap; } Friend Connect Verbinde zu Freund - - Peer Connect - Verbinde zu Nachbar - New Message @@ -7126,10 +7041,6 @@ p, li { white-space: pre-wrap; } OnlineToaster - - Peer Online - Nachbar Online - Friend Online @@ -7148,7 +7059,7 @@ p, li { white-space: pre-wrap; } PeerItem - + Remove Item Entferne Element @@ -7293,7 +7204,7 @@ p, li { white-space: pre-wrap; } PeersDialog - + Chat Chat @@ -7308,7 +7219,7 @@ p, li { white-space: pre-wrap; } Zertifikate (*.pqi) - + Status Status @@ -7318,17 +7229,12 @@ p, li { white-space: pre-wrap; } Verbinde zum Freund - + Profile Profil - - Paste retroshare Link - RetroShare Link einfügen - - - + Welcome to RetroShare's group chat. Willkommen bei RetroShare's Gruppenchat. @@ -7338,7 +7244,7 @@ p, li { white-space: pre-wrap; } ich - + Group Gruppe @@ -7373,7 +7279,12 @@ p, li { white-space: pre-wrap; } Freund anschreiben - + + Paste RetroShare Link + RetroShare Link einfügen + + + Recommend this Friend to... Freund weiterempfehlen... @@ -7424,12 +7335,12 @@ p, li { white-space: pre-wrap; } Neuer Gruppenchat - + Add Extra File Zusätzliche Datei hinzufügen - + Drop file error. Dateifehler bei Drag'n'Drop. @@ -7455,7 +7366,7 @@ p, li { white-space: pre-wrap; } Unterstrichen - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -7473,7 +7384,7 @@ p, li { white-space: pre-wrap; } Hinzufügen - + Add or Change your Avatar Wähle oder ändere dein Avatar Bild @@ -7537,7 +7448,7 @@ p, li { white-space: pre-wrap; } - + Add Friend Freund hinzufügen @@ -7617,7 +7528,7 @@ p, li { white-space: pre-wrap; } Willst du diesen Freund entfernen? - + Save as... Speichern unter... @@ -7627,7 +7538,7 @@ p, li { white-space: pre-wrap; } Text Datei (*.txt );;Alle Dateien (*) - + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -7640,7 +7551,7 @@ p, li { white-space: pre-wrap; } <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Anzeige</span></p></body></html> - + Hide Offline Friends Verstecke offline Freunde @@ -7650,12 +7561,12 @@ p, li { white-space: pre-wrap; } Status Spalte ausblenden - + Friends Storm Aktivitäten - + is typing... tippt... @@ -7978,7 +7889,7 @@ p, li { white-space: pre-wrap; } PopupChatDialog - + Hide Avatar Avatar verstecken @@ -7988,7 +7899,7 @@ p, li { white-space: pre-wrap; } Avatar zeigen - + File not found or file name not accepted. Datei nicht gefunden oder Dateiname nicht akzeptiert. @@ -7999,24 +7910,24 @@ p, li { white-space: pre-wrap; } - + Bold Fett - - + + Underline Unterstrichen - - + + Italic Kursiv - + Set Font Schriftart setzen @@ -8026,7 +7937,7 @@ p, li { white-space: pre-wrap; } Textfarbe - + Clear offline messages Entferne offline Nachrichten @@ -8041,12 +7952,12 @@ p, li { white-space: pre-wrap; } Nachrichtenverlauf - + Send Senden - + Clear Chat Chat-Chronik löschen @@ -8056,22 +7967,17 @@ p, li { white-space: pre-wrap; } Deaktiviere Emoticons - - Paste retroshare Link - RetroShare Link einfügen - - - + Strike Durchgestrichen - + Add Extra File Zusätzlich eine Datei hinzufügen - + Drop file error. Dateifehler bei Drag'n'Drop. @@ -8082,12 +7988,12 @@ p, li { white-space: pre-wrap; } Ordner können nicht für Drag'n'Drop genutzt werden. Nur Dateien werden akzeptiert. - + Add a File for your Friend Füge eine Datei für deinen Freund hinzu - + Save Chat History Chat Verlauf speichern @@ -8103,18 +8009,18 @@ p, li { white-space: pre-wrap; } Text Datei (*.txt );;Alle Dateien (*) - + Your Friend is offline Do you want to send them a Message instead Dein Freund ist Offline willst du ihm stattdessen eine Nachricht senden - + Attach a Picture Bild anhängen - + is Idle and may not reply antwortet möglicherweise nicht, da der Status auf "Untätig" gesetzt wurde @@ -8134,7 +8040,12 @@ Do you want to send them a Message instead ist Offline. - + + Paste RetroShare Link + RetroShare Link einfügen + + + is typing... tippt... @@ -8144,7 +8055,7 @@ Do you want to send them a Message instead Schliessen - + Friend not Online Freund ist nicht online @@ -8319,7 +8230,7 @@ Do you want to send them a Message instead ProfileView - + Clear Photo Photo entfernen @@ -8724,15 +8635,7 @@ p, li { white-space: pre-wrap; } Link ist fehlerhaft. - File Request - Dateianfrage - - - Process of RetroShare links is not implemented. Please use copy instead. - Die Verarbeitung der Links ist noch nicht implementiert. Bitte kopiere den Link stattdessen. - - - + Deny friend Blockiere Freund @@ -9507,32 +9410,6 @@ p, li { white-space: pre-wrap; } Schließe alle Suchergebnisse - - SendLinkDialog - - - Send RetroShare link - Sende RetroShare Link - - - - Send - Senden - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:22pt; color:#ffffff;">Send RetroShare Link</span></p></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:22pt; color:#ffffff;">Sende RetroShare Link</span></p></body></html> - - ServerPage @@ -10006,7 +9883,7 @@ p, li { white-space: pre-wrap; } SharedFilesDialog - + Download Herunterladen @@ -10065,22 +9942,22 @@ p, li { white-space: pre-wrap; } - + Open File Datei öffnen - + Open Folder Ordner öffnen - + Set command for opening this file Setze eine Regel zum Öffnen dieser Datei - + Copy retroshare Link Kopiere RetroShare Link @@ -10100,7 +9977,7 @@ p, li { white-space: pre-wrap; } Sende RetroShare Link - + Copy retroshare Links to Clipboard Kopiere RetroShare Links in die Zwischenablage @@ -10120,7 +9997,7 @@ p, li { white-space: pre-wrap; } Sende RetroShare Links (HTML) - + Send retroshare Links to Cloud Sende RetroShare Links an die Verknüpfungs-Wolke @@ -10130,20 +10007,20 @@ p, li { white-space: pre-wrap; } Füge die Links zur Verknüpfungs-Wolke hinzu - - + + Recommend in a message to Empfehle in einer Nachricht an - + RetroShare Link RetroShare Link - + @@ -10306,7 +10183,7 @@ p, li { white-space: pre-wrap; } <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"><p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><span style=" font-size:18pt; color:#55aaff;">Anmeldung</span></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:18pt; color:#55aaff;"></p></body></html> - + Login Failure Anmeldefehler @@ -10696,7 +10573,7 @@ p, li { white-space: pre-wrap; } - + Play File Datei abspielen @@ -11084,17 +10961,7 @@ p, li { white-space: pre-wrap; } Details... - - Copy retroshare Link - Kopiere RetroShare Link - - - - Paste retroshare Link - RetroShare Link einfügen - - - + Down Runter @@ -11201,7 +11068,17 @@ p, li { white-space: pre-wrap; } Prüfsumme - + + Copy RetroShare Link + Kopiere RetroShare Link + + + + Paste RetroShare Link + RetroShare Link einfügen + + + Slower Langsamer